目次

進捗記録

月次のログ

2017/11

2017/12

2018/1

2018/2

2018/3

2018/4

2018/5

2018/6

2018/7

2018/8

2018/9

2018/10

2018/11

2018/12

日次のログ

2017/11

11/18

マイクロマウス2018開始。まずは、おうち迷路を手に入れることが重要と判断。

11/25

ホームセンターで迷路のベース用の板を調達した。

11/28

fusion360で迷路の柱を設計して、dmm.makeに発注をかける。fusion360に初めて触ったが操作がうまくできず、やきもき。

2017/12

12/2

dmm.makeに発注した柱が届く。できはいい感じ。さらに、迷路のベースを塗装した。

12/2

迷路のベースに線をひたすら引く。これはつらい作業だ。

12/3

dmm.makeに迷路の柱の量産分を発注した。

12/12

dmmから量産した柱が届く。おうち迷路が完成。

12/17

新作の設計のためにモーターの選定ツールを作成。

12/18

とりあえず、2017年度のマイクロマウスのソフトウェアブラッシュアップをしようと目論む。 まずは、マイクロマウスの軌跡の設計方式についていろいろ考える。

12/29

軌跡の設計方式が固まったので、実機に実装してみようとして2017年マウスを起動したら破壊してしまった。

12/30

2017年マウスが死んだので、新作を作る決意を決める。

2018/1

機体の設計開始。まずはホイールから設計する。

1/11

デジモデに発注したホイールの一次試作が手元に届く。

1/13

内径1mmのベアリングDDL310と一緒に使えるスペーサーを発見した。 http://www.gizmoszone.com/shopping/agora.cgi?product=Spacer;ppinc=1a

1/14

デジモデに修正版ホイールの発注をかける

1/17

ちっちゃいスペーサーが届く

1/21

モーターマウントの設計が少し進んだ。

1/26

FDM式の3Dプリンタが配備される。

2018/2

2/9

新作のイメージが固まってきた。

2/11

3Dプリンタでひたすらモックをつくりまくって、設計が収斂してきた。

2/21

3Dプリントしたものの塗装実験を繰り返す。塗装はむずかしいなあ。

2/25

足回りをFDM式の3Dプリンタで作ることが無理とわかりはじめる。光造形式の3Dプリンタの購入の検討を始めた。

2018/3

3/4

光造形式の3DプリンタをAliExpressでポチってしまった。

3/22

光造形式の3Dプリンタが配備される。

3/23

光造形式3Dプリンタのテストピースを印刷してみた。

3/24

新作マウスのパーツを光造形式の3Dプリンタで作ってみた。精度的にはモーターマウントも問題なく作れそう。

3/31

回路図がひけた。まだ、要確認。

2018/4

4/11

色々なパラメーターを変えながら印刷実験を繰り返し、モーターマウントの内製化に成功した。

4/20

新作マウスの基板のアートワークを始める。

4/29

光造形用プリンタのにおい対策のため、3Dプリンタ用エンクロージャーを作成した。

2018/5

5/2

アートワークがほぼ完了する。

5/3

PCBgogoに基板を48時間特急コースで発注した。

5/8

DHL受け取りチャレンジ失敗。

5/9

PCBgogoから出荷された基板を受領。

ひととおりの部品を実装する。ジャイロセンサをホットプレートリフローした。

5/14

AD変換ができないピンにフォトトランジスタの出力をつないでしまったことが発覚。 UEW線で修正。

5/20

UART、AD、DA、ジャイロ、位相係数の動作確認完了

5/23

MTU0、MTU3、MTU4がうごく。

5/24

MTU7がうごく。

5/25

充電基板の回路が完成。PCBgogoに発注をかける。

5/28

壁センサの動作確認も終わり、ついにハードウェアが完成。

5/30

調子にのって、高速スピンさせていたらロボットを破損させる。DACのパッドがもぎ取られたため、裏面UEW配線になる。

2018/6

6/2

リポの充電基板を2つ分作成した。この充電基板で一度に4つのリポが充電可能なので、合計8つのリポが充電可能。 さらに、ひたすら電池を量産する。全部で12個作った。

6/8

現状の配線や仕様に関するメモをまとめはじめた。

6/9

スイッチバックができるように2017年のソフトウェアの改修を開始。 ノートPCに開発環境の構築を始めた。とりあえず、e2studioとコンパイラとflashプログラマーは入れた。

6/10

現状の配線や仕様に関するメモのまとめ完了。マイクロマウス2018の前半戦の振り返りのために、 2017/11末から、2018/6上旬までの進捗記録をwikiに書いてみた。

6/11

機体のギア比などを算出してwikiに記述した。 BTモジュールで外部に飛ばす変数のbyteアサインを決定しwikiに追記した。

6/12

