読者です 読者をやめる 読者になる 読者になる

エヌがのロボット製作日記

どうも「エヌがの」です。主にマイクロマウスのことばかり書いているぶろぐです。とあるuniqueでexcitingな大学に在学中です。

磁気式エンコーダ その1

マイクロマウス 技術ネタ

こんにちは。エヌがのです。

 今回は、今年さんざん苦労させられた磁気式エンコーダについて書きたいと思います

 エンコーダは、角度を計測するセンサーで、マイクロマウスではタイヤの回転数を計測するためによく使用され、重要な要素となっています。タイヤの回転数から、マウス自身がどれだけ進んだか、また、どれほどの速度で走行しているかが分かります
 一般的に、エンコーダには、光と機械的な特性を用いた光学式と磁石の磁力線の特性を用いた磁気式という2つの方式があります。マイクロマウスではよく小型化されやすい光学式のエンコーダを用いることが多いのですが、本当に小型なものは値段が高く、入手も難しいです。しかし、近年では磁気式エンコーダ用の磁気を読み取る小型のICが安価で入手できるようになりました。このため、磁気式エンコーダを自作するマウスが多くなりました
 私もこの流れにのっかり、磁気式エンコーダを使ってみました

 使った感想としては、ちゃんと使わないと痛い目を見る。ということです。やはり既製品はよくできていて、自作するとボロがたくさんでます

 さて長々と書きましたが、磁気式エンコーダをどのように作製したか、問題点どこだったか、どのように解決したのかというのを書いていきたいと思います

まず、設計   左:組立図   右:分解図
f:id:megato:20151129010118p:plain:w200 f:id:megato:20151129010145p:plain:w300
左から磁気式IC、鉄製スペーサ、磁石、スペーサ、シャフト、ベアリング、モータマウント、スペーサ、ギアです。

 磁石をリング型にして、固定を楽に、さらにシャフトと磁石の回転中心をできるだけ合わせようという狙いでした。
 使用した磁石はネオマグというところのリング型ネオジム磁石内径1.2外径2.6です。

実際に作ったものがこちら
f:id:megato:20151128184302j:plain:w400
 鉄製スペーサは鉄ネジを旋盤で加工して作製、シャフトの磁石固定部分の径落としも旋盤で加工しました

 まず問題になったのがICとのSPI通信です
 今回、磁気式エンコーダICはAS5047を選択し、SPI通信で角度の情報を読み取るという方式を取っていました。その際、マイコンのピン数削減のために、MPU6500と一部を共通配線にしました。
f:id:megato:20151129014228p:plain:w400
 このせいで、めんどくさい問題がでました。MPU6500とAS5047とは通信の方式が同じSPI通信でも少し違っていて、一括で同じ設定で通信ができません。具体的には以下の2つの仕様が違いました。
○MPU6500
・8bit data / frame (一回の通信が8bit毎のデータ量)
・SCLKの基準電圧がhigh
f:id:megato:20151129020546p:plain:w300

○AS5047
・16bit data / frame
・SCLKの基準電圧がlow
f:id:megato:20151129020633p:plain:w300

RX631のRSPIには一つの通信毎にこのような設定を変更する機能があったので今ではなんとか通信出来ていますが、設定するのにずいぶんと時間がかかりました。できれば配線を分けたほうがいいと思います。

 次に問題になったのが、磁石がモータと引き合うというものでした。
 実は当初は上で公開しているような設計ではなく、もう少し大きめの外径6くらいの磁石を使用していました。さらに、モータも比較的大きいものを用いているため、このような問題がおこりました。主観的な説明になりますが、かなり強力に引きつけていました。100度くらい磁石を意図的に回しても、手を離した瞬間にすぐ戻ってしまうほどには。
 この問題を解決すべく、磁石の径を上で説明しているものに落とし、鉄製のスペーサで囲いました。こうすることによって、改善しました。手で意図的に回しても、引きつけられているとは感じないまでになりました。

 さて、肝心のエンコーダからの取得データですが、このようになりました。
 左:速度mm/sに直したもの 右:取得角度(最大14bit)
f:id:megato:20151129022235p:plain:w300 f:id:megato:20151129022248p:plain:w300
これはモータにduty10%?ほどかけて空転させたときのデータです。これを見たときは少し絶望しました。ここまでブレるのか・・・と。

 ここからは次回書くことにします。
 長文になりましたが、ここまで読んでくださり、ありがとうございました。

2015年全日本大会

マイクロマウス

