分割型キーボードの自作に再びチャレンジ(2)

自分の悪い姿勢を矯正したいと考えて分割キーボードを製作しています。前回の記事では主にキー配列について書きました。 今回はケースの設計について。

ケースの設計

キーボードの方針とマウント方法

まずはマウント方法をどうするかを考える。 これまで打鍵音にこだわって自作してきたキーボードでは控え目でマイルドな印象の音を目指してきた。 その方向性で満足のいくものができたので、今作は逆に音が鳴るものを作ることにした。

でも音が鳴るといってもなんでもいいわけではない。 例えばカサカサと擦れるような音ではなく、クリアで雑味のない音がいい。 そのためには滑らかなスイッチを使うのに加えて、

  • スイッチがプレートまたはPCBにしっかり固定されている
  • プレートはある程度質量がある(=厚みがある)

のがいいのではないかと考えている。 これは小さい軽いパーツが振動して鳴るのを避ける、ということだと思う。しっかり固定という点ではスイッチをPCBにはんだづけするほうがよい気がするけれど、メンテナンス性を考えてソケットを用いてホットスワップにする。

以前厚め(2 or 3mm)のアクリルでスイッチプレートを作った際に、硬質な印象の打鍵音になった記憶がある。 ただ、スイッチプレートが1.5mmよりも厚いとキースイッチの爪が引っかからずに抜けてしまう。 遊舎工房でアクリルの溝堀加工ができるようになっているので、これを利用してスイッチプレートを作ることにする。 厚いほうが良いだろうと思って5mm厚で作ろうと考えたが、溝堀加工が可能なのは2or3mmで5mm厚は対応していない。 なので3mm厚でスイッチプレートを作ることにした。

PCBはプレートに対して固定しなくても機能的には全く問題ないが、スイッチプレートにネジなどで固定したほうが打鍵音は硬いはっきりとした印象になる気がする。 これまでは柔らかい印象の音を求めていたのでできるだけ固定しないようにしていたが、今作ではM1.4のねじでPCBをスイッチプレートに固定することにする。 スイッチプレートとPCBの面間は2mmの間隔があるが、2mmの スペーサー、アクリル、シリコーンシートのどれかを挟むことにする。

リーフスプリングはまだ試したことがなくて気になっている。ただ、アクリルだとパキッと逝きそうな気がしたのでとりあえずガスケットマウントで作る。 後日気が向いたらリーフスプリングのスイッチプレートに変更できるようにある程度ガスケットのタブの幅を広めに取っておく。

プレート発注後、キー部7%でぴろりどんさんのアクリルリーフスプリングを採用したキーボードの存在を知った。 以下のブログで紹介されている。

piroriblog.hatenablog.com

アクリルでもリーフスプリングが可能であることを実証してくれているので、そのうち自分でもチャレンジしてみるかもしれない。

ケース外形

3Dプリントケースを塗装するので色だけでなく形状の見た目もいい感じにしたい。 キー配列が左右非対称なので、外形を対称な形にする必要はない。 むしろ非対称にすることにした。 あれこれ試行錯誤したけれど何が正解なのかわからなり、結局上面から見た外形はシンプルな四角い形をベースにした。 ただの四角なのは面白くないので、TRRSコネクタがつく部分はでっぱった・へこんだ形にし、左右がぴったりつくようにした。

ケース外形

前作の分割キーボードでは緩やかな曲面を上面につけてお気に入りポイントになった。 でも今作はベゼル幅をそんなに広くしないので、ゆるい曲面をつけても多分わからない。 いろいろ考えたけれど、いいアイデアが浮かばなかったので上面は凝らずに平面にした。 側面も平面にすると無骨な印象になるので、側面の下側を斜めに切り取って角度をつけた面を加えた。

ケース側面の下側には角度をつけた面

こうすると少しスマートな印象になる。 背面にはコネクタがあるので同じような意匠を加えるのは難しい。 こちらもいいアイデアが浮かばなかったので平面にした。 使っているときは背面は見えないので見た目よりも塗装のしやすさを優先。

角はC面取りのほうが見た目が好きだけれど、3Dプリントケース塗装前のやすりがけできっと角がぼんやりしてしまうのでRをつけることにする。 外形の角はR2、それ以外はR0.5にしておく。

ウレタンクッション用の溝