開発環境構築時に必要なe2studioの設定項目をまとめた。pluntumlがdokuwikiで使えることを確認した。ただし、日本語は豆腐になってしまう。

6/17

モーターとファンを指定dutyで回すためのクラスを書いた。エンコーダーから速度と角速度を算出するクラスを書いた。次は台形加速を書いてしまいたい。

6/19

一区画の直進ができた。マイクロマウスへの第一歩を踏み出した。

6/20

壁制御ができた。ただし、壁の切れ目対策はまだ必要。

6/24

90度スラロームの実装、スイッチバック処理の実装が完了しクラシック迷路の探索ができるようになった。 次のTodoは以下

6/28

最短走行の実装を開始。走行パス記述用のクラスを実装した。

2018/7

7/1

最短走行の実装を継続中。なんかバグっていると思われる。 ハーフサイズの調整用の迷路を作った。

7/3

最短走行の実装ができた。 PIDパラメータをひたすら調整するもぷるぷるが止まらない。

7/4

引き続きPIDパラメータを調整。すこしはぷるぷるがマシになる。加速時に結構距離がずれることが判明。加速度センサの出力を使えないか試してみる。

7/7

データの取得に使っているラズパイのSDカードが寿命っぽいので、jetsonTX2を代替にしようとセットアップ実施。しかし、jetsonTX2ではbluetoothがうまく受信できなかった。また、3Dプリンタのフィラメント詰まりが発生してノズルを分解したが、PPEのチューブがノズルに刺さらなくなり元に戻せない。

7/8

jetsonTX2に見切りをつけ、ラズパイをUSBディスクでブートすることを試みて成功。さらに、死蔵していたラズパイ用の3.5インチのモニタが使えるようになった。

7/9

3.5インチのモニタをつけているとラズパイが電力不足で不安定になることが判明したためモニタを廃止。

7/13

ハードウェアが絶不調だったので、大改修を行いなんとか走れる状態に回復。

7/14

金沢草の根大会へ出発。なぜか精神と時の部屋が展開されていた。クラシックはとりあえず走れる状態まで調整したが、 ハーフは後ろの前壁センサが断線したため調整を断念。トレーサーも少しトレースができる状態にはできた。

7/15

大会当日。トレーサーは完走できず。クラシックマウスは何とか1ポイント奪取。ハーフはリタイヤ。

7/16

久しぶりに休みを取る。

7/17

ロボットのダイエットを決意、43gから28g程度までにはできそう。秋月にスリムロボットケーブル、小型のスピーカー等の部材を発注。

7/21

ロボットの軌跡生成ツールをgithubにアップロードして公開した。また、ロボットの調整用のラズパイの箱を用意し取り回しがよくなった。

7/22

クラシック競技用の軌跡生成notebookを作成した。ハーフでも同じものを作らねば。

7/23

ハーフ競技用の軌跡生成notebookを作成した。次は車体の軽量化作業に取りかかる。

7/28

C++を手ごろにいじるための環境としてjupyterにxeus-clingを入れた。Windowsで環境を構築するならばWSLの力を借りるのが一番よさそう。

7/29

車体の軽量化のために新たなセンサホルダを設計 → 印刷 → 塗装した。センサと基板間の配線作業がめんどくさいが早くやってしまいたい。

2018/8

8/15

少し間が空いてしまったが、壁センサと電源回りの配線が終わりロボットの軽量化が完了した。軽量化により重量が28gとなった。

8/18

javascriptとC++間の通信方法を模索。いろいろ試したがC++側はwinsock2.h、javascript側はnetを用いてソケット通信を行うのが比較的楽だった。

8/19

ハーフマウス用の迷路データ作成用ソフトを作った。

8/20

前日作成した迷路データ作成用ソフトにより、最短経路導出プログラムのバグを発見。 バグの内容はパスの最後が右左折の場合にパス記録配列の範囲外アクセスが起きるというもの。 ただし、実機でのバグ修正確認がまだ取れていない。

8/21

ロボットを走らせた際にまっすぐに走らない問題の原因を特定。 FFの計算で回転系しかdutyに反映されていなかったため修正。 さらに角度のPID制御の角度ターゲットが間違っていたため修正。 これにより、だいぶ走行がましになった。

8/25

壁センサの調整を行った。壁センサで見る壁の位置が以前より数センチ前になったため探索の壁を読む位置を変更した。また、機体後の壁センサも制御に用いるようにしたが、あまりうまく行っていない。

8/27

角度系のフィードバックゲインのかけかたを変更し直進性が向上した。後壁センサの壁制御への利用はやはり難しそう。

8/28

壁センサの角度が45度だと壁制御が難しいので25度に変更。これに伴いセンサホルダを作り直した。

8/29

