1. 系统整体结构与模块化设计
OpenExo 软件架构高度模块化。系统可根据需要自由组装各个功能模块,由一个 Arduino 级别的主控 MCU 统一调度。每个模块(如电机、控制器、传感器、LED 显示等)都是独立的,可插拔、可扩展,便于支持不同的实验和应用场景。
2. 两大核心类:ExoData 与 Exo
A. ExoData
-
定位:ExoData 作为数据与参数的载体,负责保存系统的所有遥测(telemetry)数据和当前控制参数。
-
结构特点:ExoData 的层级与 Exo 的模块化硬件结构一一对应,实现了“软硬件一体化抽象”。
-
作用:
-
存储和实时更新各传感器数据(如力敏电阻FSR、力矩传感器、马达反馈等);
-
存储和同步当前所有控制器参数、状态(如各关节的目标/实际力矩、控制模式等)。
-
B. Exo
-
定位:Exo 类是真正“驱动外骨骼硬件逻辑”的主对象,负责所有部件的实际控制和数据流转。
-
作用:
-
组织、调度所有底层模块(如马达、控制器、传感器、LED等);
-
每轮主循环执行run(),完成数据采集、控制运算、命令下发等任务。
-
C. 数据结构的层级关系
可以用如下树状结构理解 Exo/ExoData 关系:
Exo
文章来源于互联网:高层功能架构详解 – openExo
相关推荐: Datawhale X 魔搭 AI夏令营-第四期 AIGC-Task 2
目录 认识AI助手——通义千问 操作指南 主要功能模块 精读baseline代码 分析代码的主体架构 逐行解释代码 其他疑问-向AI追问 进行实战——基于话剧的连环画制作 提示词准备 执行Task1的30分钟速通Baseline 修改提示词 生成图片 测试美学…
5bei.cn大模型教程网










