6月に開催予定のマウス合宿に参加する予定だったのだが,とても参加していられる状況ではなくなってしまった.よって今回は不参加ということに.
なんとなく新作ハーフマウスの設計を進めていたが,これも当面凍結状態になる.今年の大会には間に合わない可能性が非常に高い.新規に導入する要素をあきらめれば11月くらいには完成するかもしれないが,それでは作る意味ないしなあ.なんとかこまめに設計を進められないものか.
2012年5月20日日曜日
2012年5月13日日曜日
Velocity measurement with the Kojimouse7 encoder
I received a youtube message from a mouser about the encoder of Kojimouse7.
I want to answer the question in this blog
so that we share the technique to estimate velocity of a mouse with other mousers.
Kojimouse7 has two sets of a spur gear with 8 holes and a photo reflector. The processor counts the edges of the holes while the wheel is rotating
in order to measure the speed of the wheel.
It can detect 2 edges for a hole, so, the resolution of this encoder is 16 per revolution.
Since my mouse is controlled based on the 1 milisecond periodic interrupt,
that low resolution encoder doesn't give enough precision for the instantaneous velocity.
It is almost impossible for a mouse to run smoothly only with the encoder.
However, 100 ms average gives a comparatively precise velocity.
In this case, the problem is that the obtained velocity is past information,
which is a velocity of the mouse approximately 50 ms before.
In order to compensate the delay, Kojimouse7 uses acceleration sensor.
Although an acceleration sensor is not good at measuring precise velocity
in the long time scale due to the accumulation of errors with time,
the integral of the acceleration in very short period
gives the velocity change with good precision.
So, accelerometer is very useful to compensate the velocity obtained using the encoder,
which is past information.
The instantaneous and latest velocity of a mouse is roughly obtained by adding the average of the encoder and the velocity change measured by accelerometer.
In short, Kojimouse7 measures the velocity by means of combining the average velocity obtained by the low resolution encoder and the velocity change measured by the acceleration sensor.
2012年5月11日金曜日
マイクロマウス合宿の申込
ここで宣伝するのを忘れていましたが,6月9日,10日に第4回目となるマイクロマウス合宿が予定されています.詳細は案内ページをご覧ください.(最近ごたごたがあって関西支部のページが別のサーバーへ移動しています.今後再び移動になる見込です.)
申込締切は5月12日(明日)ですので,参加希望の方は上記リンク先のページに従って担当者にメールを送ってください.
追記:締切を少し遅れても受け付けてもらえそうなので,多少遅れても構いませんので参加希望の方は申込メールをしましょう.
話変わって,最近何かをgoogle検索していて偶然公開日直後に見つけた記事. 記事を書く人が実際に作ってその難しさと面白さを体験しながらの連載というのは良いですねえ.
申込締切は5月12日(明日)ですので,参加希望の方は上記リンク先のページに従って担当者にメールを送ってください.
追記:締切を少し遅れても受け付けてもらえそうなので,多少遅れても構いませんので参加希望の方は申込メールをしましょう.
話変わって,最近何かをgoogle検索していて偶然公開日直後に見つけた記事. 記事を書く人が実際に作ってその難しさと面白さを体験しながらの連載というのは良いですねえ.
2012年3月24日土曜日
バッテリ持続試験4
このネタはまだ終わっていなかった.前回は一番の目的であった持続時間を示したが,それだけではなく,走行中のバッテリ電圧の変化も計測してある.
次の図は走行開始からの時間に対するバッテリ電圧の値である.2回目の走行ではログデータをダウンロードできなかったのでデータがないが,1回目と3回目はともにそれらしい曲線で時間とともに電圧が低下していることがわかる.また,これは2秒に1回RAMへ計測値を保存したもので,その際平均処理は施していないが,電圧はかなり安定しているようだ.
さらに,次に示すのはSTM32に内蔵されている温度センサの出力である.温度が安定するまで数分かかるようだ.また,一回目と三回目では部屋の温度が違うために安定する温度が異なる.ただこのデータは何かの役に立つのか?
次の図は走行開始からの時間に対するバッテリ電圧の値である.2回目の走行ではログデータをダウンロードできなかったのでデータがないが,1回目と3回目はともにそれらしい曲線で時間とともに電圧が低下していることがわかる.また,これは2秒に1回RAMへ計測値を保存したもので,その際平均処理は施していないが,電圧はかなり安定しているようだ.
さらに,次に示すのはSTM32に内蔵されている温度センサの出力である.温度が安定するまで数分かかるようだ.また,一回目と三回目では部屋の温度が違うために安定する温度が異なる.ただこのデータは何かの役に立つのか?
2012年3月21日水曜日
バッテリ持続試験3
前回書いたとおり,バッテリ電圧が3.2V以下であることを検知してマウスが停止するまで,ひたすら探索走行を行った.
以下の動画のように,探索 → スタートに帰還 → オートスタートで再度探索 を繰り返す.
三回走らせた結果が次の表のとおり.一回目はプログラムの書き込み,迷路サイズ,ゴール位置の設定などでバッテリを消耗していたので少し短い.探索走行なら30分以上走れることがわかった.公称50mAhのバッテリなので100mAくらい流れているということでしょうか.
ちなみに,三回で合計200回近く探索したが,一度も壁にぶつからなかった.動作の再現性は高いので迷路に苦手なパターンがなければ十分安定して探索できる.見ていると結構おもしろくて,毎回同じ場所で同じフラつき方をする.ということは苦手なパターンに遭遇すると何回トライしても引っかかるということか.
以下の動画のように,探索 → スタートに帰還 → オートスタートで再度探索 を繰り返す.
三回走らせた結果が次の表のとおり.一回目はプログラムの書き込み,迷路サイズ,ゴール位置の設定などでバッテリを消耗していたので少し短い.探索走行なら30分以上走れることがわかった.公称50mAhのバッテリなので100mAくらい流れているということでしょうか.
| 試験番号 | 走行回数 | 走行時間 sec. |
|---|---|---|
| run 1 | 57 | 1753 |
| run 2 | 63 | 1902 |
| run 3 | 65 | 1960 |
ちなみに,三回で合計200回近く探索したが,一度も壁にぶつからなかった.動作の再現性は高いので迷路に苦手なパターンがなければ十分安定して探索できる.見ていると結構おもしろくて,毎回同じ場所で同じフラつき方をする.ということは苦手なパターンに遭遇すると何回トライしても引っかかるということか.
2012年3月19日月曜日
バッテリ持続試験2
まず,バッテリがどれくらい持つのか?を調べるにあたって,以下2つの状況を考える必要があるだろう.
ハーフマウス決勝の場合は迷路が広いため,競技時間のほとんどを探索に使う.最短走行なんて全てあわせても1分もなく,放電能力で制限されるだろう.そこで,今回はひたすら探索を行った場合にバッテリが何分持つかを調べることにした.
私のマウスのバッテリ切れしきい値は3.2Vである.1ms周期の割り込みルーチン内でバッテリ電圧を監視し,合計100回程度しきい値より低い電圧を検知したらマウスを止めるようになっている.なにかのはずみで1回検知しただけでは止めない.
今日はここまで.単発のネタのつもりが,シリーズ化してしまった.
- 探索走行のように長くだらだら走行するとき
- 最短走行のように瞬間的に電力が必要なとき
ハーフマウス決勝の場合は迷路が広いため,競技時間のほとんどを探索に使う.最短走行なんて全てあわせても1分もなく,放電能力で制限されるだろう.そこで,今回はひたすら探索を行った場合にバッテリが何分持つかを調べることにした.
私のマウスのバッテリ切れしきい値は3.2Vである.1ms周期の割り込みルーチン内でバッテリ電圧を監視し,合計100回程度しきい値より低い電圧を検知したらマウスを止めるようになっている.なにかのはずみで1回検知しただけでは止めない.
今日はここまで.単発のネタのつもりが,シリーズ化してしまった.