こんにちは。エヌがのです。

 

 2015年の全日本大会が終わりました。今年も進行はスムーズに進み、気持ちの良い大会でした。大会の運営に関わった皆様に感謝致します。

 私の大会の成績はといいますと、

競技名 順位 タイム
クラシックエキスパート予選 16位 8.789秒
クラシックエキスパート決勝 16位 17.779秒
ハーフエキスパート決勝 16位 1:14.177秒

 f:id:megato:20151123211628p:plain:w400

とりあえず今年は16に縁があるようです。全部16位・・・

 
 今年のクラシック決勝の迷路はかなりおもしろい迷路でした。私のシミュレータではこのような結果がでました。

f:id:megato:20151124212128p:plain:w400

 近年では、長い直進がトレンドになっていた全日本のクラシックエキスパート決勝迷路ですが、今回も長い直線が豊富で左回りの経路が最速かと思いましたが、なにやらターンが多い右回りの経路が一番速いようです。大会の上位陣もこちらの経路を選んでいる人が多かったため、やはりこちらの経路なんでしょう。一応、ターン速度を下げて、直進速度と加速度の設定を上げてシミュレーションしましたが、同じ結果がでました。
 今年は斜め走行は5走目にしか行えず、ターン速度も600mm/sと全然だせない上に走行失敗という結果になりましたが、次はもっと速度を出したいと思います。

 ハーフエキスパートは、初めての32×32大迷宮に挑戦しましたが、やはりでかい。前日に慌てて対策しましたが、なんとか問題なく走行できた模様。とりあえず当初の目標であった、フル迷路の完走は果たせたので良しとします。ハーフには今年かなり力を入れましたが、まだまだ満足には走行してくれません。

 
 今年の反省点はこの4点で、
・ハード開発期間が長い
・マウス開発を始めるのが遅い
・ソフトウェア開発をもっと落ち着いて行う
・評価をもっと詳細に行う
です。
 とりあえず毎年のことながら、ハードに構いすぎて時間をとられ、ソフト開発が急ぎ足になり全然進歩しない。さらに、評価が甘く、あとあとで欠点や欠陥に気づくというのもたびたびあった。
 研究でもそうだが、問題認識と改善策とその裏付けと評価というのがちゃんとできてないせいでなかなか前に進まない、または間違った方向へ進んで道に迷うというのがよくある。時間がないというのはただの言い訳で、ひとつひとつやれば結果的に最適解へは短い時間で到達できるはず。どうしても思考がズレてしまい、なかなかこれらを正確に行うことができないでいて、どうして良いか悩み中です。根深い問題・・・

 とりあえず、来年のマウスについては
・始動を早くする
・ハードにいらんことせずシンプルなものを作る
というのを行おうと思います。

2015年クラシックマウスver2

マイクロマウス

こんにちは。エヌがのです。

2015年のクラシックマウスver2の詳細を報告します。なんとか全日本の1週間前に完成しました。一応良好に動いています。

f:id:megato:20151123204106j:plain:w400

回路、ハードの構成自体はほとんど変わっていませんが一応

名前 OpenerBurst
サイズ 縦:75mm 横:70mm 高さ:25mm
重量 60g
電源 Hyperion Lipo 2cell 120mAh
Motor Maxon DCX10L
モータドライバ DRV8835
CPU RX631
壁センサ TPS601 & SFH4550
ジャイロ&加速度 MPU6500
エンコーダIC AS5047
足回り ホイール径:22mm ギア比:3.46

 リスペクトこじまうす10ということで、前部分のセンサ配置を中心に寄せて、機体の慣性モーメントを下げています。そのせいで、後ろ重心になり、加速性能がすこし落ちましたが、減速では安定しています。
 重心を下げるための裏側のおもりは加工が間に合わなかったため今回は載せていません。重心のバランスはこのおもりでなんとか中心に近づけることができると考えていて、加減速もすこし改善できるはずです。

 ハードに関してすこし試みたのが、ピニオンギアです
 
f:id:megato:20151123204529j:plain:w400

 刃径0.3のエンドミルでギアを削り、イモネジ挿入の穴をボール盤で空け、タッピングしました。
 結果は予想していましたが、イモネジ部分の締まりがあまり良くなく、ゆるみやすい。さらに、外力で穴が拡張されてギアの中心が振れてしまいました。やはりイモネジ付きのピニオンギアは金属で作ったほうが良さそうです。

2014年度クラシックマウス

マイクロマウス