ケース底面のクッション材は打鍵音を決める重要な要因だ。 特に自宅の机は木製で選択を間違えると低音がよく聞こえるようになる。これまで

  • ゴム足
  • フォームの貼り付け
  • Anodized CNC Aluminum Feet
  • ウレタンクッションの貼り付け

などを試してきたが、ゴムのついたアルミ足やウレタンクッションが木製の机に振動を伝えにくい印象がある。 先細りしている形状がその先に音を伝えにくい気がしているけど、客観的な評価はできていない。

今作はチルト角度をつけたくないので、ウレタンクッションをケース底面4隅に貼り付ける。 ただ、自分はキーボードの位置を頻繁に変えるため、平らな底面に貼り付けたウレタンクッションの位置が徐々にずれ、ひどいときは外れてしまうという不満があった。 そこでカスタムキーボードなどであるように、ウレタンクッションの貼り付け部分に1mmの溝加工をしてクッションがずれないようにする。

ウレタンクッションの貼り付け部分は1mmへこませる

TRRSコネクタの固定

以前分割キーボードを製作したときには、TRRSコネクタにパネル取付用の4極ジャックMJ-064Hを使用した。 これをケースの角に取り付けたいのだが、ケースの4隅には底板取り付け用のネジを配置したくなるし、ウレタンクッションもなるべく角の近くに貼り付けたい。 さらにケースの高さもできるだけ抑えたいのだが、そんなこんなを考えるとパネル取付用TRRSコネクタはだいぶ大きくて場所を取りすぎる。

そこで自作キーボードキットでよく使われるTRRS4極ジャックを利用することにする。 キーボード基板に直接実装するとケースとの高さ調整がシビアになるので、TRRSコネクタ用の小さな基板を作り、ケーブルでキーボード基板とつなげることにした。 ジャックの先端をケースに嵌め入れることにすれば、M2ネジ1個で固定できる。

(左)底面側から見たTRRSコネクタ、(中)底面図、(右)断面図

基板の上面側(上図の緑色の裏側)はコネクタのピンが少し飛び出るので、それとケースの干渉を避けるために1.9mmほどケース側を切り取っておく。 TRRSジャックの丸い部分の外形は直径5mmなので、これを通す穴としてケース背面にφ5.1mmの穴を空けた。後日組み立てたときにはピッタリだった。これくらいのサイズなら両側0.05mm〜0.1mmのクリアランスでよさそう。

ケース側面の壁の厚さは最低3mmとしていたが、TRRSジャックの先端をケース背面の位置と合わせようとすると、基板やコネクタの四角い部分がケース側面の壁と干渉する。それを避けるために該当部分のケースを切り取っておく。 こんな構造にしたものだから、おかげで無駄に複雑になってしまった…。

キーキャップとケースの間の隙間

いつもどれくらい余裕を持たせるか迷う。 そもそもキースイッチの間隔は19.05mm。 キーキャップはこの間隔で配置しても隣同士のキーとの間に1mm弱くらいの隙間があるので、 どんなキーキャップでも外形はこれよりも小さいはず。 極論1uのキーに対して19.05mm x 19.05mmの四角い穴を空ければ原理的には良いはず。

一方でガスケットマウントのキーボード部分とケースの水平方向の位置はずれる可能性がある。 さらに3Dプリントケースの精度もある(0.2mmよりは良いはず)。 多少余裕を持たせるべきだけど、でもできるだけキーキャップとケースの間は小さくしたい。さてどうするか?

以前製作したアクリル箱組ケースの時には、19.05mmxN(Nはキーの行・列数)に対して+1mmのケース内寸にしている。つまり片側0.5mm+α(αはキーキャップが19.05mmよりも小さい分)の隙間。 アクリル板を自分で接着して箱を作るので誤差が1mmくらい出ても不思議ではない。今思い返すとかなり強気な寸法ですね…。

ただし今作は3Dプリントケースだしアクリル箱組よりは精度が良いはずなのでさらに攻められる。 一方で前作の分割キーボードでは19.05mm x Nに対して+0.4mm。これはさすがに攻めすぎで、ガスケットマウントだと位置合わせがシビア過ぎた。 そこで今回は+0.8mmとすることにした。 なのでキーキャップとケースの間は0.4mm+αとなる。 スケッチ上で1辺19.85mmの正方形を書いてスイッチ位置に合わせ、それに従ってケースを切り取る。

