そのほかはスマホアームを取り付けたり急速充電ユニットを取り付けたりしました。車中泊もできそう...このあたりで春休みの進捗は以上です。来月にはマウスが走っているのでしょうか。201721:48カテゴリマイクロマウス・ロボトレース抱負2017年、明けましておめでとうございます新年あけましておめでとうございます。早い、早すぎる!年が明けたということは、目標と現実の偏差の確認をしないといけませんね。昨年を総括しようと思います。2016年前半に立てた目標を見てみます。私も何を書いたか覚えていなくて不安になりました。力を入れる方向が変わっていました。19日の熱田の森大会に出場して前作よりスピードを出して完走させることです。ありますが、これは残念ながら達成せず。基板を設計して製作するも、いざ電源を入れると煙がモクモク・・・レギュレータのライブラリの設計ミスでした。基板CADに予め付属しているライブラリを使ったのが失敗でした。レギュレータのピン配置違うじゃん。いうわけで熱田の森大会は2015全日本で出場した機体をブラッシュアップして出場することに。モーターの接続方法を変えると制御が安定しなくなり、フラフラしながら走行し、完走直前でリタイアという事態に。この大会でAStrace_αには引退してもらいました。モーターを並列接続するとインダクタンスが落ちるのでやめた方がいい気がします。モーターを並列の様に扱いたいなら、モータードライバを個別に挟んで駆動した方がいいと思います。速度制御なしの、モーターにかける電圧を直接弄っての走行ゆえ安定しなかったのかもしれないので、根本的な原因はわかりません。モーターを直列接続していた時はまだマシだったので、不安定要素はあるかもしれません。モーターの特性をシミュレーションする際に、モーターのデータシートに記載されてるインダクタンスをそのまま使用されている方がいますが、殆どのデーターシートはサンプリング周波数1kHzで測定されてるので、100kHzのPWMで駆動するなら、サンプリング周波数を変更できるLCRメーターで実測した方がいいと思います。周波数が二桁違うと、それなりにインダクタンスが上がるので、シミュレーション結果も変わってきます。トレーサーの基板が燃えたしマウスに移ろうか。その判断が結果的に正解でした。>全日本のフレッシュマンクラスでゴールまで導ける機体を作りたいと考えています。当時はトレーサーに力を入れてマウスはサブ的に考えていたので、このような目標だったのだと思います。マウスよりトレーサーの方がスピード出せるし楽しそうと考えていたのですが、今思えば白線をトレースしながら加速するよりも、壁をトレースしながら加速する方が圧倒的に加速度を上げやすいことに当時は気付きませんでした。そもそもトレーサーで既探索加速をしたことがないので、どれくらいのスピードで制御が破綻するのか感覚的に掴めていません。次に夏休み前に立てた目標も振り返ります。・フルサクセス最短経路を斜め加減速走行してゴールする・エクストラサクセス吸引機構を搭載したマウスを製作して吸引してゴール。これとロボトレースの目標も立てていたのですが、マウスに専念してからの方が合理的だということで切りました。○まずはミニマムサクセス探索アルゴリズムについてはあまり凝ったことはできませんでした。探索が安定しない内に下手なことをするとマップが崩れて最短走行ができないからです。大会直前で探索が安定しましたが、それは袋小路で機体を壁に押し当てて姿勢を整える動作を入れたからです。この方法はなるべく避けたかったのですが、不安定なので仕方ありません。○そしてミッションサクセスとフルサクセスこれはいい結果が残せてよかったと思います。○最後のエクストラサクセスフレッシュマンで吸引機構は流石にやってはいけない雰囲気でしたね。完全に場違い感あります。これはやらなくて正解だったなと(笑)まとめると目標達成です。目標は後々見返せるように残した方が達成率が上がります(私の経験則)。ブログで公開すれば自分を追い込むことができるので一石二鳥です。Twitterは流れるので残そうと思って書くものではありません。遡るのも時間の無駄ですし。今後の目標を書きます。草の根大会にクラシックマウスで出場できることを目標とします。余裕があればハーフマウスとトレーサーも出したいですが、マウスのスラローム生成ソフトの開発で終わる気がします。草の根大会までにはトレーサーの試作機は完成していてほしいです。凝ったことせずに基本的なプログラムをささっと構築したいです。マウスで得た補正の知識をトレーサーにも色々と応用できそうなので、早くトレーサーの機体が欲しいです。誰かください(冗談)今年の総合的な目標は、全日本でクラシックとトレースでダブル入賞を目指します。今年はハーフマウスはやらないつもりでしたが、クラシックを設計していたらハーフでも走れそうな部品配置になってしまったので、ついでに作ってみます。ハーフを触ることによってクラシックの安定性を上げる方法を思いつきそうで、同じ迷路同じ機体で調整するよりも、環境を変えることによって発想を変えた制御にたどり着けるのではないかと期待しています。ハーフで制御を詰めようと思うと柱が何本あっても足りそうにないので怖いです。今のところ新作マウス(Trifilar)は以下の形状を想像しています。これはハーフエディションです。クラシック版は縦にもう少し伸びるかもしれません。伸ばさないと理想的な壁切れができそうにありません。クラシックとハーフでは、単純に一区画の面積を1/4として考えて設計するだけではいけないと思います。小さい機体を走らせる場合は、それだけ位置がズレる可能性があるということなので、より高度な補正の制御が必要になります。幅が広いマウスは、ある程度位置がズレると壁当て補正に頼ることができますが、小さいマウスは位置のリミッターを緩めたような状態になっていることに注意が必要です。私の様な素人が手を出していいのかわかりませんが、この形に挑戦しないと勝てそうにないので仕方ありません。このスクショは一カ月前に撮ったもので、今は少し構想が変わっています。他のイベントが忙しくてマウスをする時間が取れていません。言い忘れましたが、バッテリーは機体のド真ん中に置きます。理想的な形に少し近づけた気がします。今回新作マウスを作るにあたり、モーターを変更するというのが一番大きなポイントで、上手いことやらないと購入を断念した1717に劣ってしまいます。私は1717を嫌って使わないのではなく、軽いモーターに魅力を感じて採用しようとしています。機体は軽い方が加速が良くなります。モーターに十分なトルクがある場合に限ります。軽さの長所が活かせる構成にするために、海外サイトからモーターを大量に輸入して、手に取って選別し考えることにしました。モーターは消耗品ですので、安いモーターを多めにストックして酷使するのが私のやり方です。小さいモーターに過負荷を掛けて駆動するので、いつ壊れてもおかしくありません。因みに今回使用するモーターは5V版で、3Cell@100mAhのリポで駆動します。最近はモーターの端子間抵抗の小さいものが流行りですが、あまりトルク定数を落とすのもよろしくないかと。私の妄想上では、鬼加速と一般的な最高速度が出せるスペックになっていますがどうでしょうね。鬼加速には吸引ファンのツインドライブで重心移動させることにより実現できないかと考えています。実車で例えると、加速時はFR、減速時はMRのようなマシン特性に一瞬で行えるかもしれないということです。冬休みの進捗ですが、スリップ角を考慮したスラロームシミュレータを作りました。クロソイドから円弧になりクロソイドで終端するスラロームの平均遠心力を求め、それにグリップ係数を掛けたものを平均スリップ角とし、理論値の軌道にオフセットします。終端角度だけ合わせてやれば、途中経過の軌跡はスリップ角を固定しているため不自然でも、終端位置は割と正確に出るのではないでしょうか。大会会場でグリップ係数だけキャリブレーションすれば、スラロームの理論値と平均スリップ角から終端位置がわかり、シミュレータ上でパラメータを作成すれば、ほぼ無調整で適切なスラロームを実装できる気がします。やってみないとわかりませんけどね。現実味は帯びてきました。あと久しぶりにYouTubeに動画を投稿しました。いじわるな迷路を作ってみました。迷路の解説をすると、まずは連続ターンで姿勢を崩させ、そのまま壁補正をする場所も殆どないままL字の櫛に突入。櫛では壁補正ができないどころか、壁補正のゲインが高いと逆に姿勢を崩してしまう難関です。櫛を抜けるとまた壁補正する暇もなく長い斜めに入ります。斜め走行は単純に道幅が狭くなるので、侵入時の位置がシビアになります。長い斜めが終わるとまた斜め、また斜め・・・。この連続斜め走行を終えてゴールです。探索も難しそうですね。Bifilarで探索を3回させてみましたが、一度もコケることはありませんでした。音出し推奨(ぶつかった場所がわかります)難しそうな迷路ですが、Bifilarはガツガツぶつかってもゴールしてしまうことがあります。私もなぜ完走できるのかわかりません。壁切れ補正と角度補正と壁/柱補正のおかげです。一応フェイルセーフは入っていますが、この程度では掛からないようにしています。具体的には、左右のタイヤの回転速度の差分を1msごとに監視して、一定速度を超えたらフェイルセーフが働くようにしています。お気づきだと思いますが、機体が宙に浮いたらフェイルセーフが働きます。正確には片輪が浮いたら止まるという感じです。合理的な方法だと思います。(ただし丈夫な機体に限る)実はBifilarは一度もはんだ/部品のクラックを経験していません。はんだ付けしやすいサイズの部品を使うことと、基板を肉抜きして歪むと思われる場所に精密な部品を置かないことがポイントだと思います。その他も色々動画を投稿したので、興味のある方はYouTubeアカウントからご覧ください。201611:42カテゴリマイクロマウス・ロボトレース大会2016年CLフレッシュマン優勝!全日本マイクロマウス大会お疲れさまでした。大会の運営関係者の方々に感謝申し上げます。今年の全日本大会、本当に焦りました。会場に入ったところからお話しします。全日本大会には前日入りはせず、試走会に参加せずに一発本番を決めようと思っていました。会場に到着したのが少し早かったので、試走の迷路が置いてあるということで試しに走らせました。すると見事に前壁を読み違えて全く進まない!?これはまずい。センサー関係の部品が壊れていないかを疑ってセンサー値をPCで確認するも問題なし。それで一安心するものの、今から閾値調整をして前壁補正の値を変えてで色々しないといけないのはバグを生む原因になって怖いし、流石に時間が足りなそう。そんなことをしているうちに、もうフレッシュマンの予選は始まっていました。幸いなことに、私の出走は108番目。最後から二番目でした。今のうちにすべてを調整しないといけないということで必死でした。わかったことは、会場の迷路は反射率が異常に高いこと。1kHzでセンサーにフィルターは掛けていますが、得られるセンサー値は会場と部室で全く違いました。部室の迷路では角度依存を殆どしなかったセンサーが、大会会場では角度によってセンサー値が全く違う・・・そこにK先輩が駆けつけてくれました。焦っている私に落ち着いて対処法を一緒に考えていただけました。Bifilarの真正面についているセンサーは角度依存により使いものになりません。左右についた前センサーに役割を受け渡す作業を開始しました。その辺のプログラムは簡単に書き換えられるように工夫して予め作ってあったので、変更は時間がかからずにできました。あとは壁の閾値調整と前壁補正のゲインを勘で決めたらある程度安定して動いていたので一安心。フレッシュマンの出走順を確認すると、この時点で60番くらいの人が出走を終えていました。時間があるので試走を続けていると、様々な人から声を掛けていただき、お話をすることができました。そんなに精神的な余裕はありませんでした。会場で問題だったのはセンサーの値だけのようで、最短走行のパラメータは何も調整せずとも安定していました。今思い返すとセンサー値が違うのに壁補正のゲインを触っていなかったことに気付きました。適切なゲイン値から定数倍されたところで暴れるような制御の入れ方はしていないので大丈夫だとは思いますが。それと部室の迷路で壁補正を少し低めに設定していたのが良かったのかもしれません。いざフレッシュマンの予選に向かうと、結構期待されてしまっていて本当に神に祈る気持ちで走らせていました。会場で閾値調整をしたことによって、部室で走らせていた時の様に安定していて安心しました。ここまでが午前中の出来事だったとは...これからは前日入りしてしっかりと試走をするか、会場でセンサーのキャリブレーションや閾値調整をすぐに済ませられるモードを作らないといけないなと強く実感しました。今大会でどこを調整しないといけないかがわかったので、次の大会までにはキャリブレーションできるようにしようと思います。結果的な順位からすると優勝することができましたが、初代田代賞を取られた某F氏もフレッシュマンなところ辞退してエキスパートに参加されて4位を取られたとのことで、そちらの方が何倍も価値があることを先に述べておきます。私の機体では吸引機構が搭載されていないこととソフト共に全く敵わない方です。来年は負けないので覚悟していてください!(後々言わなきゃよかったと後悔するアレ)それと誰からも聞かれていませんが、今大会で使用したパラメータを、来年のフレッシュマンに向けて公開しようと思います。DCモーターの板マウスじゃないと参考にならないかもです。ステッピングモーターを使ったことがないのでわかりませんが。来年のフレッシュマンでは最近オーソドックスになってきているDCモーター変則四輪吸引が出るんですかね。00:05.454(往復失敗)走行結果を並べてみると、大会の会場でも走破性高かったなと思います。言ってもまだこのマシンの限界は引き出せてないわけですし、力を持て余して走破性を語っても仕方ありませんが。予選の3走目ですが、動画を見直したところ、機体を置いたときの初期角度がズレていたような動きをしていました。Bifilarはジャイロから得られる角度を参照しながら壁情報を反映させるように壁補正を掛けているので、初期角度がズレると何も合わなくなります。それでも短い迷路だったので、最後は前壁補正でゴリ押ししてゴールにはなったものの、2走目の方がいいタイムでした。決勝4走目のリタイヤについては後に記載します。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に落ち着けたのでよかったかなと思います。次回作もこのような流れで行きたいです。因みに、次回作の機体名はトリファイラです。最後に今年の機体を載せて終わります。機体名:Bifilar(バイファイラ)それでは、長文読んでいただきありがとうございました。気付いたら新作マウス(バイファイラ)が出来ていた。大学生の夏休みなんだから、前回の更新から圧倒的成長をして圧倒的な進捗を上げているに違いない。そんな上手い話はありません!新作の機体ができたことくらい。機体が何台できたってソフトがしっかりしていなければ大会でいい結果も残せない。ソフト面での進捗はゼロではないですが、まだ実行に移せていません。3週間前の僕「斜め走行のモジュールは作ったけど、今の機体で調整しても新作に移植はできないし、PIDゲインなんてガバガバ過ぎて、これで調整してもいいことない。PIDのゲイン調整を今からやっても直ぐにバラすのではやる気が出ない。」という感じで夏休みの半分弱を適当に過ごしました。06:09:34FA機器.comさんの「メカトロ部品学生無料」に参加させていただいたり。沢山の部品を譲っていただき、本当にありがとうございました。以下の品が(個人的に)嬉しかったです。2SC5200というNPNパワートランジスタ95個と、カレントトランス沢山です。普通に買うとトランジスタの方は1つ200円で、CTの方は1000円近くするようです。2SC5200は中高生の時によく使っていたので懐かしいです。昇圧回路作ったり、自作電源作ったり・・・カレントトランスの方は、テスラコイルのフィードバック信号を受けるために使わせていただこうと思います。今までは、価格や適切な巻き数のCTがないなどの理由で自作のCTを使っていましたが、ここまで数があると、複数段使ったりして巻き数比の融通が利きくようになります。お金持ちになった気分で使わせていただきます。ありがとうございます。充実とまではいかないものの、色々楽しいことしてました。進捗が乏しいことの言い訳に時間を使って本題に入るまでの前置きがクソ長くなってしまいました。新作マウスの紹介をします。機体名:バイファイラ(Bifilar)基板厚:1.0mmマイコン:RX631センサー:ST-1KL3A(フォトトランジスタ)MPU6000(ジャイロ)IE-512(エンコーダ)モーター:Faulhaber_1717バッテリ:LiPo_2S(7.4V)240mAh重量:90g(バッテリー含む)サイズ:100*69*24(ケーブル除く)バッテリーは現在発注中で、上の写真では120mAhを使っています。置き場所もモーターの後ろにスペースを作ったのでそこに置く予定です。スイッチがバッテリーの下敷きになって押しづらい状態です。このバッテリーは薄くていいのですが、横幅が結構あるのでタイヤのトレッド幅を縮めた機体では、後ろに置くことができません。バッテリーはAliexに注文したのでいつ届くかわかりませんが、まあ気長に待ちましょう。3週間経つので届いてもいいころです。名前に関してですが、これからは何かに統一した名前にしていきたいと思います。これからのコンセプトは"フィルター"です。フィルター回路を少しでも勉強したことがある人ならわかると思いますが、トロイダルコアに電線を巻き付ける際に、その巻き方にバイファイラ巻きというのがあります。このような関連でやっていこうと思います。