3Dマウス① 完全自作で3Dマウスを考えてみる。
2022.11.28
前回の3Dマウスの記事はこちら
https://randol-news.net/art/00554.html

ORBIONを使っていて、なんかしっくりとこないので、
自分でソースから何からオリジナルのを作ってみようかと。
ドライバーから作るのは無理だけど、ショートカットキーを使うだけなら簡単だからね。
途中で投げ出すかもしれないけどね、まー気長に遊び半分で(;´Д`)
ちなみにORBIONを作っているときの記事は↓こちら
https://randol-news.net/art/00537.html

先日の調査でジョイスティック KY-023と
ロータリーエンコーダの2つの使い方はわかりました。
この2つが使いこなせれば3Dマウスが完成できると思います。

あと使う部品は、Arduino本体とボタン。
これらを使いやすい位置にうまく配置して、
制御プログラムを組み込めば完成・・・のはず。

新規の開発では一発でパーツを作るのが難しいので
テーマに基づいてテストモデルを作ってみようと思います。

まず、拡大縮小はロータリーエンコーダーで。中指か人差し指で操作。
マウスのスクロールと同じ感覚。

回転はジョイスティックで操作。ゲームパッドのように親指で扱う。
パンはジョイスティックを押しながら動かしたい方向に倒す。
ゲーム感覚の方が扱いやすいかなと。
イメージはトラックボールみたいな感じ。ボールがスティックになっただけ。

では早速試作。
まず親指でジョイスティックを動かすとして
配置する角度はどれくらいがいいのか見当もつかない。
扱いやすい位置と角度に配置したいので、
その場所を見つけるべく可動式の台座を作ってみた。



こんなイメージ。最大50度まで傾けることができるようにした。
50度まであれば親指がどの位置にあっても合わせられるかな。



親指の力が常に乗るので強度が必要。
光造形はむり。砕けてしまう(;´Д`)
私の大好きなABSで印刷しよう。
しかし造形のサイズはかなり小さい。0.4mmのノズルではかなり厳しい。
今回は0.2mmノズルで作っていきます。
つまりやすくて扱いにくいけど・・・



出来ました。反りもなくきれい。完璧に対策したABSは美しい(;´Д`)



組んでみる。うーん、ネジ穴の位置に微妙な設計ミスがあるな・・・(;´Д`)
とりあえず強引に穴をタップで開けたけど直さねば。



ジョイスティックを載せてみた。
ピンの突起が印刷物の窪みにはまり切っていない。ここも改修の余地ありか・・
でもこれで角度や位置関係の調査はできる。



次はロータリーエンコーダ。
ホイール部分を買おうと思っても軸が合うものが見当たらないので自作することに。
フレームはABSで、指で回すところはTPUで作成。



シャフトを止める部分もTPUで作り、穴を少し小さめにしてシャフトをがっちり掴むようにした。
フレームは上蓋と下蓋に分け、直径2mmのイモネジで止める仕様に。



TPUでの印刷イメージ。右下に1つ部品が追加されているが、これは軸受け。
シャフトをベアリングで受けるつもりだけど、6角形に対応したベアリングは無いので、
一度この軸受けを緩衝材にしてベアリングに固定する。



フレームはABSで印刷。



かなり小さい。0.2mmノズルじゃないとここまで精密にはできないと思う。
というかTPUで0.2mmノズルは初めて使いました。ちゃんと印刷できるんだなぁ・・・



使用するロータリーエンコーダーはかなり小さめ。
軸は六角シャフト。
これに合うシャフトを売っているところがなかなか見つからない。
Aliexpressでもないし、amazonもない。misumiでもないし、モノタロウもない。
もう自作するしかない(;´Д`)



一番に思いつくのは6角レンチ。近場のダイソーなどで100円で買える。
加工する手間は増えるけどしかたないね。
送料とかいろいろ考えればこれが一番やすいかな。
犠牲にするのは2mmのレンチ。



15mmで設計したので、それに合わせて切っていきます。
2本分はらくらく取れるとおもう。無理すれば3本いける。



切るのはグラインダーで。直接指で押さえるのは危ないので、ロッキングプライヤーで掴もう。
100均で売ってるレンチだからおそらく粗悪品。簡単に切れると思う(;´Д`)



