- 博客(16)
- 收藏
- 关注
原创 ROS2 学习笔记8 导航进阶
include/motion_control_system 下新建 .hpp等于 0 的虚函数是纯虚函数,只能被继承,本身无法实例化public:新建功能包include/nav2_custom_planner 下新建 .hpp// 消息接口#include "nav2_core/global_planner.hpp" // 基类#include "nav2_util/lifecycle_node.hpp" // rclcpp 的一个自类。
2025-07-24 11:15:18
320
原创 ROS2 学习笔记7 导航
在 navigation2 功能包下新建 config 文件夹,并将示例文件 cp 进去。先启动 gazebo 再启动 navigation2。查找 robot_radius 值改为 0.12。安装 slam-toolbox。将上一节的源码粘贴到本节并启动。新建 launch.py 文件。要设置小车的初始位置。
2025-07-22 10:25:59
164
原创 ROS2学习笔记6 URDF
由于赵虚左没有更新后续内容,从这章开始将转入小鱼的教程视频docsGIthub 仓库URDF语法和ROS相同功能包不需要任何依赖表明使用的证书是Apache 2.0urdf 如下可以使用将 urdf 坐标关系用 PDF 查看安装包公布包下新建 launch 目录,编写 python launch 文件配置 Cmake全 Cmake编译完整 launch 文件Cmake 修改6.2.3 xacro 简化 urdf新建 .xacro 文件安装软件包使用 xacro 可以将 xa
2025-07-16 08:50:05
880
原创 ROS2 学习笔记4--launch
launch 在使用 python 时要引用很多头文件,非常不方便,所以建议先配置代码片段新建 launch 文件夹下有 py yaml xml 三个文件夹在Cmake里配置最终效果</这有助于确保在构建功能包后 ros2 launch 命令可用。它还确保可以识别不同格式的 launch 文件。最终效果</</</</</</</</</</</</</
2025-04-28 20:46:29
692
原创 ROS2学习笔记3 ROS2通信机制补充
分布式通信是指可以通过网络在不同主机之间实现数据交互的一种通信策略。ROS2 本身是一个分布式通信框架,可以很方便的实现不同设备之间的通信,ROS2 所基于的中间件是 DDS,当处于同一网络中时,通过 DDS 的域 ID 机制(ROS_DOMAIN_ID)可以实现分布式通信,大致流程是:在启动节点之前,可以设置域 ID 的值,不同节点如果域 ID 相同,那么可以自由发现并通信,反之,如果域 ID 值不同,则不能实现。
2025-04-26 17:50:15
528
原创 ROS2 学习笔记2 通信机制核心
准备工作:创建接口文件功能包接口功能包只能用 C++创建功能包时可以在依赖中加入 base_interfaces_demo该命名空间下,定时器可以直接传入所需的时间间隔()作用: 创建一个周期为1秒的定时器,触发on_timer回调。参数解析:参数1: 1s 表示时间间隔(需要using namespace std::chrono_literals;)。参数2: std::bind(&Talker::on_timer, this) 将成员函数on_timer绑定到当前对象(this)。初
2025-04-20 21:40:47
784
原创 ROS2学习笔记 1 ROS2概述与环境搭建
不管是何种类型的功能包,package.xml 的格式都是类似的,在该文件中包含了包名、版本、作者、依赖项的信息,package.xml 可以为 colcon 构建工具确定功能包的编译顺序。之前的代码中一直使用的是直接实例化的方式,事实上这种方式在进行多节点通信的时候效率不高,推荐使用通过构建类继承 Node 进行实例化的办法。PS:可以调用 apt search ros-ROS2 版本代号-* | grep -i 关键字格式的命令,根据关键字查找所需的功能包。
2025-04-05 19:51:53
1222
原创 ROS学习笔记6(仿真机器人导航)
2.1订阅的Topic用于雷达、底盘与里程计之间的坐标变换消息。SLAM所需的雷达信息。2.2发布的Topic地图元数据,包括地图的宽度、高度、分辨率等,该消息会固定更新。地图栅格数据,一般会在rviz中以图形化的方式显示。机器人姿态分布熵估计(值越大,不确定性越大)。2.3服务用于获取地图数据。2.4参数机器人基坐标系。地图坐标系。里程计坐标系。地图更新频率,根据指定的值设计更新间隔。激光探测的最大可用范围(超出此阈值,被截断)。激光探测的最大范围。
2025-01-14 20:39:46
715
原创 ROS学习笔记4(仿真:urdf+xacro)
6.机器人系统仿真6.1 URDF-RVIZ6.1.1 URDF集成RVIZ基本流程依赖只需要导入urdf和xacro然后建立目录如下目录介绍:urdf: 存储 urdf 文件的目录meshes:机器人模型渲染文件(暂不使用)config: 配置文件launch: 存储 launch 启动文件.urdf文件编写如下<robot name="mycar"> <link name="base_link"> <visual>
2025-01-07 15:35:43
687
原创 ROS学习笔记2
文件位置如下头文件放在include目录下包含include的路径public:void run();#endifROS_INFO("函数执行");return 0;至于这个namespace为什么这么写,要等c++学完补充(挖坑Cmake配置这里include放开正常配置需要编写文件如图头文件编写和上面一样源文件和执行文件编写上更像将文件进行了拆分ROS_INFO("函数执行");return 0;
2024-12-23 11:02:47
745
原创 vscode用c++编写ROS时突然无法补全头文件
本人由于代码无法补全参考了该文章(该文章修改还是很好用的)然后出现了ROS相关头文件无法自动补全的情况。可以尝试将settings.json注释掉。
2024-12-22 16:38:03
243
原创 ROS学习笔记
然后会发现除了src,还多了build和devel两个目录。进入目录中的src目录(不要把两个src目录弄混)按住Ctrl+t,创建一个工作空间。打开CMakeLists.txt文件。再新开一个窗口2(Ctrl+T)src目录中会出现两个包体。
2024-11-07 15:38:29
841
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