参考资料:(我是开了加速器,毕竟中间使用了github访问网址,国内免费加速器Steam++,开个github网站加速即可,不开我不知道行不行可以自己一试)
ubuntu22.04安装ROS2 详细教程-****博客
ROS 安装详细教程 —— Ubuntu22.0.4 LTS 安装-****博客
我的虚拟机刚开始设置的是简体中文,此前已经通过初始时的软件更新更新过一次;
在配置完虚拟机后:
第一步先将字符集设置好如下代码:
sudo apt update
sudo apt install locales
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
下图为相应显示反应:
继续输入代码:## 通过检查此命令的输出,确保已启用Ubuntu Universe存储库。
apt-cache policy | grep universe
对应反应大致如下图即可:
下图为参考资料的相关说明:
因为我执行完代码并没有出现什么不一样的问题所以上图7,8中代码我是没有使用的,如果在这里使用后具体有什么bug请自行处理,处理完后在留言说明具体办法方便为后来者提供解决办法。
继续下一步操作:
sudo apt update && sudo apt install curl gnupg lsb-release
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(source /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
参考资料说明:
ps:关键点:害我删了两次虚拟机重新搞;
这里我的错误是如下:
curl: (7) Failed to connect to raw.githubusercontent.com port 443 after 65 ms:
连接被拒绝
解决方法:
法1.可以按照上上图中所指的网页https://www.guyuehome.com/37844,需要加速器加个速比较好上,再按照里面的步骤走,但是不好操作里面还涉及了一些终端文本编辑的操作,具体还要去自己查询处理;
法2:
使用如下代码:
sudo gedit /etc/hosts
使用后会打开一个文本编辑器,在内部增加一行即可:
185.199.108.133 raw.githubusercontent.com
如下图:
保存后关闭即可;
再重复使用一次如下命令:
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(source /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
使用后我是没有反应证明连接成功如下图:
继续执行如下代码:
sudo apt update
sudo apt upgrade
sudo apt install ros-humble-desktop
反应如下:
反正一大串的下完就完了;
等待下载完成继续执行如下操作:
source /opt/ros/humble/setup.bash
echo " source /opt/ros/humble/setup.bash" >> ~/.bashrc
设置完环境变量下面就是测试环节了:
注意需要再打开一个终端,具体操作就是不关第一个终端,回到虚拟机屏幕页面右键点击终端即可,如下 图:
接下来在一个终端输入:
ros2 run demo_nodes_cpp talker
在另外一个终端输入:
ros2 run demo_nodes_py listener
两个终端反应如下:
输入ctrl+z即可停止运行;
第二个测试:
一个终端输入:
ros2 run turtlesim turtlesim_node
另一个终端输入:
ros2 run turtlesim turtle_teleop_key
反应如下:
输入第二个代码的终端有说明根据键盘控制海龟的运行,同时使用键盘右半盘的上下左右箭头运动海龟运动也行;
至此完成调试;
写这篇文章是因为发现网上这个22.04版本ROS安装教程很少,而且查得到的安装的时候都出现了bug,为了大家的方便,在安装好ROS后第一时间将安装坑点与教程重新编写了一次,希望大家不要在这里浪费太多时间,把饭喂到大家嘴边。中间还有一些代码我没运行的可能运行了也会有些bug存在,希望如果有bug后来者可以及时补充,减少时间的浪费。