やってしまった。左タイヤのギアを折ってしまった。仕方ないので代用品を自宅のプリンタで印刷。走れなくはないがベアリング保持部の精度がいまいちなため、軸がぶれてしまう。大会前にハード改修が続き辛い。ギアが折れたシチュエーションは、壁センサの配線が切れていて前壁が読めず壁に激突。走行前にモジュールのセルフチェック入れた方が良いな。

8/30

ギアが折れてしまったホイールの代わりに手元にあった失敗作のホイールを使ってみるもまるでダメ。

8/31

仕方がないので、おうち3Dプリンタでギア付きホイールをプリントしてみる。うーん、M0.3のギアはちょっと厳しいか。

2018/9

9/1

東日本大会に出場するもハーフ、クラシックどちらも完走ならず。おうち3Dプリンタで作った急造のギアのかみ合わせが悪くまともに走れなかった。ギアが折れる前提で予備を作っておかなかったのが敗因。

9/7

デジモデにホイールを発注した。ギア折れの反省を踏まえ今回は4個分発注。デジモデの素材が織部でなくなってしまった。しかし、値段はほぼ半額になっている。

9/13

デジモデから新しいホイールが届く。バリを取って問題なくかみ合うことを確認。しかし、織部の方が精度と表面のつるつる度が高かった印象。ただし、強度は新素材の方が明らかに高い。

9/24

PID制御を位置型から速度型に書き直した。これにより、積分のアンチワインドアップ対策の上限値の設定が必要なくなりパラメータ数が少し減った。

2018/10

10/5

プログラムのハーフ迷路対応を実施中。クラシック用の迷路探索の実装が汚すぎてハーフ対応ができなかったためリファクタリングをした。

10/6

東北地区大会へ出発。そもそもドア2ドアで7時間程度かかるのに新幹線の遅延のため9時間程かかった。新幹線の中でハーフ用のスラローム軌跡を実装し、精神と時の部屋でひたすらハーフの調整を行った結果低確率でゴールできるところまでもっていくことができた。

10/7

東北地区大会本番。ハーフクラシック共に完走。特にハーフは迷路が難しく、照明環境が過酷であったため完走がわずか5台だった。 制御がガバガバだったためハーフでゴールできたのはかなり奇跡的であった。大会当日に速度に関して10msec分の移動平均を取る ようにプログラムを書き換えたこと功を奏した。

10/8

大会が終わったためタイヤのメンテナンスを行った。また、ホイールの固定部のナットをエポキシで固めさらにねじロック材をつけた。 これにより、走るたびに足回りのねじが緩む現象はなくなった模様。

10/9

9月から東北大会にかけて公私共に忙しすぎて進捗記録が更新できていなかったため、まとめて更新した。なるべく進捗はすぐに書き込まねば。

10/14

PIDゲイン調整のために1msecの分解能で速度、角速度を出力し記録できるようなソフトを実装中。electronで作っているインターフェース側はだいたいできた。今回はグラフ描画にPlotlyを使用しているが、WebGLをONにすれば大量データを入れても割とサクサク動く。

10/18

Bluetoothモジュールの配線が切れかかっていたので修正。また、書き込みコネクタ部につける着脱可能なリセットスイッチを作成した。

10/19

1msec分解能でログを取得するツールの実装を進める。完成までもう一息。

10/20

1msec分解能でログを取得するツールが完成。超信知旋回のパラメータを調整した。壁制御のバグを取るために、ログ取得ツールに壁センサ用プロファイルを追加中。

10/21

ログ取得ツールに壁センサ用プロファイルを追加完了。

10/24

壁中心からの距離に基づいた制御を台形加速時に追加。これにより、だいぶまっすぐ走るようになった。 また、台形加速の終了条件をロボットの移動距離に基づいたものに変更した。 壁周りの制御に関する設定パラメータを大幅に追加した。ただし、プログラムへの実装はまだ。

10/27

中部地区大会前日。試走会には行かず家の迷路で調整を行った。 ハーフは調整の甲斐あってか、超信知旋回探索なら任意の迷路でゴールできるレベルには達する。 2次走行も一応用意。しかし、クラシックはほぼ無調整状態。

10/28

中部地区大会に出場し結果、ハーフは完走。クラシックはリタイヤで走れず。

ハーフ

クラシック

壁センサの閾値があっておらず、壁の見逃しが原因。中部地区の壁は若干黄ばんでいるため、家の迷路より閾値を下げる必要があった。

2017/11

11/3

東日本支部記録会に参加。超信知旋回による探索と最短に成功。スラローム最短はまだ安定せず。 今シーズンの残る大会は全日本大会のみ。

11/4

穴が開いていなかったハーフ迷路の穴あけ完了。 FDM式の3Dプリンタでハーフ迷路の柱を印刷しようとして整備をしていたら回路をショートさせて殺してしまい悲しみに暮れる。 迷路データをデータフラッシュに書き込めるようにした。これにより調整が大分楽になった。

