-
Notifications
You must be signed in to change notification settings - Fork 97
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[peppereus] (send *ri* :wait-interpolation)なしで :head :look-at メソッドで得られた角度列に近いところまでロボットを動かしたいです #638
Comments
基本的には, みたいな速度制御型の周期実行プログラムを書けばいいということになります. (ros::rate 10) ;; 100mesc 周期で動かす です. 台車は:go-velocityで速度制御できます. で,問題は関節の方ですが, つまり,1自由度のロボットがあるとして,現在の関節角度が0度だとして 実際に関節指令軌道がうわがかれるかは,試していないのでわかりませんね.ということで, もしこれで上書きしてくれていない,となった時には または, と,してみてください.正確な位置制御ループが組んであるロボットだとこれはav0まで100msecで動いて,一回止まって,av1に動き出す, これで上手く動くとすると,ros::rate で周期をかけていくと,だんだんズレていくだろうから, :wait-interpolation-smooth も,これを送りつける側のプログラムがそこそこちゃんとしていないと動かなくて,HRP2でも最近まで ◉ Kei Okada 2016-07-21 19:37 GMT+09:00 Kanae Kochigami [email protected]:
|
ご教示ありがとうございました。
のようにして周期と合わせたら人の顔を追いかけるようになりました。 ループを回す周期と関節角指令の周期を合わせると関節が期待通りに動く
期待通り動きました。
初期姿勢をリセットポーズにして試しました。 (頭を下に下げる動き)頭を下げて進む、unix:sleep 1で立ち止まる、頭を上げて進む(リセットポーズに戻る)を繰り返します。頭の下げ方は30度より小さいです。
unix:sleep を実行し、一回止まる挙動を見せました。 |
確認ですが,reset-poseの状態から
とすると一旦とまるかな. |
アドバイスありがとうございました。 ループの中身を以下にして、
廊下でまっすぐ歩かせて調べました。
首の曲げ方はずれていって、どの場合もどんどん変わっていきます。 |
while文の中で
:go-velocity
メソッドでペッパーを進ませながら:head :look-at
メソッドで人の顔を追いかけながら同時に関節(頭)を動かしたいです。(下のcの場合です。)a.
(send *pepper* :head :neck-p :joint-angle 30)
とリセットポーズを繰り返しながら前進(send *ri* :wait-interpolation)
なしでなんとなく頭が動くb. `(send pepper :head :look-at (float-vector 900 50 900)) ;; 座標は固定`` とリセットポーズを繰り返しながら前進
(send *ri* :wait-interpolation)
なしでなんとなく頭が動くc.
(send *pepper* :head :look-at *people-pos*) ;; 座標は逐一変わる、人の位置をパブリッシュするトピックから得られる
とリセットポーズを繰り返しながら前進(send *ri* :wait-interpolation)
なしで全く頭が動かない時があるcの場合に
(send *ri* :wait-interpolation)
を加えると、頭は動くようになるのですが、前進する、止まる、首を動かす、また前進する・・・のような動作になり困っています。
(send *ri* :wait-interpolation)
を使わずにしっかり頭を動かすコツのようなものがもしあれば、他のロボットでやられている例等ございましたら、キーワードやサンプルコード等教えていただけないでしょうか。
ご迷惑をお掛けし申し訳ございません。
=>
:look-at
と:inverse-kinematics-loop-for-look-at
などを見て、逆運動学で解けた最終結果だけ取り出せないか調べる。今はきっと関節角度列のリストが出ている(?)
試したのは以下のようなプログラムです。
The text was updated successfully, but these errors were encountered: