もう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次遅れの応答になってますね。
同じように速度と時間の関係。やはり同じような時間をかけて、1次遅れの応答っぽく速度が変わっています。
この二つのグラフから分かるのは1次遅れ系とみなして時定数を定義する場合、100~200ms程度になるということです。モータの時定数の程度という私の予想は大幅に外れ、1ケタ上の値になってしまいました。
こういう結果が得られると、100msに満たない時間で終わる45°スラロームとか、自分のマウスが問題なくこなしているのがなぜだかわかりませんね。