扫一扫,关注我们
建议、咨询、售后
集水处理设备组装、配套、工程设计、现场施工、调试服务于一体
手机:1591 4491 988
电话:020-31144623
地址:广州市番禺区沙湾镇三善村接龙路一巷5号
跟着具身智能技能发作,呆板人从工业场景向消费级、办事级范畴快速渗入,小抵家庭陪伴呆板人,年夜到工业协作呆板人,均对于“边沿节制精度”与“生态协同能力”提出更高要求。据行业数据显示,一台中型办事呆板人需集成10-15个传感器节点与8-12个履行器节制单位,而人形呆板人的自由度枢纽关头更是冲破20个,这种场景下,传统“MCU+简朴节制步伐”的模式已经没法满意多节点协同需求——需同时实实际时机电节制、传感器数据预处置惩罚与云端/主机端数据交互,这也鞭策了“轻量化呆板人操作体系(ROS)+高机能MCU”的技能组合成为行业主流。
作为ROS 2的轻量化分支,Micro-ROS依附“资源适配性强”“生态兼容性高”“及时性优秀”三年夜上风,已经成为嵌入式呆板人范畴的焦点框架。其要害价值于在打破资源受限装备与ROS生态的壁垒:仅需几十KB内存便可于MCU端实现完备ROS 2通讯能力(包括主题发布/定阅、办事挪用、参数治理等焦点功效),且能无缝对于接Linux主机真个ROS 2节点。于呆板人及时机电节制、智能传感器节点、边沿计较预处置惩罚等场景实现范围化运用,成为毗连“边沿节制层”与“云端算力层”的要害桥梁。 兆易立异GD32H7系列MCU,依附Cortex-M7内核,高达600MHz主频、1MB级SRAM(含512KB紧耦合内存)、多接口集成等硬件特征,完善匹配Micro-ROS的轻量化与及时性需求,成为国产MCU中适配Micro-ROS的优选方案。 本文将从开发板先容、情况搭建、适配开发、测实验证四个维度,提供GD32H7系列MCU适配Micro-ROS的完备技能指南。 GD32H7系列MCU适配Micro-ROS的工程代码已经于GitHub上开源,接待开发者下载利用。 Github堆栈链接: https://github.com/GigaDeviceSemiconductor/GD32H7-micro_ROS Micro-ROS技能特征与架构 Micro-ROS是专为资源受限嵌入式装备设计的ROS 2轻量级实现框架,其焦点特征可归纳综合为七点: 优化的客户端API: 针对于MCU资源特征优化,撑持所有ROS 2焦点观点(节点、话题、办事、参数等); 无缝生态集成: 可直接与Linux主机ROS 2节点通讯,无需分外和谈转换; 轻量化中间件: 采用DDS-XRCE中间件,内存占用低至8KB,适配资源受限场景; 多RTOS撑持: 兼容FreeRTOS、Zephyr、NuttX等主流及时操作体系,本文基在FreeRTOS开发; 宽松许可证: 基在Apache 2.0许可证,商用无穷制; 活跃社区撑持: 提供完美文档、示例代码与问题反馈渠道,生态连续迭代; 持久可维护性: 遵照ROS 2架构规范,确保与后续版本的兼容性。
△micro-ROS的体系架构 (图片来历:micro-ROS官方网站) GD32H7开发板规格与接口界说 本文适配测试基在两款GD32H7系列开发板:GD32H759I-EVAL与GD32H75EY-EVAL,二者别离撑持串口、USB、以太网与Micro-ROS Agent通讯,焦点规格与接口界说以下: 1GD32H759I-EVAL板 主控芯片:GD32H759IMK6(Cortex-M7内核,最高600MHz主频); 供电方式:GD-Link Mini USB接口或者DC-005毗连器(5V); 焦点外设:Ethernet网口、USB HS0接口、3路CAN-FD、SDRAM、SPI-LCD、USARTx(多串口)等; Micro-ROS要害接口界说: 打印串口:USART0(引脚PA九、PA10); 串口通讯(与Agent):USART2(引脚PB十、PB11); 以太网通讯(与Agent):ETH0网口(需将JP4八、JP5一、JP5七、JP5九、JP60、JP70跳帽接至ETH); USB通讯(与Agent):USB_HS0接口。
2GD32H75EY-EVAL板 主控芯片:GD32H75EYMJ6(Cortex-M7内核,最高600MHz主频); 供电方式:GD-Link Mini USB接口或者DC-005毗连器(5V); 焦点外设:USB HS0接口、2路CAN-FD、SPI、I2C、USARTx(多串口)等; Micro-ROS要害接口界说: 打印串口:USART2(引脚PB十、PB11); 串口通讯(与Agent):USART0(引脚PB六、PB7); USB通讯(与Agent):USB_HS0接口。
1ROS 2与Micro-ROS开发情况搭建(Host:Ubuntu 22.04) 1.1ROS 2Humble情况安装 ROS 2是Micro-ROS的主机端焦点依靠,本文选择不变版Humble,安装步调以下: 1.1.1 基础依靠安装 打开Ubuntu终端,履行如下号令安装体系依靠: sudoapt update &&sudoapt install -y curl gnupg2 lsb-release 1.1.2 情况变量与源配置 确保体系撑持UTF-8编码: sudolocale-gen en_US en_US.UTF-8sudoupdate-locale LC_ALL=en_US.UTF-8LANG=en_US.UTF-8exportLANG=en_US.UTF-8 添加ROS 2 apt堆栈密钥与源: sudocurl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpgecho"deb [arch=美金(dpkg --print-architecture)signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu美金(lsb_release -cs)main"|sudotee/etc/apt/sources.list.d/ros2.list > /dev/null 1.1.3 ROS 2软件包安装 更新堆栈缓存并安装桌面版: sudoapt update &&sudoapt upgrade -ysudoapt install -y ros-humble-desktop# 可选:安装开发东西(编译依靠、调试东西)sudoapt install -y ros-humble-ros-base python3-colcon-co妹妹on-extensions python3-rosdep 配置情况变量(每一次打开终端需履行,或者添加至~/.bashrc): source/opt/ros/humble/setup.bash 1.1.4 情况验证(Talker-Listener测试) 终端1:运行发布节点(talker): source/opt/ros/humble/setup.bashros2 run demo_nodes_cpp talker 终端2:运行定阅节点(listener): source/opt/ros/humble/setup.bashros2 run demo_nodes_cpp listener 若终端2能吸收终端1发布的“Hello World”动静,则ROS 2情况安装乐成。 1.2Micro-ROS构建体系安装 Micro-ROS依靠专属东西链实现固件编译与Agent通讯,安装步调以下: 1.2.1 东西链下载与依靠安装 加载ROS 2情况并创立Micro-ROS事情空间: source/opt/ros/humble/setup.bashmkdir-p ~/micro_ros_ws/src &&cd~/micro_ros_wsgitclone-b humble https://github.com/micro-ROS/micro_ros_setup.git src/micro_ros_setup 安装依靠(rosdep与pip): sudo rosdep init && rosdep updaterosdep install--from-pathssrc--ignore-src-ysudo apt install -ypython3-pippip3 install -U colcon-co妹妹on-extensions 1.2.2 东西链编译与情况加载 编译Micro-ROS东西链: colcon build --packages-select micro_ros_setupsourceinstall/local_setup.bash 创立固件事情空间: ros2run micro_ros_setup create_firmware_ws.sh host 履行后将于~/micro_ros_ws/firmware目次下天生Micro-ROS工程布局,包罗示例代码与编译剧本。 1.2.3 Micro-ROS情况验证(Ubuntu主机端测试) 以“ping-pong”示例验证情况(主机端模仿MCU节点): 编译ping-pong固件: cd~/micro_ros_ws/firmwarecolcon build --packages-select micro_ros_demos_rclcsourceinstall/local_setup.bash 终端1:运行Micro-ROS Agent(UDP模式): ros2run micro_ros_agent micro_ros_agent udp4 --port8888 终端2:运行ping-pong节点: source~/micro_ros_ws/firmware/install/local_setup.bashros2 run micro_ros_demos_rclc ping_pong 终端3:定阅ping话题验证通讯: source/opt/ros/humble/setup.bashros2 topicecho/ping 若终端3能吸收ping动静,则Micro-ROS情况搭建乐成。 2GD32H7系列MCU适配Micro-ROS开发 2.1焦点适配逻辑:静态库集成 因为GD32H7基在FreeRTOS开发,Micro-ROS适配采用“静态库集成”方案:先于Ubuntu主机端编译天生适配Cortex-M7内核的Micro-ROS静态库(含焦点API、中间件、通讯适配层),再将静态库与头文件导入GD32 Embedded Builder工程,共同底层驱动(串口、USB、以太网)实现通讯。 静态库编译参考Micro-ROS官方教程(https://micro.ros.org/docs/tutorials/advanced/create_custom_static_library/),本文已经提供预编译完成的静态库(包罗libmicroros.a和相干头文件),直接导入工程便可利用。 2.2工程导入与编译(基在GD32 Embedded Builder) GD32 Embedded Builder是GD32系列MCU的专属IDE,撑持工程治理、编译、下载,适配步调以下: 2.2.1 工程布局与静态库导入 下载GD32H7 Micro-ROS工程包(含GD32H759I_Eval_FreeRTOS_MicroROS与 GD32H75E_MicroROS两个工程); 打开GD32 Embedded Builder,导入方针工程(如 GD32H759I_Eval_FreeRTOS_MicroROS); 将Micro-ROS静态库(libmicroros.a)放入工程Lib目次,头文件放入Inc/microros目次,并于IDE中配置库路径与头文件路径。 2.2.2 差别通讯接口的工程编译 GD32H759I-EVAL撑持串口(中止/DMA)、USB CDC、以太网UDP三种通讯方式, GD32H75EY-EVAL撑持串口(中止/DMA)、USB CDC两种方式,编译时需选择对于应方针:
以GD32H759I-EVAL的串口(中止)为例,编译步调: 右击工程→Build Configuration→Set Active→选择gd32h7_microros_usart_it; 点击“Build”按钮,编译完成后天生.elf与.hex文件; 其他通讯方式的编译步调近似,仅需切换方针工程便可。 3GD32H7 Micro-ROS功效测试 3.1测试预备 硬件:GD32H7开发板、GD-Link调试器、串口线(USB-TTL)、以太网网线(仅GD32H759I-EVAL)、12V电源; 软件:Ubuntu 22.04(已经装ROS 2与Micro-ROS Agent)、串口调试助手(如SSCOM)。 3.2分接口测试步调 3.2.1 串口通讯测试(以GD32H759I-EVAL为例) 硬件毗连: 打印串口:USART0(PA9→TX,PA10→RX)接USB-TTL,用在查看调试信息; 通讯串口:USART2(PB10→TX,PB11→RX)接另外一USB-TTL,毗连Ubuntu主机。 Agent启动(Ubuntu终端): source/opt/ros/humble/setup.bashros2 run micro_ros_agent micro_ros_agent serial --dev /dev/ttyUSB0 -b 115200 (注:/dev/ttyUSB0为Ubuntu辨认的串口装备,可经由过程ls/dev/ttyUSB*查看) 固件下载: 于GD32 Embedded Builder中选择gd32h7_microros_usart_it工程,点击“Download”下载固件; 打开串口调试助手(波特率115200),可看到开发板打印的初始化信息。 功效验证: 打开新Ubuntu终端,定阅Micro-ROS节点发布的/gd32h7_microros_publisher话题: source/opt/ros/humble/setup.bashros2 topicecho/gd32h7_microros_publisher 若能吸收32位整数数据,则串口通讯测试乐成。 3.2.2 USB CDC通讯测试(以GD32H759I-EVAL为例) 硬件毗连: 打印串口:USART0接USB-TTL(查看调试信息); USB通讯:开发板USB_HS0接口接Ubuntu主机。 Agent启动(Ubuntu终端): source/opt/ros/humble/setup.bash# 查看USB CDC装备(凡是为/dev/ttyACM0)ls/dev/ttyACM*# 启动Agentros2 run micro_ros_agent micro_ros_agent serial --dev /dev/ttyACM0 -b 115200 原文标题:GD32H7 Micro-ROS开发实战:从零到一构建呆板人运用
文章来由:【微旌旗灯号:GD32MCU,微信公家号:GD32MCU】接待添加存眷!文章转载请注明来由。
怎样利用menuconfig添加配置micro-ros软件包? 请问有无最新的rtthread移植micro-ros移植利用教程,利用menuconfig添加配置micro-ros软件包? 发表在 09-25 06:37 Fibocom MCU之兆易立异 技能资料 Fibocom MCU之兆易立异 技能资料内容以下:一、【文档】兆 发表在 01-09 15:27 瑞萨将micro-ROS移植到RA MCU中 NEWS 全世界半导体解决方案供给商瑞萨电子集团(TSE:6723)与专注在中间件解决方案的SME公司eProsima公布,基在RA MCU的EK-RA6M5评估套件成为micro-ROS开发框架