Powered By Blogger

2013年12月30日月曜日

Considering emitter's light process

   Here, I will write about the consideration to the previous experiment.

   The result was that Vector's diagonal receiver catches more light than experimental circuit's horizontal one. This means stronger reflected light comes from the front, though nothing reflects light. I wonder what the emitted light process is like.

   I completely forgot "diffuse reflection". Since maze wall is not mirror, light does not go like the picture below (sorry I'm not good at painting).


   In fact, light goes like this, I think. Here, diffuse reflection occurs and reflected light goes in all direction.


  Because of that light process, stronger reflected light comes from front than side. This explaines the experiment result. And parallel arrangement of IR emitter and receiver is the best, since receiver faces to the direction in that light comes.

2013年12月23日月曜日

非平行センサ試作テスト

前回 横壁センサのフォトトランジスタ(PT)はLEDに平行でなくてもいいのではないか、真横でもいいのでは、なんて書きましたが、今回試作してテストしてみました。
結論から言うと、平行なときより明らかに信号強度が下がり、問題外でした。
一応、何をしたのか紹介します。

下の写真左のようなLEDとPT、抵抗だけの簡単な回路をユニバーサル基板上に試作。テキトーです。
私のマウス「Vector」(写真左)と比較して、LEDはだいたい同じ配置で、PTだけはほぼ真横にしています。横壁のPTだけ調べたいので、前壁用のPTは付けていません。


これをブレッドボードに接続してテスト。Vectorと回路構成は同じです。ブレッドボードの接点抵抗が大きいですし、配線が長いですが。




実際にAD変換してみました。まず、周囲に何もない場合。直接PTに入って来る光量を調べています。
12bitAD変換値はおおよそ 試作:100、Vector:50 でした。


次に横壁から3cmくらい離れたところで実験。
AD変換値は試作:200、Vector:500 でした。



どうも直接光は増えて反射光は減るようで、あまり利点がなさそうだということで、これ以上のテストは中止。

やはり多くの人がやっていることには、それなりの理由があるということで。残念。

2013年12月16日月曜日

壁センサの発光素子と受光素子の光軸は平行であるべきか?

気になります。
前回に続き壁センサの話。
だいたいどのマウスの壁センサもLEDとフォトトラが平行に実装されてますよね。
例えば私のハーフマウス「Vector」だとこんな感じ。


自分としてはこれといった考えもなくみんな平行にしているからという理由で自分も平行にしてましたが、真横とか真正面にLEDを向けない限り壁から光が反射してくる方向はLEDに平行ではありません。

LEDを傾ける角度は横壁センサだと45°とか、ある程度経験的に決定された値を使うとして受光素子はその限りではないなと思うわけです。

横壁センサのLEDは45°に向けるけど対応するフォトトラは真横にしたりするとどうなるんですかね?

①横壁から光が反射してくる方向に向けることで信号強度が増える
②前壁から反射してくる方向に向けないことで干渉を防ぐ

あたりの効果があると思ってます。

そのうちテストしてみましょうかね。Vectorに使ってるLEDが在庫切れですが、、、

2013年12月13日金曜日

壁距離-センサAD変換値テーブルの作成(6次曲線近似)

全日本大会も終わりましたし、今年やったこと、来年に向けて検討していることについて小出しにしていこうと思います。

まず最初は壁センサのAD変換値から壁との距離をどのようにして推定するかということについて。
現在は測定した結果をそのまま6次関数で近似して使用していまして、これについて、自分の従来の方法とその問題点についても触れながら書こうと思います。

代表的な手法は壁との距離とセンサのAD変換値との関係を測定し、ある関数で近似して、1対1対応の表を作るというものでしょうか。
例えばこちらでは関数として対数関数を用いたものが紹介されてますし、自分もこれまではもっと単純化して距離の2乗に反比例すると仮定して以下のようなAD変換値と壁との距離の関係を求め、表にして使用していました。
これは左の横壁センサのものです。




しかしご覧の通り実験の測定値(赤い点)と近似関数(青線)との間に明確な違いがあり、これをこのまま横壁センサに適用すると迷路の中心を走れないため、近似関数に5mmくらいオフセットをかけて調整していました。


これでそこそこ走るようになりますが、オフセットの値はいくらにすべきか調整しないといけませんし、問題ないにしても実験値との誤差が大きくなんとなく気持ち悪いです。
そこで、実験結果をそのまま6次関数で近似するとそこそこきれいに一致しました。


ここで、AD変換値2500以上の値は関数に関係なく一定値にしています。あとで示しますが、6次くらいになると横軸両端の極端な値で変な挙動をするので。

ちなみに6次曲線近似は研究室で使用している「GP」というソフトを使いました。
フリーソフトですが、名前がありきたりなせいか、Windowsより年上の古いソフトなせいか簡単にインターネットで探せません。紹介できなくてすいません。
ちなみにGP上で近似した時のイメージはこんな感じ。赤線は近似関数の導関数を表わしており、値は縦軸の右側です。AD変換値2500以下の範囲では負であることから6次関数の単調減少性が確保されているのが分かります。
AD変換値2500以上のところの近似関数(青線)は単調減少性を示さず急激に増加していることから、一定値にさせているわけです。


こうして6次関数により単調性と実験値との一致ができるようになりました。
これにより、オフセット値の調整をしなくて済むようになりました。
さらに、一度設定をしてしまえば実験結果からより簡単に近似曲線が求められるため、少しだけ開発時間の短縮ができました。

ただ、残念ながら壁からの姿勢制御は壁の中央値と単調性があれば問題ない気がするので、わざわざここまでする必要があるかわかりません、、、

2013年11月26日火曜日

リンク追加

今年のロボトレース競技において、全日本学生大会で優勝、全日本大会でも見事3位に入賞された落合さんがブログを始められたそうなので、早速リンクに追加しました。

ろぼとれ日記

マシンデータも公開されてますし。注目です。

全日本大会まとめ

今年も全日本大会が終わり、全ての大会が終了しました。
大会参加者、運営者の皆さまお疲れ様でした。楽しい時間をありがとうございます。

さて、私は学生大会でシード権をとりましたので予選は参加せず、ハーフサイズ決勝に出場しました。
競技結果としては
Time:14秒704 4位
でした。



去年の全日本、今年の台湾大会(@9月)に続き大きな競技会で3回連続で4位入賞でした。
うれしいような、進歩が無いような、、、

競技内容としては、1走目の探索で途中でリタイア、2~4走目に1走目で一応出せたかなり遠回りなルートで最短、5走目は最後のほうでクラッシュしました。

今回で探索まわりのソフトの脆弱性が明らかになりました。
まずは効率化のつもりで試走会前日に入れた次進行方向決定ソフトのバグ。意味もなくその場で超新地旋回繰り返してました。
また、スタート位置からしか重ね探索ができません。最短でゴールしてから重ね探索を始められると走行回数5回の観点からして良かったと思います。
そしてタイヤにたまる埃の対策。といいつつ変則4輪だと接地点はタイヤのみで最後は埃と路面間の極めて小さい摩擦で走るしかないので対策はありません。速度を落としても壁からの姿勢制御がかかる時間を稼げるくらいのメリットしかなくターンや超信地旋回の再現性はなかなか確保されません。
例えば3分など時間で探索を打ち切るしかないようです。
これは他の競技者もそうみたいで、今年は第1走で時間内に全面探索に成功したマウスはありませんでした。

最短のほうは今年1年の取り組みが功を奏しなかなかいい感じでした。
わりとひどいコースを走りましたが、5走のMaxパラメータ以外すべて完走しましたし、この点は満足しています。

最後にですが、海外を含め様々な競技者の方々と交流したり、競技レベルの向上を肌で感じたりすることができましたし、来年も頑張っていきたいと思います。
それでは皆様来年の大会で。

2013年11月23日土曜日

全日本大会試走会となかなか面白いホテル

全日本大会1日目の試走会に参加しました。

試走したところ下手に何か変えるとかえって良くない感じで、満足はいきませんが致命的なところはありませんでした。
調整用迷路は少しすべりやすい気がしますがその路面に合わせる意味が無いので我慢。ターン中の速度ゲインを少し増やしました。

あとは泊まったホテルがなかなか面白いので紹介します。


まずホテルにはなかなかない古事記と電子レンジのコンビネーション。全く使ってません。



冷蔵庫に素晴らしい張り紙があるかと思えば



お~いお茶




そしてベッドの時計が壊れてました。



私自身はこういう地味にツッコミがいのあるものが好きですので、なかなか気に入りました。


本日2日目は主に予選。私はシード権があるので参加しませんが本番迷路の路面の状態が知りたいところです。

2013年11月20日水曜日

回復

昨日はひどい状況でしたが、今日は体調が戻りました。限界超える前に休むって大事ですね。

元気が戻り調整がちゃんとできるのでマウスも少し復調。久しぶりに動画アップできるくらいには動いてます。



最短はもうこの辺にして、探索を詰めていきたいところです。

2013年11月19日火曜日

いろいろ限界

あと少しで全日本大会ですね。皆さん準備に余念がないかと思います。

さて私はというと、もうマウスの走行スペックも自分の体力も限界が見えてきました。
中部地区大会のときは風邪ひいてましたが、大きい大会の前は気合いが空回りするため体調を崩してしまいます。今もちょっとしんどい。

今日は体力の回復に努め、明日からもう細かいところを少し詰めて行きたいと思います。

2013年11月10日日曜日

全日本大会に向けて調整

2週間後に迫った全日本大会に向けて週末に調整しました。

とはいえ先週の学生大会までにやりたかったことができるようになった程度ですが、、、

改善したつもりでしたが2週間前の中部地区のころの調子に戻ったかどうか。最近あまり進展なしです。

スラロームのときに変則4輪のせいなのか角速度の応答が遅く、重いのでますます反応が鈍くなってどうやってもターン速度があげられません。

とりあえず今できることが会場でもできるように細かいところもこだわっていきたいところです。

2013年11月7日木曜日

学生大会、、、からのMaker Faire Tokyo 2013

更新が遅れましたが、先週末に学生大会に参加してきました。

また当初は予定してませんでしたが、神様のイタズラにより、 こちら でも紹介されている Maker Faire Tokyo 2013 の出展にもちょっとだけ参加しました。

東京滞在中は色々な方にお世話になりました。この場を借りてお礼申し上げます。ありがとうございます。

先に学生大会の報告ですが、マイクロマウスハーフサイズ競技にて
Time 3.934 優勝+シード権
でした。



中部地区大会から1週間しかないのに無理にハードの改良したのがあだになってパラメータあわせきれていないのと、路面のグリップが良くなかったのとであまり良い状態ではなかったですが、それなりの走行が出来たと思います。
また、今回初めてシード権を獲得しました。幸か不幸か予選に出なくて良いようです。

ここまでは無事に終わりましたが、帰りに夜行バスの出発時間を1時間勘違いするという痛恨のミスをやらかして帰れなくなりました。
そのまま勢いで翌日のMaker Faire Tokyo 2013に参加することにしまして、ミスの挽回に成功(?)しました。
いや、あの、、、もうこうなったら最初から参加するために東京で1泊したということにしておきます。

Maker Faireではハーフサイズマウスの展示に参加しました。絶えずちょうどいい人数の方が来られたのでいい感じの出展でした。一般の方にもマウス、トレーサーを楽しんでいただけたようですね。

京都に帰ってからは突然本業の卒論(半導体物性とかいうマウスと関係ない分野)が炎上してますが、とりあえず全日本大会に向けて頑張って調整していきたいと思います。
それでは皆様また流山でお会いしましょう。

2013年10月27日日曜日

中部地区大会

参加してきました。
例年通り、海外勢をお招きすれば全日本大会になるんじゃないのというくらいの熾烈な争いが各競技で繰り広げられてました。
参加者は多いですが運営の皆様のご尽力で円滑に進行してましたね。ありがとうございます。

さて、私はハーフサイズ競技に出場、準優勝でした。
探索含め5走全て完走しました。安定しているのはいいんでしょうが、勝負師になれていないだけな感じもあります。走行回数進むにつれて上げる走行パラメータ幅が小さすぎて、小刻みにしかタイム上げられてませんし。
もともと家の9×9迷路で十中八九以上壁に触れずに走れるパラメータしか大会では使いませんので完走率はそこそこですが、今回の迷路くらい簡単というか単調なコースだともっと博打的に無茶しても良かった気はします。

それから、「こじまうす7」に0.005秒差ですが今回初めて勝ちました。
ただし、「こじまうす7」が本調子でないこと、小島さんが新作に注力されていることは分かっているので小島さんに勝ちましたとは言えません。
それでもようやくトップ選手達と同じ競技で勝負している感覚になれましたし、ようやくこれまでやってきた成果が出たように思えますので素直にうれしいです。

さて、来週は学生大会ですね。私も今回初めて参加します。
それまでに風邪を治さないといけませんね。
今日も声が出にくくて皆さん聞きづらかったでしょうから、、、

2013年10月22日火曜日

USB接続充電器(シリアル通信機能付き)

を作りました。

パソコンのUSBに接続することで最大4つのLipoバッテリを充電しながら、マイクロマウス上のマイコンとシリアル通信できます。
秋月の定番USBシリアル変換モジュールと自作Lipo充電器を合体させたわけです。

下の写真の通り、ケースには某お菓子のものを使用しています。遊び心をくすぐられるちょうどいい大きさなんですよね。





最近面白いものが作れてないなということで、8月頃から計画していまして、今回ようやく完成させられました。

私の充電器はこれまでケースが大きい上に電源をACアダプタで取っていましたので大会会場に移動してから何かと不便でした。
それでPCのUSBから電源をとれるように作り変えようと思いましたが、USBにはシリアル通信に使っている秋月のモジュールやPC操作用のマウスなどを接続するので空きが無くなってしまいます。
それでもう一緒にしてしまおうと思ったわけです。

話が変わりますが来週は九州&中部地区大会ですね。私は中部地区大会に参加します。自分のマウスのコンディションもさることながら台風が心配です、、、

2013年10月13日日曜日

消費電流の削減

台湾大会では第5走で残念ながらバッテリ切れフェイルセーフがかかってしまい、全日本大会に向けてハーフマウスのバッテリ切れの対策を考えています。

容量を増やすといのも一案ですが、あまり気乗りがしないので消費電流を減らす方向で考えました。

それで以下のやったことについて紹介します。

①マイコンの動作周波数の半減

②2個のAD変換器のうちの1個を使わない

③走行中に無駄なLED点灯を行わない


①マイコンの動作周波数の半減、について

搭載されているSTMF4の周波数を最大値の168MHzから半分の84MHzにしました。
もともとFPU内蔵などにより演算能力が高く、1ms周期割り込み中のモータ出力決定のための演算も0.1msかかりませんでした。
32×32迷路の探索中の次方向決定演算以外は気にする必要が全く無かったのですが、演算の開始位置を早めることにより問題を解決しました。
もしかしたら更に半分にしてもいいかもしれませんが、いろいろ怖いのでやめておきます。

マイコンの消費電流がおよそ半分になるので30mA程度消費電流が減ってます。


②2個のAD変換器のうちの1個を使わない、について

STM32には2個(または3個)の内蔵AD変換器で同時にサンプリングすることにより、例えばジャイロLY3200の角速度出力信号と参照電圧を同時に読める、あるいは2回のサンプリングを疑似的に1回で行えるので短時間により多くのAD変換ができるというような機能があります。
自分の場合はジャイロMPU9150のデータはI2Cで読みだしており、またAD変換する信号は4つの赤外線センサとバッテリ電源電圧だけで、このような需要はないので上記の機能の使用をやめ、AD変換器を1個しか使わないことにしました。

STMのADCペリフェラルを1個使わず、AD変換の回数を減らしたので2、3mA程度消費電流を減らせます。

③走行中に無駄なLED点灯を行わない
直進のとき以外は壁センサを使わないので、スラロームやその場旋回中は赤外線LEDをOffにします。
探索中に直進とそれ以外が1:1で行われると仮定すると、使用量半分なのでこれも2、3mA程度消費電流を減らせます。

以上、3つの半分(クロック、ADC使用数、センサLED平均点灯時間)により少しは電池が持つようになりました。

しかし、まだ例えば全日本大会で5分くらい探索するのはバッテリ的に厳しいかもしれません。
ほこりで滑るとかまだ他の問題もありますし。

2013年10月6日日曜日

ジャイロの張り替え~まさかの2回目

だいたい1か月前に自分のマウスに2個乗っているうちの1つのジャイロ(&加速度センサ)の張り替えをしましたが、もう片方もお亡くなったようで、昨日張り替えました。

素子を指で押さえつけると動くものの、何回はんだごて当てなおしてみても回復しないので、接触不良ではなく素子自体の端子と内部回路をつなぐ線がどこかで切れている模様です。

とりあえず定期的に壊れるものだということが分かりましたが、原因がクラッシュ等物理的衝撃なのか、しょっちゅう接触不良起こして温めなおすときに蓄積したダメージなのかは分かりません。

全日本大会までもつといいのですが。

2013年9月26日木曜日

関西支部迷路段差補修

マイクロマウス関西地区大会では毎年迷路の段差がひどく(特にクラシック)、見た目にマウスの挙動に影響していました。

これを何とかしようということで、先週末に段差補修を行い、私も手伝いをしました。詳細はコチラ
現状では間違いなく規定以内の段差に十分収められていそうです。
来年の大会まで持ってくれるとうれしいですが、、、

2013年9月17日火曜日

台湾大会(観光編)

大会の次の日に台北市内を観光して来ました。

まず午前中は龍山寺。
周辺を歩いているときにようやく台湾に来た感じを味わいました。大会中はずっと会場のLHUにいまして、なんとなく外国に来た気がしませんでしたし。

午後は電器街を練り歩きました。
日本の相場の1/3とか1/5くらいで手に入るものがあったので、いろいろ買ってしましました。

夕方~夜は台北101へ。

夜景はきれいで、マスダンパが面白かったです。


あとは台北に来てるのに夕食はカレーにしましたが、それも日本と全く異なる味がして、好まれる味が違うのかなと思いました。これに限らずこちらで食べたものは全体的に甘めに味付けされていた気がします。唐辛子の辛さがウリの料理以外。

はじめての海外観光でしたが、地下鉄も分かりやすいですし、日本語が通じたりそもそも文字が漢字表記だったりして日本と同じ感覚でいられますし、ライトな感じでとても楽しめました。
みなさんも機会があれば、是非台湾観光を。

台湾大会(競技編)


自分の競技結果はマイクロマウスハーフサイズ

タイム:14秒55、4位

でした。



以下、他の参加者に撮っていただいた動画

探索

最短

結局最短は4回中2回途中で引っかかって、最後の1回バッテリ切れでフェイルセーフかかってますので1回しか成功してません。
探索は時間がかかってますがとりあえず迷路サイズが大きくても全面探索可能なことが分かりました。

今回の大会で更なる安定性の向上、バッテリ切れ対策など課題が鮮明になりました。
また、日本と海外の大会の違いや自分が挑もうとしている越えられない壁(となっているマウス)とのレベル差などもよくわかりました。
生まれてはじめて行く海外で、貴重な経験をさせていただきました。一緒に参加した日本人選手の皆様、おもてなしいただいたLHUの方々に感謝しています。

来年も可能な限り参加して越えられない壁にリベンジしていきたいと思います。
とりあえずまずは全日本大会に向けて上で上げた課題を克服していかないといけません。

2013年9月14日土曜日

台湾出発前夜

台湾出発前夜@深夜1時頃です。

ちなみに私はもう関空に来ております。

早朝の便で台湾に向かうので、当日出発で間に合いません。

FreeでWifiが使えるベンチでのんびりしてます。

肝心のマウスのほうはある程度妥協できるところまでは頑張ったので妥協したところまで動作するよう祈ります。
(本当はそうなるよう会場で調整しないといけません。)

2013年9月11日水曜日

ジャイロの張り替え

台湾大会が週末に迫る中、調整しようとしました。
が、どうもジャイロ‐マイコン間のI2Cがよくないらしく、通信が途切れて走れなくなることが頻発しました。

自分のマウスにはInvensenseのMPU9150が使われています。AD変換後のデータをI2Cでセンサからマイコンに取り込んでいます。

はんだクラックを疑って温めなおすも、とうとう完全に動かなくなってしまいました。

もともと加速度センサを2個付けたいということから、この素子が2個マウスに乗ってますし、壊れたのは片方だけなので、1個だけ使うことにしても良かったんですが、一応壊れた素子の張り替えに挑戦しました。

これはLGAなので端子の足が出っ張っていなくて、どうやってはがすかが問題でしたが、ペンチで素子を引っ張るとそれはもう簡単にはがれました。


通常こんなことをすると、はがれるのははがれますが、基板側のパッドも一緒にはがれて張り直しはできません。
しかし、IC本体とその金属端子間の取り付けが異様に弱く、簡単にIC側の金属端子だけ残してはがれました。
うれしいといえばうれしいですが、そもそも壊れた原因きっとこれですね。根元で断線、、、

というわけで、奇跡的に張り替え成功しました。とはいえ、コチラで大先輩もしておられますが、ICの張り替えって面倒ですね。しかも大会前に。

2013年9月2日月曜日

中部地区初級者大会

に参加してきました。
競技結果は

タイム:3秒697、表彰辞退、特別賞

でした。

5回の走行の内容としては全面探索、オートスタート最短、Max3回で、全て完走しました。
8月中はひたすら安定性を上げてましたので、タイムは満足いきませんが5回すべて完走したので良しとします。
次の大会が難しい迷路課題の台湾大会(@9月15日)ですので、安定性を重視しているわけです。

ターンは現状で妥協するしかないように思いますが、直線はまだ改善の余地があると思ってますので、台湾に向けてもう少し頑張ります。


最後に本番後の試走動画を。今回から最短でゴール後にスタートに戻ってくる機能を追加しています。こういう細かいところももう少し拡充していきたいところです。


2013年8月10日土曜日

ターン軌道の矯正

本題に入る前に、後輩のブログの紹介をします。
このブログでも、リンクをはってあります。
彼のことについては大先輩のブログですでに解説済み。あえて情報を追加するなら、彼の自宅と私の下宿先が徒歩数分でとても近いことくらいでしょうか、、、、ロボットと関係ないですね。



さて、ここからが本題。
大学院入試が終わり、関西地区大会からの課題であったターン軌道の矯正に取り組んでます。
自分のマウスは高速ターンで軌道がずれる上に再現性が低く、レーンチェンジ(45°ターン2回)をするだけでその後の直線でふらふらになるくらいでした。

とりあえず現状ベストがこれくらいです。関西地区大会第5走行で失敗したパラメータ。




何が起こっているか分かりにくいのでスロー(240fps)もご覧ください。同じパラメータですが、上の動画とは別の走行時のものです。ちょくちょくずれてるのがバレますね。




明日の中部地区月例会で、16×16迷路でもどれくらい対応できるか試そうと思います。結果はまた明日。

2013年7月14日日曜日

関西地区大会

本日開催された関西地区大会に参加してきました。
中部、関東、九州からたくさん遠征していただき、全日本大会の前哨戦とも評されるレベルの高い大会になりました。


さて、私の結果はというと、、、

3位入賞&特別賞  タイム 4秒277

となりました。新作で挑戦するなど手を尽くしましたが、2トップには足元にも及ばないようです。
ホームゲームですしもうちょっと健闘したかったですが残念です。
たくさん課題をいただき一つ一つ順番にクリアしていきたいですが、家に帰ると大学院入試の受験表が届いていて我に返ったので、1ヶ月くらい我慢します。


競技終了後に思いつきで今回出走したハーフマウス全部ゴール領域(18×18cm)に収まるんじゃない?ってことでやってみました。
結果、今回出走したマシンどころか一部の人の旧作マシンまで余裕で収まってしまいました。

こちらがその写真。某吸引クラシックマウスをスケール比較のために置いていただいてます。


最後に表彰式で大先輩とタッグで副賞(ハーフサイズ用の壁と部品)を後輩に託すということをしました。
多分そのうち後輩に私なんかよりすごい機械研マウサ―が誕生する(ハズ)ですので、ご期待下さい。

関西地区大会直前試走会の延長戦

本日は関西地区大会前日の試走会がありました。

そのなかで探索ルーチンのバグを発見し、試走会中に解決できず、危機的状況でした。
が、自宅への帰りのバスでそれらしい原因を思いつきました。

原因はわかったので、とりあえず自宅迷路で再現してみました。なにかがおかしいことを以下の動画の再生後30秒のあたりからご覧ください。


壁が無く侵入可能であるものの、別の方向に進行したのでまだ通ってないところを記録していくのですが、どうも袋小路になってるところは侵入する必要なしと判断する部分でゴールを含む部分まで侵入する必要なしと判断されたのが原因でした。

下図を使って説明させていただくと、マウスが青の矢印方向に進行する際、黄色の四角の区画に入れることを記憶するのですが、この区画から入った先は行き止まりなので行く必要なし、と判断してしまったわけです。
黄色の区画に行くことができないので、ゴールに行けずにさまようわけです。




こういうケースがあることは把握していまして、対策もしていましたが、どうも対応できない形状だったようです。そういうわけで、怪しい部分を修正。ちゃんと走るようになりました。


ちゃっかり最短も調整しました。試走会で使われていた、全体的に難易度が高いコースを参考にしてあるのでつらいですね。


やるだけやったので本番でもうまく動作してほしいものです。

2013年7月8日月曜日

関西地区大会に向けて調整

来週の関西地区大会に向けて週末に少し調整しました。
時間があまりないので、ゲインの見直しなど、軽めの内容です。

現状だいたいこんな感じです。まあまあ走ってますかね。


ただ、調整中にはんだクラックなどのトラブルがいくつか発生していて、やるべきことはやりましたが、本番ちゃんと動くかどうか心配です。

2013年6月16日日曜日

マイクロマウス合宿

久しぶりの更新になります。2か月ぶりですね。

2013年のマイクロマウス合宿に昨日今日と参加してきました。

関西、北陸のメンバーで始められた当合宿ですが、いまや参加者が50名を超える全国区のイベントになりました。
幹事の清水さんをはじめ関係者の皆様、お疲れ様でした。楽しい時間をありがとうございます。

規模は大きくなっても他の競技者とお話しさせていただいたり、動作確認がてら迷路を走行させて遊んでたりしたら午前4時とか5時になってるのは第1回のときから変わらないですね。
大会などではゆっくりお話させていただく機会がなかなかないのでとてもありがたいことです。

私自身4月に京都に引っ越してからは十分マウスを調整する時間は確保できてないですが、イベント最後のプチ大会では「師弟対決」ということで大先輩小島さんの「こじまうす7」と接戦をくりひろげ場を盛り上げることができました。

この合宿、次回の幹事もスムーズに(?)決まり今後も順次開催されると思いますので、興味のある方はご参加よろしくお願いします。

2013年4月8日月曜日

フレッシュマン規定変更

いきなりですが、コチラで今年のマイクロマウス競技に関しての情報が公開されてます。

どうやら2014年大会からフレッシュマンクラスがハーフサイズで始まる一方で、クラシックでは廃止となるようです。

私は「マウス合宿」というイベントに参加し、その場の勢いでマイクロマウス競技をハーフサイズから始めました。
その年の全日本大会ではこのことが評価されてニューテクノロジー賞もいただいたほどでしたが、どうもそれが当たり前の形になっていくような制度作りが進んでいくのでしょうか。

自分がやっといてアレなんですが、個人的にいきなりハーフサイズでマウス競技を始めることはお勧めしません。特に、自分で1からハードを作る場合。

理由はいくつかありますが、そもそも同じ機能を実現する場合、小さくするのは格段にハードルをあげることになります。

例えばはんだ付け。おそらく、ハーフサイズでは次のようなことが前提になります。
・プリント基板(できれば外注)
・コンデンサ、抵抗などすべてチップ化
・マイコンは既製品のボードでなく、基板に直で実装
つまり実装の難易度が上がる上に、プリント基板という修正、修復しづらいものを扱うことになります。

次に駆動、制御面。クラシックに比べて駆動部品(基本モータとギアとタイヤ)が小さい分デメリットもあります。
・DCにするならエンコーダの、ステッパならステッピングモータの選択肢が狭い。
・ギアの追加工、ホイール、モータマウントなど、パーツの小ささにより自分で加工する場合難しく、精度も出しにくい。
・上2つにより、駆動部(モータの動力をタイヤに伝え回転する部分)の信頼性を上げにくく、迷路走行時の制御がしにくい。
クラシックならばステッピングモーターの軸にホイールはめておしまい、というのがフレッシュマンに多いですし、きっと作るのも制御するのも1番簡単なのでしょうが、ハーフではこれは現実的な選択肢では無いように思います。

だらだら書きましたが、要するに作るのも動かすのも大変になります。


ハーフサイズフレッシュマン競技に参加される方は、このあたり是非検討していただきたいですね。
自分の1年目の苦労を思い出すとフレッシュマンがなくなってもクラシックから始めてもいいと思います。

2013年3月4日月曜日

全面探索

とりあえず今年作ったマウスも去年のマウスもある程度走行性能が確保できました。

次に考えるのはより良いルート選択ということになりますが、これは主に2つの要素が絡みます。

①最短経路導出プログラム
②迷路壁情報の必要十分数取得

①については現行のプログラム上の定数を変更すれば対応できると考えています。
今のところ不当に直線の重みづけが小さいので、それを変更すればもっと良くできます。

②については基本的に全面探索を行うのが良いと考えています。
そこで、効率はともかく全面探索するソフトウェアを作成しました。
シミュレータ的なものを作れないので実際に走行して、それっぽいことができることを確認しています。



袋小路カットとか1柱に壁が3か所無ければ勝手に壁入れるとか細かな工夫もそうですが、あとはいつ打ち切るかというのが重要な気がしますね。

絶対に入れるべきなのはタイムアップ処理で、とりあえず3分経っても終わらなかったらスタートを目指すようにしています。全日本では終わるわけがないですが、これ以上安定して迷路を走り続けられるか不明で、2回探索できるくらいのタイムということで、、、

本当は未探索区画の壁がなかった場合とあった場合で最短経路を割り出し一致するまでとかにしたいですが、探索走行中に最短経路導出は厳しいですね、、、
いちいち停止してもいられませんし。

2013年2月27日水曜日

マウス的時定数


もう1個ロボット相撲から。


前回のOn_Off制御の話は興味のある方がおられれば話のタネになるかな、くらいだったのですが、今回は自分もマジメに気になった話。


同じように、「モータに電圧がかかってからロボットが動作するまでにどれくらい時間がかかるか知っているか?」と質問を受けたわけですが、そんなことは考えたこともなかったので、調べてみることにしました。

その前に前提として共有したいのはモータの機械的時定数です。モータが回ればマウスが動くだろうという考え方ですね。私はこの程度の大きさだろうと思ってこれまでマウスの調整をしてきました。
例えばMaxonの場合、RE6だと機械的時定数は7~8msくらいで、もっと大きいモータ、RE65だと3msくらいみたいです。

http://www.maxonjapan.co.jp/product_re.htm

私のマウスに使っているモータMk-06-4.5がどうなのかはわかりませんが、大きくても十数msくらいと予想しています。



それでは実際の実験。左右のモータに一定のDutyで電圧をかけ、左輪エンコーダで読み取った速度をログでとりました。左輪である理由は別にありません。

まずは静的測定。停止状態から両モータDuty比10%で1秒間直進させました。


この時の左輪エンコーダで読み取った速度と時間の関係。波打っているのは置いといて、それっぽく1次遅れの応答になってますね。

次に動的測定。停止状態から両モータDuty比10%で1秒間直進させたまま、左だけDuty比30%にあげてそのままぐるぐる1秒間回しました。ジェットコースターみたいな楽しい動きしてますね。




同じように速度と時間の関係。やはり同じような時間をかけて、1次遅れの応答っぽく速度が変わっています。



この二つのグラフから分かるのは1次遅れ系とみなして時定数を定義する場合、100~200ms程度になるということです。モータの時定数の程度という私の予想は大幅に外れ、1ケタ上の値になってしまいました。

ギアやマウスの慣性が影響してるとは思うのですが、10倍にもなるとは思わなかったので、個人的に驚いてます。
こういう結果が得られると、100msに満たない時間で終わる45°スラロームとか、自分のマウスが問題なくこなしているのがなぜだかわかりませんね。

2013年2月26日火曜日

ロボット相撲

関西支部総会で知り合ったロボット相撲に参加されている方から、
「なんでマウスは台形加速なんかしてるの?速さ競うならOn_Off的に出力変えて力の限りかっとばせば?」という指摘をいただいた。

私はロボット相撲をよく知らないので、とりあえず競技を見てみる。
http://www.youtube.com/watch?v=spC_eH8d8zY

なるほど確かに急激に(多分出力の限り)加速して相手とぶつかりあっている。
この速度でマウスが走れば間違いなく無敵。

ただ、どう考えても走行精度は出せず、柱クラッシャーになるだけな感じはある。
一方で、モノにできれば板マウス、吸引、変則4輪のように新たな競技レベルを生み出す技術にもなりうる。

2013年2月24日日曜日

関西支部総会

昨日2月23日のマイクロマウス関西支部総会に参加してきました。

例年になくマイクロマウス未経験者を含めたくさんの方々に参加していただきました。ありがとうございます。

それでスライドを作って講演をたくさんしていただくことができ、私自身大変勉強になりましたが、多すぎてタイムキープ全くできてなかったのは申し訳なかったです。

総会後の懇親会でも興味深い話がたくさん。参加してよかったです。

特に気になったこともいくらかあったので、これから調べてみようと思います。


私はまだ他の方があまりマウスで使われていないMEMSセンサについて講演させていただきました。思ったより反応があったので、ソースコード等を含め公開します。
こちらからどうぞ。

2013年2月19日火曜日

変則4輪恐るべし

モータマウント改が届き、新作4輪「Vector」の調整を昨日から開始。

2輪マウス「Mg」からのソフトウェアの移行は思ったよりスムーズに進行。
パラメータも大きな変更はなし。ゲイン少し大きくしても大丈夫かな?くらい。

とりあえず走行動画。



変則4輪は評判の通り直進が安定してますね。ターンも滑りにくいからなのか、速度を上げることができました。


斜め走行中の90度ターンは上手く曲がらないと内輪差で後輪が引っかかるので、旋回半径が大きくできません。なので速度が出せません。最後のほうは柱にかすっちゃってますね。

探索のような旋回半径小さいターンも思ったより平気でこなしてます。旋回半径はMgと同じままなのですが。

2013年2月11日月曜日

Vector完成、、、のはずだったが!

先日ブログで紹介した今年の新作「Vector」のはんだ付けや動作確認その他もろもろが終了。


重量はこんな感じ。13.74g。昨年のマウス「Mg(15.0g)」に比べてセンサ用発光素子の変更で1g弱、モータマウントで0.5g弱軽量化してます。ホイールは今回始めて肉抜きをしたのでMgのホイール2個とVectorの4個はだいたい同じ重さでした。基板も厚みに変更ないので大差なし。


メインコンセプトはMgの4輪化ということで、縦幅、横幅、マウスの中心(2輪ならタイヤを結ぶ線分の中点、4輪ならモーターを結ぶ線分の中点)は同じにしてあります。写真で比べてみるとよくわかるかと思います。




また、サブコンセプトとしてセンサ系の一新による状態計測機能の強化があります。今回初めてマジメに壁センサの配置を検討し(結局こじまうす7のマルパクリになってしまいましたが)、また、Invensenseの9軸センサ(ジャイロ&加速度&コンパスセンサ3軸ずつ)を2個乗っけてみました。エンコーダは素子自体はAS5040のままですが、磁石位置決めが昨年よりしっかりできているので動作確認しているかぎり精度はマシになってます。

特に加速度センサを積んだことが自分の中では大きいと考えていて、直進時の加速度や向心加速度などもある程度把握できるといいな、と考えています。


ただでもまだ完成していなくて、特注したモータマウントでバックラッシがうまく作れず車輪のギアとピ二オンのかみ合いがきつすぎて、まだ使える状態にありません。それで現在前輪だけピ二オンにかむようにして、後輪はピ二オンにかまないよう横にずらしてベアリングで保持しているだけ状態です。再度注文して届くまではピ二オンでなく床の摩擦だけで前後輪が同期できる範囲で調整するしかありません、、、

2013年2月8日金曜日

新作マウス「Vector」

前回のAS5145関連の日記でも触れましたが、現在今年の新作を作成中です。

大学の試験期間まっただ中に全ての設計と発注をこなすダメ学生的活動のおかげもあって、今日基板が届きました。

なんとなく形が矢印(ベクトル)っぽく見えたので、名前はVectorにしました。他の方もこんな基板形してるのが多いので、特に特徴的ではないのですが、、、

このマウスはハーフサイズ変則4輪仕様にするつもりで、基板厚は0.8mmにしました。
0.6mm以下だと強度はともかく基板が「反る」ようで、反ってしまうと4輪全てが地面に接地しなくなって4輪の機能が失われると判断したためです。
基板厚0.6mmで2機作ったら2機とも基板の反り方が違う!といった話を聞いたり、制作中方のの4輪マウスが基板の反りのせい(?)で接地しないのを見たりしたので今回はむやみに軽量化して攻めるのをさけ、4輪の機能を確実に発揮することに努めます。

ところで、目で見て、触って分かるレベルはおいといて、4輪全てが地面に接地しているのをどう判断するかという話ですが(タイヤが偏心していてあるところで接地しないとかを含む)、簡易的にこの基板にマウントと車輪をとりつけ、指で押し出して直進させました。
相互にギアがかみ合っておらず4輪が独立に動くので、接地していないタイヤがあればそのタイヤは直進中回転しません。
これが実験動画です。車輪が回転してるのがわかりやすいよう、車軸に黒いビニールテープを貼りつけてあります。


4輪がそれなりにムラなく回っており、おそらく接地していることが分かりました。


同じ日に2個も長々と書いてしまいました。読んで下さった方、ありがとうございます。

AS5145開発断念

磁気式エンコーダIC「AS5145」はマイクロマウスで普及しつつある「AS5040」の後継機で、最大12bit分解能(AS5040は10bit)、精度改善などの特徴があるそうで、早速使ってみようとしたのですが、使い勝手がAS5040とは異なることが分かりました。

AS5145はレジスタ書き換え機能をもち、ユーザーに適した用途で使えるようにできるAS5145Hシリーズ、デフォルトでインクリメンタル出力可能に設定されたAS5145A(分解能10bit)、AS5145B(分解能12bit)シリーズがあり、基本的にAかBシリーズを使いたいのですが、DigikeyやMouserで入手可能なのはHシリーズのみという状況で仕方なくHシリーズを購入したのでした。

Hシリーズはデフォルトでインクリメンタル出力不可に設定されており、内部のレジスタを書き換えることでインクリメンタル出力にできます。
書き換えはシリアル同期通信(USART not UART)、、、なのですが、特有の奇妙なスタート、ストップコンディション、同一ポートの送信と受信切り替え、その他バイト単位でないレジスタアクセスなど、難解なIO操作が必要で、とても同期通信モジュールみたいなブラックボックス使ってやっていける状況ではありませんでした。(助言を求めた方には全く聞く耳持たないことして申し訳ないです)


そういうわけで、仕方なく全操作をSTM32のGPIOのHigh,Low切り替えでこなすことに。昨年作製した開発ボードと変換基板に実装したAS5145をブレッドボードで接続。

面倒でしたがトラブルは起きないのである意味気が楽でした。その時に使ったプログラムをブログの追記に延々と載せておくので何かの参考になればお使いください。

何もしなくてもインクリメンタル出力になるAS5040は優秀だなあ、、、とか思いつつレジスタを書き換え、読みだして目的のレジスタが書き変わったことを確認。インクリメンタル出力の様子をSTM32のタイマで読み取って性能評価しようとしましたが、どういうわけか出力がドリフトしました。カウントするタイマの値が静止時にひたすら減っていったり、増えていったり、、、
探索の速度でも問題ない程度かもしれませんがAS5040ではこのようなことはなく、精度はむしろ悪くなってるんじゃないかという印象を受けました。
まあ、自分がいい加減な(データシートで保証してないサイズの磁石使用と目分量の磁石配置)使い方してるからだと思いますが、それでもAS5040が動いていた以上このやり方でやりたいのでAS5145の使用は断念し、今年の新作もAS5040で作ることにします。




2013年1月19日土曜日

W-068内蔵モータの致命的な摩擦トルク

先日記事にしたこのモータの特性をもう少し詳しく調べようと思って、以前小島さんが別のモータで行われた方法でトルク定数を測定してみました。





切片が正の数なこと自体実験がうまくいってないことを物語ってますが、逆起電力定数を簡易的に測定して単位変換かけても似たような数値にはなりました。

そんなことよりもこのモーターには致命的な問題があって、軸が回転し始めるまでにかけないといけない電圧が高いです。
少なくとも0.5Vくらい必要でした。ハーフで主流のMk06-4.5では0.1Vも必要なかったです。しかも、無負荷回転時に流れる電流もW-068のほうが数倍大きかったです。

摩擦トルクが大きいのが原因だと考えたので、破壊分解して様子を見てみました。



どうもすべり軸受と軸のはめあいがきついようです。しばらく無負荷高速回転させてると、軸が焦げたように黒ずんでいたのですが、この原因も摩擦熱が大きいことにあると考えています。

サーボ用のモータなので、軸がぶれないことが優先なのでしょうが、高速で連続的に回転させたいマイクロマウスには不向きと判断せざるを得ないと見ています。

ネットとかでもいろいろモータ探してますが、どうもMk06-4.5と同じようなサイズで、しかも特性が良いものは見つかりませんね。結局Mk06-4.5を使うしかないように思います。

2013年1月3日木曜日

直線走行高速化の意外なネック


Maxonのモータ(RE6など小型のモータを想定しています)ではモータ軸のベアリングは23000rpmが最大許容回転数らしいです。
他のモータがどうなのか知りませんが(データがなかなか見つかりませんが)、だいたい同じくらいではないでしょうか。

最大許容回転数が何を意味するのか分かりませんが、少なくともこれ以上の回転数では劣化が速いのでしょう。

一年計画で走行し調整するマイクロマウスでこのような回転数を与え続けるのは得策ではなさそうですね。

ちなみ23000rpmというとギア比4:1、タイヤ直径12.5mmとすると3.7m/sにあたります。おそらくこの前後の速度をを目標としている方もおられるでしょう。

ハーフサイズ競技の一部で4輪化&直線の高速化が話題になってますが、あまり減速比は上げられない計算になりますかね。モータを30000rpmとかで回転させようとかいう考え方がよろしくないと、、、

2013年1月1日火曜日

新年

あけましておめでとうございます。今年もよろしくお願いします。

昨年は斜め走行に本格的に挑戦し、大会でもそこそこの走行をすることができました。

今年はこのモータ試してみて、使えそうだったら4輪、そうでなければ去年のマウス「Mg」の軽量化版(2輪)でも作ろうかな、と思っています。
4輪も作ってみたいですが、それよりソフト改良のほうが急がれるので、どっちに転んでもまあいいか、という感じですね。

個人的な話ですが、4月から大学4年になり、研究室配属&キャンパス移転に伴う初めての1人暮らしが始まります。
はじめてづくしでマウス作ってる時間があるかよくわからないですが、できるかぎりのことはしていきたいところです。