Documentation Index
Fetch the complete documentation index at: https://motorbridge.seeedstudio.com/llms.txt
Use this file to discover all available pages before exploring further.
Source:
docs/zh/architecture.md架构说明
分层视图
运行时控制流
设计目标
motorbridge 的核心目标是把通用控制能力与厂商协议细节解耦。
- 核心层可跨品牌复用
- 厂商差异下沉到 vendor crate
- 通过 ABI 暴露稳定跨语言接口
仓库结构
分层说明
1) motor_core
bus.rs:CAN 总线抽象device.rs:统一MotorDevice接口controller.rs:调度/路由/轮询model.rs:型号目录抽象socketcan.rs:Linux 经典 SocketCAN 后端socketcanfd.rs:Linux 独立 SocketCAN-FD 后端pcan.rs:Windows PEAK PCAN 后端(实验性)
2) motor_vendors/*
每个厂商 crate 负责:
- 帧编码/解码
- 寄存器语义
- 型号限制参数
- 基于
CoreController的控制器封装
3) motor_abi
- 导出 C 兼容句柄与函数
- Rust 错误转换为返回码 +
motor_last_error_message() - 供 C/C++/Python 等语言集成
4) SDK 与示例
motor_cli:运维/调试命令行bindings/python:可直接集成的 Python 包bindings/cpp:可直接集成的 C++ RAII 封装examples/*:最小化跨语言 ABI 调用示例
生命周期策略
控制器生命周期显式管理:- 需要明确停止/失能流程时:调用
motor_controller_shutdown - 只想关闭本地会话/总线时:调用
motor_controller_close_bus motor_controller_free仅负责释放对象