6、TurtleBot 4的脚本、配置和工具

TurtleBot4的脚本、配置和工具设置

 turtlebot4_setup存储库包含用于设置和配置TurtleBot 4的脚本、配置和工具。

安装TB4镜像脚本

  • 有几个安装脚本用于设置TurtleBot 4映像。

    ScriptUsage描述
    turtlebot4_setup.shbash turtlebot4_setup.sh -m [model]这个脚本应该在一个干净的Ubuntu 22.04服务器镜像上使用。它设置安装ROS 2 Humble以及TurtleBot 4的其他依赖项。
    humble.shbash humble.sh安装ros-humble-ros-base 以及其他有用的包. 它是从turtlebot4_setup.sh.中调用的。
    bluetooth.shbash bluetooth.sh安装蓝牙软件包
    sd_flash.shsudo sd_flash.sh /path/to/image将RPi图像闪烁到microSD卡。它是在电脑上使用的。
    create_update.shcreate_update.sh /path/to/firmware.swu向Create®3发送固件文件以进行更新。
     Note

    TurtleBot 4附带了一个已经设置好的RPi4映像,因此大多数用户不需要这些脚本。

TB4配置工具

Setup Tool设置工具

在Humble,TurtleBot 4有一个新的命令行设置工具,可以简化配置过程。该工具可以在TurtleBot 4上运行,调用方法是:

turtlebot4-setup

或者

ros2 run turtlebot4_setup turtlebot4_setup

迎接您的将是一个包含多个子菜单的菜单。从这里,您可以在菜单之间导航并配置您的机器人。


Usage用法

您可以使用 up 和 down箭头键或键盘上 j 和 k.在菜单之间上下导航。要选择菜单,请按 Enter键。要返回或退出菜单,可以按qEsc, or CTRL+C。某些菜单只能使用 CTRL+C键退出。

指示变量及其值的菜单项将提示您输入。输入您的输入,然后按 Enter键设置值。您可以在没有任何输入的情况下按 Enter键将值设置为空字符串。也可以按 CTRL+C键返回而不更改值。一些输入提示,如ROS_DOMAIN_ID,可能会检查您的输入是否有效。

输入所有更改后,需要选择 Save将设置应用于配置文件。也可以选择 Apply Defaults将此菜单的所有值恢复为默认值。

保存所有所需更改后,您可以通过在“TurtleBot4设置”主菜单中选择 View Settings 来查看配置文件。如果您对更改感到满意,请选择 Apply Settings。这将打开一个新菜单,显示所有已保存的更改,并提示您进行确认。如果确认,设置工具将根据更改的设置运行各种命令。

 Note

 ROS_DOMAIN_IDROBOT_NAMESPACERMW_IMPLEMENTATION or ROS_DISCOVERY_SERVER环境变量的更改也将应用于Create®3,导致其重新启动。对Wi-Fi设置所做的更改将导致SSH会话挂起,并导致RPi4重新启动。


ROS 设置

ROS设置菜单用于配置ROS环境。ROS和系统配置文件位于RPi4上的 /etc/turtlebot4/文件夹中。

File描述
aliases.bash包含有用的bash别名
cyclonedds_rpi.xml默认CycloneDDS配置
fastdds_discovery_super_client.xmlDiscovery Server FastDDS配置
fastdds_rpi.xml默认FastDDS配置
setup.bash导出环境变量以配置ROS 2的Bash文件。该文件来源于.bashrc,因此该环境应用于所有终端
system带有系统信息的文本文件,如版本号和TurtleBot 4型号

目前有3个ROS设置子菜单:Bash设置、Discovery服务器和Robot Upstart。


Bash Setup

Bash设置菜单允许用户更改 /etc/turtlebot4/setup.bash文件。此文件设置影响ROS 2的环境变量。

