4、发现服务器

网络配置方式二:发现服务器

A29D2C53-5636-487F-B66A-D594F65656E5.png

机器人网络配置

  • Create® 3

    Create®3需要更新到最新固件,并禁用其Wi-Fi。

    设置说明:

  • 使用Web服务器更新到 latest firmware

  • 更新后,执行 factory reset以断开Create®3与任何Wi-Fi网络的连接。

    Raspberry Pi树莓派

    树莓派需要将自己配置为发现服务器,并使用新配置重新安装TurtleBot 4 upstart job。

    设置说明:

  • SSH 进入 Raspberry Pi树莓派

  • 运行TurtleBot 4 setup tool:

  • turtlebot4-setup


    • 通过 ROS Setup设置进入Discovery Server菜单。

    • 启用发现服务器。

    • 保留IP地址为 127.0.0.1,端口为 11811

    • 保存设置,导航到主菜单,然后应用设置。

    • 退出设置工具

    • 在您的终端中,输入 turtlebot4-source以应用新设置。

    •  turtlebot4-daemon-restart or ros2 daemon stop; ros2 daemon start以重新启动 ROS 2 daemon

    • 当Create®3铃声响起时,调用 ros2 topic list查看主题

    F9EE0368-AD5A-4835-A90A-9AD969D5DD2C.png


用户电脑配置(发现服务器)

由于Create®3与用户PC不在同一网络上,因此必须通过Raspberry Pi向Create®3添加IP路由。该路由必须始终处于上行状态,以保持PC和Create®3之间的连接。此外,系统中的每个设备都必须使用 rmw_fastrtps_cpp作为它们的DDS,并且必须定义 ROS_DISCOVERY_SERVER环境变量来通知FastDDS服务器的IP和端口。

  • turtlebot4_setup repo中存在一个用于配置用户PC的方便脚本。

    要下载并运行脚本,请调用::

    wget -qO - https://raw.githubusercontent.com/turtlebot/turtlebot4_setup/humble/turtlebot4_discovery/configure_discovery.sh | bash <(cat) </dev/tty

    系统将提示您进行一些设置:

    输入这些值后,脚本将执行以下操作:

    脚本运行后,调用:

    source ~/.bashrc

    以应用新设置.

    检查IP路由是否已通过调用应用:

    ip route

    你应该看到这样的条目:

    192.168.186.0/24 via 10.0.0.121 dev wlp0s20f3

    其中 10.0.0.121是您的Raspberry Pi IP, wlp0s20f3是您的Wi-Fi接口。

    • 检查脚本上一次调用的IP路由是否已存在。如果是,请删除路线。

    • 创建一个名为 /etc/turtlebot4_discovery/的目录

    • 为给定的Raspberry Pi IP地址安装IP路由服务。

    • 将FastDDS超级客户端配置 profile安装到 /etc/turtlebot4_discovery/

    • 使用所需的配置将setup.bash文件安装到 /etc/turtlebot4_discovery/

    • 将行源 source /etc/turtlebot4_discovery/setup.bash添加到 ~/.bashrc文件中。

    • 启用并启动IP路由服务。

    • 树莓派Wi-Fi IP地址

    • Discovery Server IP地址(默认为Raspberry Pi IP)

    • Discovery Server端口(默认为11811)

    • 机器人的 ROS_DOMAIN_ID(默认为0)

    8325EA85-8340-436C-9FC5-8A2282BD5D2D.png

    • 然后,运行:

      ros2 daemon stop; ros2 daemon start

      以重新启动 ROS 2 daemon.

      您现在应该可以看到Raspberry Pi和Create®3主题:

      ros2 topic list

    7F078F40-EC3F-48F9-9036-F0111006BFF0.png