新年あけましておめでとうございます。早い、早すぎる!年が明けたということは、目標と現実の偏差の確認をしないといけませんね。早速昨年を総括しようと思います。

 まずは2016年前半に立てた目標を見てみます。正直、私も何を書いたか覚えていなくて不安になりました。案の定、力を入れる方向が変わっていました。

>今年の一番目先の目標は現在製作中(まだ基板CADの段階)のトレーサーを2月中に完成させて、3月 19日の熱田の森大会に出場して前作よりスピードを出して完走させることです。とありますが、これは残念ながら達成せず。基板を設計して製作するも、いざ電源を入れると煙がモクモク・・・レギュレータのライブラリの設計ミスでした。基板CADに予め付属しているライブラリを使ったのが失敗でした。レギュレータのピン配置違うじゃん。というわけで熱田の森大会は2015全日本で出場した機体をブラッシュアップして出場することに。しかし、モーターの接続方法を変えると制御が安定しなくなり、フラフラしながら走行し、完走直前でリタイアという事態に。この大会でAStrace_αには引退してもらいました。モーターを並列接続するとインダクタンスが落ちるのでやめた方がいい気がします。モーターを並列の様に扱いたいなら、モータードライバを個別に挟んで駆動した方がいいと思います。速度制御なしの、モーターにかける電圧を直接弄っての走行ゆえ安定しなかったのかもしれないので、根本的な原因はわかりません。ただモーターを直列接続していた時はまだマシだったので、不安定要素はあるかもしれません。
 また、たまにモーターの特性をシミュレーションする際に、モーターのデータシートに記載されてるインダクタンスをそのまま使用されている方がいますが、殆どのデーターシートはサンプリング周波数1kHzで測定されてるので、100kHzのPWMで駆動するなら、サンプリング周波数を変更できるLCRメーターで実測した方がいいと思います。周波数が二桁違うと、それなりにインダクタンスが上がるので、シミュレーション結果も変わってきます。

 さて、トレーサーの基板が燃えたしマウスに移ろうか。その判断が結果的に正解でした。
>全日本のフレッシュマンクラスでゴールまで導ける機体を作りたいと考えています。
 当時はトレーサーに力を入れてマウスはサブ的に考えていたので、このような目標だったのだと思います。マウスよりトレーサーの方がスピード出せるし楽しそうと考えていたのですが、今思えば白線をトレースしながら加速するよりも、壁をトレースしながら加速する方が圧倒的に加速度を上げやすいことに当時は気付きませんでした。そもそもトレーサーで既探索加速をしたことがないので、どれくらいのスピードで制御が破綻するのか感覚的に掴めていません。

 次に夏休み前に立てた目標も振り返ります。
【マイクロマウス】
・ミニマムサクセス
    そこそこ賢い探索アルゴリズムの実装
・ミッションサクセス
    フレッシュマン3位以内
・フルサクセス
    最短経路を斜め加減速走行してゴールする
・エクストラサクセス
    吸引機構を搭載したマウスを製作して吸引してゴール。

 これとロボトレースの目標も立てていたのですが、マウスに専念してからの方が合理的だということで切りました。
○まずはミニマムサクセス
 探索アルゴリズムについてはあまり凝ったことはできませんでした。探索が安定しない内に下手なことをするとマップが崩れて最短走行ができないからです。大会直前で探索が安定しましたが、それは袋小路で機体を壁に押し当てて姿勢を整える動作を入れたからです。この方法はなるべく避けたかったのですが、不安定なので仕方ありません。
○そしてミッションサクセスとフルサクセス
 これはいい結果が残せてよかったと思います。
○最後のエクストラサクセス
 フレッシュマンで吸引機構は流石にやってはいけない雰囲気でしたね。完全に場違い感あります。これはやらなくて正解だったなと(笑)

 まとめると目標達成です。目標は後々見返せるように残した方が達成率が上がります(私の経験則)。更にブログで公開すれば自分を追い込むことができるので一石二鳥です。Twitterは流れるので残そうと思って書くものではありません。わざわざ遡るのも時間の無駄ですし。

 そして今後の目標を書きます。
 まずは草の根大会にクラシックマウスで出場できることを目標とします。余裕があればハーフマウスとトレーサーも出したいですが、マウスのスラローム生成ソフトの開発で終わる気がします。草の根大会までにはトレーサーの試作機は完成していてほしいです。まずは凝ったことせずに基本的なプログラムをささっと構築したいです。マウスで得た補正の知識をトレーサーにも色々と応用できそうなので、早くトレーサーの機体が欲しいです。誰かください(冗談)
 今年の総合的な目標は、全日本でクラシックとトレースでダブル入賞を目指します。今年はハーフマウスはやらないつもりでしたが、クラシックを設計していたらハーフでも走れそうな部品配置になってしまったので、ついでに作ってみます。ハーフを触ることによってクラシックの安定性を上げる方法を思いつきそうで、同じ迷路同じ機体で調整するよりも、環境を変えることによって発想を変えた制御にたどり着けるのではないかと期待しています。ハーフで制御を詰めようと思うと柱が何本あっても足りそうにないので怖いです。

 今のところ新作マウス(Trifilar)は以下の形状を想像しています。
