ROS 激光雷达节点Python如何编写? 第一步。在终端里进入 catkin 工作空间,创建一个软件包,包名叫做 lidar_pkg。注意依赖项里多了一个 sensor_msgs,是包含了雷达消息格式的软件包。回车,这就创建好了。为了让这个新建的软件包能够进入 ROS 的包列表,还需要对其进行编译。回退上一级目录,catkin_make 编译。好,这就编译完成了。 来到 VSCode,第二步,在 lidar_pkg 里新建一个目录,名字叫 scripts,在目录中新建一个节点文件,名字叫 lidar_node.py。在这个文件里编写代码,第一行是 Shebang,如果是 Ubuntu 18.04 及之前的版本,选择 python 解释器。而这里是 Ubuntu 20.04,所以选择python3的解释器。第二行,指定运行环境的编码为utf-8,让中文字符能正常显示。 接下来,引入大管家 rospy,然后是激光雷达的消息格式。好,开始编写 main主函数。先初始化节点。接着是第三步,让 ROS 大管家 rospy 帮忙订阅话题 /scan,回调函数设为 LidarCallback。调用 spin() 让节点保持运行别退出,到这里主函数的任务就完成了,我们来看看回调函数。第四步,构建回调函数LidarCallback,需要放在 main 主函数的前面。参数是接收到的激光雷达消息包 msg。这个 msg 的 ranges 数组里存储了 360 个测距值,哪一个是机器人前方的测距值呢。 前面我们分析了消息包的参数,ranges 数组的排列顺序是从起始角度到终止角度,每旋转一度得到一个测距值。所以ranges数组的下标和测距方向应该是这样的对应关系。机器人正前方正好位于数组顺序的正中间,对应下标为 180 的测距值。#python #ROS #激光雷达 #机器人 #机器人工匠阿杰
00:00 / 01:55
连播
清屏
智能
倍速
点赞22
00:00 / 06:30
连播
清屏
智能
倍速
点赞12
00:00 / 01:25
连播
清屏
智能
倍速
点赞1437
C++节点使用自定义消息类型-编译订阅者节点 这是实验14完成的 atr_pkg,打开订阅者节点 ma_node.cpp 。同样,先把新消息类型的头文件引入进来,include qq_msgs 的 Carry.h 。主函数里的订阅话题操作没有指定消息类型,所以不用修改。来到接收消息包的回调函数,将参数里的消息类型修改成 qq_msgs 的 Carry。然后按照消息包的结构,对消息包内容进行逐个显示。先是 grade 段位信息,然后是 star 星星数,star是整型,需要转换成字符串显示。最后是发言内容,也是 data,这个不用变。好,节点代码部分就修改完成了, Ctrl + S 保存。下面开始修改编译规则,打开 CMakeLists 文件,找到 find_package,添加 qq_msgs 。然后来到文件末尾,在订阅者者节点 ma_node 的编译规则里,添加一句 add_dependencies ,为节点的编译添加依赖项,节点名为 ma_node ,依赖项是 qq_msgs_generate_messages_cpp。Ctrl + S 保存。 最后再打开 package.xml ,将 qq_msgs 添加到 build_depend 和 exec_depend 中去。 Ctrl + S 保存。订阅者的修改工作也完成了,还需要重新编译,让修改内容生效。 打开终端,进入catkin 工作空间,执行 caktin_make 编译。没有报错,订阅者节点编译完成。下面我们来运行这两个修改后的节点,看看效果。#ROS #机器人编程 #节点 #机器人教育 #机器人工匠阿杰
00:00 / 01:12
连播
清屏
智能
倍速
点赞13
00:00 / 03:18
连播
清屏
智能
倍速
点赞31
Alex恆2天前
[自进化知识库】借鉴 Andre Karpathy 理念 家人们!刷到一段关于构建 自进化个人知识库 的视频,思路太清奇了——直接把编译器逻辑搬过来,用 LLM 打造一个会“成长”的记忆系统!🔥 划重点🔍: 1️⃣ 核心理念:像编译器一样处理知识 作者借鉴了 Andre Karpathy 的思想,把知识管理流程模拟成编译器: 原始信息输入:你的笔记、代码片段、编程对话 LLM 处理加工:提取关键决策、技术要点、关联逻辑 知识查询输出:按需召回,辅助决策 让知识不再是死文档,而是一个 可编译、可执行 的活系统✨ 2️⃣ 专为 Claude Code 设计,留存编程经验 这套系统不是用来管理外部资料的,而是专门针对 Claude Code 开发过程。 每次编程对话、每次调试决策、每次架构选择,都会被自动转化成 可长期留存的内部经验记忆。 下次遇到类似问题,AI 直接翻“历史经验本”,不用再从头推理⚡️ 3️⃣ Obsidian 做可视化大脑 用 Obsidian 作为前端界面,你能清晰地看到: 代码库中的决策逻辑 技术要点之间的关联 这些知识点如何随时间 相互关联、演化成长 知识不再是孤岛,而是一张活的网络🕸️ 4️⃣ 省去向量数据库,用脚本+索引搞定 传统 RAG 要搭向量数据库,麻烦又烧钱。这套方法 完全绕过: 自动化脚本处理信息提取 索引文件管理召回路径 显著提升编程智能体的 回答准确率 和 响应速度 轻量、高效、易维护,个人开发者也能轻松上手💡 5️⃣ 效果:AI 回答更准、更快 当你向 Claude Code 提问时,它会先查这个自进化的知识库——里面有你自己积累的经验、踩过的坑、做过的决策。答案不再是通用模型输出,而是 长在你项目血肉里的专属建议🎯 💎 总结: 这套系统的本质,是让 AI 拥有 长期记忆 和 经验积累能力。你用 AI 越久,它就越懂你的代码风格、项目逻辑、技术偏好。这才是真正的“越用越聪明”。 你试过用 Obsidian 管理 AI 知识吗?评论区聊聊你的方案~ ⬇️ #AI知识库 #ClaudeCode #Obsidian #效率工具 #RAG
00:00 / 08:14
连播
清屏
智能
倍速
点赞18
00:00 / 01:32
连播
清屏
智能
倍速
点赞6
00:00 / 02:57
连播
清屏
智能
倍速
点赞14
00:00 / 02:22
连播
清屏
智能
倍速
点赞2819
00:00 / 01:21
连播
清屏
智能
倍速
点赞38
00:00 / 02:20
连播
清屏
智能
倍速
点赞14
00:00 / 01:48
连播
清屏
智能
倍速
点赞2
00:00 / 06:16
连播
清屏
智能
倍速
点赞31
00:00 / 01:14
连播
清屏
智能
倍速
点赞NaN
00:00 / 00:18
连播
清屏
智能
倍速
点赞136