Telles-GLの3Dプリントケースについて

0.はじめに

最近、私がドハマりしている自作キーボードの3Dプリントケース設計の第2弾です。今回のターゲットは”Telles-GL”。果たしてどのようなケースとなったのか。宜しければ最後までご覧ください。

1.”Telles-GL”とは?

Telles-GL”は、ロウスタッガード配列の40%キーボードに、ファンクションキーと移動キーを加えた「小型テンキーレスキーボード」です。"TenkeylessKeyboard"をもじってTelles、GL516ケースからGLを取って”Telles-GL”と名付けました。

アローキーなどを搭載しつつも、5行×16列に収まるコンパクトなサイズ感が最大の特徴のキーボードとなっています。

cerbekos00.hatenablog.com

2.設計のテーマ

Tellesの3Dプリントケースを作成するにあたり、次の3つテーマをもとにして進めました。

①ふち

 ”Jelly Epoch”や”minilo”のようなふちがあるキーボードに憧れがあったので、ふちがあるケースにしたいと考えました。

https://zionstudios.ph/elements/product

https://www.fumo-shop.com/varmilo-67-minilo-eucalyptus-wired-keyboard.htmlより引用
-categories/より引用

②レイアウト着せ替え

 Tellesは隠れた機能としてテンキーレス以外にもテンキー、エンコーダ、トラックボールレイアウトにすることができます。このレイアウト変更がケースに干渉せずにできる構造にしたいと考えました。

Telles-GLのレイアウトパターン

③DSMechで設計する

 ちょうど”Fusion360”のフル機能が無償で利用できる期間が終わったことをきっかけに、ほかの3DCADソフトに手を出してみることにしました。今回選んだのは”DesignSpark Mechanical(DSMech)”です。

www.rs-online.com

この製品は高機能で初心者でも簡単に操作できて基本的な機能は無料!との触れ込みで、まさに私にぴったりと思いながらインストールしてみました。今回、気になるけど試すのが面倒だという方もいらっしゃると思いますので、DSMechの操作に関して多少詳しく書いてみたいと思います。

3.設計(前半)

前半は主に設計の流れと操作について書いていきます。後半はTelles-GLケースの工夫した点などです。

まずはケースの元ととなるPCBやプレートのデータをDSMechへ取り込むところからスタートです。

KiCADを開き、ファイル>エクスポート>STEPを選択してエクスポートします。

DSMechを開き、デザインタブ>挿入>ファイルからstepファイルを挿入します。

デザインタブ


続いてケースを作成していきます。ここではPCBの外形から立体を作成し、それをくりぬいてケースを作ることとします。

ケースの外形を作成します。私はPCBの外形をもとにオフセットカーブを使って作成しました。デザインタブ>オフセットカーブでPCBの外形からのオフセットを数値で指定します。

左のストラクチャーツリーにスケッチされた線や円弧がカーブというコンテナの中に作成されます。ストラクチャーに表示された線や円弧のテキストを選択することでもスケッチされた外形を選択することができます。(ShiftやCtrlで複数選択)

スケッチされた線と円弧を面にします。デザインタブ>編集>フィルを使います。ストラクチャーツリーにはSurfaceが作成されます。

デザインタブ>編集>プルを使って立体にします。見ている方向を変えるのはデザインタブ>向き>スピンで行いますが、向きに関する操作はマウス操作がメインです。初期設定ではたしかShift+マウス中ボタンだったと思います。よく使うので私は右クリックに割り当てています。

ちなみにこういったDSMechの操作のカスタマイズは「DesignSparkオプション」から行います。ファイル>DesignSparkオプションから開きます。視点操作はナビゲーションの項目にあります。ついでにズームの拡大・縮小もKiCADと同じ方向になるように変更しました。

出来上がったSolidの内側をくりぬきます。デザインタブ>挿入>シェルを使います。

Sloidの上面を選択し残す幅を指定します。

角を丸めるフィレットもプルコマンドから行います。ダブルクリックで面取りする箇所を選択します。

マウス操作やRの数値指定で面取りします。

オブジェクトの移動は、オブジェクトを選択してデザインタブ>編集>移動コマンドを使います。移動したいオブジェクトを選択すると、移動の向きや回転のためのツールが表示されます。ここでは埋もれているPCBを上(Zの正方向)へ移動させています。

これだけでもそれらしい形になってきました。おおよそこれらのコマンドを使ってケースの設計を進めていくことになります。

