HeartToHeart4講座(4-2) ミキシング機能を利用した姿勢補正
前回に引き続き『HeartToHeart4講座』第四章としまして、HeartToHeart4の便利な機能をご紹介します。
今回の記事は、ロボットの制御で重要な「ミキシング機能」について解説します。ミキシング機能は、二足歩行ロボットでは主に姿勢の自動補正に利用します。ジャイロセンサと組み合わせることで歩行が安定します。簡単に設定できますので、ぜひお試しください。
【関連記事】
第一章~第三章については下記のページからご参照ください。
第四章
HeartToHeart4講座(4-1) センサによるモーション分岐機能
以下の解説は、ロボットにジャイロセンサが搭載されていることを前提とします。
ジャイロセンサの搭載方法は、下記のページからマニュアルをダウンロードしてご参照ください。
・KHR-3HVの場合
使用するセンサ:ジャイロセンサーKRG-4 ※2セット使用します。
マニュアル:『KHR-3HVオプション搭載マニュアル(ジャイロKRG-4)』
・KXRシリーズの場合
使用するセンサ:KRG-4 Bセット(ZH⇔ZH付属) 2個入り
マニュアル:『ジャイロセンサーを搭載する』
※以下の記事は、KXR-L2をサンプルに使用しています。KHR-3HVでも同様の方法でモーションを作成できますが、センサの搭載方向が異なります。
■ミキシング機能について
ミキシング機能は、主にセンサの値を利用してロボットの関節(サーボ)を自動で補正するための機能です。測定値と基準値の差に倍率を掛けることで「ミキシング値」を求めます。この「ミキシング値」を指定したサーボに足し合わせることにより、サーボの角度を変化させることができます。
サーボモータの動作角 =
ポジション(モーション等で設定する角度)
+ トリム(トリム調整で設定している値)
+ ミキシング1
+ ミキシング2(ミキシングは一つのサーボに対して2つ設定することができます)
以下の例で具体的に解説します。
■姿勢補正の場合
指定したサーボに対してジャイロの値の変化を反映することで、自動で姿勢を補正します。
以下の画像は、ミキシングで処理される内容のイメージです。
①の直立状態が基準値です。例として、ジャイロセンサの値が250を出力していたとします。
②倒れそうになった時、③角速度が倒れる方向に発生します。この時、角速度で反応したジャイロセンサのデータ(測定値)を取得し、基準値との差=AD値を求めます。
測定値が260だとすると、測定値260-基準値250=AD値10になります。
④AD値に対して予め設定しておいた倍率を掛けます。掛けて求めた数値が「ミキシング値」になります。倍率を×5に設定した場合、AD値10×倍率5=ミキシング値50になります。
⑤ ④で求めたミキシング値を指定したサーボに足し合わせます。サーボの角度が1000※だった場合、角度1000+ミキシング値50=角度1050になり、サーボの角度が変化します。
以上の処理により、画像のように後ろに傾いたロボットに対して、足首を傾けることで姿勢を補正することが可能です。人間が転びそうになったときに、足首やひざでふんばるのと同じ要領です。
※HeartToHeart4の場合、サーボの角度は、-4000~0~4000の値で指定します。
前回の記事で解説したCmpADは、モーション内のCmpADに処理が流れてきたときに実行されますが、ミキシング機能はモーションに関係なく常に実行され続けています。直立の待機状態から、歩行時まで自動で処理されますので、ロボットを安定させるために非常に効果的です。
■使用方法
1)プロジェクトを展開し、COM番号を設定してPCとロボットが通信できる状態にします。ロボットに通信用のケーブルを接続し、ロボットの電源を入れてください。
2)プロジェクト設定ウィンドウを開きます。
3)「ミキシング」タブを開きます。このタブ内でミキシングの値を設定します。
4)ツールバーの「Sync」ボタンをONにします。
5)ジャイロが接続されている一つ目のADポートを選択し、「キャプチャ」ボタンを押します。
マニュアルの通り接続すると、KXR-L2、KHR-3HV共にAD1です。
この作業により、一つ目のジャイロの基準値が設定されました。
6)ジャイロが接続されている二つ目のADポートを選択し、「キャプチャ」ボタンを押します。
マニュアルの通り接続すると、KXR-L2、KHR-3HV共にAD2です。
この作業により、二つ目のジャイロの基準値が設定されました。
7)ミキシングをかけるサーボと倍率を設定します。指定したいサーボIDに対してADポートの番号と倍率を選択してください。
KONDOのロボットキット用に、適切な値が用意されています。下記の値を選択してください。(各ロボット用の搭載マニュアルから抜粋)
・KHR-3HVの場合
SIO1.2.3.4
ID9:AD1 倍率-9
ID10:AD2 倍率8
SIO5.6.7.8
ID9:AD1 倍率9
ID10:AD2 倍率8
・KXR-L2の場合
SIO1.2.3.4
ID9:AD2 倍率9
ID10:AD1 倍率8
SIO5.6.7.8
ID9:AD2 倍率9
ID10:AD1 倍率8
8)プロジェクト設定ウィンドウの「ROMにすべて保存」ボタンで、ロボットに設定値を書き込みます。ダイアログに従いロボットを再起動してください。
9)以上で設定は完了です。動作テストとして、ロボットを少し傾け手を放してください。姿勢が戻ったときにピタリと止まれば成功です。
もし、グラグラと揺れが続いたり、指定したサーボが思わぬ向きに曲がってしまったいたら設定に間違いがあります。一度ロボットの電源をOFFにし、センサの配線、基準値、設定内容をもう一度確認してください。
10)HeartToHeart4を閉じる前に、プロジェクトを保存してください。
以上でミキシング機能の解説は終わりです。
ジャイロセンサのミキシングは、設定は簡単ですが効果は抜群です。安定して動作できますので、モーションが作成しやすくなる効果もあります。ジャイロの搭載は定番ですので、まだ搭載されていない方はぜひご利用ください。
次の記事
HeartToHeart4講座(4-3) ボタンによるモーション分岐機能
HeartToHeart4の詳細をみる KHR-3HV Ver.3.1 リフェバッテリー付きセットの詳細をみる KHR-3HV Ver.3 リフェバッテリー付きセットの詳細をみる 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の詳細をみる