ようこそゲストさん

マイクロマウス開発日誌

メッセージ欄

2014年11月の日記

一覧で表示する

2014/11/26(水) 来年のマウス構想

B2 Kishimotoです。

備忘録も兼ねて来年のマウス構想を書いときます。
  • DCハーフ
  • モータは一般的なMK06-4.5
  • エンコーダは磁気式
  • センサはLBR-127HLD
    • 実験してダメだったら別のを考える
  • モータドライバはDRV8835か8836
  • タイヤは4輪 3Dプリンタサービスを活用する
  • モータマウントもプリントしてモータを圧入
    • 大きめに作っておいてカプトンテープを巻いて調整(できるか?)
  • RX631 64ピン
  • ブザー、三色LEDを載せる
  • ジャイロはMPU6000あたり
  • 20g以下を目指す
  • RXのデータフラッシュを使う

今後の課題
  • 斜め
  • 時間ベースの最短導出
  • 最短シミュレータの制作
  • 賢い探索(ハーフエキスパートだと全面探索は無理)
  • 静定判定(ターン後安定するまで加速しない)
  • 前壁センサによる距離補正と角度補正
  • DMAでジャイロ値を取得
  • 消費電力削減
    • スラローム中や超信地旋回中はセンサLEDOFF
  • 壁センサ値を壁との距離に変換(必要ないかも)

2014/11/25(火) これから

未分類
B2 Akaoです。

全日本大会も終わり、課題も多くできました。
そしてなにより感じたのが、速さを追求するにはそれなりのマシン設計をしなければいけないということです。
今度のマシンは設計を今まで以上にきっちりとして製作したいと思います。

クラシックもハーフもトレーサーもやりたいです。でもお金が足りません。だからまずはクラシックに取り掛かります。
ステッパーで、ある程度のマウスのアルゴリズムは勉強できました。次はDCモーターの制御です。
今年も全日本大会まで1年を切っているので頑張っていきたいです。

2014/11/25(火) 2014年全日本大会終了

B2 Akaoです。

全日本大会が終了しました。
大会の様子を報告したいと思います。

まず木曜夜、22時にバスが出発ということで21時まで部室でデバックしてからバスで東京に向かいました。
部室では最後まで壁切れ補正がうまくいかずに悩んで、結局わからず部室を出ることになりました。
バスが出る福井駅に向かっている途中に、バグの原因に気付きさっそくバスの中でデバック開始。
簡単なバグだったのでちょちょいと直しました。夜行バスは2階建てのバスで初めて乗りました。

金曜はお昼からだったので少し東京を観光してから本厚木に向かいました。
会場入りしたら試走会はすでに始まっており結構な人がいました。
試走会では16×16のコースでも全面探索成功し、MAXパラメーターでも完走できました。
昨日の壁切れのバグもちゃんと直りました。

試走会時になぜか5回目に斜め走行を入れるということに急きょなり、古いプログラムから斜めを移植しました。
1時間ぐらい調整をして何とか走るようにはなりました。

トレーサーのほうは正直中部初級者大会からほぼいじっていないのでヤバイとは思っていましたが、試走をして
けっこうやばいことに気づきました。プログラムを簡単にしか書いていないので区画ごとにカーブかストレートしか判定しません。
ですので、曲率の大きいカーブでもゆっくりと走ってしまいます。ホテルで急きょプログラムを書こうと思い、ホテルの床にテープを
張ってみましたが、床の反射率が高かったためキャリブレーションしてもデバックできませんでした。
結局マウスもトレーサーもデバックをあきらめ本番にむかいました。

予選
マウスのほうは
第一走 全面探索失敗
第二走 足立行き帰り 成功
第三走 MAXパラメーターでの最短 成功

予選4位での通過となりました。
第一走目、全面探索失敗の原因は後で動画で見てみると壁の読み間違えだとわかりました。
最後のほうで右壁を読み間違えたせいでその区画を探索にはいりました。
今思えば、最短には全く関係ない区画なので2回目で電源切らずに最短走行をしておけばよかった。

3走目の最短走行では2走目の記録で決勝はいけるだろうと思ったのでMAXパラメーターで行きました。
ゴールはしましたが途中直進で左右に振れかなり危ない走行でした。ゴール手前だったので何とかゴールにねじ込んだ形で
普通のパラメーターのほうが早くゴールできたと思います。

トレーサーのほうは、
1走2走3走とタイムを上げていきました。
3走とも完走はできましたが、頭のよくないプログラムで課題が多く残りました。
プログラムは頭の中にはあるのに実行にできてないことがたくさんあるので時間のある時にいろいろ追加したいと思います。

フレッシュマン決勝

1走目 全面探索 失敗
2走目 足立行き帰り 成功
3走目 最短走行 パス2 失敗
4走目 最短走行 パス1 成功
5走目 最短走行 斜め 失敗