DSMechではスケッチを使って線や円弧を書くと自動的にカーブコンテナへ格納されていきますが、たくさんあると線や円弧がどのオブジェクトのものであるか見分けがつかなくなります。ひとつひとつの線や円弧に名前をつけるということもできますが、コンポーネントとしてひとまとまりにグルーピングするのがいいでしょう。

ここでは新規コンポーネント化して「BC_outline」という名前に変更しました。

また、スケッチからプルによってソリッド化しましたが、逆に切り抜く操作もプルによって行います。たとえば、先ほどの工程で行った「シェルによってくり抜く」操作をプルで行う場合は次のような手順になります。

まずオフセットカーブを使ってくりぬく内側の線と円弧を作成します。

フィルを使って面(surface)を作成します。

くりぬく操作はプルで行いますが、その前に今作った面(Surface)をくりぬきを開始する位置まで移動させます。デザインタブ>編集>移動で移動させる面を選択し、立体を表示させます。

移動コマンド操作中に、画面の中にアイコンが表示されます。その中の一番下の「~まで」コマンドをクリックし、立体の上面をクリックすると面が移動します。この「~まで」もよく使います。

デザインタブ>編集>プルを選択しストラクチャーツリーの下の方にあるオプションープルからカットコマンドを選択し、マウスでカットしたい方向へ押し下げます。ちなみにこの操作により、内側外形のSurfaceは消えてなくなります。この消えてなくなるところは、履歴としてスケッチや操作が記録されていくFusion360とは挙動が異なるところです。

他にもよく使うコマンドや設定については次のようなものがあります。

表示タブ>ウインドウからモデルの投影方法(正投影orパース)を変更できます。またその近くにあるグラフィックスからは「オブジェクトの透過」について設定が可能です。

左が正投影、右がパース

色の変更は表示タブ>色から行います。なお、stepファイルから読み込んだオブジェクトにはロックがかかってしまい変更することはできません。が、ロックがかかっていないオブジェクト(自分で描いたオブジェクト)を含む状態でストラクチャーツリーの上位の階層を選択し、右クリックすることでロックを外すことができてしまいます。

表示タブ

デザインタブ>調査>寸法を使うと寸法を付加することができます。この操作ではストラクチャーツリーに自動的にアノテーションプレーンが追加され、そこに寸法が付加されます。

他によく使う機能として断面図があります。デザインタブ>挿入>プレーンからプレーンを作る面を選択します。

断面したい位置にプレーンを移動させ、クリップします。

他の3Dモデルファイルのインポートは、デザインタブ>挿入>ファイルです。”GrabCAD”というサイトでは様々な3Dモデルが公開されています。この3DモデルをPCへダウンロードし、DSMechへ取り込むことで3Dモデルをケース設計に活用することができます。実際にケースに取り付けしているような感覚で、ケース内部の位置関係やUSB穴の位置の調整などが行えるのですごく便利です。

grabcad.com

ProMicro。しゅごい

なお、Fusion360と操作の異なる点として、履歴コマンドがないことを書きましたが他にもあります。DSMechでは初期設定で”拘束”コマンドが有効になっていません。”拘束”はDesignSparkオプションから有効にできます(再起動が必要)。ただし、有効にすると操作が重たくなります。特に表示する3Dモデル部品の数が多くなると顕著です。

拘束コマンド

最後に、完成したモデルは出力したいオブジェクトだけを表示状態にし、デザインタブ>エクスポートを行うことでstlファイル出力ができます。このstlファイルをJLCPCBさんなどの3Dプリントサービスを行ってくれる業者へ提出することになります。

ちなみにDSMechでは作成したモデルをstepファイル出力ができないです。(有償のオプションでできるみたい)他のツールへ引っ越しが容易にできないのは良くない点だと思います。

4.設計(後半)

後半はTelles-GLケースを作成するうえで検討や工夫したポイントまとめてみたいと思います。

まずはテーマ①のふち。Telles-GLの最上段はファンクションキーエリアとなっているため、その形を残してこんな形状になりました。

細かい点としては上下に対し左右の幅も大きくなっています。またLED用の穴もあけてあります。

作成方法としては、ボトムケースから切り抜いた後、同じ大きさでの押し出しです。この際トップケースとして切り出したのはいいものの、それをどのように固定するかについて少し頭を悩ませました。今回はトップケースにナット用の6角形の穴をあけ、ボトムケースからネジで固定する方式としました。

そういえばこのあたりもFusion360に比べ不便なところで、Fusion360ではナットやネジなどの部品の3Dモデルをダウンロードできる機能でたくさんの種類から選ぶことができます。DSMechでも同様の機能はあるものの、操作性が悪くやラインナップもいまいちでした。

