Hokuyo Lidar "UTM-30LX-EW" の ROS への接続方法

ということで,本日会場入りしてデータ取得は間に合わず...明日行きます!

出発に向けていろいろと準備をしているんですが,ついに北陽電機さんにお借りした Lidar が接続完了しました!半年も前にお貸し頂いたのに遅くなりました...Ethernet Type の使い方を一通り書いてくれてある記事が思いのほか少なかったのでまとめておきます.

0. urg_node のインストール

urg_node という ROSのパッケージが提供されています.こいつをダウンロードします.

$ sudo apt-get install ros-kinetic-urg-node

で,このパッケージには,
1. urg を動かすためのドライバ,ROSのラッパー
2. urg の IP アドレスを変更するための Python スクリプト
が含まれています.Default の IP アドレスから変更する必要がある場合,2 のスクリプトを実行してセンサーのIPを変更します.

1. PINGで疎通確認

UTM-30LX-EWの初期 IP アドレスですが,"192.168.0.10" として設定されています.Lidar を PC に接続して ping をうつと,下記のように Reply が帰ってきます.
(自分のPCのIPを同じネットワークにしてあげないといけないので,適当に192.168.0.100とかにします.)

$ ping 192.168.0.10
PING 192.168.0.10 (192.168.0.10) 56(84) bytes of data.
64 bytes from 192.168.0.10: icmp_seq=1 ttl=128 time=0.129 ms
64 bytes from 192.168.0.10: icmp_seq=2 ttl=128 time=0.098 ms
64 bytes from 192.168.0.10: icmp_seq=3 ttl=128 time=0.140 ms

で,センサーのIPを変更したい場合,自分のPCのIPアドレスを同じネットワークのものに変更してあげる必要があります.

2. IPアドレス変更

で,仮にロボットのローカルネットワークを下記のようにしたいとします.
172.16.x.x

この場合,下記のコマンドでセンサのIPアドレスを変更できます.

rosrun urg_node set_urg_ip.py --nm 255.255.255.0 --ip 192.168.0.10 172.16.0.10 172.16.0.254

右から二番目が変更したいIPアドレス,右端がデフォルトゲートウェイIPアドレスです.ここまで完了したら,自分のPCのIPアドレスを172.16.x.xに変更します.

3. urg_nodeの起動とrvizでの可視化.

ここまで来たらあとはnodeを起動して,rvizで可視化するだけです.

urg_nodeの起動

rosrun urg_node urg_node _ip_address:="172.16.0.10"

rvizの起動

rosrun rviz rviz

で,rvizで/LaserScanを可視化し,Fixed Frame を laser にしてあげれば,無事 Lidar が動いているのがわかります.

f:id:rkoichi2001:20180818164227p:plain

以上,メモメモでした.