こんにちは。エヌがのです。本日3つめです


 2015年のクラシックマウスを書いてる時に、そういえば去年のマウスの詳細情報晒してなかったぞと気がつきました。これは2014年度クラシックマウスです

f:id:megato:20140920215431j:plain:w400

機体スペックはこちら

名前 OpenerAccel
サイズ 縦:100mm 横:75mm 高さ:30mm
重量 90g?
電源 Hyperion Lipo 2cell 120mAh
Motor FAULHABER 1331T
モータドライバ LTC4449 & IR8910
CPU RX62T
壁センサ TPS601 & SFH4550
ジャイロ&加速度 MPU6000
エンコーダ mes-6-500 (MTL社)
足回り ホイール径:26mm ギア比:2.8:1 材質:A7075(超々ジュラルミン)

このブログでもチラっとは全日本前に晒している気がしますが、このマウスはこんな機構になってます

f:id:megato:20141119074440j:plain:w400
モータの出力を内歯車で受け、それを外歯車でエンコーダを介してもうひとつのタイヤとつなげています

 私は2013年にDC2輪マウスを製作し、2014年はDC4輪にしました。ですが普通の1717モータを使用したマウスを作るのはつまらないと思い、この変な内歯車を使ったマウスを思いつき、作製しました。要はなんか面白そうなものを作ってみたかっただけです
 作るのにはだいぶ時間がかかりました。まずホイール

f:id:megato:20141114153705j:plain:w400

これが一番作製に時間がかかりました。およそ3,4ヶ月くらい?いろいろ加工方法を変えた結果こんなものができあがりました。ギア部は大学の放電加工機、追加工は旋盤、フライス盤の手加工です。内歯車付きのほうはこんなかんじにPEEKを削ったものを圧入して使用

f:id:megato:20141119074300j:plain:w400

モータマウントもCNCで切って、フライス盤で手加工と少し手間がかかりました。そしてこれはギアのバックラッシの調整のためにたくさん切りました

 f:id:megato:20140920212240j:plain:w400
まだまだあったはず。

ピニオンギアも、2013年度にさんざん苦労させられたので、イモネジで固定できるように自作

f:id:megato:20141103224426j:plain:w400

横から見ると足回りはこんな感じに

f:id:megato:20141119013016j:plain:w400

回路もモータドライバに手を加えたり、コンデンサに凝ってみたり色々試行錯誤しました。

今思い返してみるとえらい色々やってんなと思いますが、肝心なソフトが全然できてなかったので、まあ当たり前だと納得です。

 今年もハードで唸っているのでそろそろぬけだしたいところ。

2015年全日本マイクロマウス学生大会とその他大会

マイクロマウス

こんにちは。エヌがのです。本日2つ目です

f:id:megato:20151031212754j:plain:w200


つい先週、全日本学生大会がありました。クラシック、ハーフ、サーキットと3競技出場しましたが、なかなかの成績を残せました。

学生大会
種目 順位 タイム
クラシック 6位 10.186秒
ハーフ 優勝 15.771秒
サーキット 6位 10.487秒

f:id:megato:20151108194239p:plain:w400

 中でもハーフ優勝は2年ぶりの入賞ということで、とても嬉しいです。シード取得は初!学生のハーフはまだ平和ですね。たぶん某Mi○eがあまりいないからでしょう。クラシックは急増の新作をなんとか動かし、危うい走行ではありましたが完走してくれたので十分です。後に、あと0.02秒はやければシードだったというのを知って少し後悔しましたが。
 思うところはクラシックの迷路ですが、あれは面白い迷路ではあったと思います。ほとんど両壁のあるところがなく、横壁制御が効かない。また、柱のみの場所が多く、壁切れを読むのが困難。探索に関して言えば、袋小路は嫌というほどあるため、時間があれば完走は難しくはないと思います。ただ、初心者は、特にジャイロのないステッパマウスは直進に関しては横壁制御に頼らざるを得ないため、ターンの角度が少しでも甘いと壁にぶつかっておしまい・・・。なかなかターン角度の重要性を知るいい機会ではあったのかもしれません。個人的はこのくらいの難易度でバッチコーイなんですが、今回うちの後輩たちがほとんど完走できてないという現状をみるとなんだか複雑です。

 長々と物申してしまいましたが、他の大会の記録もここに上げときます

