create® 3入门教程-将Create3连接到NVIDIA Jetson
说明:
- 介绍如何将Create3连接到NVIDIA Jetson
相关设备
- Turtlebot4机器人套件:采购地址
更改“USB 设备模式”以应用静态 IP
更改 Jetson 的“USB 设备模式”功能(特别是禁用 DHCP 服务器并自行分配静态 IP 地址)
首先,创建一个标志文件来存储 Jetson 与 Create3 一起使用的 IP 地址。
sudo bash -c 'echo "192.168.186.3" > /opt/nvidia/l4t-usb-device-mode/IP_ADDRESS_FOR_CREATE3_ROBOT.conf'
然后,修改“nv-l4t-device-mode-runtime”服务脚本 ( /opt/nvidia/l4t-usb-device-mode/nv-l4t-usb-device-mode-runtime-start.sh)
将 USB 电缆的 micro-B 端从 Create® 3 机器人连接到 Jetson 的 micro-B USB 端口。ifconfig然后通过发出命令检查是否设置了静态 IP 地址
$ ifconfig l4tbr0
l4tbr0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.186.3 netmask 255.255.255.0 broadcast 192.168.186.255
inet6 fe80::1 prefixlen 128 scopeid 0x20<link>
inet6 fe80::ecb6:edff:feac:7dd5 prefixlen 64 scopeid 0x20<link>
ether ee:b6:ed:ac:7d:d5 txqueuelen 1000 (Ethernet)
RX packets 169 bytes 36206 (36.2 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1644 bytes 213306 (213.3 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
启动 ROS 2 Galactic container
在 Jetson 上运行 ROS2 的推荐方法是使用预构建的 Docker 容器镜像
如果这是第一次在 Jetson 上运行容器,则启用具有 Docker 集成的 NVIDIA Container Runtime,以允许从容器访问 GPU。
编辑/etc/docker/daemon.json为以下。
{
"runtimes": {
"nvidia": {
"path": "/usr/bin/nvidia-container-runtime",
"runtimeArgs": []
}
},
"default-runtime": "nvidia"
}
- 使用jetson-containers'脚本来简化docker run命令的调用。
git clone https://github.com/dusty-nv/jetson-containers/
cd jetson-containers
scripts/docker_run.sh -c dustynv/ros:galactic-ros-base-l4t-r32.6.1
- 通过设置 Cyclone DDS 配置来设置默认网络接口。
export CYCLONEDDS_URI='<CycloneDDS><Domain><General><NetworkInterfaceAddress>l4tbr0</NetworkInterfaceAddress></General></Domain></CycloneDDS>'
- 检查以确保出现 Create® 3 主题
ros2 topic list
- 应该看到:
/battery_state
/cmd_audio
/cmd_lightring
/cmd_vel
/dock
/hazard_detection
/imu
/interface_buttons
/ir_intensity
/ir_opcode
/kidnap_status
/mouse
/odom
/parameter_events
/rosout
/slip_status
/stop_status
/tf
/tf_static
/wheel_status
/wheel_ticks
/wheel_vels
- 检查它是否阅读了有关主题的消息
ros2 topic echo odom
- 应该看到输出的连续重复,如下所示。
---
header:
stamp:
sec: 1639388519
nanosec: 209038110
frame_id: odom
child_frame_id: base_link
pose:
pose:
position:
x: -0.04380033165216446
y: -0.005811699666082859
z: 0.0
orientation:
x: 0.0037933308631181717
y: 0.0016814800910651684
z: 0.03521127253770828
w: 0.999371349811554
covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
twist:
twist:
linear:
x: 0.0
y: 4.972387477511303e-07
z: -5.194771269447518e-09
angular:
x: -0.0006566781590969611
y: -0.0019107190640370627
z: 0.0
covariance: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号