- 博客(10)
- 资源 (9)
- 收藏
- 关注
原创 ROS2中的安全加密通信——sros2工具和身份验证
ROS2安全通信使用DDS的安全机制,创造enclave安全飞地(直译,也可称为安全域),在安全飞地内,安全飞地内的进程受安全保护,进程相互之间进行安全通信。安全飞地内的进程与安全飞地外的进程通信受限(根据用户安全设置)。具体使用了流程可以参考官网。
2024-09-19 19:46:46
2851
原创 ROS2中的Python语言支持(1)
在ROS 1中,所有客户端库都是“从头开始”开发的。这允许ROS1的Python客户端库纯粹用Python来实现,这会带来诸如不需要编译代码等好处。但是,不同客户端库之间的命名惯例和行为并不总是一致的,必须在多处进行漏洞修复,而且有很多功能只在一个客户端库中实现(例如UDPROS)。ROS2希望解决上述问题,实现不特定于具体编程语言的ROS概念的通用功能,因此使用C语言开发了通用的RCL功能库(rcl),来实现不同开发语言间通用功能的统一。
2024-09-17 08:15:00
1695
原创 ROS2中的服务通信
ROS2的服务通信概念与ROS1基本保持一致,服务通信遵循请求响应机制,和ROS1不同的地方在于,ROS2的服务通信不再是同步模式,而是支持异步通信模式(后半部分会有详细介绍)服务通信的功能示意图对于服务通信,同样需要创建server和clientserver端,通过回调函数handle_service响应client端的请求client端检测server端启动成功后,向server端发送请求。
2024-09-15 07:30:00
795
原创 ROS2中Publisher和Subscriber的创建方法和函数调用
rclcpp::Publisher类继承自PublisherBase类,在rclcpp::Publisher类的构造函数中调用的rclcpp::get_message_type_support_handle()函数内部会调用rosidl_typesupport_cpp::get_message_type_support_handle(),该函数声明是一个函数模板,其实现位于msg消息生成的rosidl_typesupport_cpp/目录中的。
2024-09-14 07:00:00
2322
原创 ROS2中的文件结构
ROS2中同样将其最小构建单元称为功能包package,与ROS1不同的是,ROS2使用colcon作为package的编译工具,ROS2工作空间(本文中为ros2_ws/目录)的文件结构由四个目录组成,分别是build/、install/、src/、log/。这样就会在当前路径下新建test_pkg软件包,如下图,ros2 pkg完成了软件包的初始化,填充好了CMakeLists.txt和package.xml模板,并且将依赖项填进了这两个文件中。其中是包名,
2024-09-13 14:30:39
1453
原创 ROS2中你需要知道的知识点
ROS2回调调度原理在ROS 2中,回调函数的执行管理由执行器(Executor)来处理。执行器使用底层操作系统的一个或多个线程来调用订阅、定时器、服务服务器、动作服务器等的回调,以响应传入的消息和事件。明确的执行器类包括在rclcpp的 executor.hpp ,rclpy的 executors.py 中,或者rclc的 executor.h 中。
2024-09-13 09:02:03
1521
原创 ROS2总体架构
中间层主要由数据分发服务DDS与ROS2封装的关于机器人开发的中间件组成,DDS是一种去中心化的数据通讯方式,它引入了服务质量管理 (Quality of Service)机制,借助该机制可以保证在某些较差网络环境下也可以具备良好的通讯效果,ROS2中间件则主要由客户端库、DDS抽象层(RMW层)与进程内通讯API构成;ROS1和ROS2的系统架构可以划分为三层,分别是应用层,中间层,系统层,其中中间层是ROS和ROS2的主要差别。
2024-09-12 13:48:09
2400
1
原创 什么是ROS2
它的主要组成包括ROS Mastar、 ROS Node等,不同的功能可以由不同的节点实现,节点之间可以通过发布和订阅话题来传递消息,它的本质是基于TCP/IP的Socket通信机制。ROS2继承了部分ROS1的概念,如应用节点、消息通信、服务通信、Action通信等,同时引入很多新的概念,如基于RTPS(Real-Time Publish-Subscribe)协议的DDS,服务质量(Qos)等,这些新引入的特性是ROS2支持更快的通信,更彻底的分布式。通信基于TCP实现,实时性差、系统开销大;
2024-09-12 10:12:46
3717
机器人操作系统简介及国产化替代
2024-09-13
多线程锁的使用规范
2018-02-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