この質問をするべき適切な Stack Exchange Web サイトではない場合は申し訳ありませんが、これは電気工学よりもソフトウェア プログラミングに密接に関連しているように思えます。他の場所にある場合は、教えてください。
モーターを備えた 2 輪のロボットを A 地点から B 地点に移動するように制御したいとします。距離と角度を指定してロボットを制御したいとします。
最初に角度を制御し、次に距離を制御することができたので、ロボットは最初にその中心を中心に回転し (一方の車輪に正の命令を与え、もう一方の車輪に負の命令を与えることによって)、次に点 B に到達するまで移動します (車輪に 2 つの正のオーダを提供することによって)。
ただし、ロボットに 1 回の動作で実行させたい場合は、2 つの異なる制御値を同時に制御する必要があります。このようにして、ロボットは目的地に到達するまで、きれいな曲線を描きます。これを行うと、ホイールに 2 つの正の順序を指定し、一方の側に正の順序を追加し、もう一方の側に負の順序を追加します。
この最後の解決策では、正しい方向に到達する方法を理解するのにいくつかの問題があります。
たとえば、1メートル後ろに行きたいとします。注文をポイント B : (1m,180°) に設定します。最初の解決策では、問題ありません。角度が最初に行われ、それが行われると、1m が行われます。2 番目の解決策では、ターンしながら移動するため、カーブは注文された 1m よりもはるかに大きく、ポイント B ではなく 1m 後に停止します。
この懸念にどのように対処すればよいですか? 何かアドバイスはありますか、それともこのテクニックをよく理解していなかったのでしょうか? ロボットがなくても解決策を試すために、小さな XNA ゲームで制御システムをシミュレートしようとしました。
Al_th