ROS 2中发布和可视化传感器数据实战系列之四:kitti公开数据集IMU数据的发布及在RViz2中的显示 【作者注】:本文将介绍如何在ROS 2中将kitti公开数据集的IMU数据发布为sensor_msgs/IMU消息(文章附有完整的python源代码)。由于在ROS 2中RViz2默认情况下并不支持对IMU数据的可视化显示,因此需要自己添加专门用于显示sensor_msgs/Imu消息
ROS 2中发布和可视化传感器数据实战系列之三:大疆览沃激光雷达点云数据发布与RViz2中显示彩色点云 【作者注】:本文将在介绍大疆激光雷达点云数据存储格式LVX数据组织结构的基础上,阐述如何将.lvx文件中的激光点云数据转换为ROS 2的sensor_msgs/PointCloud2消息,然后在ROS 2的话题上进行点云数据发布(文章附有完整的python源代码),并在RViz2中可视化。
ROS 2中相机驱动程序v4l2_camera软件包使用介绍 【编者注】本文由深圳季连科技有限公司kenny wang创作,知识产权归深圳季连科技有限公司所有。如需转载,敬请注明原文出处。 在ROS 2中,相机的驱动程序软件包是v4l2_camera,其中V4L2是Video4Linux2的简写。 软件包的安装 可以直接运行以下命令安装该软件包的二进制包: sudo apt-
RViz2可视化传感器数据系列教程之二:在RViz2中显示激光雷达点云数据 【编者注】本文由深圳季连科技有限公司kenny wang创作,知识产权归深圳季连科技有限公司所有。如需转载,敬请注明原文出处。 在RViz2中,可以对激光雷达或者深度相机的三维点云数据进行可视化显示,但前提是必须以话题这种ROS的通信方式对点云数据进行了发布。因此,首先需要通过ROS 2节点发布激光雷达点云数据。 目
RViz2可视化传感器数据系列教程之一:在RViz2中显示相机视频图像数据 【编者注】本文由深圳季连科技有限公司kenny wang创作,知识产权归深圳季连科技有限公司所有。如需转载,敬请注明原文出处。 在RViz2中,可以对相机的视频图像数据进行可视化显示,但前提是必须以话题这种ROS的通信方式对相机视频图像数据进行了发布。因此,首先需要通过ROS 2节点发布相机视频图像数据。 可以使用R
20.重映射名称 话题、参数和服务都是由名称来标识的。在ROS节点中名称是硬编码的,但可以在运行时通过重映射来更改名称。如果没有重映射,则节点的每个实例都需要更改代码。本文描述了ROS 2中重映射名称的要求、原理和机制。 作者:Shane Loretz(肖恩·洛雷兹) 撰写日期:2017-03 最后修改时间:2020-03 20.1 为什么要重映射名称 重映射名称允许在系统
19. 话题和服务名称到DDS的映射 本文介绍了提议的ROS话题和服务名称与DDS话题和服务名称之间的映射。 作者:威廉·伍德尔(William Woodall) 撰写日期:2016-10 最后修改:2018-06 19.1 背景 在提出ROS 2话题和服务名称的限制以及到底层DDS话题的映射提议之前,本文首先会总结ROS 1和DDS的现有名称命名指导方针与限制。 19.1.1 RO
18. 时钟与时间 本文描述了用于支持编程的ROS时间原语(primitives),这些原语既能以实际时间运行,也能以更快或更慢的仿真时间运行。 作者:塔利·富特(Tully Foote) 撰写日期:2018-07 最后修改时间:2018-12 18.1 背景 许多机器人算法在本质上依赖于时间和同步。为此,我们要求在ROS网络中运行的节点具有同步的系统时钟,以便这些节点能够准确地报告各
17. ROS 2中实时系统实现的提议 本文对ROS 2中实时性能要求的测试驱动方法进行了提议。 作者:杰基·凯(Jackie Kay) 撰写日期:2016-01 最后修改:2016-01 17.1 实时系统的要求与实现 17.1.1 系统要求 实时系统的要求因用例不同而异。作为其核心,一个系统的实时要求具有以下两个组成部分: ● 延迟(Latency) ○ 更新周期
16. 实时系统简介 本文简要介绍了实时计算的要求和实现实时性能的方法。 作者:杰基·凯(Jackie Kay) 撰写日期:2016-01 最后修改:2016-05 本文旨在概述实时计算的各项要求和实现实时性能的各种挑战。本文还列出了构建强制执行实时兼容性的ROS 2的可选策略。 机器人系统需要进行响应。在关键任务应用程序中,系统中不到一毫秒的延迟可能会导致灾难性的故障。为满足机器人社
15. ROS 2中的Unicode支持 本文描述了ROS 2将会如何支持使用Unicode标准发送多字节字符数据。本文还描述了如何将此类数据发送到ROS 1桥接上。 作者:克里斯·拉兰塞特(Chris Lalancette) 撰写日期:2019-05 最后修改:2020-07 15.1 背景 一些用户希望发送以某些用ASCII 字符无法表示的语言表示的文本数据。目前ROS 1只支持字
14. ROS中的参数API设计 【编者注】:由于ROS 2设计文章系列中的“基于ZeroMQ和Friends之上的ROS(ROS on ZeroMQ and Friends)”和“ROS中的RPC API设计(RPC API design in ROS)”两篇文章已经过时,且由于ROS 2最终决定构建于DDS和RTPS之上,而不是ZeroMQ和RPC之上,因此不再翻译学习那两篇文章,若对这两篇
13. ROS 2安全飞地 本文规定了安全飞地的集成。 作者:鲁芬·怀特(Ruffin White)、米凯尔·阿格达斯(Mikael Arguedas) 撰写日期:2020-05 最后修改:2020-07 本设计文档会对ROS 2与安全飞地的集成进行形式化描述。总之,所有安全进程都必须使用包含独有运行时安全工件的飞地,但每个进程不一定都有一个唯一的飞地。可以将多个飞地封装在单个安全策略中
12. ROS 2访问控制策略 本文对用于保护ROS子系统安全的访问控制策略格式进行了设计。 作者:拉芬·怀特(Ruffin White)、凯尔·法扎里(Kyle Fazzari) 撰写日期:2019-08 最后修改时间:2021-06 SROS 2引入了几个安全性能,包括加密、身份验证和授权。授权是通过组合前两个性能及访问控制模型来获得的。此类访问控制模型通常称为访问控制策略。访问控制
11. ROS 2与DDS-Security的集成 机器人技术充满了各种实验:评估不同的硬件和软件,推进可行的技术,剔除不可行的技术。ROS设计非常灵活以开展这些实验;以允许现有组件轻松与新组件组合或切换为其他组件。在ROS 1中,这种灵活性高于一切,但却以牺牲安全性为代价。ROS 2由于是在DDS之上设计的,既能保留这种灵活性,同时也能通过合理利用DDS-Security规范获得安全能力。本文
6.9 URDF XML规程要点总结 ● 统一机器人描述格式URDF是一种表示机器人模型的XML文件。 ● URDF文件中根元素必须是<robot>元素,所有其它元素都必须封装在<robot>元素之内。 ● <robot>元素的一级子元素主要有<link>、<joint>、<gazebo>等,其中<gazebo&g
10.7 model_state 元素model_state用于描述某个特定时间模型的状态。 *注:此项目正在进展中,尚未实际使用。特定关节组的机器人配置表示还可以使用srdf来指定。 10.7.1 <model_state>元素 <model_state> 元素用于描述对应 URDF 模型的基本状态。 下面是模型状态<model_state>元素的一
10.4 transmission 元素transmission用于描述将执行器连接到关节并表示它们之间机械耦合的传动装置。 <transmission>元素是URDF机器人描述模型的扩展,用于描述执行器和关节之间的关系。该元素使得用户可以对齿轮比(gear ratios)和平行链接等概念进行建模。<transmission>元素会对作用力(effort)/流量(flo
10.3 joint 元素joint用于描述关节的运动学和动力学属性。 10.3.1 <joint>元素 <joint>元素用于描述关节的运动学和动力学属性,此外还可以指定关节的安全限制(safety limits)。 下面是一个<joint>元素的示例: <joint name="my_joint" type="floating">
10. URDF XML规程 10.1 robot 元素robot用于描述机器人的所有属性。 10.1.1 <robot>元素 在一个机器人的描述文件中,根元素必须是<robot>元素,所有其它元素都必须封装在<robot>元素之内。 10.1.2 子元素 <robot>主要有以下子元素: <link>元素:用于定义具有其自
9. 理解PR2机器人的URDF描述 描述:本教程将会说明PR2等复杂机器人的顶层URDF Xacro文件布局。 教程级别:中级 注:本教程仍会参考pr2_defs中的描述,该描述目前已被替换为pr2_description中的描述。尽管相似,但这个URDF与PR2使用的当前URDF之间已经发生了一些变化。具体来说,Gazebo不再需要<robot>元素中指定的XML模式,而
如何将包含Xacro的URDF文件转换成SDF文件 如果您正在使用ROS和Gazebo,就会经常碰到URDF和SDF两种格式的机器人模型文件。 统一机器人描述格式URDF是ROS中建模机器人的标准格式,是ROS支持的原生格式。而仿真描述格式SDF是Gazebo中支持的机器人建模的原生格式。虽然两者均采用XML语言,在一定程度上具有一定的相似性,但并不兼容。而且,URDF可以采用Xacro定
ROS 2中如何将URDF加载到Gazebo 在本教程中,将学习在ROS 2中如何将URDF加载到Gazebo中。统一机器人描述格式URDF是ROS中机器人建模的标准格式。如果想了解更多有关URDF文件的相关信息,请查看本知乎专栏中上一教程的相应内容。 目录 一、前提条件 二、创建URDF文件 三、创建启动文件 四、编译构建软件包 五、启动该启动文件 一、前提条件
ROS 2中如何将URDF加载到RViz 在本教程中,将学习在ROS 2中如何将URDF加载到RViz中。统一机器人描述格式URDF是ROS中机器人建模的标准格式。 目录 一、前提条件 二、创建一个ROS 2软件包 三、创建其它目录 四、创建URDF文件 五、添加依赖项 六、创建启动文件 七、添加RViz配置文件 八、编译构建软件包 九、在RViz中启动机器人
如何在ROS 2中使用URDF创建仿真移动机器人(二) 八、添加依赖项 现在来添加一些我们项目要依赖的软件包。使用以下命令进入到 package.xml 文件中: cd ~/dev_ws/src/basic_mobile_robot gedit package.xml 在<buildtool_depend>标签之后添加以下几行: <exec_depen
如何在ROS 2中使用URDF创建仿真移动机器人(一) 在本教程中,将学习如何使用用于机器人建模的标准 ROS 格式—统一机器人描述格式(URDF)创建仿真的移动机器人。本教程是原文作者 ROS 2导航堆栈(也称为 Nav2)终极指南中的第一个教程。您将创建的仿真机器人看起来应该如下图所示: 机器人专家喜欢在实际建造机器人之前先对其进行仿真以测试不同的算法。您可以想象到物理机器
4. 使用Xacro整理URDF文件 目标:学习使用Xacro减少URDF文件中代码量的一些技巧 教程级别:入门 到目前为止,如果您在家里将前几个教程中的所有这些步骤应用到您自己的机器人设计上,则您可能已经厌倦了进行各种数学运算来获得可以正确解析的非常简单的机器人描述。幸运的是,您可以使用xacro软件包以使您的机器人设计工作更加简单。该软件包可以做下列三件非常有用的事情: ● 常量 ●
3. 向URDF模型添加物理和碰撞属性 目标:学习如何向链接添加碰撞和惯性属性,以及如何向关节添加关节动力学属性。 教程级别:入门 在本教程中,将会学习如何向URDF模型添加一些基本的物理属性以及如何指定其碰撞属性。 3.1 碰撞 到目前为止,我们只使用了一个“视觉(visual)”子元素来规定各个链接,该子元素只定义了机器人的视觉外观(并不奇怪)。然而,为了让碰撞检测正常工作或对机器人
2. 用URDF构建移动机器人模型 目标:学习如何在URDF中定义可移动的关节 教程级别:入门 在本教程中,将会修改在上一教程中制作的R2D2机器人模型,以使其具有可移动的关节。在之前的模型中,所有的关节都是固定的。现在将会探讨其它三种重要的关节类型:连续(continuous)关节、转动(revolute)关节和棱柱(prismatic)关节。 在继续本教程之前,请确保已安装好所有前提条
1. 从零开始用URDF构建视觉机器人模型 目标:学习如何构建可以在Rviz中查看的机器人视觉模型 教程级别:入门 说明:本教程假设您知道如何编写格式良好的XML代码 在本教程中将会构建一个看起来像R2D2的机器人视觉模型。在后续教程中,您将学习如何表达模型、添加一些物理属性以及使用xacro生成更简洁的代码,但现在将专注于获得正确的视觉几何。 在继续之前,请确保安装了joint_sta
积分
粉丝
勋章
第三方账号登入
看不清?点击更换
第三方账号登入
QQ 微博 微信