HeartToHeart4講座(3-4) 繰り返し動作の作成

Posted on 2020.06.19 in

 

『HeartToHeart4講座』第三章では、1から自作モーションを作成する方法を解説しています。これまで「手を振る」モーションを作成してきましたが、今回は繰り返し処理で回数を指定して手を振る方法を紹介します。

 

【関連記事】

 第一章、第二章については下記のページからご参照ください。

  『HeartToHeart4講座 目次』

 第三章

   HeartToHeart4講座(3-1) ロボットの姿勢と作成ルール

   HeartToHeart4講座(3-2) 教示機能でモーション作成1

   HeartToHeart4講座(3-3) 教示機能でモーション作成2

 

※以下の手順は、前回までの作業の続きとして解説します。HeartToHeart4(HTH4)のプロジェクトを展開し、PCとロボットが通信できている状態にしてください。また、前回作成した「手を振る」モーションを開いてください。

以上の手順がわからない場合は、関連記事を参照してください。

 

1.SetCounterとLoopを配置する

ツールボックスウィンドウから「SetCounter」コントロールと「Loop」コントロールをドラックアンドドロップします。

 

2.配線する

1)「ホームポジション」の配線を削除します。線の矢印のところで右クリックし、削除を選択します。

 

2)「接続」ボタンをONにし、以下の図のように配線します。

※「ホームポジション」はまだ配線しません。

 

3)「接続」ボタンの隣にある「分岐接続」ボタンをONにし、「Loop」から「ホームポジション」へ配線します。

以上で配線は完了です。

 

3.SetCounterを設定

「SetCounter」コントロールをダブルクリックして開きます。

「カウンター」はC1のままで構いません。

「カウント値」に繰り返す回数を指定します。5回繰り返す場合は、5と入力してください。

入力ができたらOKボタンで閉じます。

 

4.Loopを設定

「Loop」コントロールをダブルクリックして開きます。

「カウンター」は、SetCounterで設定したC1を選択します。

「行き先」は「ホームポジション」にします。

入力ができたらOKボタンで閉じます。

 

以上で繰り返し動作の設定は終わりました。

 

5.スタート地点を変更する

モーションのスタート地点を「SetCounter」に変更します。「フラッグ」ボタンをONにし、「SetCounter」コントロールをクリックします。コントロールにフラッグが表示されていることを確認してください。

 

6.モーションを再生する

モーション編集ウィンドウの「再生」ボタンを押します。ロボットが5回手を振ると成功です。

 

7.解説

繰り返し処理で使用した各機能について解説します。

・SetCounterコントロール

「カウンター」を選択して値を入れておくことができます。Loopコントロールなど、他のコントロールで同じ「カウンター」を指定することで、値を利用した分岐処理などが可能になります。

 

・Loopコントロール

繰り返し処理をするためのコントロールです。選択した「カウンター」の値の回数分だけ処理を繰り返します。繰り返し中にLoopコントロールを通過するたびに、値から-1が引かれます。値が0になると判定がTrueになり、「分岐接続」で配線した先に処理が分岐します。

 

・分岐接続

「分岐接続」の元になっているコントロールの処理がTrueの時に、「分岐接続」で接続した先に処理が分岐します。Loopの場合は、繰り返し処理でLoopで選択した「カウンター」の値が0になるとTrueになります。今回作成したモーションは、手を振る動作を繰り返し、「カウンター」が0になったことで「ホームポジション」の処理に分岐しています。

 

・処理の流れ

①SetCounterのカウンターC1に5が代入されます。

②ロボットが手を振ります。

③Loopを通過するとカウンターC1の値に-1されます。

  通過1回目 C1: 5-1 = 4 => False

  通過2回目 C1: 4-1 = 3 => False

  通過3回目 C1: 3-1 = 2 => False

  通過4回目 C1: 2-1 = 1 => False

  通過5回目 C1: 1-1 = 0 => True

④Loopコントロールの判定がTrueになったので、処理が分岐し「ホームポジション」が再生されます。

 

以上で繰り返し処理を使用できるようになりました。

次回は、モーション作成の仕上げとして、ロボットにモーションデータを書き込みます。

 

次の記事

  HeartToHeart4講座(3-5) モーションを書き込む

 

HeartToHeart4の詳細をみる RCB-4HVボードのみの詳細をみる RCB-4miniの詳細をみる KHR-3HV Ver.2 リフェバッテリー付きセットの詳細をみる KXR-L2 ヒューマノイド型 Ver.2の詳細をみる KXR-L4T-R カメ型・ローバー型 Ver.2(アカデミックパック)の詳細をみる KXR-A5 アーム型 Ver.2の詳細をみる KXR アドバンスセットA Ver.2の詳細をみる KXR アドバンスセットB Ver.2の詳細をみる