1uのキーに対して19.85mm x 19.85mmの穴を空ける

ただ、ものが来てから気づいたがこれは少し狭すぎる。 家にある(たぶん標準的な)キーキャッププラーが1uのキーの四角い穴にギリギリで入らない。 強引に入れられるけれど塗装が取れそうでやりたくない。 まあそこだけ別のもので頑張って取ればいいのだけれど、次回作る際はこのことも考慮したほうがいいかもしれない。

Thumbプレート

自分はスペースキー手前のケースベゼル部分に親指を置く癖がある。 今作は前作と同様に3Dプリントしたケースを塗装するつもりだが、頑張って塗装したところに皮脂がついてテカるのは避けたい。 そこで親指置き場にはステンレスのプレートを接着することにする。 最終的には磨いてツルツルにしたい。 カット部分の表面を磨く際に少し削れる&カットの誤差があるはずなので、発注時のステンレスプレートの寸法は念のため0.5mmだけ長くしておく。

Thumbプレート

底板

ウェイトを兼ねて底板にはステンレス3mmを使用することにした。 結構な重さがあるので安定するはず。 底板が側面から見えないようにしたいので、3Dプリントケース底面側に3mmの板をはめる構造にする。 あまり深く考えなかったので変な形になっている。

ケース底面の底板はステンレスで作る

3Dプリントケース側と底板の寸法を同じにするとはまらなくなるので、底板側を少しだけ寸法を小さくしておく必要がある。 3Dプリントの精度はどれくらいだろうかとか、レーザーカットされるステンレスの底板の外形は図面からどれくらい小さくなるのかとか、いつも迷ってしまう。 結局えいやっと決めて0.1mm隙間が空くようにした。 実際加工されたものが届いて組み立ててみると、塗装前のケースではちょうど良かった。

3Dプリントケースと底板のクリアランス

Fusionのスケッチ上でオフセットの機能を利用すると簡単に一回り小さいサイズの外形を作れることを今回学んだ。 これだいぶ便利。

Fusionのオフセットを利用すると簡単にできる

ねじ止め用のナット穴

3Dプリントケースのねじ止めのためにインサートナットを使うのをしばしば見るけど、インサートナットは地味に費用がかさむ。 そこで以前の分割キーボード自作で考えついたM2ナットをケースに空けた穴に入れる方法を今回も利用する。 これなら費用が抑えられる。

底板を固定するM2ネジのために、3DプリントケースにM2ナットが入る穴を空けておく

以前の寸法はM2ナットを入れる穴のサイズがガバガバだった。 面倒だけど今回は丁寧に作った。 側面から4.2mmx2.0mmの四角い穴を空け、底面側にはねじを通すφ2.5mmのキリ穴を空ける。 ナットの高さは1種だと1.6mmなので、四角い穴の高さは1.7mmくらいでもいいけれど、ナットを取り出したいと思った場合には隙間が全く無いと詰むので2mmとした。 ナットは一番奥に入れると所定の位置になるようにナット外形に合わせてケース側を切り欠いておく。0.1mmのクリアランスを取った。

側面の穴は、底面側にスケッチを書いた後に切り取り(両側)を使うと簡単にできる。

Fusionだと、切り取り(両側)を利用すると作業が多少楽になる

スイッチプレートの設計

スイッチプレートはいつものようにKeyboard Layout Editorで作ったjsonをもとに、Keyboard Plate Generatorでdxfを作成。 それをFusionで読み込んで外形を整える。 外形はケースの内側とできるだけ同じ形状にする。 プレートとケース内側の内壁とは1mm程度の隙間を設けた。 TRRSコネクタ付近はPCB同士をケーブルでつなぐので、そのためのスペースを少しあけておく。

ケース上面から見た断面図。青色がスイッチプレート

またUSBとスイッチプレートが微妙に干渉する部分があったので、スイッチプレートを少しだけ切り欠いておく。 ここの幅が1.5mmしかない。遊舎工房のレーザーカットだとカットライン2mm未満での変形等は保証対象外。 ただケースデザインの修正がとても面倒なのでリスクを承知でこうした。

USBコネクタの基板との干渉を避けるために少しだけ切り欠いておく

