- 博客(116)
- 资源 (4)
- 收藏
- 关注
原创 MSPM0G3507 IIC
这种设计能让一个驱动支持多个实例:每个实例一份 object + 一份 hwAttrs。/ SysConfig,用于把“逻辑名”映射成数组下标。这一段把硬件资源“起别名”,供后面的。
2026-01-17 19:22:20
200
原创 MSPM0G3507 ADC
根据外部 ADC 模拟输入引脚总表配置ADC, PA22是ADC0_7, PA17是ADC1_2。对 一个 ADC 通道做一次单次采样。对 ADC 通道做 10 次采样。
2026-01-17 19:17:58
287
原创 MSPM0 环境搭建
用任务与队列实现一个“1 秒闪烁一次 LED”的简单应用。程序创建一个长度为 1 的队列和两个任务:发送任务每秒向队列发送一个固定值,接收任务从队列读取值并在值匹配时短暂点亮(翻转)LED。
2025-12-21 17:02:32
653
原创 运动控制(Motion Control) -- 轴(Axis)
mcLREAL axis_pos_cmd_, axis_vel_cmd_, axis_acc_cmd_, axis_torque_cmd_:当前下发命令(最终输出给 Servo)。mcLREAL axis_pos_, axis_vel_, axis_acc_, axis_jerk_:当前测量位置/速度/加速度/跃度(用户单位或编码器单位,取决实现)。AxisParamInfo* param_table_、param_table_num_:轴参数表(可用于对象字典或PDO映射)。
2025-12-08 17:28:37
746
原创 ROS2[Humble] -- URDF Tutorial- 08-macroed.urdf.xacro
Xacro (XML Macros) 是 ROS 中对 URDF 文件的扩展语法。它的主要作用是让复杂的 URDF 结构 可复用、可参数化、易维护。简单理解:URDF = 纯 XML 模型定义Xacro = 带“编程能力”的 URDF.xacro.urdf当你运行:它会被“展开”为标准的 .urdf 文件。
2025-10-26 09:13:02
694
原创 ROS2[Humble] -- URDF Tutorial- 07-physics.urdf
对比06-flexible.urdf07-physics.urdf 是在 06-flexible.urdf 的基础上增加了物理仿真所需的信息,包括:碰撞模型(Collision)惯性属性(Inertial)质量参数(Mass)这些是 MuJoCo / Gazebo / PyBullet 等物理引擎运行仿真所必需的字段,使机器人模型从纯视觉展示模型升级为可参与动力学仿真的物理模型。
2025-10-26 09:01:10
450
原创 ROS2[Humble] -- URDF Tutorial- 06-flexible.urdf
两者的 link 结构几乎相同(未新增或删除 link),但 joint 定义变化很大:说明:05-visual.urdf 的所有关节都是 fixed,即完全静态的展示模型。06-flexible.urdf 将关键部件(轮子、夹爪、头部)改成可运动结构。新文件添加了 joint limit 与 axis 元素,使每个关节拥有:力矩限制 (effort)运动范围 (lower / upper)速度限制 (velocity)为 prismatic 和 revolute joints 设置合理的机械运动参数,使仿
2025-10-24 15:25:37
1128
原创 ROS2[Humble] -- URDF Tutorial
URDF(Unified Robot Description Format,统一机器人描述格式)是一种基于 XML 的文件格式,用来描述机器人模型的结构和属性。
2025-10-23 13:30:02
1382
原创 ROS2[Humble] -- URDF Tutorial- 05-visual
文件解析(结构概览)顶层定义机器人名称为 visual。定义了 3 种颜色:这些可以在 中引用,以给几何体上色。所有关节类型都是 fixed,即没有运动自由度,仅用于连接结构。例如:表示右腿固定在基座下方偏右的位置。gripper_pole 从基座延伸出来;左右手指(left_gripper, right_gripper)固定在杆上;每个手指都有指尖(left_tip, right_tip);使用 .dae 模型加载网格。球形头部位于基座上方,通过 head_swivel 固定;头上再固定
2025-10-23 13:24:32
949
原创 ROS2[Humble] -- URDF Tutorial- 04-materials
使用方式全局定义 + 引用(推荐)在 顶层定义一次,在各个 link 里引用。好处:可复用统一管理颜色风格修改一个地方,全局生效如果你只想某个 link 独立颜色,可以在内部写完整定义:rgba参数说明参数含义范围R红色 (Red)0.0 ~ 1.0G绿色 (Green)0.0 ~ 1.0B蓝色 (Blue)0.0 ~ 1.0A透明度 (Alpha)0.0 ~ 1.0 (1 = 不透明)可选:纹理(近Gazebo)支持如果你在 Ga
2025-10-21 17:31:13
368
原创 ROS2[Humble] -- URDF Tutorial- 03-origins
第三个教程主要来讲诉origins</</</</</</</</
2025-10-21 13:55:37
509
原创 ROS2[Humble] -- URDF Tutorial- 02-multipleshapes
该URDF(Unified Robot Description Format)文件定义了一个名为multipleshapes的简单机器人模型,包含两个连杆(base_link和right_leg)和一个固定关节(base_to_right_leg)。
2025-10-21 13:30:03
304
原创 ROS2[Humble] -- URDF Tutorial- 01-myfist
link标签定义一个机器人部件,这里是base_link,通常指机器人的基座部分。
2025-10-21 11:05:04
360
原创 e2studio middleware添加模块
在开发过程中需要添加新的middleware如下图所示,middleware 下有两个模块,一个模块是segger_rtt,另一个是atk_esp8266。
2025-10-20 21:08:44
169
原创 libboost_system-mt-x64.so.1.76.0 和libboost_system-mt-d-x64.so.1.76.0 区别
对比项编译模式Release(发布版)Debug(调试版)是否包含调试符号否是性能优化过,速度更快较慢,用于调试库大小通常较小通常较大运行时依赖使用优化的 STL / 无断言检查含断言与调试检查用途实际运行或部署开发调试时使用。
2025-10-10 09:30:28
252
原创 ESP32-S3 ESP-MODBUS device parameter 解析
MB_PARAM_INPUT:输入寄存器(Input Register)。MB_PARAM_HOLDING:保持寄存器(Holding Register)。MB_PARAM_COIL:线圈寄存器(Coil Register)。MB_PARAM_DISCRETE:离散输入寄存器(Discrete Input Register)。>>1TEST_INPUT_REG_START 是一个宏,用于计算 field 在 Modbus Input Register 地址空间中的起始地址。
2025-10-03 19:23:51
783
原创 CANopen(CanFestival) LSS(Layer Setting Services)
CANopen LSS(Layer Setting Services)是 CANopen 协议中的一组专用服务,用于在设备出厂或初次接入网络时,远程配置设备的 NodeID(节点号)和波特率(baudrate)。它主要解决设备初始没有分配 NodeID、波特率未知或需要批量自动分配的问题。
2025-09-05 14:06:04
545
原创 CANopen - DCF(Device Configuration File) 介绍
代表(设备配置文件)。它是一种描述设备功能、参数和配置的文件,通常采用格式(XDF: Extended Device File)。DCF 文件对于在 CANopen 网络中集成和配置设备至关重要,因为它定义了设备的操作方式和与其他设备的通信协议。
2025-08-25 14:06:43
938
原创 CANopen EDS(Electronic Data Sheet) 介绍
0x01Variable(变量)表示一个普通的变量对象。它可以是一个输入或输出值,或者是用于存储数据的对象。这些对象通常与设备的功能相关,例如传感器值、控制信号等。0x02Array(数组)表示一个数组对象。该对象包含多个元素,通常用于表示同一类型的数据集合。0x03Record(记录)代表一个记录类型的对象。记录通常包含多个不同类型的变量(可能是不同数据类型的字段),并且这些字段一起作为一个逻辑单元处理。0x04Domain(领域)
2025-08-25 14:03:06
1535
原创 CANopen(CanFestival) -- OD(对象字典)
对象字典(Object Dictionary,OD)是CANopen协议中的核心概念,用于标准化设备间的数据交互。它是一个结构化的数据集合,存储设备的所有参数、配置信息和通信对象,每个条目通过索引(16位)和子索引(8位)唯一标识。
2025-08-22 13:58:20
1130
原创 canopen 初体验
sample-point 0.875:采样点为总位时间的 87.5%,用于确定在位时间的哪个点采样信号。作用:设置 CAN 接口在总线关闭(bus-off)状态后,自动恢复的时间间隔。用途:可以监控 CAN 总线上的通信错误(如错误帧数量),用于调试通信问题。用途:用于控制 CAN 数据包的发送顺序,适用于实时性要求高的系统。适用场景:适用于 CAN 总线短暂异常时自动恢复,避免程序中断。作用:设置 CAN 接口发送队列的长度为 1000 个数据包。作用:配置 CAN 总线的通信速率和采样点。
2025-08-19 15:20:00
685
原创 伺服电机调试 -- PDO映射
EtherCAT 实时数据传输通过过程数据(Process data Object)实现。根据数据传输方向,PDO 可分为RPDO( Reception PDO) 和TPDO(Trasmission PDO),RPDO 将主站数据传送到从站,TPDO 将从站数据反馈至 主站。
2025-08-11 14:21:23
1950
原创 ROS2 安装
目前官方推荐的 ROS 2 版本与 Ubuntu 版本是严格对应的,不同 ROS 2 发行版只支持特定的 Ubuntu 版本。Reachy Mini 官方 GitHub 上的 reachy2_emotions、reachy-sdk 以及仿真环境示例,大多是基于 ROS 2 Humble + Ubuntu 22.04 进行开发的。
2025-08-08 12:15:45
480
原创 桌面智能机器人 - Reachy Mini
Reachy Mini是一款富有表现力的开源机器人,专为人机交互、创意编程和AI实验设计。它完全支持Python编程(即将兼容JavaScript和Scratch),起售价299美元,是您进入机器人AI领域的理想入口:趣味十足、高度可定制,随时融入您的下一个编程项目。无论您是AI开发者、极客、研究人员、教师、机器人爱好者,还是周末陪孩子编程的家长,Reachy Mini都能让您在办公桌上使用最新AI模型开发、测试、部署并分享真实世界的人工智能应用!
2025-08-07 16:27:50
902
原创 EtherCAT IGH - Ethernet Devices(以太网设备) 实时网卡驱动翻译
EtherCAT协议基于以太网标准,因此主站依赖于标准以太网硬件与总线进行通信。The termdevice术语"设备" 用作以太网网络接口硬件的同义词。有一些(网络)设备驱动模块来处理以太网硬件,主站通过这些驱动来连接到EtherCAT总线上。它们通过设备接口向主站模块提供以太网硬件(收发数据)并且必须能够为EtherCAT实时操作或者使用Linux内核网络协议栈进行一些常规操作。这种方法的优点是主站几乎可以直接在硬件上操作,从而实现高实时性。缺点是,得有一个支持EtherCAT的网卡驱动。
2025-07-28 17:10:30
705
原创 树莓派设置时区
BST 指的是 British Summer Time,即英国夏令时(UTC+1)。所以这是英国(伦敦等地)在夏令时期间的本地时间,比标准的 UTC 时间快 1 小时。
2025-07-28 16:31:39
288
原创 C++11 ThreadPool(一个头文件实现线程池)
该函数的目的是将任务添加到线程池的任务队列中,并返回一个 std::future 对象,以便调用者可以在任务完成后获取其结果。具体来说,enqueue 函数是一个模板函数,接受一个可调用对象 f 和一组参数 args。这些参数使用了完美转发(perfect forwarding),即通过 F&& 和 Args&&… 来实现。这种方式确保了参数的原始类型和值类别(左值或右值)得以保留。
2025-07-25 13:42:15
634
原创 EtherCAT IGH别名(Alias)
EtherCAT 中的 Alias 是一个 16 位的数值,用于在拓扑结构中唯一标识从站(除 Position 外的辅助定位方式)
2025-07-24 11:06:25
1395
原创 伺服电机PP(轮廓位置)模式
轮廓位置模式主要用于点对点定位应用。此模式下,上位机设定目标位置、运行速度、加减速,,驱动器内部完成位置控制,速度控制,转矩控制。
2025-07-22 10:11:39
1638
原创 Zephyr环境搭建 - Board GD32A503
Zephyr 是一个轻量级、模块化且高度可扩展的实时操作系统(RTOS),专为资源受限的嵌入式设备设计,如物联网(IoT)设备、传感器、可穿戴设备和工业控制器。它由 Linux 基金会托管,采用 Apache 2.0 开源许可证,支持多种处理器架构(如 ARM、x86、RISC-V 等)。
2025-07-19 13:28:35
1497
原创 LVGL 字体和符号
以下符号也从 FontAwesome 字体添加到内置字体中,譬如LV_FONT_MONTSERRAT_12: 12 px font这些符号是从FontAwesome 字体中提取的一些符号,那么如何知道FontAwesome字体中还有哪些符号?官方有文章描述。
2025-07-14 15:18:58
519
【工业自动化】基于IEC 611P31-3标准的LPLCopen运动控制库设计与实现:驱动程序和功能块详解
2025-06-19
Ontop: Answering SPARQL Queries over Relational Databases
2021-03-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