Environment VariableDescriptionDefault
CYCLONEDDS_URICycloneDDS配置的路径/etc/turtlebot4/cyclonedds_rpi.xml
FASTRTPS_DEFAULT_PROFILES_FILEFastDDS配置的路径/etc/turtlebot4/fastdds_rpi.xml
ROBOT_NAMESPACE设置robots命名空间
ROS_DOMAIN_ID设置robots域ID。默认值为0。0
ROS_DISCOVERY_SERVER设置发现服务器的IP和端口。127.0.0.1:11811
RMW_IMPLEMENTATION设置RMW实现(RMW_fastrtps_cpp,RMW_cyclonedds_cpp)rmw_fastrtps_cpp
TURTLEBOT4_DIAGNOSTICS启用或禁用TurtleBot 4诊断1
WORKSPACE_SETUP工作区setup.bash文件的路径/opt/ros/humble/setup.bash


Discovery Server

“发现服务器”菜单允许用户启用或禁用发现服务器,以及设置服务器的IP和端口。

SettingDescriptionDefault
Enabled是否使用发现服务器False
IP发现服务器IP127.0.0.1
Port发现服务器端口11811
 Note

启用发现服务器还会将 RMW_IMPLEMENTATION设置为 rmw_fastrtps_cpp。此外,FASTRTPS_DEFAULT_PROFILES_FILE将设置为/etc/turtlebot4/fastdds_discovery_super_client.xml

发现服务器设置应用于/etc/turtlebot4/setup.bash中的 DISCOVERY_SERVER环境变量。


Robot Upstart

robot upstart菜单具有菜单选项,用于与运行TurtleBot 4节点作为后台服务的 robot_upstart作业交互。

Menu OptionDescriptionBash equivalent
RestartRestart the robot_upstart job.sudo systemctl restart turtlebot4.service
StartStart the robot_upstart job if it is not running.sudo systemctl start turtlebot4.service
StopStop the robot_upstart job if it is running.sudo systemctl stop turtlebot4.service
InstallInstall or reinstall the robot_upstart job with current ROS settings.install.py [model]
UninstallUninstall the robot_upstart job. The service will no longer run on boot.uninstall.py


Wi-Fi Setup

Wi-Fi设置菜单允许用户轻松地将TurtleBot 4连接到他们的Wi-Fi网络,以及配置连接。

Menu OptionDescriptionDefault
Wi-Fi Mode将RPi4设置为用作Wi-Fi接入点或客户端Access Point
SSIDWi-Fi网络的SSID。在接入点模式下,这是将要广播的网络的名称。Turtlebot4
PasswordWi-Fi网络的密码。这个可以留空。Turtlebot4
Band使用哪个Wi-Fi频段。如果不确定,则设置为“任意”。5GHz
IP Address设置“wlan0”接口的静态IP地址。
DHCP是否使用DHCP动态设置IP地址。True


Bluetooth Setup

此菜单选项启动 bluetoothctl,允许您配对并连接到蓝牙设备。有关详细信息,请参阅TurtleBot 4 Controller Setup


View Settings

“视图设置”菜单列出了TurtleBot 4配置文件,并允许您通过导航到每个文件来预览它们。

您在其他菜单中保存的更改将反映在此处。


Apply Settings

选择“应用设置”将提示用户确认是否要应用这些设置。它还将列出将要应用的所有更改。确认后,设置工具将根据更改的设置运行各种命令。

 Note

如果更改了影响Create®3的设置,这些更改将通过USB-C发送到基座,然后Create®3将重新启动以应用设置。对Wi-Fi网络的更改将导致该工具运行sudo netplan apply && sudo reboot重新启动,导致RPi4在重新启动之前更新其网络设置。这将导致任何SSH会话挂起。

一旦应用了设置,就可以退出设置工具。如果对环境变量进行了更改,则需要运行 turtlebot4-source or source $ROBOT_SETUP将其应用于当前终端。更改将自动应用于任何新端子。


About

“关于”菜单显示系统信息,并具有更改TurtleBot 4型号和主机名的菜单选项。

 Warning

不建议将模型更改为与物理机器人模型不匹配。