摘要: ROS 2 的基石 —— 深度解析构建系统 Colcon 与依赖管理 Rosdep 前言:为什么要重造轮子? 在 ROS 1 时代,开发者们对 catkin_make 既爱又恨。它不仅对 Python 支持不够友好,而且在处理非 CMake 项目时显得力不从心。随着 ROS 2 的到来,为了适应更加 阅读全文
posted @ 2025-12-23 23:30 Liehu404 阅读(17) 评论(0) 推荐(0)
摘要: 深入 ROS 2 Humble:核心功能包与工具链详解 在 ROS 2 的开发世界里,仅仅知道工具的名字是不够的。作为开发者,我们需要理解这些工具背后的功能包(Packages)构成,以及它们是如何支撑起机器人系统的。 本文将剥开 ROS 2 Humble 的外壳,从构建、调试、仿真到算法,详细解析 阅读全文
posted @ 2025-12-11 21:03 Liehu404 阅读(33) 评论(0) 推荐(0)
摘要: 在工科的学习中,仅仅通过记忆和重复的零散方法是无法构建一个完整的知识体系的,在笔者看来,一边学一边理解,感性的构建知识点之间的联系与系统的整体架构是相当重要的 所以本文会提供一些笔者的视角,提供感性的理解,用于关联整个机器人的构建模式 ROS2 是如何构建机器人的? 我们对于机器人的简单定义应该是: 阅读全文
posted @ 2025-12-10 18:25 Liehu404 阅读(4) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2025-12-03 15:51 Liehu404 阅读(1) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2025-12-02 20:38 Liehu404 阅读(6) 评论(0) 推荐(1)
摘要: 导言 在我们的机器人控制中,如果在机器人启动之后还需要修改类似于速度、路径之类的数据,我们不可能每次都重新向节点发送一个完整的新的请求,这样的工作量太大了 因此,我们可以使用参数通信方式,实现更轻松地调整一些节点的参数 这里值得注意的是,笔者不认为参数同另外三种通信方式同级,而是作为一种附加型的通信 阅读全文
posted @ 2025-12-01 11:40 Liehu404 阅读(14) 评论(0) 推荐(0)
摘要: 导言 我们在前面已经学习了两种非常强力的通讯方式:Topic,Service,但我们发现这两个通讯方式想要在一个完整的动作过程中给出反馈是比较困难的——事实上前面所说的阻塞线程的问题也是可以解决的,但是要保持恰好的频率进行反馈信息的发送,这也就意味着难度比较大 另一方面,代码写起来也非常难受,因为要 阅读全文
posted @ 2025-11-24 18:05 Liehu404 阅读(15) 评论(0) 推荐(0)
摘要: 导言 我们都知道在计算机网络中,会分出服务端和客户端,当然在我们的 ROS2 网络中也有这样的分离机制,只不过这里的客户端和服务端的内容会和纯粹计算机网络的内容有所差异,我们边学边体会 为什么有服务 在我们的 Topic 通讯模式中,我们很容易发现 Topic 只是建立了单向边,这也就导致如果我们需 阅读全文
posted @ 2025-11-21 14:11 Liehu404 阅读(30) 评论(0) 推荐(0)
摘要: Topic模型 话题(Topic)是一种基于发布-订阅模型构建的 ROS2 中的通讯机制 通常由发布者(Publisher)和订阅者(Subscriber)组成,两者之间传输一个 Topic,在这里是单向的 当然,也可以让两个节点同时成为发布者和订阅者,这样就能构建一个双向边 在我们的 Topic 阅读全文
posted @ 2025-11-19 13:25 Liehu404 阅读(33) 评论(0) 推荐(0)
摘要: 我们已经知道,在ROS2中,节点是相当重要的,所以这里我们将讲解一个简单的节点是如何构建的 节点的构建 首先简单介绍一下RCLCPP和RCLPY: 这两个作为头文件或者库文件在我们的功能包中往往是相当常见的,分别应用于C++和Python编写的节点,作为客户端库。在其中,会提供相应的通讯接口和相应模 阅读全文
posted @ 2025-11-19 10:09 Liehu404 阅读(19) 评论(0) 推荐(0)