11/5

Bluetoothデータ取得用のpythonスクリプトのオートリコネクト機能がpython3環境だとうまく動いていなかったため修正。 Bluetoothモジュールとの接続が寸断されても30秒から50秒程度でリコネクトできるようになった。もともと、ラズパイではうまく動いていたが、Windows PC上だとなぜかうまく動いていなかったのでしばらく無視していた。

全日本大会まであと26日

11/6

モード選択時にタイヤのクリック感が出るようなモータ制御を実装した。これにより、モードの選択ミスは減ると思われる。

全日本大会まであと25日

11/8

加速度を上げた時に距離ずれがひどいため、加速度センサとエンコーダ出力速度で相補フィルタを組んでみた。検証が足りてないが、 あった方が距離の計測が正確になったようには見える。

全日本大会まであと24日

11/9

尻当て時の壁との接触を判定するモジュールを追加。エンコーダ計測速度が0以上かつ加速度が閾値以下を所定時間観測すると尻当てで壁に接触と判定する。尻当て時間が短くなって探索速度が上がった。

探索時に信知旋回をするモードを追加した。しかし、思ったより探索速度は上がらなそうなので結局は使わない模様。

基板がショートしてマイコンが死ぬ。迷路を走行中に壁にぶつかった衝撃でどこかショートした模様。マイコンを張り替えるもジャイロセンサが動かないので、基板の作り直しが必要。 全日本大会まであと22日

11/10

新しく作りなおした基板でジャイロと通信周りの動作を確認した。また、スピーカを新調しモジュール化した。

残タスクは以下。

全日本大会まであと21日

11/11

センサホルダをfusion360で再設計した。そして、3Dプリンタで印刷して形状的には問題はなさそうと確認しデジモデに発注をかけた。 変更点は以下。

ついでにハーフ用の柱を3Dプリンタで印刷した。

全日本大会まであと20日

11/12

電源スイッチとPch-FETが乗っている基板を追加した。手元にあったFETのソース、ゲート間の絶対最大定格が±8Vであったため、スイッチオンの際にゲートをGNDにつなぐと定格オーバーになってしまう。そのため、スイッチオンの際にゲートとGND間が抵抗を介して接続されるようにして問題を回避。(ゲートはスイッチオフ時は電源にプルアップされている)

全6個の壁センサ回路が動作することを確認。

全日本大会まであと19日

11/13

デジモデに発注したセンサホルダの材質を間違ってしていしていたことが判明。正しいものに修正を依頼。11/15もしくは11/16に届く予定。

本番までに残っている開発時間は以下か。

  1. 平日:11日
  2. 休日:6日

全日本大会まであと18日

11/14

全日本大会まであと17日

11/15

デジモデからセンサホルダが届いた。

全日本大会まであと16日

11/16

全日本大会まであと15日

11/17

壁センサのLEDとフォトトランジスタに黒く塗ったデジキーの袋を巻き付けてみた。かなり効果はあり、壁がないときのAD値が ほぼ0まで低減した。

全日本大会まであと14日

11/18

なんとか、すべての機能の動作確認が取れマウスとして迷路を走れる状態まで回復。 センサと壁との角度を45度に変更したセンサホルダが完全に失敗作だった。 全日本大会まであと13日

11/19

センサと壁との角度を20度に変更した ものを再設計し家の3Dプリンタで造形した。しかし、造形に成功したのは部品1個のみで、もう一つの部品が造形できていない。

PIDゲインの再調整を行った。相補フィルタのゲインを加速度センサよりにしたら加速度を上げても距離ずれがおこらなくなった。

全日本大会まであと12日

11/20

3Dプリンタの原点調整がうまくいかず、造形失敗を繰り返す。あまりに失敗するのでFEPフィルムを張り替えるもうまくいかず。 グリーンのレジンが切れ、手元にグレーレジンしかなかったのが痛い。露光時間をグリーンより長めに設定し、さらに原点をプラットフォームギリギリまで攻めたらなんとか造形物がプラットフォームに定着した。

全日本大会まであと11日

11/24

探索がそこそこ安定

11/25

速度のI項を調整した結果ゲインが16倍上がった。

11/26

オートスタートを実装。

11/28

後輩に触発されて櫛場の角度補正を実装。

11/29

最短の直進走行をひたすら調整。加速度を4m/ss以上にした際の滑りがひどすぎてあまり高速では走行できない。

11/30

大会へ行くために荷造り。

2018/12

12/1

大会前日、会場で試走を行いその後温泉宿へ。

12/2

大会当日、ハーフはハードトラブルで走らず。 クラシックは棄権。 マイクロマウス2018の活動終了。