1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ROS1で北陽LiDAR(UST-1020LX)の点群をrvizで表示させたメモ

Posted at

はじめに

ロボットを自律走行させるため、前回の記事の続きです。
LiDARを入手したので、前回の記事のロボットに接続してみました。

環境

  • RasberryPi 4B(Ubuntu 20.04.4 LTS)
項目 バージョン
Ubuntu 20.04
ROS Noetic
  • LiDAR: 北陽 UST-1020LX

(参考)Turtlebot3の状況確認

Turtlebot3がデフォルト動作の場合のtopic

$ rostopic list
/clock
/cmd_vel
/gazebo/link_states
/gazebo/model_states
/gazebo/parameter_descriptions
/gazebo/parameter_updates
/gazebo/performance_metrics
/gazebo/set_link_state
/gazebo/set_model_state
/imu
/joint_states
/odom
/rosout
/rosout_agg
/scan
/tf
$ roslaunch turtlebot3_slam turtlebot3_slam.launch 
$ rostopic list
/clicked_point
/clock
/cmd_vel
/gazebo/link_states
/gazebo/model_states
/gazebo/parameter_descriptions
/gazebo/parameter_updates
/gazebo/performance_metrics
/gazebo/set_link_state
/gazebo/set_model_state
/imu
/initialpose
/joint_states
/map
/map_metadata
/map_updates
/move_base_simple/goal
/odom
/rosout
/rosout_agg
/scan
/tf
/tf_static
/turtlebot3_slam_gmapping/entropy
$ rostopic info /scan 
Type: sensor_msgs/LaserScan

Publishers: 
 * /gazebo (http://192.168.43.202:46383/)

Subscribers: 
 * /turtlebot3_slam_gmapping (http://192.168.43.202:42365/)
 * /rviz (http://192.168.43.202:41575/)
$ rosmsg show sensor_msgs/LaserScan 
std_msgs/Header header
  uint32 seq
  time stamp
  string frame_id
float32 angle_min
float32 angle_max
float32 angle_increment
float32 time_increment
float32 scan_time
float32 range_min
float32 range_max
float32[] ranges
float32[] intensities

やったこと

有線LAN接続

有線LANのネットワーク設定します。
以下はラズパイ側のデフォルトの設定。LANのコネクタに接続しても何も認識しない状態です。

$ ip a
1: lo: ~~~
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether dc:a6:32:82:d8:87 brd ff:ff:ff:ff:ff:ff
3: wlan0: ~~~

eth0の設定を更新します。

北陽のLiDARはデフォルトでは192.168.0.10のIPアドレスが指定されているようなので、ラズパイ側のIPアドレスは192.168.0.100とします。/etc/netplan/99-netcfg.yaml を編集します。

$ cd /etc/netplan/
$ sudo nano 99-netcfg.yaml
network:
  ethernets:
    eth0:
      dhcp4: false
      dhcp6: false
      addresses: [192.168.0.100/24]
      gateway4: 192.168.0.1
      nameservers:
        addresses: [8.8.8.8]
  version: 2

変更した内容を反映させます。

$ sudo netplan apply

IPアドレスの設定を見ると、eth0のIPが192.168.0.100に設定されていました。

$ ip a
1: lo:
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether dc:a6:32:82:d8:87 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.100/24 brd 192.168.0.255 scope global noprefixroute eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::dea6:32ff:fe82:d887/64 scope link
       valid_lft forever preferred_lft forever
3: wlan0: 

北陽LiDARに接続して、pingが通ることも確認できます。

$ ping 192.168.0.10
PING 192.168.0.10 (192.168.0.10) 56(84) バイトのデータ
64 バイト応答 送信元 192.168.0.10: icmp_seq=1 ttl=64 時間=0.344ミリ秒
64 バイト応答 送信元 192.168.0.10: icmp_seq=2 ttl=64 時間=0.204ミリ秒
64 バイト応答 送信元 192.168.0.10: icmp_seq=3 ttl=64 時間=0.200ミリ秒
64 バイト応答 送信元 192.168.0.10: icmp_seq=4 ttl=64 時間=0.178ミリ秒
^C
--- 192.168.0.10 ping 統計 ---
送信パケット数 4, 受信パケット数 4, パケット損失 0%, 時間 3053ミリ秒
rtt 最小/平均/最大/mdev = 0.178/0.231/0.344/0.065ミリ秒

urg_node の起動

  1. urg_nodeのインストール
    sudo apt-get install ros-${ROS_DISTRO}-urg-node
$ sudo apt-get install ros-noetic-urg-node

  1. roscoreの起動
    ROSのノードを起動させるためにはまず全体を管理するROSマスターを起動させる必要があります。
$ roscore
  1. urg_nodeの起動
    urg_nodeを起動するには新しい端末を開き、以下のコマンドを実行します。
    IPアドレス192.168.0.10のEthernetタイプのセンサに接続する場合
$ rosrun urg_node urg_node _ip_address:=192.168.0.10

トピックを見ると、/scan トピックが存在することがわかります。

$ rostopic list
/diagnostics
/laser_status
/rosout
/rosout_agg
/scan
/urg_node/parameter_descriptions
/urg_node/parameter_updates

rvizで表示

rvizを起動します。

$ rosrun rviz rviz

rvizの設定

  • "Global Options->Fixed Frame"を"/laser"に変更します。
  • "LaserScan" の表示を追加します。
  • "LaserScan->Topic"を"/scan"に設定します。

マルチエコー機能が有効な場合は、/scanではなく/firstで第1エコーを表示できます。
とありましたが、今回は/scanトピックとなります。

image.png

image.png

LiDARデータを読み込むことができました。部屋の点群の様子がリアルタイムに見えます。

まとめ

本記事ではROS1で北陽LiDARの点群をrvizで表示させるためのメモを記載しました。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?