6、TurtleBot 4的脚本、配置和工具
TurtleBot4的脚本、配置和工具设置
turtlebot4_setup
存储库包含用于设置和配置TurtleBot 4的脚本、配置和工具。
安装TB4镜像脚本
有几个安装脚本用于设置TurtleBot 4映像。
Script Usage 描述 turtlebot4_setup.sh bash turtlebot4_setup.sh -m [model]
这个脚本应该在一个干净的Ubuntu 22.04服务器镜像上使用。它设置安装ROS 2 Humble以及TurtleBot 4的其他依赖项。 humble.sh bash humble.sh
安装ros-humble-ros-base 以及其他有用的包. 它是从turtlebot4_setup.sh.中调用的。 bluetooth.sh bash bluetooth.sh
安装蓝牙软件包 sd_flash.sh sudo sd_flash.sh /path/to/image
将RPi图像闪烁到microSD卡。它是在电脑上使用的。 create_update.sh create_update.sh /path/to/firmware.swu
向Create®3发送固件文件以进行更新。 NoteTurtleBot 4附带了一个已经设置好的RPi4映像,因此大多数用户不需要这些脚本。
TB4配置工具
Setup Tool设置工具
在Humble,TurtleBot 4有一个新的命令行设置工具,可以简化配置过程。该工具可以在TurtleBot 4上运行,调用方法是:
turtlebot4-setup
或者
ros2 run turtlebot4_setup turtlebot4_setup
迎接您的将是一个包含多个子菜单的菜单。从这里,您可以在菜单之间导航并配置您的机器人。
Usage用法
您可以使用 up
和 down
箭头键或键盘上 j
和 k
.在菜单之间上下导航。要选择菜单,请按 Enter
键。要返回或退出菜单,可以按q
, Esc
, or CTRL+C
。某些菜单只能使用 CTRL+C
键退出。
指示变量及其值的菜单项将提示您输入。输入您的输入,然后按 Enter
键设置值。您可以在没有任何输入的情况下按 Enter
键将值设置为空字符串。也可以按 CTRL+C
键返回而不更改值。一些输入提示,如ROS_DOMAIN_ID
,可能会检查您的输入是否有效。
输入所有更改后,需要选择 Save
将设置应用于配置文件。也可以选择 Apply Defaults
将此菜单的所有值恢复为默认值。
保存所有所需更改后,您可以通过在“TurtleBot4设置”主菜单中选择 View Settings
来查看配置文件。如果您对更改感到满意,请选择 Apply Settings
。这将打开一个新菜单,显示所有已保存的更改,并提示您进行确认。如果确认,设置工具将根据更改的设置运行各种命令。
对 ROS_DOMAIN_ID
, ROBOT_NAMESPACE
, RMW_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.xml | Discovery 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 Variable | Description | Default |
---|---|---|
CYCLONEDDS_URI | CycloneDDS配置的路径 | /etc/turtlebot4/cyclonedds_rpi.xml |
FASTRTPS_DEFAULT_PROFILES_FILE | FastDDS配置的路径 | /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和端口。
Setting | Description | Default |
---|---|---|
Enabled | 是否使用发现服务器 | False |
IP | 发现服务器IP | 127.0.0.1 |
Port | 发现服务器端口 | 11811 |
启用发现服务器还会将 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 Option | Description | Bash equivalent |
---|---|---|
Restart | Restart the robot_upstart job. | sudo systemctl restart turtlebot4.service |
Start | Start the robot_upstart job if it is not running. | sudo systemctl start turtlebot4.service |
Stop | Stop the robot_upstart job if it is running. | sudo systemctl stop turtlebot4.service |
Install | Install or reinstall the robot_upstart job with current ROS settings. | install.py [model] |
Uninstall | Uninstall the robot_upstart job. The service will no longer run on boot. | uninstall.py |
Wi-Fi Setup
Wi-Fi设置菜单允许用户轻松地将TurtleBot 4连接到他们的Wi-Fi网络,以及配置连接。
Menu Option | Description | Default |
---|---|---|
Wi-Fi Mode | 将RPi4设置为用作Wi-Fi接入点或客户端 | Access Point |
SSID | Wi-Fi网络的SSID。在接入点模式下,这是将要广播的网络的名称。 | Turtlebot4 |
Password | Wi-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
选择“应用设置”将提示用户确认是否要应用这些设置。它还将列出将要应用的所有更改。确认后,设置工具将根据更改的设置运行各种命令。
如果更改了影响Create®3的设置,这些更改将通过USB-C发送到基座,然后Create®3将重新启动以应用设置。对Wi-Fi网络的更改将导致该工具运行sudo netplan apply && sudo reboot
重新启动,导致RPi4在重新启动之前更新其网络设置。这将导致任何SSH会话挂起。
一旦应用了设置,就可以退出设置工具。如果对环境变量进行了更改,则需要运行 turtlebot4-source
or source $ROBOT_SETUP
将其应用于当前终端。更改将自动应用于任何新端子。
About
“关于”菜单显示系统信息,并具有更改TurtleBot 4型号和主机名的菜单选项。
不建议将模型更改为与物理机器人模型不匹配。