センサーの数が増えていることが一目でわかると思います。それとモーター辺りに肉抜きの部分。モーターマウントを見るとわかりますが、左が新作で、モーターを1mm下に落としています。1mmかというと、基板厚が1mmだからです。落とし過ぎてもいけません。回路的なミスではなく、モーターが入らないという物理的なミスです。上の写真と比較するとわかりますが、肉抜きを更に拡張しています。2mmにしないといけない部分を3mmで設計していました。それに伴い、削った部分の配線も粉になってしまったので、UEW線でなるべく見えないように繋げました。見えてしまうので、今度緑色のUEWを使おうと思います。画像ではレギュレータが外されていますが、これは5Vラインがショートしていたのでトラブルシューティングで外したものです。モーターのコネクタと壁用のLEDを取り付けた途端レギュレータが熱々になる症状が出ました。テスターで導通チェックをして、5Vラインのショートを見つけ、レギュレータやコンデンサなど、問題があるかもしれない箇所を取り外していきます。それでも尚導通する5Vライン・・・結局問題があったのは6Pコネクタでした。はんだを流し込み過ぎたみたいで、黒いプラスチックの中で隠れて導通していたようです。これくらい小さな基板なら順を追って動作確認していたらトラブルシューティングも早いのですが、もっと大規模な基板の修理なんてやりたくないものです。そもそも、今回の肉抜きの寸法ミスをしても、1枚の基板なら手作業でどうにでもなりますが、これを仕事にしようと思うと、一か所間違えただけで大規模な損害になってしまったりするので、この手の職はレベルが高いとしみじみ思います。プログラムを書く仕事もやってみて大変だと気付いたし、基板設計や回路設計も仕事にはなぁと思ったりして、趣味にしてるからこそやりたくない仕事という、子供が考える「趣味を仕事に」とは一味違うものを感じます。話が脱線してしまいました。モーターを4mm前に出したので、いい形に収まっています。前作と比べて、トレッド幅が広まったように見えますが、実際には前作より更に1mm縮めています。コンパクトになったので目の錯覚が起きています。いうか早くモーターのケーブルを短くしないといけませんね。ケースに入れて持ち運ぶ時も支障をきたしています。何より機体を迷路に入れたとき、ケーブルに当たって初期位置がズレることがあります。何かと後回しにしてしまう部分ですが、一番見た目に影響を与える部分でもあるので早めに。簡単に動作確認をしてみました。Alca@Haido_Net一応動くので動作確認もパスです。17:13:40パソコンにセンサー値やジャイロの値、エンコーダー値を表示させて動作確認をしてもいいですが、一番手っ取り早いのは前作の機体のプログラムをちょっとだけ弄って流用して走らせること。一発で動いてくれたので嬉しくなりました。ハード製作は過去最速で完成したような気がします。殆ど前作の流用なのでノーカウントかもしれませんが、基板設計とマシン設計は2日、CNC加工は3時間、はんだ付けは8時間で完成です。前作の反省点を生かし、結構気に入った機体に仕上がりました。この記事のタイトルが「気付いたら」になっているのも、結構早いスピードで完成したからです。いえば、まだマイナーな部分の変更点と、なぜ細かいことなのにわざわざ作り直したかを書いていませんでした。センサーがまともになったことです。今までのセンサーは、海外から安物を輸入して使っていたのですが、実は右壁と左壁のセンサー値は左右で倍違います。一応それっぽく走らせることはできるものの、これから制御を詰めていこうと思うと、ソフト側ではなんとかならないレベルで質の悪いセンサーです。これからは正規品を買おうと思います。それにしてもフォトトランジスタが10個で三千円って高くないですか?基板を10枚発注して2500円なので基板の方が安い。今までは0.5mmの段差が精一杯でした。いうか、前方部分は摩擦を軽減するテープが常に地面と擦っている状態で、ブレーキの時はタイヤのグリップはかなり低下していました。今回は車高を1.5mm上げたので、段差対策にもなりますし、ブレーキングの安心感も上がりました。次に壁切れをしやすいセンサー配置にしたこと。実は少し横壁センサーの角度を変えています。基板の肉抜きを前作と比較すると、若干形が違うのが分かります。本当にこれがいい角度なのかはやってみないとわかりません。したら全日本までにもう一台作ってるかもしれません。真ん中についてるセンサーについてですが、このセンサーは先輩に進められたわけでもなく、自分が欲しいと思ったので付けました。これがあると、探索の時変な場所を見て前壁があると誤判定することもなくなりますし、連続スラロームのときの位置補正ができます。これは先輩に教えていただいたことです。何より、未探索加速ができるのではないかと期待しています。探索走行を見ててつまらないなと思うのは、一直線なのにスラロームしやすい速度でノロノロ走っているからです。2区画先まで正確に判断できれば、直線を行ける時は加速することができます。これをしようと思ったら、今の足立法では対応できませんが、少し弄ればいけそうなので夏休み中に頑張ります。マウス十則にもありますが、探索のスピードを求めるのは一番最後のことです。斜め走行等を実装してから探索の速度を上げようと思います。最後に、なぜわざわざ作り直したか。それは前作マウスがトレーサーのメイン基板となるからです。トレーサーのセンサー位置や、ちょっと変わったことに挑戦することもあって、頭の中でシミュレーションするよりも、実際に作ってみるのが確実です。マウスでスピードを出すのも楽しいですが、ライン上でスピードを出すのも楽しそうです。車と違って失敗してもOKなので、スリップ限界まで速度を上げられることは結構魅力的です。今月の進捗はこれくらいです。マウス、トレースの両方ともソフト側の進捗もそこそこあるのですが、まだ機体ができていないので実行できません。早くバッテリー届いてほしいな。来月には斜め走行ができるようになっていて、トレーサーのプロトタイプ機も動いているよな。前回の更新では基板にある程度の部品を付けて電源を投入し、バッテリー電圧とジャイロの値がPCへ送れるところまでやりました。今月の進捗は一応ハードが完成して、DCモーターの基本的な制御ができるようになりました。長すぎで切らないといけない物理的な作業が残っているからです。えると邪魔なので近いうちに切ろうと思っています。Faulhaberの1717という高価なものを使っているので、ケーブルの切断を躊躇ってしまいます...ASmouse_Earのスペックは以下の通りです。マイコン:RX631センサー:ST-1KL3A(フォトトランジスタ)MPU6000(ジャイロ)IE-512(エンコーダ)モーター:Faulhaber_1717バッテリ:LiPo_2S(7.4V)120mAh重量:100g(バッテリー含む)サイズ:100*69*24(ケーブル除く)モーターマウントはCNCで切削しました。使用したマウスでは、モーターマウントやピニオンギヤ云々で、ある程度トレッド幅が決まってしまいます。先輩たちのトレッドより9mm程狭くして設計してみました。リップしても壁に当たる率を落とせるのではないかと考えました。共立電子のモジュール0.5_12枚歯の穴径φ2mmのピニオンギヤを購入します。モジュール0.5_12枚歯穴径φ1.5mmのギヤの入手が難しかったので、手元にあるギヤで解決しようとしたらトレッドが狭められそうだなと思ったのがきっかけです。1717のシャフトはφ1.5mmなので、共立のギヤでは填らないんです。そこでポムをφ2mm,長さ5mmの円柱にCNCで切削して、ギヤに圧入します。簡単そうですが、小さすぎるので力が入らず難しいです。先輩に相談すると、バイスに両面テープを張って、ポムとギヤを両側に張り付けて位置を微調整をしながら圧入するといいとアドバイスをいただき、ゆっくりと圧入していくことにしました。すると見事に填ってくれました。次にピニオンギヤを5mm厚から2.5mm厚までCNCで薄くします。スパーギヤが2mmなので、ピニオンも2mmにしようかと思いましたが、あまり薄くするとピニオンギアが滑って信頼性に欠けるので、気持ち太めにしました。最後にφ1.5mmの穴を中心に空ければ1717に填るピニオンギヤの完成です。製作費は25円!モーターマウントにモーターとタイヤを取り付け、スルスル回ることを確認して一安心です。作ってからわかったのですが、設計が甘いせいで色々と隙間ができたので、まだ3mmほどトレッドを狭められそうです。次回作では修正します。この画像では仮止めなのでベアリングが入っていませんが、完成形ではタイヤ1つにベアリングを2つ入れて両持ちにしています。その二つのベアリングの間にスペーサーを入れたり、両外側にもスペーサーを入れることによって、ネジを強く締めても引っ掛かりが軽減されます。このことについては他の方が詳しくまとめられているので割愛します。4輪になっていますが、最初の内は2輪で行こうと思います。4輪だと再現性があまり良くないとのことなので、壁補正や壁切れ補正等できるようになってからにします。2輪でゼロフィードバックをやってみました。宴会芸と言われているものです。角速度をゼロに近づけるようにPID制御を掛けています。実質PI制御になっています。ゲイン調整の問題なのか根本的に数式が違うのかはまだ分かっていません。何か勘違いしていると思います。こんな制御では誤差が貯まり過ぎてまともに使えません。Alca@Haido_Netジャイロを使った角速度フィードバック。Dゲインの調整が上手くいかないからPI制御でやってる。23:56:03動画の中で箱を前後に振る様子がありますが、これはエンコーダーを使い、機体の位置もPIDで0に近づけている確認です。エンコーダーを使って機体の速度を求め、ジャイロを使って角速度を測定し、ゼロからの差分を実測値の角速度とします。目標値と実測の角速度を使えばPID制御が組めると思います。直径が少しくらい違っても、自分で補正を掛けながら真っすぐ走ってくれるようになります。走ってくれているみたいです。<補足>先ほど先輩から電話でご指摘がありました。「タイヤとホイールはタミヤの既製品を使っているのであれば、直径が違うなんてことはそうないから、この場合はギヤの干渉の違いとかタイヤの締め付け具合などの要因を疑うべき。タイヤの直径が違うだけならその分タイヤの直径値をソフトで調整してやればいいだけ。変に干渉する問題を解決するためにゼロフィードバックを使うといい」とのことです。ご指摘ありがとうございます。パルス(※1)を出力する高分解能であれば、1msで計算させてもある程度正確な速度が求められています。高分解能なエンコーダーでも、自分で取り付けるとなるとズレが生じるので、そこはサンプリングタイムを伸ばして移動平均を取ったり、カルマンフィルタを使うなど、少し面倒なことをしないと使える値が取れないらしいので、最初の内はエンコーダー付きの既製品を買った方がいいかもしれません。(※1)2相のパルスのエッジを検出させているので、実質4倍の分解能で計算しています。22:39:22これは最初の動画でやっていた角速度補正を掛けつつ、前後に台形加速させてゆらゆらしている様子です。→500ms減速→500ms後ろに加速→500ms減速をループしています。モード選択はタイヤを回してエンコーダー値を足し引きして設定します。モード数に応じた値をLEDを使って2進数表示させていますが、バッテリーに隠れて見えません!スイッチもそうですが、バッテリーが邪魔で押しづらいです。製作に当たって手こずったことは、センサー値が4個中2個取れなかったことです。原因はセンサーが死んでいることによる不具合でした。正常なフォトトランジスタは、太陽光を当てると抵抗値が変化するのに対し、不良品のフォトトランジスタは全く抵抗値が変化しません。このセンサーの入手先はEabyなので文句は言えません。10個買ったのですが、そのうち5個が不良品でした。Eabyで半導体を購入したら、まずは個別に動作チェックをしてから実機に取り付けるようにしないと無駄に時間を取られてしまいます。左が本物ですが、寸法や見た目は大体同じです。刻印のされ方が違います。同じ環境に置いての抵抗値も本物と違います。それでも偽物は偽物でまとまった値を返してくれているので、動作品を選別すれば使えそうなので使っています。壁の判別や補正等、問題なさそうな値が得られているので、今作はこれで行きます。これから迷路を走らせるためにプログラムを組んでいきたいのですが、応用数学と量子力学と原子力の中間テストがあったり、物理学IIIと一般教養のレポートがこの時期にあるのでマウスをやっている時間があまり取れません。(今は量子力学より古典力学の方が必要なんだよ...)それでいて来週はマイクロマウス合宿でプチ大会に応募しているため、マップ記憶とかそんなレベルは望んでないので、とにかく迷路を隈なく走り回れるようなプログラムを組まないといけません。右手法や左手法では完走できないコースにしてくると思うので、ダンゴムシのように左に曲がったら次は右みたいな独特なものにしても面白いと思いますし、曲がる方向をランダムにして運任せに進めるのも面白いかもしれません。運任せだと一発で最短経路を行ける可能性も・・・!ということで、一週間後にはある程度走れるようになってることに期待して今月の進捗報告とします。201617:27カテゴリ電子工作マイクロマウス・ロボトレースマイクロマウス始めました。暖かくなり過ごしやすい季節になりました。こんな季節はお昼寝が捗ります。サークルには新入生が数人来てくれました。名前を覚えきれていないので頑張らないといけません。1年ほど前のブログ更新で、私がサークルに入部してマイクロマウス班に入ったと書きましたが、1年間全くマウスに触れずに終わってしまいました。新入生が入ってきて、流石にマウスを全く知らないマウス班の先輩では駄目だということで、かなり急ピッチで基板データを作って発注しました。