-
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
pepper 2.9での動作確認 #1915
Comments
はい,そうです。 pepper-interface.lの中にもnaoqi-interface.lの中にも該当部分が見つけられていなくて、 :angle-vectorを送ると/pepper_robot/pose/joint_trajectory/goal (naoqi_bridge_msgs/JointTrajectoryActionGoal) に指令が送られるようです。 Naoqi 2.9のバージョンだと,
pose_manager.launch の中身はPythonプログラムなので, なので,/joint_angles (naoqi_bridge_msgs/JointAnglesWithSpeed)をpeppereusで使えるようにするか、naoqi_driverのプログラムの中で、/pepper_robot/pose/joint_trajectory アクションを使えるようにする、という方向がありそうだと思いました。 (実は,もともとnaoqi_driver.launchを上げた時に,/joint_angles (naoqi_bridge_msgs/JointAnglesWithSpeed) は前から使えるようになっていたと知りました。) 後者のほうが正しそうなので、できそうか考えてみます。 |
@a-ichikura こういう状況です。 @kochigami 勝手に引用してすいません。この件、放置しちゃっていてごめんなさい。ちょうど @a-ichikura が https://www.rosielab.ca/ に訪問中で、先生はロボット動かしてほしいけど、学生はデータセットにした興味ない、みたいな状況なので、よいついでなので、3研究室のロボットが動いたら良いなと思って、Issueにしました。 |
いえいえ、皆さんにも関係する話になったみたいで良かったです。 割り込み仕事がなければ、今週ちょうど取り組む予定でした(ですが、とりあえず既存のデモが動くように関節角度列をPythonで送るプログラムを書いて試すだけになりそうです・・・)。 |
ありがとうございます。こちら(rosie lab)のPepperについても確認中です。
というのは、機体そのものが交換になったという解釈で正しいでしょうか? |
はい、そうです! |
東風上さん ご返信ありがとうございます。 |
@kochigami ようやくデバッグ環境ができました.. でも, で,@a-ichikura が 2.9 +Python で動かしていて,2.5で動くコードとの差分が以下のようになっていて,最初の認証周りで何か更新がありそうなので,この辺を頑張れば良さそうな気がしています.
で,そのまえにいくつか確認したいんだけど,,,,,
|
naoqi_bridge も含めて 多分ですが,Pepper2.9 で動く様になったとおもいます.(実機でもシミュレーションでも確認していない,妄想100%なので,割り引いて読んで下さい) 1 : (僕は20.04を使ったけど,多分18.04でもOK) https://github.com/jsk-ros-pkg/jsk_robot/tree/master/jsk_naoqi_robot#setup-environment の要領で環境をセットアップする.正確には 2: naoqi_driverはkochigami-developではなく,https://github.com/ros-naoqi/naoqi_driver/tree/master を,naoqi_bridge は https://github.com/k-okada/naoqi_bridge/tree/master に入れ替える. 3:
4: https://github.com/jsk-ros-pkg/jsk_robot/tree/master/jsk_naoqi_robot#setup-environment の要領で環境をセットアップの続きを行う.正確には 5: #1474 (comment) に従い, 6: |
ありがとうございます。 Ubuntu 20.04 ROS noetic 今は、naoqi_driverだけとりあえず使えるようになっています。 jsk_naoqi_robot のREADMEにある環境構築のやり方 (Setup environmentの 3. Install ROS packages for NAO and Pepper) をやって、(pynaoqi-python2.7-2.5.5.5-linux64は入れていないです)
Python3 になったので、naoqi_appsなど、pynaoqi-python2.7-2.5.5.5-linux64 を必要とするものは使えないと思っているのですが、そうではないのでしょうか。(めちゃめちゃエラーが出て心が折れた記憶があります。)
NAO_IP, ROS_IPを.bashrcにセットした状態で、
出ているエラーは直せそうなのですが、これを直しただけでは(python2.7の記法を3に直しただけでは)解決する問題ではなかったという記憶があります。結局 pynaoqi-python2.7-2.5.5.5-linux64 の中身をいじらないといけなくなって、心が折れた記憶があります。 よろしくお願いいたします。 |
↑ 今更の返信ですみませんでした・・・ #1915 (comment) |
こちらに関して、 そして、3.の
qiのドキュメントを読むと3.1.5はpython 3.7からしかインストール出来ないようです。https://pypi.org/project/qi/#description
私がPythonのみでPepper 2.9を動かしているときはanaconda を使っていて、Python3.8なので
問題なくpip install qiが出来ました。 Python3.7以上を別で入れることも考えたのですが環境を壊しそうで怖かったので一旦やめておきました。したがって5以降はやっていないです。(5はあんまり関係ないですが‥) |
@kochigami 僕も20.04 なんだけど、pythonは3.8です。Ubuntu 20.04のデフォルトのPythonは3.8ではないでしょうか? 3.6にしているのは何か理由がありますか?
|
@k-okada => @a-ichikura の間違いですかね。私はPython3.8だと思われます。 |
Python 3.6にしている理由は特にないのですが、Ubuntuは 18.04です。 |
@kochigami そうでした。どこ見てたんだろう?
これ自体は正しくて、ros-naoqi/naoqi_bridge#98 で、Python3 への対応+
https://github.com/ros-naoqi/naoqi_driver/tree/master が動いたら、これベースで再度 kochigami-develop を作る という予定です。 |
@a-ichikura 18.04ユーザ向け情報
これで,#1915 (comment) の6まで進み,
じゃあ,だからといって,python3のqi(最新のもの)が入るか,というというと簡単では無さそうで
として入れます. ただこれが副作用がないかというと
となって,pip というコマンドがpython3用になるので,変なことになりそうです. 多分(かなり確信度は低い)ですが, 何れにせよ上の1)が動けばOKなので,python3 で 最新のqiを入れても,その後rosのノードが動くのはそう簡単では無さそうなので,ここは一回後回しでよいです. |
@k-okada ありがとうございます。 Ubuntu 20.04, ROS noeticの環境で、 #1915 (comment)
ちなみに、naoqi_libqi, naoqi_libqicoreはソースでは入れていないがaptで入っている
を実行したところ、エラーが出ました。
ros-naoqi/pepper_robot#59 また、#1915 (comment) |
おかしいですね。 |
岡田先生 pip install qi=1.8.3をした状態で
以下を実行したところ
次のようなエラーが出ました。
pepper_full.launchの中身を見てみたら、 naoqi_driver.launch ▶ エラーのようなものは見えないので立ち上がったっぽい naoqi_poseに関して、
となっていました。 |
@kochigami @a-ichikura ごめんなさい.間違いありました 確認事項としては
の部分を表示も,コードも直しているので,最新の k-okada/noqi_bridge:master にして,もう一度確認してほしいんですが, |
ありがとうございます。
で その上で、#1915 (comment)
|
おお,良かったです.
は必要なくて,今までどおり
のままで,
が送られるはずです.時間があるときに試してみて下さい. |
こちらレポジトリを最新にしてbuildし直す等を行って、手元のプログラム的には問題ないと思う(仮)のですが… pose_controllerについて
このようなエラーでした。
ここのエラーだということまでわかりました。serverにアクセスできていないということでしょうか。 Pepper 2台あるので2台で試してみたのですが同じエラーで、 |
はnaoでない限り,ワーニングが出るのはOKで僕の方でも出ています. |
もうこれは使わなくていいので,必要性は低いですがspeedの計算方法が間違えていて
より
のほうがゆっくり動いてくれますが,この係数でOKかはよくわからないです. |
岡田先生 |
pepper 2.5でのhand touchの認識ができなくなっている気がします。 まず、
をPepper 2.5で実行したのですが、手を触っても 同じlaunchファイルを2.9で実行すると手を触ると0か1で値が変化します。 なぜこの問題に気がついたかというと、Pepper2.9で作ったプログラムを2.5でも実行できるようにしたくて、試していたのですが、2.9だとうまくいくものの、 例えば、
と実行すると、
となります。
だとうまくいくことを確認しています。 ちなみに参考はこちらを見つけました。 この記事の通りにしてもsession.listen()ができないとなってしまうのでうまくいかなかったのですが、libQiのversionで問題が起きているようでした。 そこでROS経由で調べたところなんの反応もないことを見つけたのですが、JSK(岡田先生)の環境ではrosからhand touchが見えているでしょうか? |
割り込みすみません。 詳しい状況を思い出せていないのですが、 こちら試します。ありがとうございます。 |
https://stackoverflow.com/questions/73801385/python-3-5-invalid-signature-pepper-robot ただ,ちょっとわからないのは,このstackoverflow で説明してくれているのは,
|
ありがとうございます。 若干違う問題のような根本は同じ問題のような感じなのですが、Trackingをためそうと思って、 他にも使えないserviceがあるのかなと思い色々していたところ、SonarやPeoplePerceptionなども同じエラーになりました。
APIのCoreにALExtractorというものがあり、http://doc.aldebaran.com/2-8/naoqi/core/alextractor-api.html 2.9で動かすときにはこの記事のようにappを作って動かしています。 なんとなくこれもlibQiのバージョンが関係している気がして、 |
Aldebaranの公式にissueを投げてみました。 |
なるほど、aldebaran/libqi-python#26 (comment) みてもPepper2.5/Pepper2.9は中身だいぶ違うみたいですね。たぶん本体側の問題なので また、Pepper2.9でも、どういうサービスがあるか、とかは
みたいに調べられて、
みたいにして、どういうメンバ関数があるかわかります。一回、 |
岡田先生ありがとうございます。 こちらが結果になります。
TrackingやLookのようなものは |
追加です。 ALMotionの関数にLookatやTrackerを見つけました。
|
BasicAwarenessをsetEnabled(True)にしてみると、PepperのheadだけでなくBodyも動くようになってしまい、自分で作った動きを再生しなくなってしまいました。 ただ、上のdocumentを見ると、getHumanAroundみたいな関数を使えば良いと思うのですが、
が関数のすべてで、該当する関数がないように思いました…というところで挫折しました。 |
おお、だいぶ進みましたね。 で、普通にLookAt関数自体は使えているでしょうか?
これって、Java側のドキュメントを見ているんだと思うけど、このKotlin とかいうやつを見ると
とあるので、 ちなみに、HumanAwareness->Lookat作戦は、https://qisdk.softbankrobotics.com/sdk/doc/pepper-sdk/ch4_api/perception/reference/engage.html?highlight=head_only#human-fully-engaged とか見たのかな。
ちなみにこれはどうやって発見しました?https://qisdk.softbankrobotics.com/sdk/doc/pepper-sdk/ch4_api/abilities/reference/BasicAwareness.html?highlight=basicawareness# みても、 2.5だと、http://doc.aldebaran.com/2-5/naoqi/interaction/autonomousabilities/albasicawareness.html#tracking-modes のように、どこを動かすか選択できていそう。 |
色々途中経過なのですが‥
中身の値をPythonで直接見る方法までは行っていないのですが、このFrameをLookatに渡せばできるのでは?と思っています。 以下返信です。
そのrefを見てLookatにFrame渡せばいけるかもとおもいました。
これはやって気がついたのと、
上のページにこの記述があったので体ごと動いてしまうんだと思っていましたが、他のコメントにもあるように調整はできそうですね。 Lookatはこれからやってみます。 |
の感じで出来なかったことをご報告します。
今やろうとしてることではTrackingを使うのを諦めたのですが、今後のために出来るようにしたいと考えています。 |
ちなみに、
とすると何が返ってくるのかな? あと、
が知りたいです。 |
↓
↓
ここで詰まるので、
こんな感じです。 |
情報更新できておらずすみません。 使ったのはVirtual Boxです。
UbuntuのVersionは24.04のisoを使うとうまくいかなかったので、22.04のisoイメージを使いました。 |
NAO(V6)についても、 naoqi_driver: ros-naoqiのmasterブランチ として、 pepperでpepper-interface.lが使えるかをまだ試せていないので(大変時間が掛かっておりすみません・・・)、今週やろうと思います! |
↑ pepperでも pepper-interface.l が使えることを確認いたしました。 |
From: @kochigami
Pepperなのですが、Naoqiのバージョンが2.5だったのが今年から全員機体交換になり、2.9 (android) になりました。
関節角度列を送る方法が変わり、
https://github.com/ros-naoqi/naoqi_driver?tab=readme-ov-file#check-that-the-node-is-running-correctly
にあるように、/joint_angles (naoqi_bridge_msgs/JointAnglesWithSpeed) を使わないといけなくなりました。
そのため、jsk_robotのパッケージやpeppereusが現状使えなくなっている状態です。
(cross だけでなく、jsk_pepper_startup.launchも使えなくなりました。安全装置も解除できなくなり、手引き移動もできなくなってしまいました。)
ひとまず、そのまま 関節角度列はtopic を送って使うようにしようと思うのですが、
時間がある時に jsk_robotパッケージ(特にpeppereus)が使えるように直していけたらいいなと思います。
The text was updated successfully, but these errors were encountered: