フォーラム詳細

  • 解決済み
    #ID:3
    モーションノード設定方法について
  • 投稿者:まさのり
    投稿日:2017年11月24日

    いつもお世話になっております。

    モーションノード設定方法についてご質問させてください。
    パラメータによってuniboが色々なモーションをするように
    msg.motionプロパティにモーションコードを動的に
    設定していますが動作しない状況です。

    正しい設定方法をご教授頂けたらと思います。

    現在の設定内容は以下のようになります。

    【①関数ノード】→【②トークノード】

    ①関数ノードで以下のように設定
    msg.word = "テスト";
    msg.expression = "anger";
    msg.motion = "LED BLINK RED 255 200 SERVO NECKYAW 30 5 SERVO ARMLEFT -70 10 SERVO ARMRIGHT 70 10 WAIT 2000 SERVO NECKYAW -30 5 SERVO ARMLEFT 70 10 SERVO ARMRIGHT -70 10 WAIT 2000 SERVO NECKYAW 0 5 WAIT 2500";

    ②トークノードは初期の状態

    msg.wordとmsg.expressionは動作しますが、msg.motionは動作しません。
    msg.motionに"LED BLINK RED 255 200”のみ設定しても同じ状況です。
    ちなみにmsg.motionに設定している内容の最後にENDを追加するとトークノードでエラーになります。

    よろしくお願い致します
このトピックに返信するにはログインが必要です。
3件の返信を表示中
#ID:3
回答者:ひでお
回答日:2017年12月04日

はじめまして。私も一度同じように はまりましたので情報共有いたします。

解決策ですが
motionの各命令に改行コードをいれてやるとうまくいくかと思います。

msg.motion = "LED BLINK RED 255 200 \n";
msg.motion += "SERVO NECKYAW 30 5 \n";
msg.motion += "SERVO ARMLEFT -70 10 \n";
msg.motion += "SERVO ARMRIGHT 70 10 \n";
msg.motion += "WAIT 2000 \n";
msg.motion += "SERVO NECKYAW -30 5 \n";
msg.motion += "SERVO ARMLEFT 70 10 \n";
msg.motion += "SERVO ARMRIGHT -70 10 \n";
msg.motion += "WAIT 2000 \n";
msg.motion += "SERVO NECKYAW 0 5 \n";
msg.motion += "WAIT 2500 \n";
msg.motion += "END";
msg.expression = "anger";
return msg;

こんな感じです。
よろしくお願いいたします。
#ID:4

回答者:アイエスピー(認定デベロッパー)
回答日:2017年11月24日

ひでおさん、情報共有ありがとうございます。
休み明けに確認してみます!

よろしくお願いいたします。
#ID:5

回答者:アイエスピー(認定デベロッパー)
回答日:2017年11月27日

ひでおさん

教えて頂いた方法で問題なく動作出来ました。
ありがとうございました。

よろしくお願い致します。