重要文档:
https://docs.tianbot.com/competition/f1tenth_online/env-config.html
一键配置:
echo "Upgrade Mission Begins."
echo "-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1mQINBFzvJpYBEADY8l1YvO7iYW5gUESyzsTGnMvVUmlV3XarBaJz9bGRmgPXh7jc
VFrQhE0L/HV7LOfoLI9H2GWYyHBqN5ERBlcA8XxG3ZvX7t9nAZPQT2Xxe3GT3tro
u5oCR+SyHN9xPnUwDuqUSvJ2eqMYb9B/Hph3OmtjG30jSNq9kOF5bBTk1hOTGPH4
K/AY0jzT6OpHfXU6ytlFsI47ZKsnTUhipGsKucQ1CXlyirndZ3V3k70YaooZ55rG
aIoAWlx2H0J7sAHmqS29N9jV9mo135d+d+TdLBXI0PXtiHzE9IPaX+ctdSUrPnp+
TwR99lxglpIG6hLuvOMAaxiqFBB/Jf3XJ8OBakfS6nHrWH2WqQxRbiITl0irkQoz
pwNEF2Bv0+Jvs1UFEdVGz5a8xexQHst/RmKrtHLct3iOCvBNqoAQRbvWvBhPjO/p
V5cYeUljZ5wpHyFkaEViClaVWqa6PIsyLqmyjsruPCWlURLsQoQxABcL8bwxX7UT
hM6CtH6tGlYZ85RIzRifIm2oudzV5l+8oRgFr9yVcwyOFT6JCioqkwldW52P1pk/
/SnuexC6LYqqDuHUs5NnokzzpfS6QaWfTY5P5tz4KHJfsjDIktly3mKVfY0fSPVV
okdGpcUzvz2hq1fqjxB6MlB/1vtk0bImfcsoxBmF7H+4E9ZN1sX/tSb0KQARAQAB
tCZPcGVuIFJvYm90aWNzIDxpbmZvQG9zcmZvdW5kYXRpb24ub3JnPokCVAQTAQgA
PgIbAwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgBYhBMHPbjHmut6IaLFytPQu1vur
F8ZUBQJgsdhRBQkLTMW7AAoJEPQu1vurF8ZUTMwP/3f7EkOPIFjUdRmpNJ2db4iB
RQu5b2SJRG+KIdbvQBzKUBMV6/RUhEDPjhXZI3zDevzBewvAMKkqs2Q1cWo9WV7Z
PyTkvSyey/Tjn+PozcdvzkvrEjDMftIk8E1WzLGq7vnPLZ1q/b6Vq4H373Z+EDWa
DaDwW72CbCBLWAVtqff80CwlI2x8fYHKr3VBUnwcXNHR4+nRABfAWnaU4k+oTshC
Qucsd8vitNfsSXrKuKyz91IRHRPnJjx8UvGU4tRGfrHkw1505EZvgP02vXeRyWBR
fKiL1vGy4tCSRDdZO3ms2J2m08VPv65HsHaWYMnO+rNJmMZj9d9JdL/9GRf5F6U0
quoIFL39BhUEvBynuqlrqistnyOhw8W/IQy/ymNzBMcMz6rcMjMwhkgm/LNXoSD1
1OrJu4ktQwRhwvGVarnB8ihwjsTxZFylaLmFSfaA+OAlOqCLS1OkIVMzjW+Ul6A6
qjiCEUOsnlf4CGlhzNMZOx3low6ixzEqKOcfECpeIj80a2fBDmWkcAAjlHu6VBhA
TUDG9e2xKLzV2Z/DLYsb3+n9QW7KO0yZKfiuUo6AYboAioQKn5jh3iRvjGh2Ujpo
22G+oae3PcCc7G+z12j6xIY709FQuA49dA2YpzMda0/OX4LP56STEveDRrO+CnV6
WE+F5FaIKwb72PL4rLi4
=i0tj
-----END PGP PUBLIC KEY BLOCK-----" >> ~/ros.ascsudo apt-key add ros.asc
sudo rm /etc/apt/sources.list.d/ros2-latest.list
sudo apt update
sudo apt install ros-kinetic-tf2-geometry-msgs ros-kinetic-ackermann-msgs ros-kinetic-joy ros-kinetic-map-server ros-kinetic-message-runtime -y
sudo apt upgrade -y
mkdir -p ~/tianbot_ws/src && cd ~/tianbot_ws/src
git clone https://mirror.ghproxy.com/https://github.com/tianbot/tianracer.git -b dev
sudo apt install ros-kinetic-move-base ros-kinetic-teb-local-planner ros-kinetic-controller-manager ros-kinetic-amcl -y
cd ~/tianbot_ws/ && catkin_make
source ~/tianbot_ws/devel/setup.zsh
roscd tianracer_gazebo/scripts/ && ./env_config.sh
echo "source ~/tianbot_ws/devel/setup.zsh" --extend >> ~/.zshrc
roslaunch tianracer_gazebo demo_tianracer_teb_nav.launch
问题:
1环境不匹配16.04 << 20.04
不推荐,20.04的云镜像没有免费公开。
2卡顿严重,资源不足,还是本地跑合适
卡到怀疑一切客观事物。
这段脚本的详细总结如下:
目标:
该脚本的主要目标是安装ROS Kinetic版本的相关包,配置一个名为tianracer
的机器人项目,并在Gazebo仿真环境中启动这个项目的演示。
步骤总结:
- 更新与升级软件包:
- 使用
sudo apt update
命令更新APT软件包列表,确保获取最新的软件包信息。 - 使用
sudo apt install
命令安装一系列ROS Kinetic版本的包,这些包是机器人项目的基础依赖。 - 使用
sudo apt upgrade
命令升级系统中所有已安装的软件包到最新版本。
- 使用
- 创建ROS工作空间并克隆项目代码:
- 创建
tianbot_ws
工作空间,并导航到其src
目录。 - 使用
git clone
命令从指定的镜像地址克隆tianracer
项目的dev
分支。
- 创建
- 安装额外的ROS包:
- 安装额外的ROS包,这些包提供了机器人的导航、路径规划、控制器管理和定位等功能。
- 编译ROS工作空间:
- 使用
catkin_make
命令编译整个工作空间,确保所有ROS包都能正确构建。
- 使用
- 设置环境变量并配置环境脚本:
- 使用
source
命令将新编译的ROS包添加到当前zsh会话的环境变量中。 - 导航到
tianracer_gazebo
包的scripts
目录,并执行env_config.sh
脚本,进行项目的特定配置。
- 使用
- 持久化环境设置:
- 将环境设置命令添加到
.zshrc
文件,确保每次打开新的zsh会话时,ROS工作空间的环境变量都能被正确设置。
- 将环境设置命令添加到
- 启动仿真:
- 使用
roslaunch
命令启动tianracer_gazebo
包的演示启动文件,启动Gazebo仿真环境并配置机器人的导航功能。
- 使用
总结:
这段脚本通过一系列命令完成了ROS环境的安装、机器人项目的配置以及仿真的启动。它涵盖了从软件包更新到项目启动的完整流程,为开发者提供了一个方便的、可重复的方式来设置和运行tianracer
机器人项目。执行完这段脚本后,开发者应该能够在Gazebo中看到并控制tianracer
机器人的行为,并进行进一步的开发和测试工作。
这段脚本是一个在Ubuntu系统上安装ROS (Robot Operating System) Kinetic版本并配置一个名为tianracer
的机器人项目的过程。我会逐行解释这些命令。
1. 更新软件包列表
bash复制代码
sudo apt update |
---|
这条命令用于更新APT(Ubuntu的包管理工具)的软件包列表。这确保你安装的是最新的软件包版本。
2. 安装ROS包
bash复制代码
sudo apt install ros-kinetic-tf2-geometry-msgs ros-kinetic-ackermann-msgs ros-kinetic-joy ros-kinetic-map-server ros-kinetic-message-runtime -y |
---|
这条命令安装了一系列的ROS Kinetic版本的包,这些包是机器人项目所需的。-y
标志是自动接受所有的提示,无需用户输入。
3. 升级已安装的软件包
bash复制代码
sudo apt upgrade -y |
---|
这条命令用于升级系统中所有已安装的软件包到最新版本。
4. 创建并进入工作空间
bash复制代码
mkdir -p ~/tianbot_ws/src && cd ~/tianbot_ws/src |
---|
这创建了一个名为tianbot_ws
的目录(如果不存在的话),并在其src
子目录中进入。这是ROS工作空间的常见结构。
5. 克隆项目代码
bash复制代码
git clone https://mirror.ghproxy.com/https://github.com/tianbot/tianracer.git -b dev |
---|
这条命令从mirror.ghproxy.com
这个镜像克隆了tianbot/tianracer
项目的dev
分支到当前目录。
6. 安装额外的ROS包
bash复制代码
sudo apt install ros-kinetic-move-base ros-kinetic-teb-local-planner ros-kinetic-controller-manager ros-kinetic-amcl -y |
---|
再次安装了一系列的ROS包,这些包提供了导航、局部路径规划、控制器管理和自适应蒙特卡洛定位等功能。
7. 编译工作空间
bash复制代码
cd ~/tianbot_ws/ && catkin_make |
---|
切换到工作空间的根目录并编译它。catkin_make
是ROS工作空间的编译工具。
8. 设置环境变量
bash复制代码
source ~/tianbot_ws/devel/setup.zsh |
---|
这条命令将新编译的ROS包添加到你的环境变量中,使得你可以在当前的shell会话中使用它们。
9. 配置环境脚本
bash复制代码
roscd tianracer_gazebo/scripts/ && ./env_config.sh |
---|
使用roscd
命令导航到tianracer_gazebo
包的scripts
目录,并执行env_config.sh
脚本。这个脚本可能包含一些项目的特定配置。
10. 将环境设置添加到zshrc文件
bash复制代码
echo "source ~/tianbot_ws/devel/setup.zsh" --extend >> ~/.zshrc |
---|
将环境设置命令添加到.zshrc
文件,这样每次打开新的zsh会话时,它都会自动执行,确保ROS工作空间的环境变量被正确设置。
11. 启动仿真
bash复制代码
roslaunch tianracer_gazebo demo_tianracer_teb_nav.launch |
---|
最后,使用roslaunch
命令启动tianracer_gazebo
包的demo_tianracer_teb_nav.launch
启动文件,这可能会启动一个包含机器人模型的Gazebo仿真环境,并配置导航功能。
总的来说,这段脚本为tianracer
项目配置了ROS环境,并设置了必要的软件包和启动文件。