ROS1のお勉強など
長期のゴールデンウィークとその+αを使って、小倉崇先生のROSの教科書的な本を完走しました。その感想と忘備録です。
カメラやジョイスティックを実際に使って、バーチャルのロボットを動かせたり、ROSの面白い部分を一気に体験できました。
「分散機能」の章では、ROS環境が2台必要になったため、あえて2台目はWindows10でROSを走らせて、talkerとlisnerで実験してみました。
環境の構築には、下記を参考にさせていただきました。
たるこすの日記「ROS for Windows をインストールしてみる」
https://tarukosu.hatenablog.com/entry/ROSforWindows
最後に、ArduinoにROSのライブラリを組み込んだスケッチを書き込んで、rosserialを使って、LEDのON/OFFをrqtから制御出来ました。
途中Arduinoのシリアルポートで躓くも、Twitterでいろいろ教えていただいたみなさん、ありがとうございます!
rosserialとwindowsのROS nodeの実験も出来たので、なんとなくですが、自分の手元のロボットをROSに載せることも出来そうな気がしてきました。
あと、本の中で躓いたところ、覚えておくことなど、メモ・・・
- ROSではじめるロボットプログラミングの書籍のサポートページに訂正などの情報が上がっている
http://www.kohgakusha.co.jp/support/ros_robot/index.html - 書籍内のプログラムのソースコードがgit_hubで公開されている(ちょっと手抜き出来る♪)
https://github.com/OTL/ros_book_programs - 書籍が、indigoですが、もちろん自分のROSのバージョンに合わせて書き換える。自分はkineticでしたが、全てそのまま置換だけで行けました。
- pythonでimportエラー「 ImportError: No module named ros_start.srv 」が出る。p.43をもとに「~/.bashrc」を作り直すもののうまく行かず・・・
pythonのソースコードの先頭に「
import sys sys.path.append(‘/home/hogehoge/catkin_ws/devel/lib/python2.7/dist-packages’) 」を直接追記したら動いた。 - その後、p.43の「source ~/catkin_ws/devel/setup.bash」に書き換えるところを、元のsetup.bahを消さずに、併記したらうまく行った。原因は謎。
- 突然、gazeboで、kobukiがspawn出来なくなった(マップだけ表示されてロボットがいない)、”.ros”のパーミッションのwarnが出ていたので、 “.ros”以下のディレクトリとファイル全てをパーミッション777にしたら上手く行った。(暴挙)
- Ubuntuの環境変数は”export”コマンド、Windowsの環境変数は”set”コマンド (ROS_MASTER_URIの設定にて)
- p.171に記述があるが、RVIZでロボットが表示されないので、「Global Options」の「Fixed Frame」を「base_link」に設定した
- Arduinoの書き込みが出来ないときは、ユーザーを”dialout”グループに追加する。「sudo gpasswd -a ユーザ名 dialout」を実行したあと、必ず再ログイン!
- FTDIのUSBシリアル のレイテンシタイマーが16msecの問題はUbuntuでも(人形つかいさんより)、対処方法はこちら
https://woodencaliper.hatenablog.com/entry/2018/06/30/175622
コメントを残す