- 博客(14)
- 资源 (34)
- 收藏
- 关注
原创 ROS2 launch文件的高阶应用:substitutions
ROS中的launch包中包含一个叫做substitutions的子包,它提供了launch文件中一些高级应用的功能,通过使用actions子包中的IncludeLaunchDescription并配合使用substitutions子包中的PathJoinSubstitution等接口,可以实现在launch文件中启动另外一个launch文件,更进一步还可以实现向launch文件传递参数的功能。
2025-04-11 10:33:43
593
原创 ROS2 launch文件的高阶应用:LaunchConfiguration和DeclareLaunchArgument
LaunchConfiguration和DeclareLaunchArgument属于launch文件的高阶应用,它们需要配合使用,可以实现开发者自行定义参数通过ROS的launch命令向launch文件传递数据。这使得不需要改动launch文件就可以实现对launch文件的相关变量进行赋值,提高了launch文件的灵活性。
2025-04-05 09:26:33
724
原创 ROS2 launch文件的高阶应用:ExecuteProcess
ExecuteProcess是ROS为launch文件提供的一个非常有用的工具,在前面已经说明过launch_ros.action.node.Node是继承自ExecuteProcess,它其实是launch其他工具基础,很多launch工具与Node一样,都是继承自ExecuteProcess,而且ExecuteProcess是更加底层的一个launch工具接口,它可以实现更加灵活的功能,不再简单限定于节点启动,目前的资料较少提及ExecuteProcess,关于它的使用方式就更加少,下面对其进行介绍。
2025-03-29 16:06:45
552
原创 ROS2 launch文件的结构解析与执行机制
目前关于ROS的luanch文件使用的文档和资源中,只是介绍了launch文件中最基本的节点启动功能,没有讲清楚launch文件的结构要求以及执行机制。如果只是将launch文件的功能限定在节点启动,那么launch文件实际作用将大打折扣,而要充分发挥luanch文件的实际作用,就先要理解launch文件的结构和执行机制。
2025-03-25 14:49:22
935
原创 ROS2 launch文件使用Node进行节点启动时,需要设置的参数的来历
很多人认为使用ROS在launch文件中使用launch_ros.action.node.Node启动节点只有附加namespace、name、arguments、parameters以及remapping等设置项供节点启动时使用。在这里,第一要说明的是在ROS中使用launch文件启动节点,不只有使用launch_ros.action.node.Node这一种方式,这个问题在国内讲解ROS使用的相关资料都未有提及,这个问题留在下一次再详细说明。
2025-03-16 17:00:32
1006
原创 ROS2 launch文件中remappings设置项的使用
(1) 在remapping设置项的使用中,只要将节点代码中原来的topic(service,action)名称,和新指定的topic(service,action)名称放在一个括号中(实际上是Python的tuple数据类型),需要修改多个topic(service,action)名称就需要多个tuple,就可以完成设置;(2) 通过remapping新指定的topic名,在launch文件运行后,会自动加上namespace。
2025-03-09 15:34:05
923
原创 ROS2 topic订阅机制及误区释疑
很多人在学ROS时,都认为ROS不允许topic重名,但实际上ROS没有限制topic不可以重名,topic重名的条件下,节点仍然可以运行,并不会报错,而且可以正常接收数据,只不过数据能不能正常进行处理,就看subscription是怎么定义功能的了。总结起来ROS进行topic订阅需要符合以下条件:(1) publish和subscription能不能配合形成topic数据通道,是靠topic的名称来进行联系的,只要topic名称一致,二者就能配合成topic;
2025-03-08 15:37:54
1089
原创 通过话题(Topic)通信的例程说明ROS2客户端库(ROS Client Library)的结构与使用
ROS中可以供用户使用的API有ROS自带的RCL,也有第三方独立开发的库(Library),RCL只是可以供用户使用的一个包而已,还有其他的包,这个可以从ROS的packagelist中可以看到。ROS是开源的,相关代码都可以直接打开查看,ROS的官方文档对这些API并不详细,要想真正搞明白,还是要直接查看源码,这是最靠谱的方式。
2025-02-20 15:12:35
886
原创 Tensorflow模型训练过程数据集的使用
Tensorflow模型训练过程需要使用训练集和测试集,这里涉及比较细节的方式,其中ndarry类型和Dataset类型是最常用的两种类型,很多开发者没有完成理解清楚这两种在引用和使用过程需要注意的细节,造成运行过程出现错误,本文对这一问题通过实例进行解释和说明。
2025-02-13 15:30:14
1065
原创 ROS2中节点编译与功能实现的说明
ROS节点的编译过程主要涉及ubuntu系统和ROS2中特定的编译工具,对编译过程的理解主要涉及对linux系统的理解和对ROS2软件架构的理解;ROS2节点功能的实现,则主要涉及C++(Python)语法的理解与运用,以及ROS2提供出来的客户端接口。
2025-02-11 17:19:49
802
原创 Python数据结果采用不同的可视化形式的区别
在python中进行图片显示主要有3种方式,采用opencv进行显示、采用matplotlib.pyplot显示、采用PIL进行显示。在相关计算中,得出计算结果后,根据数值进行可视化的过程中,分别使用这三种方式进行显示的过程中,根据数值进行颜色对应显示的方式处理是不一样的。下面通过代码例子来说明这三种方式进行数值可视化中的不同。
2024-12-07 16:54:26
308
原创 Python中np.vstack和np.hstack的应用解释
对于np.vstack和np.hstack各自有两种用法• 第1种:np.vstack((a,b))或np.hstack((a,b)),即常规用法,也就是两个维数相等的ndarray在对应的方向上进行合并• 第2种:np.vstack(a)或np.hstack(a),对一个ndarray在其内部对应的方向上进行合并,这种属于非常规用法。
2024-11-24 15:42:31
1091
1
原创 泛函分析中的数学空间概念图谱
泛函分析是现代数学的支柱之一,最优化理论、信号处理、模式识别、人工智能等领域中的核心理论和算法都是根源于泛函分析。泛函分析实际上是在经典的数学分析基础上,对现实世界的一个基本概念:距离做了进一步的推广之后,而衍生出一系列理论方法。在泛函分析的学习中最关键的就是关于空间的描述,也是让初学者感觉到十分头疼的一个概念。笔者也是自学泛函分析,在自学的过程中也碰了很多壁。经过对不同参考资料进行研读与对比,对泛函分析中的空间概念画出了基于自己理解的图谱,供大家参考。......
2022-06-09 11:21:30
935
NI9213数据采集卡技术文档
2012-04-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人