A's LabⅡ

アスラボと読みます。ロボトレースやマイクロマウスの大会に向けて、機体の構造設計・回路設計・基板設計・プログラミングを中心に行っています。趣味のパワーエレクトロニクス系では、テスラコイルやコイルガンなどを製作・評価・改善を繰り返しています。興味を持って頂ければ幸いです。アドバイスや感想などございましたらコメント欄にお願いします。

マイクロマウス・ロボトレース

【Trifilar】2017年マイクロマウスの紹介

今年はTrifilar(トリファイラ)で出場しました。

DJCvLAfUEAAy9u1

機体名:Trifilar(トリファイラ)
基板厚:1.0mm (前期:緑、後期:白)
マイコン:RX631 (100pin)
壁センサー:SFH 4550 (IR発光ダイオード)
      QSD124 (IRフォトトランジスタ)
ジャイロセンサー:MPU6000
エンコーダ:AS5145B
モーター:φ8.5, 20mm(AliExpressで買い漁って選別したもの)
モータードライバ:DRV8835 (駆動用2個、吸引用1個)
バッテリー:LiPo_2S(7.4V)150mAh 30C
重量:39g(機体重量(吸引なし))+10g(バッテリー重量)
サイズ:83*44*25

 このマシンは去年の全日本が終わった辺りから構想を固めて、春にはテスト基板発注、夏の終わりごろには動作テストまで済んでいたのですが、初の磁気式エンコーダ自作吸引の追加などで、かなり手こずってしまいました。エンコーダについては磁気シールドの問題が深刻で、モーターには引きつけられるし、磁石を向かい合わせにしているので磁石同士でも引きつけ合って大変でした。
 磁気シールドはモノタロウの鉄スペーサーを購入することにより解決しました。スペーサーの自作は精度が出ない上に欲張って軽量化しようとしてシールド性能が下がってしまうので諦めました。エンコーダはAS5145Bを使用しています。データーシートにはφ6の磁石を使用してくれと書いてありますが、先人のマウスを見るとデーターシートに従っていないものが多く見られます。私は初めてなので仕様書に従って作りました。するとスペーサーも大きくなるし磁石の保持具も大きくなるのでマシン設計が大変になりました。
 吸引機についてはモータードライバの過電流保護の問題が深刻で、普通のNch-MOS-FETを使っておけばよかったと後悔しました。この問題に気付いたのが大会一週間前なので、今回は吸引なしで大会に出ることに決めました。吸引なんて一方向にしかファンを回さないので、Hブリッジである必要は全くありません。個人的にお勧めのMOS-FETはAO3400です。データシートを見ると、30V5Aとマウスには必要十分なスペックを持ち、パッケージはSOT-23と小型、更に逆電圧保護ダイオードが内蔵されています。そして決め手はAliExpressで安いということですね。100個で200円送料無料です。メインモーターを駆動しているDRV8835もAliExpressで買えば安いですよ。

 吸引ファンを2つ搭載する利点は、前後のファンを逆回転させてカウンタートルクを打ち消し合う為と、前後のファンのトルクを可変することにより、旋回の補助をすることができます。以下に図を示します。
bandicam 2017-11-22 19-21-41-789
 パワーポイントで図を作ってみました。緑が基板で黒がタイヤ、黄色い丸が吸引ファン、赤い矢印がモーターにかける電圧(トルク)です。吸引ファンは逆回転しており、前後の吸引モーターにかける電圧をスラロームと同時に制御することにより、普段はタイヤの摩擦力で機体を曲げていたのが、吸引ファンの力で曲げることができるようになります。その分、タイヤのグリップは横Gに耐えるための摩擦力に注力できるため、旋回速度を上げられるという目論見です。タイヤのグリップには限界があります。その限界を角速度を発生させるために全力を使っては勿体ないですよね。

 そしてこの機体、想像以上に高重心になってしまいました。バッテリーをモーターとエンコーダの上に乗せるしかなくなってしまって、仕方なくそのまま設計を進めたらこうなりました。私が目標としていた物理的に美しい機体とは程遠いものになってしまい、この段階で動力性能は激落ちで、ターン速度も全然でないことが察せました。(たとえ吸引をしたとしても)
 基本的にマシンの旋回速度を上げるには、「重心を低くする&慣性モーメントを下げる&トレッド幅を広げる」この3点だと自分は思っています。高重心・低トレッドだと、旋回するときに片輪の荷重が抜けて制御が不安定になります。旋回軸の慣性モーメントが大きいと旋回しずらくなるので、重い部品はなるべく旋回軸上に寄せて置くようにします。マイクロマウスの場合、トレッド幅に関しては広い方がいいか狭い方がいいか、どちらにもメリット・デメリットがあると思います。
 まずトレッド幅が広い場合、左右のタイヤ両輪に荷重を掛けやすく、旋回時に安定した制御がしやすい利点があります。
 次にトレッド幅が狭い場合、同じサイズの迷路を走らせる上で旋回半径を大きくとれる利点があります。以下にスラロームのシミュレーション結果を示します。

bandicam 2017-11-22 20-06-32-049
    図4. トレッド幅70mmのスラローム
 緑が中心軌道、水色がタイヤの軌道です。重心速度1m/s, 角加速度20000deg/ss, 角速度500deg/sのスラロームシミュレーションです。割と一般的な軌道かと思います。実際には前距離と後距離を調整してスリップ角を対処してやらないといけないのですが、大体こんな感じです。

bandicam 2017-11-22 20-02-23-835
     図5. トレッド幅44mmのスラローム
 トレッド幅を44mmにするだけでこれくらい変わります。柱と距離があいてぶつかる確率が減りました。このスペースが今回の完走率に貢献してくれています。実は私が低トレッドにした理由は別にあります。それは低角度斜め走行ができるようになるということ。斜め直進時以外の旋回の組み合わせの場合、45度や135度、V90のターンはもっと浅く旋回するだけでいいのです。私が導入したアルゴリズムだと、
