制御の話(第1回 DCマウスとステッパーの制御の違いについて)
こんにちは
制御の話の第1回です。
ここでは、基本的に大学の授業で学んだ知識をベースに、マウスに適応させたり、自分でちょっと考えたりしたことを書きます。
間違った内容もあるかもしれませんが…
もうご存知だと思いますが、DCマウスとステッパーでは制御が根本的に違います。
DCマウスはフィードバック制御と言われる制御をしています。
それに対して、ステッパーはオープンループ制御です。
じゃあ、何が根本的に違うのか?と言うと、フィードバック制御はセンサーで値を取得して目標値に近づけるようにする制御で、オープンループ制御は値の決め打ち制御って感じです。
ここで、自動車の運転に例えることにします。
50km/hで走行しようとしているとしましょう。
速度メーターを確認すると、40km/hでした。
アクセルペダルを踏み込み加速するようにする。
一定時間経過した後、もう一度、速度メーターを確認すると55km/hでした。
アクセルペダルを緩める、または、ブレーキをかける等、減速するようにする。
というのがフィードバック制御です。
それに対して、オープンループ制御はメーターは見ない!
「50km/hならこれくらいアクセル踏み込む」と決めて、そのままです。
こう言われると、「オープンループ制御ってヤバくない?」と勘違いする方がいるかもしれませんが、車の運転で例えることに無理があるだけです…
オープンループ制御の場合、速度メーターで確認していないので、本当に50km/hで走っているかどうかはわかりません…
しかし、50km/hで走るにはこれくらいアクセルを踏むという量が常に一定なら、メーターを見なくてよいのですからラクできます!
じゃあ、ここで、マウスの話に戻すと…
DCモーターの場合、高額なモーターであればデータシートの定数に近い値で回ってくれるらしいですが、やはり、電圧をかけたときの回転数は厳密にはわかりませんね…
ステッピングモーターの場合、1ステップで基本ステップ角ごとに回転してくれるので、タイヤの半径がわかれば機体の速度がわかります。
なので、ステッピングモーターではオープンループ制御でマウスを走らせていたわけです。
とりあえず、第1回はこれで終了…
研究が忙しいので、ゆっくり進めていきますが、4月になったら、当分書かないと思うので…早くも初回から終わらない予感しかしてないですし、初回は1番いらない気がする内容でした…
また、書き始めてから公開まで2ヶ月近く経ってます…
遅くなってしまい、すいません…
こういう記事を書くというのは、夏くらいに言ってた気がするんですけど…