当前位置: 首页 > news >正文

高层功能架构详解 - openExo

高层功能架构详解

  • 1. 系统整体结构与模块化设计
  • 2. 两大核心类:ExoData 与 Exo
    • A. ExoData
    • B. Exo
    • C. 数据结构的层级关系
  • 3. 多微控制器协作与BLE通信
  • 4. 主控软件运行流程(主循环伪代码)
  • 5. 架构优点小结
  • 6. 与 Code Structure 的关系
  • 实用建议

1. 系统整体结构与模块化设计

OpenExo 软件架构高度模块化。系统可根据需要自由组装各个功能模块,由一个 Arduino 级别的主控 MCU 统一调度。每个模块(如电机、控制器、传感器、LED 显示等)都是独立的,可插拔、可扩展,便于支持不同的实验和应用场景。

2. 两大核心类:ExoData 与 Exo

A. ExoData

  • 定位:ExoData 作为数据与参数的载体,负责保存系统的所有遥测(telemetry)数据和当前控制参数。

  • 结构特点:ExoData 的层级与 Exo 的模块化硬件结构一一对应,实现了“软硬件一体化抽象”。

  • 作用:

    • 存储和实时更新各传感器数据(如力敏电阻FSR、力矩传感器、马达反馈等);

    • 存储和同步当前所有控制器参数、状态(如各关节的目标/实际力矩、控制模式等)。

B. Exo

  • 定位:Exo 类是真正“驱动外骨骼硬件逻辑”的主对象,负责所有部件的实际控制和数据流转。

  • 作用:

    • 组织、调度所有底层模块(如马达、控制器、传感器、LED等);

    • 每轮主循环执行run(),完成数据采集、控制运算、命令下发等任务。

C. 数据结构的层级关系

可以用如下树状结构理解 Exo/ExoData 关系:

Exo 
http://www.lryc.cn/news/595775.html

相关文章:

  • Flutter基础(前端教程①⑧-Text文本-Icon图标-Image图片)
  • C语言符号可见性控制与工程实践——深入理解 __attribute__((visibility)) 和 -fvisibility=hidden
  • 跨服务调用中,直接使用 MDC的上下文无法自动传递
  • Oracle 12c 创建数据库初级教程
  • 从FDTD仿真到光学神经网络:机器学习在光子器件设计中的前沿应用工坊
  • 从RAG到Agentic RAG
  • 无人机吊舱与遥控器匹配技术解析
  • 一文读懂深度模型优化器,掌握炼丹工具
  • MySQL 学习二 MVCC
  • IBGP互联(ensp)
  • 【nginx】隐藏服务器指纹:Nginx隐藏版本号配置修改与重启全攻略
  • Unity中,Panel和 Canvas的区别
  • 数字签名(Digital Signature)
  • VR技术在元宇宙游戏中的作用及发展前景深度分析
  • A316-V71-Game-V1:虚拟7.1游戏声卡评估板技术解析
  • Leetcode—692. 前K个高频单词【中等】(桶排序)
  • PyTorch武侠演义 第一卷:初入江湖 第4章:损失玉佩的评分风波
  • 【AI学习从零至壹】Transformer
  • 02-netty基础-java四种IO模型
  • Java设计模式揭秘:深入理解模板方法模式
  • 详解FreeRTOS开发过程(二)-- 列表和列表项
  • 【前端】ikun-pptx编辑器前瞻问题二: pptx的压缩包结构,以及xml正文树及对应元素介绍
  • 机器学习模型视角下的市场联动机制:美元美债与黄金3400价格的VAR向量自回归分析
  • 面向对象高级:static
  • linux c语言进阶 - 进程,通信方式
  • VRRP技术
  • 从零构建实时通信引擎:Freeswitch源码编译与深度优化指南
  • 3秒请假:华润啤酒AI助手“哆啦”的轻巧落地与深度思考
  • 【洛谷】用两个数组实现静态单链表、静态双向链表,排队顺序
  • 基于JAVA实现基于“obj--html--pdf” 的PDF格式文本生成