log.fstn

技術よりなことをざっくばらんにアウトプットします。

HelixでENDGAMEする

この記事は、キーボード #1 Advent Calendar 2021 24日目の記事です。

お楽しみ袋でHelix rev3 LPを手に入れたのでこれでENDGAMEを目指すことにしました。

出来上がったものがこちらです。ケースのプロトタイプは発注済みですが残念ながら執筆現在でまだ完成していないのでレンダリング画像だけの公開になります。 本記事ではどのようなコンセプトでどのようにケースを設計したのかを簡単にご紹介します。

HelixのPCBを確認する

GitHubからKiCadのデータを取得してPCBを確認します。 公開されているデータは初期のものでリバーシブルタイプなのでTRRSコネクタとProMicroの位置が若干異なっていることに注意します。 このあとFusion360に取り込むので、いくつかのパーツは手持ちのデータと差し替えて各種パーツの3Dデータを組み合わせています(Fusion360側で組み合わせるでも可)。

github.com The PCB data of Helix on KiCad

ファイル > エクスポート > STEP... から stepファイルをエクスポートしてFusion360にインポートします。 下記画像のものはインポート後に素材を少し修正しました。

The PCB of Helix on Fusion360

上面から大まかにスケッチする

全体像を想像しながら上面から見た図を大まかにスケッチします。 下記画像ではいきなり完成していますが、あとからいくらでも修正できるので最初は大まかで大丈夫です。

The sketch of overall

Helixのキーピッチは19mmなのでそれに合わせて14mm四方のキースイッチの穴を開けています。 ケースの枠はキーキャップと干渉しないように、キーピッチ+1mmのクリアランスを確保しています(下記画像10.50mmの部分)。

19.00mm key pich

Helixを組み立てる

今回は既存のキットを利用するため、できる限り元のデザインを活かしてケースを設計していきます。 まずは、キットの内容を確認するためにFusion360上でキーボードを組み立てていきます(この作業が結構楽しい)。

先程のスケッチからスイッチプレートを作成します。 今回はロープロファイルなので2.2mmの高さにプレート上面が来るようにします。プレートは1.6mmのFR4なので寸法もそれに合わせます。

Build switch-plate

キット付属のスペーサーは4mmなので、スイッチプレートの下面とボトムプレートの上面との間が4mmになるように1.6mmのボトムプレートを作成します。 Build bottom-plate

キースイッチとキーキャップをつけて完成です。 それぞれのモデルを自作して挿入していますが、それぞれ解説していると長いので省略します。 Finish building the kit

ボディを設計する

全体を覆うようにケースの枠を作ります。 今回は厚みのあるデザインにしたかったので枠の幅を広め(9mm)にしてあります。 またこの時点でケースの高さはまだ確定しておらず大まかに設定してあります。

Create a frame

ケースの側面にTRRSケーブルを通す穴をスケッチします。 ケーブルのジャック部分の外周が10mm程度を想定して穴を開けます。 微調整した結果、とりあえず縦9.7mm、横12.0mmにしました。横を広めにとったのはリバーシブルタイプのPCBにも対応するためです。

The hole of TRRS

同様にUSBケーブルの穴を開けます。 ProMicro部分は類似商品が複数あるため多少大きめに設計してあります。 個人的にはケーブル類の穴は最小限にするのが好みですが、妥協せざるを得ない部分です。

The hole of USB

スケッチを元に押し出してケーブルの穴を開けたところ。 The holes

細かいところは省略してなんやかんやでボディが完成したところ。 今回のデザインでは全体をフラットな印象にしたかったため、OLED部分を隠すプレートを仕込めるように、ケースの上面に溝を用意してあります。 またコストの関係上トレイマウントにしてあります(分割キーボードは一体型に比べて2倍程度コストが掛かるのでコストを考慮するとデザインの制約がそれなりにあります)。

Finish to create case

なお、ケースの高さについてはケーブルの穴を開けたあとに調整しています。 TRRSケーブル用の穴が結構大きいため、最低限その穴が開けられるようにしていますが、あまり高くしすぎるとロープロファイルの利点を潰してしまうのでなるべくギリギリを攻めます。

OLEDプレートを設計する

溝に合うようにOLEDプレートを作ります。 またボディーとプレートとの間はCNCの公差を考慮したクリアランスを設けています(忘れがち)。

ちなみにプレートの厚みはFR4も使えるように1.6mmにしてあります。

Create the OLED plate A space between the body and the plate

ネジ穴を開けます。 また超低頭のM2ネジが仕込めるように加工します。 ちなみにプレートのみリバーシブルにできるように裏表に加工を施しています。

threads and holes A cross section

レンダリングしてデザインを見直す

ネジやスペーサ等を仕込んで一旦完成です。 Complete to build

ここからはレンダリングをして実際の完成のイメージをより明確にしていきます。 まずはレンダリングをする前にそれっぽい板を作って机を用意します。 今回はもともと用意されている素材から半光沢のウォルナットを使用しました。

Prepare rendering walnut semigross

またこの時点で設計した各種パーツの素材も設定しておきます。 今回はこちらももともと用意されている物理マテリアルの中からアルミニウムの陽極酸化を使用しました。 カラーバリエーションは少ないので適当に黒っぽく色を変えています。

alumite-black

レンダリングではHDRIを利用してリアルな光源でそれっぽく見せます。 レンダリングのシーン設定 > 環境ライブラリ > カスタム環境を置換からHDRI素材を選択します。 HDRI素材は以下のようなサイトから入手可能です。

polyhaven.com

あとはお好みのアングルと設定をしてレンダリング rendering

カメラをグリグリ回して、レンダリングを繰り返してデザインを見直します。 rendering2

色々とパターンを変えてバリエーションを考えたりもします。

rendering3

rendering4

ところでENDGAMEって?

多分存在しませんがないものを自分でつくるのは楽しいのでぜひチャレンジしてみてください。

この記事はCornelius R2 prototype + H1 switches lubed by Krytox 205g0で書きました。