Isaac Sim ROS2 Tutorial 3: RTX Lidar Sensor 연결
TurtleBot에 RTX 2D/3D Lidar를 추가하고 LaserScan, PointCloud topic으로 publish한다.
이번 글에서는 TurtleBot에 RTX 2D/3D Lidar를 추가하고, 각각 LaserScan과 PointCloud topic으로 ROS2에 publish하는 흐름을 정리했다. 카메라와 마찬가지로 sensor prim을 render product로 연결하고 ROS2 helper가 topic으로 변환하는 구조다.
1
Create > Sensors > RTX Lidar > NVIDIA > Example Rotary 2D
1. RTX 2D Lidar 추가
상단 메뉴에서 RTX 2D Lidar를 추가한 뒤 TurtleBot의 lidar 기준 frame 위치에 배치한다. URDF 기준 prim이 base_scan이라면 Lidar prim을 그 아래에 넣고 local transform을 0으로 맞추는 것이 자연스럽다.
2. RTX 3D Lidar 추가
3D Lidar도 같은 방식으로 추가한다. 2D Lidar가 평면 scan을 만든다면, 3D Lidar는 point cloud 확인용으로 사용한다.
3. RTX Lidar Action Graph
Lidar 출력은 Action Graph에서 render product를 만든 뒤 ROS2 RTX Lidar Helper로 넘긴다. graph prim을 lidar namespace 아래에 두면 multi-robot 상황에서 topic과 frame 충돌을 줄이기 쉽다.
On Playback Tick은 simulation play 중 graph를 실행한다.Isaac Create Render Product는 RTX Lidar sensor를 render product에 연결한다.ROS2 RTX Lidar Helper는 render product를 LaserScan 또는 PointCloud message로 변환한다.
| 노드 | 역할 |
|---|---|
| On Playback Tick | simulation play 중 graph를 tick마다 실행합니다. |
| ROS2 Context | ROS2 통신 context를 만듭니다. |
| Isaac Create Render Product | RTX Lidar sensor를 render product로 연결합니다. |
| ROS2 RTX Lidar Helper | Lidar render product를 ROS2 LaserScan 또는 PointCloud topic으로 publish합니다. |
4. RViz2 확인
ROS2 bridge가 정상이라면 LaserScan과 PointCloud topic을 RViz2에서 확인할 수 있다. 이때 display의 fixed frame과 message frame_id가 TF tree 안에서 연결되어 있어야 한다.
1
ros2 topic list

1
2
3
4
RTX Lidar prim
-> Isaac Create Render Product
-> ROS2 RTX Lidar Helper
-> LaserScan / PointCloud topic
정리하면 RTX Lidar는 sensor prim, render product, ROS2 helper, TF frame 네 요소가 맞아야 RViz2에서 안정적으로 보인다.