中部地区大会
種目 順位 タイム
クラシック -- R
ハーフ 10位 13.273秒
サーキット -- R
東日本地区大会
種目 順位 タイム
クラシック 5位 9.478秒
ハーフ 6位 36.360秒
サーキット -- R
関西地区大会
種目 順位 タイム
クラシック 7位 53.452秒
ハーフ 6位 14.132秒

 順位だけみるとなかなか良さそうに見えますが、そもそもハーフは母数が少ないのでほとんど最下位近くの順位です。中には最短すらできなかったものも。ハーフはやはり社会人が強い。学生はあまりやってる人がいなくそこそこ平和。今年は関西方面へ遠征にいきましたが、なかでもIsysの成長が目覚しく、うちでは歯が立たないのではないか・・・。特にIsysはトレーサ、クラシック、ハーフと幅広くやってるのがすごく良い。
 東のMice、西のIsys??ロボメカももうちょいがんばりたいところ。

2015年クラシックマウス

マイクロマウス

こんにちは。エヌがのです。お久しぶりです

なんだかんだでもう11月になりました。シーズン中は時間が過ぎるのがはやいです。今年はずっとハーフにつきっきりでしたが一応クラシックにも出るつもりなので、新作を作成しました。

f:id:megato:20151108183650j:plain:w400


 空中に浮遊して固定されているものはモータドライバです・・・。もともとのモータドライバは、機体作成後に動作させてみるといろいろ具合が悪かったため使用を断念し、別のものを無理やり増設させた結果、残念なことになってしまいました。繋がっている配線が細いため、壁にぶつかると即切れます。走らせるとヒヤヒヤします。ハンダごてが手放せない

 機体スペックは以下になります

名前 OpenerBurst
サイズ 縦:100mm 横:75mm 高さ:25mm
重量 78.5g
電源 Hyperion Lipo 2cell 120mAh
Motor Maxon DCX10L
モータドライバ L6205
CPU RX631
壁センサ TPS601 & SFH4550
ジャイロ&加速度 MPU6500
エンコーダIC AS5047
足回り ホイール径:22mm ギア比:3.46


 今回のクラシックの特徴は低重心です。モータの径を小さくしさらに底に真鍮板を取り付けております


f:id:megato:20151108183708j:plain:w400


この真鍮板が10gほどあり、機体の総重量の1/8を占めています。このため、随分と重い機体になってます


f:id:megato:20151108184417j:plain:w300


 重心が低くなることで、加減速時のピッチ回転方向の力や、旋回時のロール軸方向の力が抑えられるため、幾ばくか効果はあると思いますが、どの程度なのかがまだわかっていません。個人的に期待していますが、吸引勢に対抗できるほどではないだろうとは思ってます

 一応いつ切れるかわからない配線のまま全日本には望みたくないので、ver2を作成中

初ハーフマウス完成

マイクロマウス

 こんにちは。エヌがのです

 8月こそはハーフ完成させるぞと意気込んだ矢先に艦これの夏イベントにかかりっきりになり、始動が遅れに遅れ、とうとう9月になってしまいましたが、とりあえずハーフマウスのハードが完成しました


機体のスペック等はこんなかんじですね。

名前 MercesAgressive
サイズ 縦:60mm 横:37mm 高さ:13mm
重量 17.5g
電源 Hyperion Lipo 1cell 70mAh
Motor Didel MK07-1.7
モータドライバ DRV8836
CPU RX631
壁センサ SEP8705 & LTR-4206
ジャイロ&加速度 MPU6500
エンコーダIC AS5047
足回り ホイール径:13mm ギア比:3.375

 
マウスの名前ですが、自分はスネークケース(get_valueみたいな表記)を好んで使っているのですが、今回の大会のテクニカルデータでは15文字制限がかかり、泣く泣くキャメルケース(GetValueみたいな表記)で書くということがありました
 今回のテクニカルデータの登録は、気になってたセンサー辺りや開発者等の項目が改善されていて、すごく書きやすいと感じたのですが、文字制限だけは残念だと思いました


 今回のハーフサイズマウスですが、初ということで目標は全日本の予選で完走です。なので、スペックはあまりこだわらず、とりあえず作りたいものを作ってみました。
 やはりこだわりはこの足回りで、特に大きなメリットはでかいモータを使った変則4輪機構ができるということくらいですが、パワーisジャスティスという思想を掲げ、組み込みました
 また、マウスの重心も少しばかり下げる努力をしてみました

↑裏面

重量は17.5gほど

ハーフマウスの中では重い部類でしょうか

 重心はおおよそ真ん中くらいのようで、とりあえずまともなマウスになりそう。ソフトウェアは今からなので、9月後半の関西大会までにはなんとか探索ができれば良いなと思ってます
 クラシックも製作予定なのですが、もう元気が残ってない・・・