すると、以下の式が成り立つ。以上の式から、速度指令(v_x、v_y、v_a)の時に実際に与えるべき左右のモーターの角速度は以下の通りになります。(0.0285m)なので、となる。自己位置推定(オドメトリ)次に、ロボットの自己位置同定の方法について考えます。ロボットの移動速度・角速度を積分することで任意の時点の位置・姿勢を得ることができます。関係を直線近似すると、となる。(より厳密には円弧近似する方法もあるが、ここでは簡単に直線近似とした。して、のように求められる。仕様をいかに示します。必要事項を入力し、ひな形コードを生成します。速度を制御するためには以下のデバイスファイルに"on"と書き込む必要があります。なっているので速度制御はできません。デューティー比を設定できます。以下のファイルに目標速度を書き込みます。/sys/class/tacho-motor/motor0/speed_spここで指定する値は1秒間に何カウント動かすかという値なので、以下のデバイスファイルから取得する値を角速度に掛けて変換してください。取得できる値が360なので変換しなくても影響はありません。/sys/class/tacho-motor/motor0/count_per_rot後は以下のコマンドを入力すると回転を開始します。/sys/class/tacho-motor/motor0/command現在の角速度を取得するためには以下のデバイスファイルを使用します。利用して記述すると以下のようになります。利用して記述すると以下のようになります。lm.speed/lm.count_per_rot一定時間動作させるモーターを一定時間動作させるには、まず以下のデバイスファイルで時間を設定してください。/sys/class/tacho-motor/motor0/time_spそして以下のコマンドで動作を開始します。設定しておく必要があります。/sys/class/tacho-motor/motor0/speed_sp次に以下のデバイスファイルで位置を設定します。以下のコマンドで動作を開始します。/sys/class/tacho-motor/motor1/command現在の位置からの相対的な角度を指定したい場合は以下のコマンドを利用します。/sys/class/tacho-motor/motor1/command現在の位置は以下のデバイスファイルから取得できます。利用して記述すると以下のようになります。利用して記述すると以下のようになります。インストール方法について説明します。走行速度の入力、センサーのデータの出力等を行うためのコンポーネントです。https://github.com/Nobu19800/EducatorVehicleクロス環境で以下のコマンドを入力してください。タッチセンサーのオンオフ。入力したデータの0番目が右側(3番ポート)のタッチセンサー、1番目が左側(1番ポート)のタッチセンサーに対応しています。よる音声の入力には以下のコマンドを利用できます。入力するとビープ音が鳴ります。tone、周波数、時間と入力すると指定周波数の音を指定ミリ秒数だけ鳴らします。ドラッグ・アンド・ドロップすれば変換できます。表示する画像データは、以下のコンポーネントで画像データの変換を行えば入力可能です。カメラ画像を表示させることができます。指定の画像を入力するということもできます。改)の制御ができます。制御にも使用できます。クロス環境で以下のコマンドを入力してください。指定した時間だけ後退します。指定した時間だけ回転します。回転する方向はオンになったタッチセンサーと逆方向です。組み立ててさらに超音波センサーを回転させるように取り付ける必要があります。動作手順は以下のようになっています。机の上などを走行している場合で、2のようぬ机の端まで移動したとします。以上になった場合、一旦停止します。