
ROS
文章平均质量分 70
红星星
记录个人学习经历!如有冒犯请与我联系!
展开
-
ROS2——创建ROS2工作空间
ROS2中的工作空间类似我们常说的概念——“工程”,是我们在ROS中开发具体项目的空间,所有功能包的源码、配置、编译都在该空间下完成。 我们可能会同时开发多个项目,就会产生多个工作空间,所以工作空间之间也有一个层次的问题,类似于优先级的概念,比如不同工作空间中有同名的功能包,那运行的时候是启动哪一个呢?ROS默认是启动最上层的工作空间( overlay),上层工作空间中的功能包会覆盖(override)下层工作空间(underlay)中的同名功能包。所以有多个工作空间存在的时候,我们还需要注意设置工作空.原创 2021-12-16 13:25:22 · 5287 阅读 · 0 评论 -
ROS2——使用ros2 bag录制/回放数据
有的时候我们希望在别人已有的数据集上做开发,或者复现之前已经构建好的场景数据,这时候就可以用ROS2中的ros2 bag工具啦。 ros2 bag是一个命令行工具,可以实现对ROS2系统中话题数据的录制和回放,选定的数据会被打包放到一个数据库文件中,未来使用该工具即可按照时间轴回放所有话题数据。 在使用rosbag前,需要确认是否安装好了:sudo apt-get install ros-<distro>-ros2bag ros-<distro>-rosbag2*..原创 2021-12-16 13:24:15 · 10686 阅读 · 0 评论 -
ROS2—创建一个launch文件
到现在为止,每次启动一个ROS2中的节点,我们都需要开启一个新的终端运行ros2 run指令,如果机器人系统中的节点很多,这样岂不是很麻烦。 ROS2针对这个问题,专门设计了launch启动文件,可以通过一个类似脚本的文件,一起启动多个节点并允许在文件中对节点进行配置。 接下来我们就看看如何才能创建并使用一个launch文件。 1.配置首先创建一个launch文件夹,作为后续放置launch文件的目录:mkdir launch 接下来就可以创建launch文件啦: Lin...原创 2021-12-10 14:19:03 · 1735 阅读 · 0 评论 -
ROS2—rqt_console工具的使用
在终端中运行ROS2节点时,节点的日志信息会在终端中显示出来,但是这种方式呈现的日志比较凌乱,所以ROS2提供了一个专门用于管理日志信息的可视化工具——rqt_console。今天我们就来看看这个工具是如何使用的。1.启动首先打开一个新的终端,使用如下指令即可启动rqt_console: ros2 run rqt_console rqt_console 在打开的窗口中,我们可以看到三个子窗口。最上边一个窗口会显示所有ROS2系统中的日志,是内容最多的,如果我们想做筛选,可以在中间..原创 2021-12-10 14:16:47 · 387 阅读 · 0 评论 -
Invalid <param> tag: Cannot load command parameter [robot_description]:...
<arg name="urdf_file" default="$(find xacro)/xacro.py '$(find turtlebot_description)/robots/$(arg base)_$(arg stacks)_$(arg 3d_sensor).urdf.xacro'" />直接把 .py 换成 -i, <arg name="urdf_file" default="$(find xacro)/xacro -i '$(find turtlebot_des...原创 2021-12-09 16:47:43 · 622 阅读 · 0 评论 -
ROS2—理解动作
action也并不是一个全新的机制,而是由底层的三个话题和服务组成:一个任务目标(Goal,服务),一个执行结果(Result,服务),周期数据反馈(Feedback,话题)。 action是可抢占式的,由于需要执行一段时间,比如执行过程中你不想跑了,那可以随时发送取消指令,动作终止,如果执行过程中发送一个新的action目标,则会直接中断上一个目标开始执行最新的任务目标。 总体上来讲,action是一个客户端/服务器的通信模型,客户端发送一个任务目标,服务器端根据收到的目标执行并周期反馈状态,执行..原创 2021-12-09 15:57:02 · 283 阅读 · 0 评论 -
ROS2—理解参数
参数也是ROS2中很重要的一个概念,主要作用是对节点功能的配置,在ROS2中,每个节点都有自己的参数,这些参数可以用整型数、浮点数、布尔型数、字符串和列表来描述。 依然是以小海龟仿真器为例,看看里边有哪些参数。 1.启动小海龟仿真器熟悉的两行命令:ros2 run turtlesim turtlesim_noderos2 run turtlesim turtle_teleop_key2.查看系统中的参数列表来看看当前运行的系统中,有哪些参数:ros2 param lis..原创 2021-12-09 15:54:57 · 583 阅读 · 0 评论 -
ROS1-安装
安装1.配置系统软件源为保证配置无误建议打开Ubuntu软件中心的软件源配置界面检查各选项是否与图相同。2.添加ROS软件源$ sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'其他镜像源:官网镜像源.3.添加秘钥$ sudo apt-key adv --keyserver原创 2021-12-07 22:41:04 · 1253 阅读 · 0 评论 -
ROS2—服务(Service)
服务是基于客户端/服务器模型的通信机制,服务器端只在接收到客户端请求时才会提供反馈数据。 接下来还是以海龟仿真为例,看看里边有哪些服务的应用呢? 1.启动海龟仿真器还是用这两个命令来启动海龟仿真器:ros2 run turtlesim turtlesim_noderos2 run turtlesim turtle_teleop_key2.查看服务列表在小海龟背后,有哪些服务呢?可以使用“ros2 service list”命令来查看一下: 在列表中可...原创 2021-12-07 22:27:15 · 1048 阅读 · 0 评论 -
ROS2—理解话题(Topic)
大道至简,ROS2将复杂的机器人系统拆解成许多模块节点,而这些节点之间则是通过一个至关重要的通道完成数据交换的,这个通道就是“话题”。一个节点可以通过多个话题向外发布数据,也可以同时订阅多个其他节点发布的话题,相当于话题是一个多对多的订阅/发布模型。 可见,话题是节点之间实现数据传输的重要途径,也是机器人各个子系统之间交换数据的重要方式。 1.启动小海龟仿真器还是先来启动小海龟仿真器吧,相信你已经很熟练了:ros2 run turtlesim turtlesim_node..原创 2021-12-06 11:00:46 · 4279 阅读 · 0 评论 -
ROS2—理解节点(Node)
计算图是一个由各种ROS2元素组成的网络,共同完成数据的传输,其中每一个完成具体功能的模块称之为“节点”(Node),例如控制车轮速度、获取雷达数据等,节点之间通过话题(Topic)、服务(Service)、动作(Actions)或者参数(Parameter)实现数据的收发。 一个完整的机器人系统就是由多个节点组成的,每个节点各司其职,完成自己的工作。在ROS2中,每一个可执行程序(C++、Python)可以包含1个或者多个节点,这是与ROS1中不同的。 接下来还是在小海龟例程中继续熟悉下...原创 2021-12-05 08:45:53 · 1802 阅读 · 0 评论 -
ROS2—小海龟仿真器基础使用
小海龟(Turtlesim)是ROS2中一个非常重要的入门级例程,通过海龟仿真,我们可以了解到很多ROS2的底层原理,涉及节点、话题、服务等核心概念。 1.安装海龟仿真器Linux:sudo apt updatesudo apt install ros-foxy-turtlesimWindows:默认已经安装好 如果你不确定是否安装成功,可以使用该命令检查:ros2 pkg executables turtlesim 看到如下内容说明安装成功:...原创 2021-12-04 16:17:29 · 4237 阅读 · 0 评论 -
ROS2 环境配置
workspace是ROS2中的工作空间,也是我们开发机器人代码的位置。 ROS2安装的系统目录称之为“underlay”,我们自己创建的工作空间称之为“overlay”,在一台电脑上往往有多个工作空间。我们可以通过source不同空间的环境变量脚本来更换所使用的workspace,包括ROS2的版本。1.设置环境变量Linux:source /opt/ros/foxy/setup.bashWindows:call C:\dev\ros2\local_setup.bat..原创 2021-12-03 14:55:14 · 1709 阅读 · 0 评论 -
ROS2安装
系统要求我们支持 Ubuntu Linux Focal Fossa (20.04) 64 位 x86 和 64 位 ARM。添加 ROS 2 apt 存储库您需要将 ROS 2 apt 存储库添加到您的系统中。为此,首先使用 apt 授权我们的 GPG 密钥,如下所示:sudo apt update && sudo apt install curl gnupg2 lsb-releasesudo curl -sSL https://raw.githubuser.原创 2021-12-01 17:03:58 · 1325 阅读 · 0 评论 -
ROS常见问题
在安装ROS的过程中ERROR: cannot down下错误ERROR: cannot download default sources list from:https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.listWebsitemaybedown原创 2021-11-28 17:39:00 · 212 阅读 · 0 评论