45度→35度
135度→125度
V90→V80in, V80out, V70
の旋回パラメータを今までとは余分に制作します。これにより、旋回半径を広げるとともに横Gを更に下げることができ、限界突破できそうな気がします。今年は吸引に時間奪われ、間に合わず諦めました。低角度斜めのパス生成アルゴリズム自体は組んであるので、時間があるときにデバッグと旋回調整をして実験してみようと思います。V70のシミュレーション結果は以下の様になります。

bandicam 2017-11-22 20-02-53-373
     図6. V70スラローム軌道
 重心速度1m/s, 角加速度20000deg/ss, 角速度400deg/sのスラロームシミュレーションです。かなり攻めた軌道を通ることが分かります。横Gに関しては、0.89Gから0.71Gまで抑えることが出来ました。それだけスリップ角も小さくなり、重心速度も上げられます。これはトレッド幅が狭くないと曲がれないので実験すらできません。この低角度斜め走行をやりたいが為に、トリファイラの低トレッドにしたのですが、結局時間配分をミスって肝心なところに手が回りませんでした。吸引は次回作でもできるから低トレッドな機体があるうちにやっておくべきだったと後悔しています。

DJAuJFOWsAI3yCG
 今回からDMMの3Dプリントサービスに部品を造形してもらうことにしました。今まではCNCで切削していたのですが、複雑な形が作れなかったりCNCが動いている時は傍にいないといけなかったりと制約が多いので3Dプリンターに手を出しました。3DCADはDesignSpark Mechanicalを使いました。最近はもっと高機能でレンダリング機能がついたCAD、Fusion360があるのでそちらに移行予定です。私はDesignSparkのほうが扱いやすいと思います。
 上のデータをアクリル(Ultra Mode)のブラックで発注して、価格は5,281円(送料込み)でした。安く済ませようと思ったらナイロン製で1,176円ですが、精度が全く違うのでお勧めできません。特にモーターマウントや吸引ファンなどの制度が必要な部分には不向きです。アクリルならそこそこな精度で造形してくれます。

DLDuDOmUMAA616v
 肝心の強度についてですが、扱いが悪いとパーン!って粉々に割れますね。ナイロンの方は多少弾性があるので割れにくいですが、アクリルは硬度が高いので割れてしまいます。モーターマウントとホイールは一度も割れませんでした。吸引ファンにはちょっと厳しいかもしれません。先輩も今シーズンで5個くらいのファンを割ってるみたいです。保持具をしっかり作って基板と掠らせなければ割れないとのことです。

DJBSN3ZUwAAonYI
 ホイールとスパーギヤはこのように設計しました。スパーギヤはM0.3の70枚歯です。AliExpressで購入しました。買った時から6穴の肉抜きがされていたので、その場所にホイールから円柱をプルして固定させました。スパーギヤは固定しないと急加減速時に意外と滑るので、このように固定できると心強いです。それからホイールとシムワッシャーを一体化させてみました。アクリルじゃないと造形できないみたいです。

DItdKzJVwAQtKyp
 タイヤの方はミニッツのワイドタイヤ30°を半分に切って使いました。今回はトレッド幅を狭めたいのでタイヤを細くしました。基本的にはタイヤの太さに関係なくグリップは出ます。車重が重くなるとタイヤが太くないとグリップ力が飽和する問題に直面しますが、このマシンではタイヤが沈むほどの重量はないので大丈夫です。ただ、自分でタイヤを半分にするとどうしても偏りが出来てしまいます。ちょっとくらいジャイロセンサーでどうにでもなるのですが。

DKuEwzjUEAA2ONX
 バッテリーは毎度お馴染みの自分で2S化します。JJRCの150mAh, 30Cのリポを直列にします。まずは分解して、その時にリポの過電流保護回路は取り外します。ここは意見が分かれるところだと思いますが、こんなところでリミットを掛けて欲しくないので私は取り外しています。不安な人は付けておいてください。

jpg large
 今回は横に並べて平たく配置しました。バッテリーの置き場所がモーターの上になってしまうので、申し訳程度の低重心化です。マシンに合わせてバッテリーの形状を変えられるところが自作の魅力です。

DOXTxVJUEAAa7R0
 それから、トリファイラのマウスのセンサー配置はコンパクトでいいですが、初心者にはあまりお勧めできません。バイファイラのセンサー配置の方をお勧めします。その理由は、壁判定及び壁切れ判定の閾値調整がシビアということと、角度によってセンサー値が結構変わるので、ある程度安定した走行ができないと探索すらできない機体になってしまいます。また、壁補正するためのゲイン調整もシビアです。一般的な1717を使うDCマウスは、機体が大きいので、ちょっと位置がズレても壁に当たって補正が効くことがあります。しかしこのマウスは自分で自己位置補正をしてやらないと位置がズレていきます。初心者の方は安定したセンサー配置がいいですよ。

DIu5J6MUQAAyQe8
 マイコンを基板下に置いてみました。マイコンは意外と高さがあり、1mmの基板よりも背が高いので場所には注意が必要です。タイヤのすぐ下なら大丈夫そうな気がします。また、トレッド幅を限界まで小さくするために、ネジを基板で浮かせてマイコンのピンの上でネジ止めするような設計にしてみました。これでも十分止まっているので面白い設計になったと思います。こんなことができるのも個人の趣味ならではなので積極的に取り入れていきましょう。

 毎年恒例のマシンのパラメータを公開します。去年のバイファイラのパラメータより旋回速度がかなり遅くなってます。
<クラシックエキスパート予選の走行パラメータ>
1走目:探索走行
    加速度(加速)    5[m/ss]
    加速度(減速)    10[m/ss]
 最高速度 0.6[m/s]
    旋回速度 0.6[m/s]
2走目:最短走行
    加速度(加速)    10[m/ss]
    加速度(減速)    15[m/ss]
    最高速度 3.0[m/s]
    旋回速度 All 0.6[m/s]
