このページではLEGO Mindsorms EV3により組み立てた四足歩行ロボットを制御する手順について説明します。
以下の手順で動作確認を行います。
まずは教育版レゴ マインドストームEV3基本セットを4台用意してください。 ない場合は友達から借りてください。
脚の外観は以下のようになっています。 頑張って組み立ててください。
画像を見てもらえばわかる通り、Mモーター1個とLモーター2個を使用しています。 以降、根元からMモーター0、Lモーター1、Lモーター2とします。
以下のギアで減速しています。 直径1cmのギアをモーター側、直径4cmのギアを関節側に取り付けてください。
足裏は以下のように平行リンク機構により常に胴体と平行になるようにしています。
胴体部分は以下のようになっています。
次にEV3の初期設定を行い、EV3を無線LANに接続してください。
EV3のホスト名を変更します。 どの脚を制御するEV3かによって、ホスト名をev3-legged-robot0~ev3-legged-robot3と設定します。
まずは/etc/hostnameを開いてev3-legged-robot0(脚番号で末尾の数字は変更)を入力してください。
sudo nano /etc/hostname
以下のコマンドで/etc/hostsを編集してください。
sudo nano /etc/hosts
127.0.0.1 ev3-legged-robot0 ev3-legged-robot0.local
編集が完了したら再起動してください。
OpenRTM-aistを以下の手順でインストールしてください。
脚制御コンポーネントEV3_Leg_Controllerをインストールします。
以下のコマンドを入力してください。
git clone https://github.com/Nobu19800/EV3_Leg_Controller.git cd EV3_Leg_Controller mkdir build cd build cmake .. make
これで「EV3_Leg_Controller」→「build」→「src」フォルダ内に実行ファイルEV3_Leg_ControllerCompが生成されます。
次に以下のようにEV3とモーターを接続してください。
ポートA | Mモーター0 |
ポートB | Lモーター1 |
ポートC | Lモーター2 |
最後にEV3_Leg_Controllerを起動して準備完了です。
./EV3_Leg_Controller/build/src/EV3_Leg_ControllerComp
ここからはPC上で操作を行います。 事前にネームサーバーを起動しておいてください。
まずジョイスティックコンポーネント、脚運動生成コンポーネント、足先軌道制御コンポーネントの起動を行います。 以下のファイルをダウンロードして適当な場所に展開してください。
展開したらstart_component.batをダブルクリックしてください。 これで以下のRTCが起動します。
起動したかどうかをRTシステムエディタで確認してください。
間歇クロール歩容により歩行させて動作確認を行います。 RTCが起動したら、「IntermittentCrawlGaitEV3」フォルダの「resurrect_IntermittentCrawlGaitEV3.bat」を起動してください。 これでデータポートが以下のように接続されます。
接続するポート | |||
アウトポート | インポート | ||
モジュール名 | ポート名 | モジュール名 | ポート名 |
TkJoyStickComp0 | pos | FloatSeqToVelocity0 | in |
FloatSeqToVelocity0 | out | Intermittent_Crawl_Gait_Controller0 | target_velocity |
Intermittent_Crawl_Gait_Controller0 | Trajectory | Foot_Position_Controller0 | Trajectory |
Foot_Position_Controller0 | motor_pos_0 | EV3_Leg_Controller0(ev3-legged-robot0) | in |
Foot_Position_Controller0 | motor_pos_1 | EV3_Leg_Controller0(ev3-legged-robot1) | in |
Foot_Position_Controller0 | motor_pos_2 | EV3_Leg_Controller0(ev3-legged-robot2) | in |
Foot_Position_Controller0 | motor_pos_3 | EV3_Leg_Controller0(ev3-legged-robot3) | in |
start_IntermittentCrawlGaitEV3.batを起動するとRTCをアクティブ化し、ジョイスティックで四足歩行ロボットの操作ができるようになります。
非アクティブ化をする場合はstop_IntermittentCrawlGaitEV3.bat、ポートを切断する場合はteardown_IntermittentCrawlGaitEV3.batを起動してください。