1、设置编码

sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8

2、hosts文件中添加域名解析

vim /etc/hosts

    199.232.96.133 raw.githubusercontent.com

    199.232.96.133 raw.github.com

3、设置软件源

sudo apt update && sudo apt install curl gnupg2 lsb-release

curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

sudo sh -c 'echo "deb [arch=$(dpkg --print-architecture)] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" > /etc/apt/sources.list.d/ros2-latest.list'

4、安装ros2安装包

sudo apt update
sudo apt install ros-humble-desktop

注意:

此处以Ubuntu22.04下安装ROS2 Humble为例,如使用Ubuntu 20.04,请将“humble”改为“foxy。

或者安装基础版

sudo apt install ros-humble-ros-base
apt-get update

5、然后我们还需要安装编译工具colcon

sudo apt install python3-colcon-common-extensions

6、设置环境变量

source /opt/ros/humble/setup.bash
echo " source /opt/ros/humble/setup.bash" >> ~/.bashrc 

7、安装自动补全工具

sudo apt install python3-argcomplete

8、验证

为了验证ROS2安装成功,我们可以通过以下示例进行测试。

命令行操作

先来试试ROS2最为重要的底层通信系统DDS是否正常吧。

启动第一个终端,通过以下命令启动一个数据的发布者节点:

跑几个例程测试一下: 先运行一个talker:

source /opt/ros/humble/setup.bash
ros2 run demo_nodes_cpp talker

启动第二个终端,通过以下命令启动一个数据的订阅者节点:

source /opt/ros/humble/setup.bash
ros2 run demo_nodes_py listener

如果“Hello World”字符串在两个终端中正常传输,说明通信系统没有问题。

小海龟仿真

再来试一试ROS中的经典示例——小海龟仿真器。

启动两个终端,分别运行如下指令:

ros2 run turtlesim turtlesim_node
ros2 run turtlesim turtle_teleop_key

第一句指令将启动一个蓝色背景的海龟仿真器,第二句指令将启动一个键盘控制节点,在该终端中点击键盘上的“上下左右”按键,就可以控制小海龟运动啦。

关于小海龟中蕴藏的ROS奥义,我们在后续教程中将持续探索。

至此,ROS2安装成功。

问题一:

Failed to connect to raw.githubusercontent.com port 443: Connection refused

解决办法:通过修改hosts解决此问题。

    查询真实IP:

    在https://www.ipaddress.com/

    查询raw.githubusercontent.com和raw.github.com的真实IP。

    修改hosts:

    sudo vim /etc/hosts

    添加如下内容:

    199.232.96.133 raw.githubusercontent.com

    199.232.96.133 raw.github.com

    更多参考:https://blog.csdn.net/xiaxinkai/article/details/112975134

    https://blog.csdn.net/weixin_45367061/article/details/122678266

电脑端环境配置 - OriginBot智能机器人开源套件

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