3走目:最短走行(V90で柱に掠りフェイルセーフ発動
    加速度(加速)    10[m/ss]
    加速度(減速)    17[m/ss]
    最高速度 4.0[m/s]
    旋回速度 {L90deg, 45deg, 135deg, V90deg, 180deg}
      {0.9m/s, 0.89m/s, 0.77m/s, 0.7m/s, 0.7m/s}
4走目:最短走行
    加速度(加速)    10[m/ss]
    加速度(減速)    15[m/ss]
    最高速度 4.0[m/s]
    旋回速度 {L90deg, 45deg, 135deg, V90deg, 180deg}
      {0.9m/s, 0.89m/s, 0.77m/s, 0.7m/s, 0.7m/s}
5走目:最短走行(MAXパラメータ
    加速度(加速)    13[m/ss]
    加速度(減速)    20[m/ss]
    最高速度 5.0[m/s]
    旋回速度 {L90deg, 45deg, 135deg, V90deg, 180deg}
      {0.9m/s, 0.89m/s, 0.77m/s, 0.7m/s, 0.7m/s}

<クラシックエキスパート決勝の走行パラメータ>
1走目:探索走行
    加速度(加速)    5[m/ss]
    加速度(減速)    10[m/ss]
 最高速度 0.6[m/s]
    旋回速度 0.6[m/s]
2走目:最短走行
    加速度(加速)    10[m/ss]
    加速度(減速)    15[m/ss]
    最高速度 3.0[m/s]
    旋回速度 All 0.6[m/s]
3走目:最短走行
    加速度(加速)    10[m/ss]
    加速度(減速)    17[m/ss]
    最高速度 4.0[m/s]
    旋回速度 {L90deg, 45deg, 135deg, V90deg, 180deg}
      {0.9m/s, 0.89m/s, 0.77m/s, 0.7m/s, 0.7m/s}
4走目:最短走行(MAXパラメータ
    加速度(加速)    13[m/ss]
    加速度(減速)    20[m/ss]
    最高速度 5.0[m/s]
    旋回速度 {L90deg, 45deg, 135deg, V90deg, 180deg}
      {0.9m/s, 0.89m/s, 0.77m/s, 0.7m/s, 0.7m/s}
5走目:タイムアップより走行せず

MAXパラメータで走らせた動画は以下の通りです。

 今回の正確なタイム測定でわかったことがあります。それは、「パラメータを上げてもタイムが良くなるとは限らない」ということ。上記のパラメータで走らせて、一番の好タイムを記録したのは予選の4走目と決勝の3走目でした。MAXパラメータはタイムロスで遅くなっていました。そもそも減速20[m/ss]はタイヤがスリップしている可能性が高いです。ログでは追従していても、路面とグリップしているかは別問題なので監視できません。減速でスリップしても次のターンの時に壁切れ補正で距離が整うので完走は出来てしまいますが、低速時の距離が長くなるので結果的にタイムロスが発生したと考えられます。これについては、壁切れの補正距離を監視してやれば、スリップしている距離の推測ができると思います。今回は旋回速度が極端に遅いため、低速時の距離の増加はタイム的に大きな悪影響を及ぼしたようです。
 補正が悪いような言い方になっていますが、今回の完走率はとても高いものでした。コケたのは予選の3走目のみ。これは壁補正や壁切れ補正のおかげです。完走率を上げるなら旋回の調整よりも補正の調整をした方がいいと思います。

 あともうひとついいですか?
 大会前は験担ぎに二郎系ラーメンに行きましょう(提案)
それでは今シーズンもお疲れさまでした!

2017年春休みの進捗

 ブログの更新は月イチで頑張ろうと思っていましたが、今年はまだ「あけおめ」の記事しか書いていませんでした。早速サボりがちです。進捗がないわけではありませんが、ソフトのマイナーチェンジや基板CADを弄っていると、現物がなくて記事にならないことが多いんです。今回は春休みの進捗について書こうと思います。

 まずは基板についてです。
C6okZVKVoAAe00a
 今回はロボトレースのメイン基板と、マイクロマウスの基板を同時に発注しました。ロボトレースのメイン基板は、Bifilarをベースにラインセンサーなどトレースするのに必要なセンサーが取り付けられるような形に仕上げただけです。センサー基板は前作のものを使いまわします。というのも、前作のトレーサーはメイン基板にミスがあり、走らせることができなかったため、センサー基板を一度も使わずに終わってしまいました。よって、使いまわすというよりは、やっと出番が来たという感じです。
 基板の製作は、PCBGOGOに依頼しました。二つとも100*100mm以下に納めたため、10枚1200円で製作していただきました。送料は4人で共同購入したため、割り勘して千円程です。それと、4人の基板の合計金額が16,666円を超えてしまったため、関税が三千円掛かりました。それでも2種類の基板を四千円以下で製作できたのは安いと思います。

C7g_sByV4AEQKfk
 トレーサーはメイン基板をはんだ付けするだけで完成です。足回りはBifilarから貰ってきました。機体名はASPERAです。試作機という意味が込められています。この機体では簡単なオドメトリと加減速走行や、確実なフェイルセーフなど、ベースとなるソフトを開発する目的で製作しました。次回作ではもう少し物理的に美しい形に仕上げたいと思います。何より最初はハードを短時間で仕上げることが近道だと思います。一度に完璧を求めても、各センサーの配置などは使ってみないとわかりませんからね。

C7iFfGwVQAA4iqu
 まだブレーキランプやハザードランプを付けてないので、実際にはもっと光りますが、現時点での重さだけ測りました。これからトレッド幅を広げたり、センサーを固定するネジを付けるので、5gほど重くなる予定です。

 この動画はR10の円を1.2m/sで走らせている様子です。タイヤのグリップが著しく低下していることと、機体の大きさに対してトレッド幅が狭すぎることを改善すればもっと速度を上げられそうです。制御も満足に組めていません。これからゆっくり考えようと思います。

C6igp_QVwAAKE0a
 自宅にもトレースコースが欲しいと思い、ベニヤ板に黒のペンキで塗りました。2度塗りをすると結構きれいです。中心にあるのは私が1年生の時に作ったトレーサーです。多分今でも走るとは思います。

 次に3Dプリンタで出力するためのデータを作りました。
bandicam 2017-03-31 23-10-59-976
 これらはDMMの3Dプリントサービスに外注しました。精密な部品を作るにはアクリルのウルトラモードやエクストリームモードがいいらしいのですが、まずはナイロンで頼んでみました。これだけ発注しても1702円送料無料です。ナイロンは軽くて安いのですが、マイクロマウスには不向きらしく、あまりいい噂を聞きません。私の機体はまだ完成形ではないので、取り合えず仮組の感覚でナイロンを選択しました。きっと使ってみると改善点がでてくるので、改善点を全て洗い出してからアクリルの強そうなモードで発注しようと思います。

C5XFdCCUcAA9miE
ファンの形ですが、なるべくカッコよくしようと色々と悩んだ挙句、専門の方からアドバイスを頂き、下のような形になりました。
C65YQ_mU8AA-i3A
C65YRQXV4AA6jSb
 軸の中心に山を作ることにより、空気の流れを乱さずに外に掃き出されるそうです。なるほどです。ピンク色には意味はありません。

 次にリポバッテリーについてです。
C7xvdxAVMAAY_gG
 Bifilarの時からリポは自作のものを使用しています。海外サイトから安いリポバッテリーを輸入して、自分の機体に合うような形で2セル化します。これが中々スリリングです。ちょっと失敗するとバチバチいくので、怖い人は止めておいた方がいいです。

 そして自作バッテリー専用の充電基板も作りました。
C7xodaUVUAAao38
C7xoev-UwAAv2yR
 2枚目の画像の手前が今まで使っていた充電基板です。このモジュールも海外サイトから購入したものです。これはAliExpressで買うと10個200円以下で購入できます。送料も無料です。これは買うしかないですね。(もちろん自己責任です。保証はありません。)

 ここからはマウス・トレースとは別のおまけです。
C6DQ0bcU4AAFQ01
 高校1年の冬にメインPCを自作しました。その時からパソコンに負荷を掛けたまま放置したりしていたので、数年間使って壊れるのは当然です。まず壊れたのはやはりHDDです。WDのGreenは低価格故に保証期間が短く、それを承知で購入していました。ハードな使い方をしたにも関わらず、保証対象期間内に壊れてくれませんでした。まあそれはいいとして、壊れ方が少し特殊でした。パソコンの電源ボタンを押すと一瞬立ち上がろうとはするけれど、1秒も持たずに電源が落ちる症状が続いていました。BIOSにもいけなくて困っていました。HDDを抜いても同じ症状なので、CPUかマザーボードが壊れたかなとも思ったのですが、思い切って新品のHDDを繋いでみたら立ち上がったのでラッキーでした。しかしHDDの認識はされていないようなので、父に頼んで新品のHDDをフォーマットしてもらったら、自分のPCにも認識されるようになり、そこからは順調にOS等入れ直して安定しました。

C6ElPy5VAAAcsTT
 5年ほど前にやったはずの作業ですが、完全に忘れてしまいました。初々しい気分でドライバのインストールを済ませました。

C6NjXKZU0AAienV
 最近はSSDが普及してOS関係とドライブを分ける人が多くなり、自分でパーティションを切る人は少なくなってきてると思います。そんな中、私はデータドライブに適当なパーティションを切りました。この30GBには、データは重くないけれど、作成するのに時間がかかったデータのバックアップに使おうと思い制作しました。正直、ドライブが壊れる時は丸々逝くと思うので無意味だとは思います。システムファイルと違い、調子が悪くなってフォーマットするとかもありませんし、見当違いな気がします。

 そして少し遠出しました。
C7Zr3HOV4AEuJgJ
 福井駅から特急で6時間半かかる場所、和歌山の一番奥まで行ってきました。しんぐぅ。ここで臨時バイトしてきました。朝の8時に電話があって、ここまで行ってくれと言われて当日の昼に出発し、夜の7時に到着して4泊しました。給料の発生する修学旅行な気分です。

 さて、おまけの本題です。(?)
C8FXMC1VUAEMKzh
 祖父がタクシーを辞めたので、そのコンフォートを貰いました。とても楽でいい車です。4月からはコンフォートで通学します。

C8FXNWcVUAAinI8
 コンフォートの形めっちゃ好きなんですけど、わかってもらえる人少なそうな。少しだけステッカーと電飾と音響を弄ろうかなと思っていますが、皆さんが期待する程大きくは変えません。このままで十分なくらいの車なので。
 
C8VW0HXV0AAUkF0
 車載アンプはBluetooth対応の45W*4を選びました。5600円程だったと思います。バイトしたんだしもっといいもの買った方が良かったかなと少し後悔しています。あまりいい音ではありません。自宅のオーディオ環境と比較すること自体間違っていますけどね。音楽が聴ければそれでいいという人向けの商品でしょう。この商品、車載用と書いておきながらACアダプターが付属していて、車と接続するユニットがありませんでした。○ツで探すと、シガープラグ付きDCコネクタが奇跡的に売っていたので、それを使って解決しました。

C8JUDjcUAAAAgSE
 スピーカーはKENWOODのKSC-7900です。父が大学生時代に購入したものらしく、大きい音を鳴らし過ぎてコーンを止めてある可動部分が破れているとのこと。偶に異音がしますが、問題なく使えています。

C8JUFHnVoAIZ9tp
 配線はなるべく隠すようにします。

C8JUGjFV0AAGpuz
 取り付け後の風景。いい感じですね。

C8VbKaJUwAA8wiW
 そのほかはスマホアームを取り付けたり

C8VbLl8U0AAa12O
 急速充電ユニットを取り付けたりしました。車中泊もできそう...

 このあたりで春休みの進捗は以上です。さて、来月にはマウスが走っているのでしょうか。

2017年、明けましておめでとうございます

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

 まずは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アカウントからご覧ください。それでは今年も圧倒的成長と圧倒的進捗に期待して良い年にしましょう!!

2016年CLフレッシュマン優勝!

全日本マイクロマウス大会お疲れさまでした。大会の運営関係者の方々に感謝申し上げます。

今年の全日本大会、本当に焦りました。まずは会場に入ったところからお話しします。全日本大会には前日入りはせず、試走会に参加せずに一発本番を決めようと思っていました。会場に到着したのが少し早かったので、試走の迷路が置いてあるということで試しに走らせました。すると見事に前壁を読み違えて全く進まない!?これはまずい。すぐにセンサー関係の部品が壊れていないかを疑ってセンサー値をPCで確認するも問題なし。それで一安心するものの、今から閾値調整をして前壁補正の値を変えてで色々しないといけないのはバグを生む原因になって怖いし、流石に時間が足りなそう。そんなことをしているうちに、もうフレッシュマンの予選は始まっていました。幸いなことに、私の出走は108番目。最後から二番目でした。今のうちにすべてを調整しないといけないということで必死でした。まずわかったことは、会場の迷路は反射率が異常に高いこと。1kHzでセンサーにフィルターは掛けていますが、得られるセンサー値は会場と部室で全く違いました。部室の迷路では角度依存を殆どしなかったセンサーが、大会会場では角度によってセンサー値が全く違う・・・そこにK先輩が駆けつけてくれました。焦っている私に落ち着いて対処法を一緒に考えていただけました。まず、Bifilarの真正面についているセンサーは角度依存により使いものになりません。急遽左右についた前センサーに役割を受け渡す作業を開始しました。その辺のプログラムは簡単に書き換えられるように工夫して予め作ってあったので、変更は時間がかからずにできました。あとは壁の閾値調整と前壁補正のゲインを勘で決めたらある程度安定して動いていたので一安心。フレッシュマンの出走順を確認すると、この時点で60番くらいの人が出走を終えていました。もう少し時間があるので試走を続けていると、様々な人から声を掛けていただき、お話をすることができました。正直そんなに精神的な余裕はありませんでした。会場で問題だったのはセンサーの値だけのようで、最短走行のパラメータは何も調整せずとも安定していました。今思い返すとセンサー値が違うのに壁補正のゲインを触っていなかったことに気付きました。まあ適切なゲイン値から定数倍されたところで暴れるような制御の入れ方はしていないので大丈夫だとは思いますが。それと部室の迷路で壁補正を少し低めに設定していたのが良かったのかもしれません。いざフレッシュマンの予選に向かうと、結構期待されてしまっていて本当に神に祈る気持ちで走らせていました。会場で閾値調整をしたことによって、部室で走らせていた時の様に安定していて安心しました。ここまでが午前中の出来事だったとは...これからは前日入りしてしっかりと試走をするか、会場でセンサーのキャリブレーションや閾値調整をすぐに済ませられるモードを作らないといけないなと強く実感しました。今大会でどこを調整しないといけないかがわかったので、次の大会までにはキャリブレーションできるようにしようと思います。


さて、結果的な順位からすると優勝することができましたが、初代田代賞を取られた某F氏もフレッシュマンなところ辞退してエキスパートに参加されて4位を取られたとのことで、そちらの方が何倍も価値があることを先に述べておきます。私の機体では吸引機構が搭載されていないこととソフト共に全く敵わない方です。ただ、来年は負けないので覚悟していてください!(後々言わなきゃよかったと後悔するアレ)
それと誰からも聞かれていませんが、今大会で使用したパラメータを、来年のフレッシュマンに向けて公開しようと思います。ただ、DCモーターの板マウスじゃないと参考にならないかもです。ステッピングモーターを使ったことがないのでわかりませんが。来年のフレッシュマンでは最近オーソドックスになってきているDCモーター変則四輪吸引が出るんですかね。楽しみです。

まずは予選の結果
1走目:探索走行    成功(往復成功)
2走目:最短走行    00:02.788(往復成功)
3走目:最短走行    00:03.???(往復失敗)

そして決勝の結果
1走目:探索走行    00:33.500(往復成功)
2走目:最短走行    00:06.195(往復成功)
3走目:最短走行    00:06.135(往復成功)
4走目:最短走行    R
5走目:最短走行    00:05.454(往復失敗)

走行結果を並べてみると、大会の会場でも走破性高かったなと思います。
と言ってもまだこのマシンの限界は引き出せてないわけですし、力を持て余して走破性を語っても仕方ありませんが。まず予選の3走目ですが、動画を見直したところ、機体を置いたときの初期角度がズレていたような動きをしていました。Bifilarはジャイロから得られる角度を参照しながら壁情報を反映させるように壁補正を掛けているので、初期角度がズレると何も合わなくなります。それでも短い迷路だったので、最後は前壁補正でゴリ押ししてゴールにはなったものの、2走目の方がいいタイムでした。決勝4走目のリタイヤについては後に記載します。

続いては走行パラメータを公開

<フレッシュマン予選の走行パラメータ>
1走目:探索走行
    加速度(加速)    5[m/ss]
    加速度(減速)    5[m/ss]
    重心速度 0.6[m/s],
    旋回速度 0.6[m/s]
2走目:最短走行
    加速度(加速)    12[m/ss]
    加速度(減速)    15[m/ss]
    最高速度 3.5[m/s],
    旋回速度 ALL 1.0[m/s]
3走目:最短走行
    加速度(加速)    12[m/ss]
    加速度(減速)    15[m/ss]
    最高速度 3.5[m/s],
    旋回速度 {Big90deg, 45deg, 135deg, 90deg, 180deg}
      {1.4m/s, 1.2m/s, 1.0m/s, 1.0m/s, 1.0m/s}
  
<フレッシュマン決勝の走行パラメータ>
1走目:探索走行
    加速度(加速)    5[m/ss]
    加速度(減速)    5[m/ss]
    重心速度 0.6[m/s],
    旋回速度 0.6[m/s]
2走目:最短走行
    加速度(加速)    12[m/ss]
    加速度(減速)    15[m/ss]
    最高速度 3.5[m/s],
    旋回速度 ALL 1.0[m/s]
3走目:最短走行
    加速度(加速)    15[m/ss]
    加速度(減速)    20[m/ss]
    最高速度 3.5[m/s],
    旋回速度 ALL 1.0[m/s]
4走目:最短走行
    加速度(加速)    12[m/ss]
    加速度(減速)    15[m/ss]
    最高速度 3.5[m/s],
    旋回速度 {Big90deg, 45deg, 135deg, 90deg, 180deg}
      {1.4m/s, 1.2m/s, 1.0m/s, 1.0m/s, 1.0m/s}
5走目:最短走行(MAXパラメータ)
    加速度(加速)    15[m/ss]
    加速度(減速)    20[m/ss]
    最高速度 4.0[m/s],
    旋回速度 {Big90deg, 45deg, 135deg, 90deg, 180deg}
      {1.4m/s, 1.2m/s, 1.0m/s, 1.0m/s, 1.0m/s}

このようなパラメータで本番は走っていました。
実は探索速度は0.6[m/s]しか用意していませんし、最短走行のターン速度は1.0[m/s]以下のパラメータを用意していませんでした。決勝の2走目で走ったパラメータが殆ど最低パラメータです。まあこれは結果論であって、もっと時間があれば使うかどうかもわからないパラメータも用意していたと思いますが、そんなに沢山のパラメータを揃えている時間はありませんでした。最低パラメータを1.0[m/s]にしたことについて私の考えとしては、機体のポテンシャルと旋回の方法に依存しますが、私の機体の場合、ターン速度1.0[m/s]でコケるならばターン速度を落としても完走する確率は殆ど変わらないというのが経験則です。1.0[m/s]の旋回は横G的にもそれほど厳しくありません。余裕を持ち過ぎているくらいターン速度の低いパラメータを作る時間があったら、走破性を上げるための様々な補正を考えたり、大会で確実に走りたいパラメータの調整に時間を回すのが賢明かと思います。最低パラメータは、本当にその速度まで減速してターンをしないと安定しないかを考えて、適切な最低パラメータでいいように思います。しかし、1.0[m/s]ターンを最低パラメータにしたのは上げ過ぎだったかなと周りを見て思いました。それでもオール1.0[m/s]ターンで走った最短走行では、行きも帰りもコケることはなく終始安定していたので良しとします。
最短走行では行と帰りで往復させていますが、往復のパラメータは行も帰りも全て共通にしています。ハーフ・エキスパート優勝者M氏がやられているのを見てなるほどと思い、使わせていただいております。往復をする利点としては、行きで使った旋回の組み合わせを、迷路を変えることなく全て左右逆の旋回にして確認をすることができるからです。何種類もの迷路を組み替えずに、すべてのターンを効率よく確認できる最高の手段です。また、速度を上げてゴールしたときは少し位置がズレていることでしょう。そこからの復帰ができるかどうかの確認も大事なところです。練習用の迷路で旋回を完璧にし過ぎると、壁補正などの調整ができなくなってしまいます。最初のうちは、わざと旋回半径をずらして壁補正の調整をしてもいいくらいだと思います。練習用の地面と会場の地面ではグリップに差が出ます。よってスリップ角も変わってきます。練習用の迷路で旋回の調整だけに力を入れすぎると、会場の床によって調子が狂い、位置補正などの調整をしてこなかったマウスはコケやすいと思います。私の場合、旋回の調整は必要最低限の時間を使い、ガバガバな旋回からの立ち直りの補正の調整に時間をかけてきました。完璧な旋回の調整は大会の前々日頃の最後の最後にやればいい話です。なにより私の場合はターンの調整方法に問題があることに全日本大会の2週間くらい前に気付いたレベルで変なターンばかりしていました。その分補正に力を入れることができたので、結果的によかったなと思います。最初から完璧な旋回をすると大切なズレを見えなくしてしまいます。本番で安定させるには、機体があるべき位置からズレた状況から、適切に対応して素早く適当な状態に収束する補正が唯一の頼りです。
また、決勝の4走目では180degターンの最中に壁に当たってフェイルセーフがかかりました。部室の迷路では、この程度掠ったくらいではフェイルセーフがかからないようにしていたのですが、やっぱり地面の違いからか、フェイルセーフの閾値も変えないといけなかったようです。そもそもフェイルセーフを切っておけばよかったと後悔しています。あのくらいなら壁補正と壁切れで完走できていたと思います。180degターンは依然と比べるとインコースを狙わないようにはしたものの、スタートして一番最初の1.4[m/s]の90degターンで旋回半径をオーバーしているので(調整段階で合っていないことは知っていたが角速度が追従しないのでパスした)、その分のy軸にプラスされた誤差で180degで死んだと考えています。走っていくうちに補正が掛かってズレは解消されるだろうと思っていたら、まさかの一番来てはいけないタイミングと組み合わせで180degターンをするようなルートでした。まさかこんなに上手くはまってくれるとは迷路製作者も想像していなかったことでしょう。そもそも全面探索をしていればあのルートを通ることもなかったことですが。
そして、決勝の4走目でリタイヤになったのに、なぜ5走目で更に加速度を上げたかというと、速度の追従には自信があったからです。今回MAXパラメータを20m/ssに設定していますが、調整では25[m/ss]でもきれいに追従していました。しかし若干スリップしているようで、本番では使えないようにしていました。正直言って旋回時のズレ誤差は加速度とは独立なので、最後MAXパラメータを使わずに後悔するまいと使用しました。結果的には加速度を上げた方が補正がいい感じになり完走することができました。因みに壁補正は速度を上げるとゲインを線形的に下げるように組んでいるので、何か他の補正が働いてくれたのでしょうか。今は特定できていません。

さて、来年の全日本大会まで一年を切ったってマジですか?
来年はエキスパートでも戦えるハードとソフトを作りたいと考えています。現段階でハードの構成が固まってきているので、早いところプロトタイプを作って、二作目で落ち着くものにしたいです。今年の機体Bifilarですが、前作Earがあっての機体です。Earには一カ月ほどハード製作に時間をかけて、実際に走らせてみて改善点を洗い出し、Earベースで時間をかけずに作ったBifilarに落ち着けたのでよかったかなと思います。次回作もこのような流れで行きたいです。因みに、次回作の機体名はトリファイラです。よろしくお願いします。

最後に今年の機体を載せて終わります。
CxoW68aUUAAYK2e
機体名:Bifilar(バイファイラ)

それでは、長文読んでいただきありがとうございました。

2016年度夏休みの進捗

記事を書くのが遅れましたが、夏休みの進捗を書いていこうと思います。
 今年の夏休みの目標は、マイクロマウスは斜め走行ができるようになること。ロボトレースは試作機を完成させることでした。結果から言うと、ロボトレースは今年出場を止めることにしました。まずはマイクロマウスで基本的な制御ができるようになってからロボトレースに手を出そうと思います。機体を増やしてしまうと、これからDCモーターの扱い方やモード選択の基本的な部分など、変更することを全て2回ずつ書かないといけなくなってしまうからです。時間がいくらでもあるならやりたいのですが、大学生と言えども授業は多いしレポート等大変になるみたいだし、マイクロマウスと共倒れにしない為にも、ロボトレースは今年諦める選択が有力になりました。まずは基本的な制御の技術を身に着けたいです。

 ということで、今年はロボトレースの話はでません。マイクロマウスとその他諸々になります。さて、マイクロマウスについては色々と進捗がありますが、まずはタイヤの話から始めます。

タイヤの物理学
 (なんで進捗報告にいきなりタイヤの話になるんだよ. 摩擦のことは遠の昔に学習済みだぞ)と思われる方もいるかもしれませんが、私が夏休み中に一番時間を割いたのはタイヤについてです。Twitterで何度も長文ツイートを連投していて呆れた方もいるかもしれません(それでも控えめにしていました)。タイヤには高校物理では説明できない奥深さがあります。
 タイヤは、車体が路面と接している唯一のパーツであり、モーターの動力を地面に伝え、遠心力を打ち消そうとしてくれる重要な部分です。マイクロマウスのハードに置いて、1,2位を争う重要パーツですが、去年の全日本マイクロマウス大会の皆様のタイヤを拝見していると、マイクロマウスにはナロータイヤ、ロボトレースにはワイドタイヤを使うのが一般的になっているかと思います。機体の重さはそれほど変わっていないのに、なぜタイヤの幅を変えるんですか?客観的に考えると、マイクロマウスは車幅が小さくないといけないからグリップが下がってでもナローを使って、ロボトレースは横幅の制限が緩いからワイドを使うと考えられるのですが、そもそもタイヤの幅は軽い機体に置いてグリップと関係しません。一見ワイドタイヤを使うとグリップが上がったかのように錯覚するかもしれませんが、それは機体の重量が重くなったからだと思います。グリップを上げる方法は機体を重くするか摩擦係数の高いタイヤを使うことです。機体が重いと遠心力も同様に大きくなり、結果的にコーナーでスピードを出すこともできません。さらに加速に必要な電流も大きくなり、加速度も悪くなります。また、タイヤは機体の唯一回転する部分でり、タイヤを重くすると加減速する際に慣性モーメントが効いてきて、機体自身の重さをいくら軽くしても、タイヤの少しの重さが機体のポテンシャルを大きく下げてしまいます。
 こう考えると軽いタイヤの方が動力性能が上がるのではないでしょうか。今まで周りの人に合わせて選んでいて何も考えていない人もいるかもしれませんが、この機会に一緒に考えてください。

 詳しい話はまた時間があるときにしっかりまとめようと思います。今回は序論だけ。今考えているタイヤの話のネタは
・タイヤの重要性(今回の序論)
・タイヤの幅とハイト
・タイヤの直径
・タイヤの扁平率(上のまとめ)
・摩擦力の種類
・キャンバー角
・まとめ(結局どうするか)
を考えています。これらをまとめるのは時間かかりそう・・・


 さて、マイクロマウスのハードの進捗は、バッテリーを自作の物にして置き場所を変えたことと、タイヤを高扁平率の物に交換したことです。ここまでタイヤについて考えてきましたが、今の機体にキャンバー角をつけたり、タイヤの大きさを変えてしまうと、色々と別の問題ができてきまして、タイヤだけを考えて変更しても相応の効果が得られないと判断しました。ただ、今まで使っていたタイヤはハイトが低く、変なタイミングで20度と30度のタイヤが混ざってしまったものを適当に使っていたので、これを機会に交換しました。今回はちょっと分厚めのタイヤです。剛性は下がりますが、変形損失摩擦による遠心力対抗性能を求めて試験的にやってみました。中々いい感じだと思います。
 バッテリーについては、120mAhのものから240mAhに交換しました。
CrqVObNVYAAPEQw
Aliexで注文していたので、相変わらず遅い到着でした。なぜ容量を2倍にしたかというと、Aliexに放電容量の表記があるものが、240mAh以上のものにしかなかったからです。もっと時間をかけて探せばあるのかもしれませんが、サイズ的にもよかったので、これにしました。1Sなので、それを二つ直列にして使います。2Sでは加速度がでないので、3Sにするかと少し考えています。バッテリーは10個入りで、2Sを2セット作ったので、あと6個残っていて3Sを2セット作るのに丁度いいんです。最初はバッテリーがショートしてしまった時を考えて多めに買ったのですが、ショートさせることなんてそう起きないでしょう・・・
CrqVPEmVYAArVL3
サイズもピッタリです。容量が今までの2倍ですが、重さは1g程しか変わっていません。それだったら充電の手間が1/2になった方が、マウス初心者の内は有意義だと思います。

Cth9Ub9VIAA6-pZ
ついでに充電器も作りました。Aliexで1つ20円しないものですが、十分に使えています。2Sの充電を2S分同時に行おうとすると、絶縁電源が2つ必要になります。そこで絶縁電源を自作してもいいのですが、ノートパソコンとモバイルバッテリーがあるなら、それは絶縁されているので使用可能です。サークルの充電器をお借りしなくてもよくなったので、開発が捗ります。


ソフトの進捗は、一番は斜め走行ができるようになったことです。
※この動画はスラロームの調整を±30mm程度で妥協して適当に作って、壁補正に任せてやってみています。

 条件文が多くて大変でした。斜め走行は夏休み始めの頃にモジュールを作って、新作の機体が完成してから実装し、1日バグ潰しをしたら動くようになりました。ここからが闇デバッグの始まりなのですかね。闇デバッグよりもスラロームを効率的に生成できる何を考えないといけません。今考えているのは、指定した速度と角度と半径で角加速度を演算して、三角角加速をできるようにするというのが有力候補です。理論値でなら少し考えれば実装できますが、問題なのはスピードを出した状態では理論値通りいかないところです。今年中に何らかの方法を考えて、理論値と実測値がある程度合う方法を探ろうと思います。最短経路を導出させるのはその次の話です。まず変則四輪というのがあまり気に入りません。次回作は二輪の吸引でいこうかと考えています。それならスピードを出してもある程度理論値通り行ってくれるのかな?その前に直進安定性が取れなくて死ぬのだろうか。壁があれば安定しそうな気もするけども。
 そして新たな補正を追加しました。こうやって色々な補正を追加していくとなると、汎用性の高いプログラムの書き方が要求されます。大体私は大会直前になってその場しのぎしかしてこないので、このような時に時間をかけて汎用性の高い書き方に変更しています。柱補正自体難しくもなんともありませんが、今のプログラムに追加することに時間が必要で、プログラミング向いてないなと思う次第です。

ここまではなんか可愛い走りをしていますが、ターン速度を1m/sに変えたらそこそこ速く見えるようになりました。
まだ上手いこと制御できていないので、一般的な1m/sより遅く感じるかもしれません。因みに、櫛補正とは角度補正のことです。壁補正ができないときは角度だけでも合わせておきたいものです。私のマウスは角速度の追従が全くできていないので、スラロームの角度が合わないんです。それを何とかしてくれるのが角度補正。探索でも角度補正がないとまともに走りません。何かバグがあるような気もするなぁ。

そして色々なバグを取り除いて滑らかな走りができるようになりました。しかし、この走行もスラロームに根本的なバグがありまして、壁補正でなんとか走らせている状態です。この時はまだ壁切れ補正はないので、指定した距離で合わせています。速度追従は我ながらいい感じでできていると自負しています。角速度の追従が悪くても壁補正と角度補正でなんとかなってしまうし、そのような補正を強化していった方が今後の為にもなるのかなと言い訳を作っています。
 今ではこのパラメータは上から3番目になりました。機体のポテンシャルは低くはないと思います。しかしまだまだ少し調整が必要です。特に足回りがよろしくない。
CuOQ-NfXEAA5D-W
ピニオンギヤがあまりにも滑るので、エポキシで固定している様子です。その翌日にはエポキシが割れて意味がなくなりました。ピニオンギヤとモーターシャフトの間に細い糸を挟むといいらしいとの噂を聞いたので、もう少し手を尽くしても上手くいかなかったら真似させていただきます。


その他おまけです
CuJ1NliVIAIgXE2
CuJ1OXQUkAE2cKR
金フラッシュの30cm PCB定規が手に入りました。Aliexで350円なので、気になる方はゲットしてください。

サーキットの練習をしている様子です。周りが逆ではないのか?と声が聞こえてきますが、これはタイヤのすり減り具合を均等にするために、大まかな調整は左回りにして、微調整を右回りにしようと考えています。中部地区大会のサーキットは凄いお方ばかりで参加しないでおこうと思っていましたが、N氏から背中を押されて参加することになりました。速く走れるコツ知りたいです!!(特にスラロームと経路導出についてお伺いしたいことが沢山あります...)

今年は経路導出には時間を使えないかなぁと半分諦めています。適当なことをすると想定外パターンにハマり、逆に遅くなってしまう場合もあるので下手なことはできません。いやー難しい。

そして最後に、Twitterのフォロワーが700人を超えました。今後ともよろしくお願いします。
Twitter プロフィール
今の出来事
非公開コメント

管理人へ直接コメントされたい方はこちらからお願いします。

名前
メール
本文
ギャラリー
  • 【Trifilar】2017年マイクロマウスの紹介
  • 【Trifilar】2017年マイクロマウスの紹介
  • 【Trifilar】2017年マイクロマウスの紹介
  • 【Trifilar】2017年マイクロマウスの紹介
  • 【Trifilar】2017年マイクロマウスの紹介
  • 【Trifilar】2017年マイクロマウスの紹介
  • 【Trifilar】2017年マイクロマウスの紹介
  • 【Trifilar】2017年マイクロマウスの紹介
  • 【Trifilar】2017年マイクロマウスの紹介
  • 【Trifilar】2017年マイクロマウスの紹介
  • 【Trifilar】2017年マイクロマウスの紹介
  • 【Trifilar】2017年マイクロマウスの紹介
最新コメント
訪問者数カウンター
  • 今日:
  • 昨日:
  • 累計:

アクセスカウンター
  • 今日:
  • 昨日:
  • 累計:

QRコード
QRコード
  • ライブドアブログ