うん、余裕。でも切れた瞬間どっかに飛んでいきそうになるので、無くさない対策は必要か。
素材は磁石にくっついたし鉄かな?(笑)



仮組。
TPUのグリップ力も申し分なし。
印刷精度もよくきっちりはまってるようだ。



M2のイモネジで固定。そのために1.8mmの穴を2か所用意してありました。
ABSだとイモネジを押し込めるだけで効くから楽でいい。



設計通り。なかなかいいじゃない(*'▽')



ホイールを支える台座を作成。
ベアリングと、ロータリーエンコーダを固定する部分。
60度の角度をつけて支えるように設計した。



ベアリングやTPUで作ったシャフト受け、ロータリーエンコーダの
かみ合わせを確認してみる。かなりの精度で出来てるみたいだ。
ただ設計の問題点はいろいろ見えてきた(;´Д`)



ホイール込みで組んでみる。
0.2mmノズルの0.05mm積層だと積層割れがヤバイかと思ったけど意外と強固。
上から力をかけても支えてくれそうだ。
こうやって組んで実際に回してみると、
ホイールはもう少し太くてもよかったなと感じる。
試作は大事だなぁ・・・



試作した部品の位置関係を確認するために両面テープを張って
段ボールに張り付けてみる。



私の手の大きさに合わせるとこんな位置関係。



手を置いた画像。中指か人差し指でホイールを回し、
親指でジョイスティックを操作する。
これで完成できたなら操作性もいいし、疲れないぞ(*'▽')



手の内側の空間を描いてみた。
この円の中にArduinoやら配線やらを詰め込むことになるけど、思っていたより空間は広そうだ。



親指の下の空間は割と広い。
余裕のある空間にボタンとか付けた方がいいのだろうか?
でも私はあまり使わない気がするな・・(;´Д`)



USBケーブルをどこから出すのかという問題が付きまとうけど、
ロータリーエンコーダとジョイスティックの間から通していくしかないかなと。
Orbionと違い線の脱着はできないようにしてしまえば余計なトラブルを招かないと思う。
普通のマウスも脱着できるのは充電式だけだしね。



線をわかりやすくして、上から撮影。この画像から底面のモデリングを行おう。
さて、次はコーディングを研究。
ArduinoからFusion360へキーボードの信号を問題なく送り込めるかがカギだな・・(;´Д`)

次の3Dマウスの記事はこちら
https://randol-news.net/art/00572.html
Phrozen Sonic Mini 4Kが送料無料で買えるチャンス!
2022.09.30


突然Phrozenから案内が届きました!
現地時間9月30日~10月2日までの間、
Sonic Mini 4Kが送料無料で買えるチャンス。
しかも通常より+1$足すことでレジンが1本おまけで付いてきます。
今までで一番お得なんじゃないかな?
私が買ったときは送料が$99.99掛かったのでえらい残念感が強かったです。
円安のせいで買いにくかった人はこのチャンスにどうぞ。

激安会場は
Click here
↑です。セット数に限りがあるので、お早めにどうぞ。

レジン激安です。
2022.09.23


Phrozenからレジンの特売です。
といっても限定40セットが送料無料になるというものですが、
Phrozenから買うのが日常になっている人はお得です。

今回の特売対象はウォーターウォッシャブルレジン。
1kgが3本で$114.99
いまドル円相場は142円なので、日本円だと16,329円というところですか。
amazonで同程度のレジンを買おうとすると、


ELEGOO 水洗いレジン グレー ¥12,750


ANYCUBIC 水洗いレジン グレー  ¥14,697

このあたりでしょうか。
でも品質でいうとPhrozenを上回らないと思うので相場的にはすこしお得?
というか円安が大きすぎますね。120円代だったなら
14,000円でおつりが来るので激安だったはず。
円安のせいで折角のセールがちょっと霞んじゃってますが、
高品質レジンが欲しい人はこのチャンスを生かしましょう。

特売へのリンクはこちら
Click here
3Dマウスの自作⑨ 動作不良の修正
2022.09.11


前回の記事はこちら
https://randol-news.net/art/00547.html

レバーの上方向と右方向の動作があやしい。
動画を見るとマウスカーソルのアイコンが変わるので、
検知は出来ていると思う。
反応が鈍いというか、倒している傾き量が適切に伝わっていないかんじ。



ジョイスティックの故障も考えられるけど、
まずは直接軸を倒してみて確認してみる。
どの角度でも問題なく動くことから、
可動域不足ということがわかります。



横から見るとジョイスティックの軸が中心から右にズレていることがわかります。
これじゃ、右の可動域が狭くなるはずです。
恐らくは使用しているジョイスティックが設計時の物と違い、
仕様変更されたのだと思われます。
穴位置も微妙に違いますしね。

解決方法は、

・底面の外装を修正し印刷しなおす。
・Arduinoの台座を修正し印刷しなおす。
・あとはジョイスティックを設計時のものと完全一致するものに変える。
・ジョイスティックの穴位置を変更する方法

この4つが思い浮かびます。



3Dプリンターで印刷しなおすのは正直面倒です。
楽なのは4つ目ですね。
基板を横にスライドできるように穴を拡張してみました。



基板位置をmm単位で調整しネジで固定。



左右バランスを均等にすることができました。
ついでに前後のバランスも調整しています。



どの角度でも動くようになりましたが、
逆にどの角度でも動作範囲が狭くなっている気がします。
これを解消するには、当たる部分をカット(造形しなおし)するしかなさそうです。

まぁ、回転や移動の速度はマウスを動かすだけで変化させることができるので、
問題ないと言えばその通りですが、もう少し移動量が多くてもいいですよね。



ちょっとソースを覗いてみましょう。
main.cppの908行目以降に、
ジョイスティックの処理をしている部分があります。
注目は929行目と937行目
この行でマウスカーソルを動かす処理をしています。
なんと私は大きな思い違いに気が付きました。
今までさんざん画面でマウスカーソルが動いているところを目撃していて
なぜ気が付かなかったんだろうかと・・

このOrbionはマウスカーソルを動かすことで
回転やパン動作をエミュレートしてるのです。
つまり、Orbionの操作とマウス操作は連動しており、
マウス操作とOrbionの操作はバッティングします。
正直致命的かもしれません(;´Д`)
3DConnectionのSpaceMouseは独立しているので、
左手と右手で別の作業を同時に行っても不都合は起きません。
Orbionも同じような動作なのだと思っていました・・
ショックです(;´Д`)

とりあえず改造して最初の目的である移動量を大きく変えてみます。



X方向、Y方向に対して移動量を3倍にする記述を足してみましょう。
これでかなり改善されました。
しかし、マウスカーソルと連動しているので、
カーソルが画面の境界にぶちあたったりすると、
それ以上進めないために回転処理が止まります。
3倍にしたので激突する機会も増えました(;´Д`)
なんか回転処理が動いたり止まったり不安定だなと思っていたのですが
原因がこんなことだったとはショックです。

ソースをもっと解析していい解決方法がないか研究する必要がありますね。
むぅ・・・

次の3Dマウスの記事はこちら
https://randol-news.net/art/00569.html
3Dプリンター オーバーホール FDM編
2022.08.26
最近、Cetus Mk3の印刷精度が落ちてきました。
特に円の形が歪んできてる気がします(;´Д`)
使わない間、カバーなどかけずに放置してましたからね、
リニアスライダーにゴミが詰まっている可能性があります。
あと所々ネジが緩んできています。振動で緩むんですねぇ・・(;´Д`)
ネジが緩んでいるせいかレールを固定しているパーツが
水平からズレてきている気がします。

しばらくFDMで印刷する予定は無いのでオーバーホールしてしまおうかなと。



まずは最もホコリの影響を受けると思われるX軸のリニアスライダー
これを分解するのは結構面倒な仕事です(;´Д`)



外してみると予想通り埃を取り込んでいましたね。
あとグリス切れも起こしているようにみえます。
あんまりいい状況ではないな(;´Д`)
と思いつつ、他に目についた部分が!
ボール1個分以上スキマあいてね?
これが正しいとは思えんが本当のところはどうなんだろう。



以前にスライダーの修復に使ったボール。
写真では中華ベアリングと書いてますが、ミスミから買った日本製。
x軸とy軸はz軸に比べ劣化が早いはずなので
ボールを交換できるならやりたいなと思って引っ張り出してみました。



片側21個、両側で42個入っていました。



左が今回のリニアスライダーのボール。右が日本製の在庫ボール。



misumiで注文したボールは3/32インチ。つまり2.381mmです。
このリニアスライダーに使われているボールは2.48mm。
恐らくは2.5mmボールでしょう。
やっぱりサイズが微妙にちがいますね
使えんか・・・(;´Д`)
0.02mm摩耗してるんだなぁ・・ 交換したかったわ。



ジムニーで使ったグリスが余っていたので、
ビン詰めにしてたやつを使います。
スミプレックスなので万能です。



ボールをパーツクリーナーで洗浄。
元あったところに丁寧に詰めてグリスアップしました。





これはZ軸のリニアスライダー。
なんか仕様が違う(;´Д`)
グリスべったり。レールもない。
これは見たことないタイプだわ。



ボールを外してみると、ゴム製のレールが奥に隠れていました。
これ、ゴムが切れたら詰むんじゃん?
耐久性に疑問がある気がするけどあまり動かないZ軸だから平気ってか?
いやいや経年劣化で切れるっしょ(;´Д`)
たしかCETUS Mk2からMk3になった時に
レールのメーカーが変わっているという話がありました。
これのことか。
これ、次のオーバーホールの時に丸ごと交換ということにしよう。



ボールの数は全部で58個(29+29)、X軸より大きいスライダーです。




玉の大きさは2.49、おそらく2.5mmですね。0.01mmは摩耗でしょう。



ゴムレールに玉を入れながら奥に詰めていくのは困難を極めたけど
千切れることなく全部を入れることができました。
グリスを多めに塗布し玉が脱落しないように。



Z軸用は油断したらスライダーが吹っ飛んでいく可能性があるので
両端を輪ゴムで止めておきましょう。
取り付けるまでの保険です。



これはY軸のスライダー。
恐らくX軸と同じものと思われ。
これもボール1個分のスキマがあるなぁ・・・
このメーカーはこれがデフォルトなのね。

グリスがあまり切れてない様子。
しかも埃を巻き込んだ様子はなし。
不調の原因はX軸だったかな?(;´Д`)
こちらもきれいにクリーニングしてグリスアップしておきました。



ケース内を確認。
基板が埃まみれになっているかと思いきや意外とキレイ。
FANが無いので逆に埃が浸入しないのかもしれない。
一応ブロアで吹いて掃除。



クリーニングが終わったリニアスライダーを取り付けます。
その際プレートにキッチリ水平がでるようにネジ止め。
アルミ棒をつかってスキマを確認しつつ、慎重にネジを締めていきます。



ヘッドも分解。
エクストルーダー一体型なのでパズルのようにちょっと複雑。
サーミスタとヒーターは壊れやすいのでコネクタを外してしまいましょう。



同じタイプのコネクタが使われているので、
接続場所を間違えないようにメモ写真。



ヒーターコアの中は逆流したフィラメントが付着していました。
これが盛り上がってきて印刷が止まったことがあります。
奇麗に掃除してあげましょう。
そしてよく見るとヒーターコアに見慣れない金属板が張り付いていますね。
これは何だろう?ノズルスロートの固定用かな?
それとも熱伝導率が低いプレートを挟んで熱が逃げないようにしてるとか?
謎だわ(;´Д`)



奇麗に掃除完了。



全部組み立ててオーバーホール完了。

今回のオーバーホールで感じたこと。
PLAパーツで作られたであろう部品がちょっと劣化気味かな。
昔ABSで作った予備パーツに交換すべきか検討中。
あと、ベルトとスライダーを連結するパーツがPLAだと強度不足がぬぐえない。
海外で金属パーツに換装するひとでてきてるけど、納得(;´Д`)



PLUで印鑑キャップを作ってみた。
円がきれいになってがたつきが消えた(*'▽')
やっぱりリニアレールだったんだな・・・



テストが終わった後は、埃が付かないようにビニール袋を装着して完了っと。
専用のケースがほしいですなぁ・・・・(;´Д`)

- CafeNote -