続いて、テーマ②レイアウト着せ替えです。

PCBではテンキーレイアウトをベースにしてOLEDやトラックボールモジュールを取り付けるようソケット穴を配置しています。

ですがスイッチプレートはマルチというわけにはいかないため、スイッチプレートはレイアウトの分準備する必要がでてきます。

そこで思いついたのが、本体用と右側のスイッチプレートを2つに分け、ケースとPCBを固定してしまうことでした。こうすることで右側だけスイッチとプレートを交換することができます。

動画を作っていました。

ケース側はあらかじめPCBに開けておいたネジ穴と同じ位置に穴をあければOKです。ねじの長さは4mmを想定するので、ねじ頭の分を考慮して穴をあけます。

他にも工夫したところとしてはUSBケーブルを本家GL516同様パネルマウントケーブルに対応させたことです。GrabCADさんからダウンロードしたパネルマウントケーブルの3Dモデルが大活躍で、ほかのパーツに干渉にしないかどうかを確認しながら位置を決定しました。

ちょうどお正月くらいから作り始めて10日間くらいでつくりあげました。春節の前に発注し、到着を待ちます。

5.完成

1/20に到着しました。ふちのトップケースはレジンの種類で色を変えて2つ注文してみました。

さっそく不具合がありました。”反り”です。写真でもわかるほど右に行くほど上に曲がています。

前回のTenalice-ambidextrousケースをJLCPCBさんへ依頼したときも「こういうケースの形状は3Dプリントの制作過程で中央に収縮する」みたいな話を聞いたことを思い出しました。こういうのを防ぐにはどうすればいいんでしょうね。

トップケースは大丈夫でした。底面がないから?

サリチル酸さんよりレジンを温める変形するというアドバイスをいただき、ドライヤーで温めたらちょっと改善。それからトップケースを装着しました。それでもかなりキツめですが前向きに考えると、ナットで止める必要がなくなったのでヨシ?

続いてパネルマウントケーブルをドキドキしながら取り付け。こちらは完璧といってよいでしょう。

PCBとボトムケースをスペーサーとねじで取り付けます。

スイッチプレートは今回も切断堂さんに依頼してアルミプレートを制作していただきました。金属はやはりかっこいい。

このプレート自体はケースに取り付けるのではなく、キースイッチを介してPCBに固定されます。エンコーダとトラックボールモジュールは手前だけしかスイッチがないのでポロンなどのフォームで隙間を埋めて安定させる必要があります。

キーキャップはALOHAKB Low Tea PBT Dyesub Keycapにしました。かわいい。

トラックボールはスイッチを避けて配置した制約もあって位置が下がり過ぎたのはちょっと気になるところ。操作は特に問題なし。

エンコーダはいかつい風貌になって大好きです。

Tellesことテンキーレス。

Telles-GLキットのおまけ用として作った透明シールを貼り付けて遊んでみました。

そこまで透明じゃないのシールの枠が見えてしまう...。光の力でなんとか...ならない。

最後はテンキーレイアウト。結局のところ、私はテンキーが大好きということは変わらずこれが一番お気に入りです。

側面はチルトをつけています。こうしてみると既製品のような見栄えかもしれない。

ということで全てのパターンについてきちんと取り付け可能なことを確認。ただし、エンコーダやトラックボールはPCBに部品をはんだ付けする必要があります。今回はレイアウト確認のみに留めました。

全体的に良い出来で、3Dモデルで位置合わせなどしたのが功奏した格好です。反り以外は申し分ありませんでした。

6.頒布について

こちらのケース(底面だけちょっと薄くした)のstlファイルをBOOTHで公開いたしました。またワンストップ(?)でケースが賄えるようにプレートも3Dモデルを追加してみました。アルミプレートを作ったデータと同じなのでたぶん大丈夫です。

cerbekoskeyboard.booth.pm

私はこのケースがとても気にいっってしまい、この記事を書きながら黒レジンでケース・プレートを発注してしまいました。職場用にもう一個作りたいと思います。

7.おわりに

今回はTelles-GLの3Dケース作成について、DesignSpark Mechanicalで作成したというお話でした。

DSMechはたしかに直感的に操作ができ、履歴がない分、柔軟で簡単にケース作成ができて、自分の性に合っていると感じます。また異なるツールを使ったことで新たな発見がたくさんあり、使ってみてよかったと感じています。そしてまた調べてみるとFusion360でも履歴を使用しないモードを発見。今度はこれを試してみようかな。

そしていつかは立体形状のキーボードにも挑戦してみたいですね。

それでは良いキーボードライフを。