Updated on: 2018-05-27
YVT-35LX からデータを取得し、2次元点群に変換する方法を説明します。
YVT-35LX を利用するためのパッケージと3次元点群から2次元データに変換するためのパッケージをインストールします。
1
$ sudo apt install ros-kinetic-hokuyo3d
点群を3次元から2次元データに変換するパッケージの launch ファイル等をダウンロード
1
2
$ cd ~/catkin_ws/src
$ git clone https://github.com/KMiyawaki/rsj_pointcloud_to_laserscan.git
PC の LAN ポートに YVT-35LX を接続し、バッテリーのスイッチを入れる。
画面右上のネットワークアイコンをクリック
有線接続の項目を選択し、「編集」ボタンをクリック
「IPv4設定」のタブをクリックし、「方式」を手動に設定
「アドレス」の項目で「追加」ボタンをクリックし、アドレス「192.168.0.*」(*は10以外の1から255の間の数字)とネットマスクを入力し、最後に「保存」ボタンを押す。
画面に「有線接続完了」の文字が表示されれば完了です。
注意:無線LANで既に192.168.0.系のネットワークに接続している場合、通信が不通となります。その場合はセンサを接続する前に既存のネットワークから切断してから上記の作業を行ってください。
次のコマンドを実行します。
1
2
3
4
$ cd ~/catkin_ws/
$ catkin_make
$ source devel/setup.bash
$ roslaunch rsj_pointcloud_to_laserscan rsj_pointcloud_to_laserscan_3durg.launch
コンソールに赤字でエラーメッセージが出ていないかどうか確認してください。 もしエラーメッセージが出ていたら、プログラムを Ctrl+c で終了し、もう一度上記を実行してみてください。
別のコマンドターミナルを開き次を実行してください。
1
2
$ cd ~/catkin_ws/src/rsj_pointcloud_to_laserscan/config/rviz
$ rosrun rviz rviz -d view_scan.rviz
下図のように2次元の点群が表示されれば成功です。
この2次元点群は3次元センサが出力している3次元点群からpointcloud_to_laserscan
ノードを使って、高さの範囲指定で切り出して生成しているものです。
3次元点群そのものの処理については後に続く実習で説明します。