ROS2安装以及小海龟画圆

一、ROS2

(一)什么是ROS2?

ROS2(Robot Operating System 2)是一个用于机器人和自动化系统开发的开源软件平台。从名字可以看出,它是 ROS 的下一代版本,目标是利用 ROS1 的优点,改进不足之处,提供一个更加稳定、可靠和可扩展的平台,满足越来越复杂和多样化的机器人应用场景。

相较于 ROS,ROS2 具有以下特点:

  • 更好的可移植性。ROS2 可以在不同的操作系统和处理器架构上运行,例如 Linux、Windows、macOS 等操作系统,amd64、arm64 等处理器,以满足不同用户的需求。
  • 更加稳定和可靠。ROS2 在设计时考虑了一些 ROS 中存在的问题,例如通信的可靠性、多线程支持等,以提供更加稳定和可靠的运行环境。
  • 更加灵活的通信机制。ROS2 引入了 DDS(Data Distribution Service)作为通信机制,它支持更多的消息传输模式,例如点对点、多播、组播等,以满足不同的应用场景。
  • 更好的安全性。ROS2 提供了更加完善的安全机制,例如支持加密通信、用户身份验证等,以保护机器人系统的安全。
  • 更加开放和可扩展。ROS2 的设计更加开放,可以方便地添加新的功能和扩展,例如支持其他语言、提供更多的驱动程序等。

此外,为了支持机器人系统的开发和测试,ROS2 还提供了丰富的功能和工具,例如消息传输、参数服务器、时间同步、调试工具等。

(二)ROS2的安装

我是在VMware虚拟机中在Ubuntu22.04上安装的ROS2,版本为Humble。

1.前期准备
(1)查看语言环境

运行代码检查语言环境是否支持UTF-8(2)检查镜像网站以及软件更新

(3)设置软件源
输入指令:

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

1
2
下载完成后,解决DNS问题:
①访问 https://www.ipaddress.com/ ,点击Go to Homepage,并输入域名 raw.githubusercontent.com,查询其 ip 地址
可得到以下几个地址:

185.199.108.133|185.199.109.133|185.199.110.133|185.199.111.133

1
2
任意选择一个使用。
②修改/etc/hosts文件:sudo gedit /etc/hosts

解决了DNS,而后执行指令:

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

2.安装ROS2
(1)更新apt存储库缓存,并升级软件包
(2)安装ROS2-humble桌面版
(3)配置环境

使所有shell都能使用

二、小海龟

(一)Turtlesim的运行

1.启动小海龟仿真器

使用ctrl+alt+t打开一个终端,执行以下命令

ros2 run turtlesim turtlesim_node
2.启动海龟控制节点

再次使用ctrl+alt+t打开一个新的终端,执行以下命令

ros2 run turtlesim turtle_teleop_key

在第二个终端中使用方向键控制小海龟

(二)使用命令控制小海龟画圆

1.打开小海龟
2.执行指令

打开新的终端,执行以下指令:

ros2 topic pub -r 10 /turtle1/cmd_vel  geometry_msgs/Twist "linear:
  x: 2.0
  y: 0.0
  z: 0.0
angular:
  x: 0.0
  y: 0.0
  z: 2.0" 

三、总结

ROS2-humble因为是才出来的版本,尽量去直接阅读ROS2的手册进行操作。

四、引用Ubuntu22.04——ROS2安装以及小海龟画圆

  • 31
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
小海龟ROS中的一个模拟机器人,我们可以使用ROS中的机器人操作系统(Robot Operating System)来实现对小海龟的手势控制。首先,我们需要使用ROS中的图像处理工具来识别手势。我们可以使用OpenCV库来实现手势识别,通过摄像头捕获图像,并使用计算机视觉技术来检测手势。 一旦我们能够识别出手势,就可以在ROS中编写控制算法,将识别到的手势映射成小海龟机器人的运动命令。通过编写ROS节点来实时接收并处理图像数据,并将手势信息转换成小海龟机器人的运动指令,我们可以实现手势对小海龟的实时控制。 在ROS中,我们可以使用机器人操作系统提供的可视化工具(如RViz)来实时查看小海龟机器人的运动轨迹和姿态,以便调试和验证手势控制算法的效果。 除了手势识别和控制算法的实现外,还需要将图像处理、控制算法以及小海龟机器人的通信和协调整合在一起。这意味着我们需要在ROS中编写多个节点和话题来实现图像数据的传输、手势识别数据的处理和小海龟机器人的运动控制。 通过以上步骤,我们就可以在ROS中实现手势控制小海龟,使得它能够根据我们的手势指令实时移动和转向。这一过程需要充分发挥ROS的分布式系统的特点,合理设计和组织各个节点和话题的通信,以及调试和优化手势识别和控制算法,从而实现对小海龟机器人的精准和实时的手势控制。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值