< >
Home » create3入门教程 » create® 3入门教程-将Create3连接到NVIDIA Jetson

create® 3入门教程-将Create3连接到NVIDIA Jetson

说明:

  • 介绍如何将Create3连接到NVIDIA Jetson

相关设备

更改“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]



    

纠错,疑问,交流: 请进入讨论区点击加入Q群

获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号


标签: none