myCobotをUbuntu上のROSで動かす

1 min read読了の目安(約1500字

Jetson nanoからROSでmycobotを動かした時の記録

python2系の環境を整える

ROSがpython2系にしか対応していないので、myCobotのサンプルpythonスクリプトも2系になっている。

下記のURLのようなところを参考に2系をいれましょう。私は2.7.17をいれました。

pyenvのインストール、使い方、pythonのバージョン切り替えできない時の対処法 - Qiita

公式ドキュメントの手順で進める

elephantrobotics/myCobotROS: A ros package for myCobot.

を参考に進めます。注意点とはまったところがいくつかあったので紹介します

pymycobotは1.0.7をいれる

追記

If your Atom is 2.3 or before, or pymycobot is 1.*, Please check branch before
とあるようにAtom が2.3より大きければ大丈夫だそうだ。

追記終わり

公式には

pip install pymycobot --user

とあるが、これだと2系がはいってしまった。ので下記のようにバージョンを指定した(プルリクだしました)

pip install pymycobot==1.0.7 --user

シリアル通信のライブラリをいれる

  Could not find a package configuration file provided by "serial" with any
  of the following names:

    serialConfig.cmake
    serial-config.cmake

みたいなエラーがでたので、こちらを参考に次のパッケージをいれたら解決した

sudo apt-get install ros-melodic-serial

yamlのライブラリがない

yamlのライブラリがないといわれた。これはpyyamlをインストールしたら解決した

pip install pyyaml

$Could not find the GUI, install the 'joint_state_publisher_gui' packageといわれる

次のパッケージをいれると解決する

sudo apt install ros-melodic-joint-state-publisher-gui

起動

スライダーでジョイントをGUIで動かすなら

roslaunch myCobotROS control.launch

別タブで

rosrun rviz rviz #起動後にFile>Open Configでmycobot.rvizを選ぶ

別タブで

python scripts/control_slider.py

で起動します。

https://twitter.com/toyoshi/status/1354696731577868292