![見出し画像](https://assets.st-note.com/production/uploads/images/95546838/rectangle_large_type_2_17d4b781486655061d295c5a44b806e8.jpeg?width=800)
新・コイル巻き機の制作(2)
●リミットスイッチの作成
前回の続き。リミットスイッチが入手できたので、引き続き制作。
![](https://assets.st-note.com/img/1673597424796-Ao7DN7Q36p.jpg?width=800)
スイッチをちょうど良い位置に固定するための部材を3Dプリントで作成し、設置する。ヘッドの部分が移動してこのスイッチを押すと、これ以上は行かない様にコントロールする。
![](https://assets.st-note.com/img/1673597616440-SyOQCk5pHQ.jpg?width=800)
Raspberry PiのGPIO、空いているポートを探す。モータードライバが使っていない番号を試していくが、使えると思ったところがもう一度プログラムを走らせると「そのポートは使用中」になる。他のポートもそうなので、原因を調べる。ほほう、プログラムを終了する時に、GPIOを解放しなきゃいけないのか。やってみると、なるほどうまくいく。次にモーター(ヘッド)がスイッチを押したら、反対方向に数ミリ動いて止まる様にする。ここがモーターの起点=0(ゼロ)になる。
●レーザー
今まではコイルを巻く位置を決めるのに指標もなく目分量でやっていたが、今回はちょっと専用機っぽくレーザーで位置を確認できる様にした。レーザーのオン・オフは手動のスイッチにするつもりだったが、どうせならソフトウェアでコントロールできる様にトランジスタを間に一つ噛ませた。これでGPIOの一本でオン・オフができる様になった。レーザーにはレンズを付けてあるので、ビームは一本の線状になる。
![](https://assets.st-note.com/img/1673598538395-qok51eBCJ9.jpg?width=800)
●ディスプレイ部
元より使っていなかった5インチのLCDユニットを使うことにしたが、このユニットはタッチパネルがついている。よって直接画面をタッチしての操作もできそうなのだが、モータードライバ(HAT)とGPIOがかぶって使えない?様なのでタッチは断念。
本体にどう固定するかを考えている時に、使っていなかったカメラ用の自由雲台を発見、これに土台とLCDのカバーを付ければなんとかなりそうだ。
![](https://assets.st-note.com/img/1673599230998-pLtSAHzZ9y.jpg?width=800)
●全体の組み立て
他に注文しておいたケーブル類やらボルト等が揃ったので最終組み立て。思ったよりケーブルが短かったりして、各ユニットの位置や向きをいろいろ調整して組み上がった。
![](https://assets.st-note.com/img/1673602767233-Ig60pPTmKi.jpg?width=800)
![](https://assets.st-note.com/img/1673602813412-f1q8QJV6iP.jpg?width=800)
写真のレーザーを映した紙は仮のものなので、近いうちにちゃんとカバーを作る。電源はスイッチがないと不便なので、小さい基板にジャックとスイッチを付けて、間に挟んだ。
![](https://assets.st-note.com/img/1673603044071-DEvCzXC85x.jpg?width=800)
![](https://assets.st-note.com/img/1673603114784-XsXEWU6Dq0.jpg?width=800)
●ソフトウェア
コントールソフトはPythonで組む。サンプルから動くものはできたが、各パラメータの設定をどうするか考える。初めは物理的な押しボタンスイッチをパネル上に作るつもりでいたがGPIOからの配線が面倒なので、画面上のボタンをマウスでクリックすることにした。これならば配線は全く必要ない。
PythonでGUI画面を作成する方法はいくつかありそうだが、一番基本的なTkinterを使うことにした。まずは基本的なところで、ウィンドウを開き、設定する数値と表示、ボタンを押すと動く様にする。今のところ起動するたびにターミナルを開いてプログラムを動かさなければならないが、(近い)将来的には電源オンで自動的に起動する様に作るつもり。一巻き(一回転)ごとに数字が変わる様にしたが、なぜか変わらない。調べると画面のアップデートが必要だった。1行入れて問題解決。
![](https://assets.st-note.com/img/1673603773449-O4S5JfPHay.jpg?width=800)
さらなる画面の設計は次回に続く。
この記事が気に入ったらサポートをしてみませんか?