固定用のM1.4穴

3mm厚のスイッチプレートとPCBの間には2mmの隙間がある。 この隙間には、打鍵音を整えるためにフォームやシリコーンシートを挟むことを考えているが、その場合シートが板に密着していることが重要ではないかと考えている。 そうするとスイッチプレートとPCBをねじ止めしたくなる。 スイッチプレート側にM1.4のタップを切って裏側からねじ止めすることにする。 M1.4のタップは切ったことがないけど、下穴寸法はφ1.10mmみたい。 アクリルレーザーカットであけると少し大きくなると見込んでφ1.0mmの穴を空けておき、自分でタップ加工することにする。

穴の位置は、とりあえずスタビライザーの左右に配置。あとは四隅から1u分内側の位置と、あとは適当。穴が多いとタップ加工も組み立ても大変になるのでほどほどに。

PCBとの整合性を確認

ケースの設計が固まってきたら、PCBの設計もして素子を実装できるスペースが十分かを確認。 ケースの設計とPCBの設計を何度か行ったり来たりして設計を完成させる。 今作は最終的にファイルのバージョンが初めて100を超えた。 もっとシンプルに設計できるようになりたい…。

ファイルのバージョンが100を超えた…

発注

3Dプリントケース

3DプリントケースはJLCに依頼。 キーボードケースに加えて、塗装のテストのための小さめの部品も併せて製作を依頼する。 はんだづけの際、煙排気用に12cmのPCファンを脇に置いてやるのだけれど、これが不安定でしばしば倒れる。 このスタンドを設計して併せて頼むことにした。

煙排気用PCファンを立てるためのスタンド(図の白い部品)

素材は安価なSLAレジンを使う。どれにするか迷ったけれど8111Xにした。以下のサイトが選定するときに参考になると思う。

lunar-creation.com

green-keys.info

stepファイルをアップロードしてレビューを依頼。 その結果以下のErrorが出た。

JLCのレビューでErrorがでた

どこだかわからなかったし、まあええやろと思ってYesを選んで発注!

スイッチプレート

スイッチプレートは遊舎工房のアクリルレーザーカット。 Fusionで作ったスイッチプレートをdxfでいったん保存し、それに合わせて遊舎工房の溝堀りテンプレートを配置してカット依頼用のデータを作る。 データ入稿時に溝堀り加工であることを明示する必要がある。

溝堀加工はテンプレートの形状に限られるらしい。 プレートマウントのスタビライザ用の切り欠きとかは除きたい人なのでそういう図を作ったが、 出来上がったものはテンプレート通りのものだった(これで加工データの処理に余計な手間がかかっていたらごめんなさい)。 将来的には自由な形状を溝堀りできると嬉しい(でもおそらくテストを重ねた結果のテンプレートだろうから難しそう)。

テンプレートに左右のスイッチプレートを配置すると広大なスペースが空いてしまうことに気づく。貧乏性なので空いたスペースで何かを作りたい。以前はキーボードスタンド用のパーツを入れたが、もうキーボードスタンドは間に合っている…。

少し考えて、リストレストの嵩上げ用のパーツを入れることにした。自分が設計するケースは高さが嵩みがちなので、愛用しているFILCOリストレストMacaronではいつも高さが足りない。底面にクッションを貼り付けたアクリル板の上にリストレストを置けば、5mm程度の嵩上げが可能となる。リストレストの水平位置が動かないように左右にコの字型のパーツをねじ止めする。 底板側にM2ねじのタップ下穴としてφ1.5mmの穴を空けておく(レーザーカットで穴径が少し広がることを想定して0.1mm小さい寸法)。

アクリルレーザーカットのデータ。空いたスペースにリストレストの嵩上げのためのパーツも入れておく。

ステンレスの板

ケース底板のステンレス板とThumbプレートは切断堂にレーザーカット加工を依頼。 Thumbプレートはただの四角い板なので、探すともっと加工費が安いシャーリング切断などがありそうではある。 ただシャーリング切断だと面が歪まないか心配。 また別業者にすると送料も余計にかかってそんなに安くならないと考え、少し贅沢だけどThumbプレートも併せてレーザーカット加工をお願いした。

今回はここまで。次回はたぶん基板の設計について書きます。

この記事は自作オリジナルキーボードunity69で書きました。