今回の全面も失敗してしまいました。バグを疑いましたが、今まで部室ではバグが起きていないのでまた壁の見間違いかと思います。
試走会の時はこんなことが起きてなかったのでこれがマイクロマウスの怖いところです。
焦っていたので急所普通の足立法で行き帰りしました。
問題なく探索はできましたが、最短経路が見つけれなかったのが最短走行のタイムに影響してきました。
自分は最短走行を4種用意してました。4がMAX1が一番下。
3走目で2を試しましたが直進でこけてしまいました。これが一番の謎です。
あえなく1のパラメーターで最短走行成功。5回目の走行ではもっと早さを上げたパラメーターで挑戦してみたかったのですが、
斜め走行を選びました。いま思えばなぜそんなことをしたのやら。

まとめると、決勝においては自分の判断ミスが大きく響きました。残り時間も十分残っていたので全面探索をもう一度すべきだったとも思います。

結果はフレッシュマン6位でした。予選から順位は落ちましたが、入賞もできてよかったです。
この結果に満足はしていないので、来年のクラシックエキスパートでいい成績が出せるよう努力していきます。

2014/11/24(月) 全国大会

B2 Kishimotoです。

全国大会について書こうと思います。

まず東京に行くまで。
前回の更新では大回りターンを実装したと書いてありますが、
壁切れを仕込もうにももうROMがきつきつな感じでした。
というわけでプログラムをダイエット。
4つあった直線関数を1つにまとめたりif文を4つ並べていたところをforループを4回にしたり。
2kBくらい減らせました。特に関数を減らすのがいい感じ。

そのあと壁切れを実装し始めたのが15日くらい。
小回りの方を実装して次は大回りの壁切れや!と息巻いていたらまさかの最短にバグが発生。
180°ターンをして欲しいのに90°ターンをするバグ。
等高線を見て次の方向を返す関数の返り値を見たら変な値を出していました。
しかも2回連続でその関数を呼ぶと返り値が異なるという意味の分かんないバグ。
大会前の貴重な数時間を潰しましたが、結局等高線作成関数がバグっていました。

ss.png

隣り合った区画に同じ値が入っていました。
このせいで次の方向を返す関数のif文にヒットせず、変な値を返していました。
時間がなかったのでこのバグは放置。
次の方向を返す関数の条件文を変えて対処しました。

そんなこんなで大回りの方も壁切れを実装。
壁切れは簡易なもので、指定距離を走り終わっても壁切れしてなかったら走り続けるというものです。
そもそも自分のマウスは直進安定性がなく、速度を上げると蛇行してスラローム開始位置が手前にズレてしまうので、これを防ぐための壁切れです。
結果は良好。壁にぶつかって位置がずれてもスラローム開始地点まで走ってくれました。

このあたりで時間切れ。
深夜バスで東京へ向かいました。

会場に着いて試走用のフル迷路を走らせたらまさかの探索でコケました。
こりゃヤバイとスラロームテストさせてみたらものすごいズレ。
部室と違って迷路を独占して調整なんてできないので、調整に時間がかかりました。

さらに保険として、スラローム開始時に前壁センサが閾値より大きかったらスラロームせずに超信地旋回に切り替えるように変更。(Takayanagi君ありがとう)

土曜日はフレッシュマンの予選と決勝。
会場に着いて最終調整をしていたらまさかの超信地旋回が時々90°曲がりきらなくなっていました。
右モータが調子が悪く、引っかかるような動きをするようになってました。
ホテルで調整中もこんな動きをしていたのですが、床のフローリングの溝が原因と思っていたら迷路でも出てビックリ。
いまさらモータドライバ交換なんてしたくなかったので、本番で出ないように祈ることにしました。
oさん曰くバッテリの劣化ではないかと。劣化したリポは電流を引っ張ると瞬間的に電圧が落ちるそうです。
バッテリ交換したら発生頻度が減ったので無理やり自分を納得させて予選を待ちました。

予選は3分3回。
1走目:全面探索。成功。
2走目:最低パラメータ。成功。
3走目:真ん中辺りのパラメータ。失敗。
大回りターンをかなり手前から開始して、ターン後の直線で姿勢を崩しました。
壁切れが発動してないようだったので、予選後に壁切れのチェックを行いましたが、問題なし。
原因不明でした。

予選結果がI.Sys2年生組は上位だったので、決勝まで時間あるわーと余裕ぶっこいていたらマウスを預けることを忘れていて失格になるところでした。(ありがとうございますoさん)

決勝は7分5回。
1走目:全面探索。失敗。
スラローム直後に壁に吸い寄せられるようにぶつかり、座標がズレました。
観客席とは逆側に曲がっていったので、観客のカメラの赤外線がセンサに入ったか?
原因不明です。
2走目:足立でゴールして全面。成功。
3走目:最低パラメータ。成功。12秒713
4走目:中の下パラメータ。成功。10秒993
5走目:上の下のパラメータ。この時点の1位が10秒910だったので、冒険はせず安定していたパラメータを選択。成功。10秒497
これで暫定1位に。
まぁ暫定でしたが。
そのあとは9秒台8秒台7秒台とフレッシュマン詐欺の方々が記録を塗り替え、最終順位は4位でした。
来年のフレッシュマンは斜めと時間ベースの最短経路選択ができないと優勝できないと思います。

2014/11/24(月) 全日本

DCマウス
全日本結果.jpg


B2  Takayanagiです。

全日本マイクロマウスクラシック フレッシュマンクラス結果を書きます。

予選 2位通過

決勝 2位

です。では、また。