C0nFs_jVIAc5V3C

C0nFtS5UkAAfSko
 これはハーフエディションです。クラシック版は縦にもう少し伸びるかもしれません。むしろ伸ばさないと理想的な壁切れができそうにありません。クラシックとハーフでは、単純に一区画の面積を1/4として考えて設計するだけではいけないと思います。小さい機体を走らせる場合は、それだけ位置がズレる可能性があるということなので、より高度な補正の制御が必要になります。幅が広いマウスは、ある程度位置がズレると壁当て補正に頼ることができますが、小さいマウスは位置のリミッターを緩めたような状態になっていることに注意が必要です。私の様な素人が手を出していいのかわかりませんが、この形に挑戦しないと勝てそうにないので仕方ありません。また、このスクショは一カ月前に撮ったもので、今は少し構想が変わっています。他のイベントが忙しくてマウスをする時間が取れていません。言い忘れましたが、バッテリーは機体のド真ん中に置きます。理想的な形に少し近づけた気がします。

 今回新作マウスを作るにあたり、モーターを変更するというのが一番大きなポイントで、上手いことやらないと購入を断念した1717に劣ってしまいます。私は1717を嫌って使わないのではなく、軽いモーターに魅力を感じて採用しようとしています。機体は軽い方が加速が良くなります。ただしモーターに十分なトルクがある場合に限ります。軽さの長所が活かせる構成にするために、海外サイトからモーターを大量に輸入して、手に取って選別し考えることにしました。
CzFH3WVVIAAxK_T
 モーターは消耗品ですので、安いモーターを多めにストックして酷使するのが私のやり方です。特に小さいモーターに過負荷を掛けて駆動するので、いつ壊れてもおかしくありません。因みに今回使用するモーターは5V版で、3Cell@100mAhのリポで駆動します。最近はモーターの端子間抵抗の小さいものが流行りですが、あまりトルク定数を落とすのもよろしくないかと。私の妄想上では、鬼加速と一般的な最高速度が出せるスペックになっていますがどうでしょうね。鬼加速には吸引ファンのツインドライブで重心移動させることにより実現できないかと考えています。実車で例えると、加速時はFR、減速時はMRのようなマシン特性に一瞬で行えるかもしれないということです。楽しみです。

 そして冬休みの進捗ですが、スリップ角を考慮したスラロームシミュレータを作りました。クロソイドから円弧になりクロソイドで終端するスラロームの平均遠心力を求め、それにグリップ係数を掛けたものを平均スリップ角とし、理論値の軌道にオフセットします。そして終端角度だけ合わせてやれば、途中経過の軌跡はスリップ角を固定しているため不自然でも、終端位置は割と正確に出るのではないでしょうか。大会会場でグリップ係数だけキャリブレーションすれば、スラロームの理論値と平均スリップ角から終端位置がわかり、シミュレータ上でパラメータを作成すれば、ほぼ無調整で適切なスラロームを実装できる気がします。やってみないとわかりませんけどね。現実味は帯びてきました。

 あと久しぶりにYouTubeに動画を投稿しました。


CzxxfaiUUAAUiPK

Czxxg2ZVEAAwACT

 ちょっといじわるな迷路を作ってみました。迷路の解説をすると、まずは連続ターンで姿勢を崩させ、そのまま壁補正をする場所も殆どないままL字の櫛に突入。櫛では壁補正ができないどころか、壁補正のゲインが高いと逆に姿勢を崩してしまう難関です。櫛を抜けるとまた壁補正する暇もなく長い斜めに入ります。斜め走行は単純に道幅が狭くなるので、侵入時の位置がシビアになります。長い斜めが終わるとまた斜め、また斜め・・・。この連続斜め走行を終えてゴールです。探索も難しそうですね。Bifilarで探索を3回させてみましたが、一度もコケることはありませんでした。前壁補正恐るべし。


音出し推奨(ぶつかった場所がわかります)
 難しそうな迷路ですが、Bifilarはガツガツぶつかってもゴールしてしまうことがあります。私もなぜ完走できるのかわかりません。多分、壁切れ補正と角度補正と壁/柱補正のおかげです。一応フェイルセーフは入っていますが、この程度では掛からないようにしています。具体的には、左右のタイヤの回転速度の差分を1msごとに監視して、一定速度を超えたらフェイルセーフが働くようにしています。お気づきだと思いますが、機体が宙に浮いたらフェイルセーフが働きます。正確には片輪が浮いたら止まるという感じです。とても合理的な方法だと思います。(ただし丈夫な機体に限る)
 実はBifilarは一度もはんだ/部品のクラックを経験していません。はんだ付けしやすいサイズの部品を使うことと、基板を肉抜きして歪むと思われる場所に精密な部品を置かないことがポイントだと思います。

 その他も色々動画を投稿したので、興味のある方はYouTubeアカウントからご覧ください。それでは今年も圧倒的成長と圧倒的進捗に期待して良い年にしましょう!!