简体中文 · English · 机械部分开源项目 · 视觉 / 感知开源项目
面向仿生龙虾水下机器人的双 STM32 固件仓库
负责执行器驱动、传感器采集、板间通信,以及背部四旋翼稳定控制。
| 项目 | 说明 |
|---|---|
| 主控架构 | 双 STM32F103C8 |
| 固件分工 | firmware 主板固件 / firmware_quad 推进与四旋翼从板固件 |
| 语言与框架 | C 语言 + STM32 标准外设库 |
| 构建方式 | CMake + 本地 ARM GCC 工具链 |
| 烧录方式 | DAPLink (CMSIS-DAP) + OpenOCD |
| 仓库定位 | 底层嵌入式控制,不包含高层视觉与自主策略 |
仓库内的脚本会优先复用
.tools/下的本地工具链,适合在 Linux 环境中快速搭建一套可复现的构建与烧录流程。
| 固件 | 板卡角色 | 负责内容 | 关键外设 |
|---|---|---|---|
firmware |
主控制板 | 机械臂、夹爪、尾部舵机、压力与角度采集、遥控/上位机通信、向从板下发动作指令 | 6x AS5600、MS5837、USART1、USART2 |
firmware_quad |
推进与稳定从板 | 头部推进、尾部推进、背部四旋翼电机、姿态解算与轻量级闭环控制 | JY901S、USART1、USART2 |
主板执行器分布:
- 2 个肘部 180 度舵机
- 2 个夹爪舵机
- 4 个手臂连续旋转舵机
- 2 个尾部舵机
从板执行器分布:
- 1 个头部推进电机
- 4 个尾部推进电机
- 4 个背部四旋翼电机
./scripts/setup-local-toolchain.sh如果暂时只想安装 ARM 编译器:
./scripts/setup-local-toolchain.sh --arm-only./scripts/build.sh编译产物位于 build/:
| 文件 | 说明 |
|---|---|
build/firmware.elf |
主板调试镜像 |
build/firmware.hex |
主板烧录镜像 |
build/firmware.bin |
主板二进制镜像 |
build/firmware_quad.elf |
从板调试镜像 |
build/firmware_quad.hex |
从板烧录镜像 |
build/firmware_quad.bin |
从板二进制镜像 |
烧录主板:
./scripts/flash.sh build/firmware.elf烧录推进 / 四旋翼从板:
./scripts/flash.sh build/firmware_quad.elfsource ./scripts/env.sh补充说明:
build.sh会在找不到 ARM GCC 时自动补装本地编译器。flash.sh会在目标ELF不存在时自动触发一次编译。- 仓库保留了
CMakePresets.json,较新的 CMake 可直接配合使用。 - 当前默认烧录链路为
DAPLink (CMSIS-DAP) + OpenOCD。
| 路径 | 说明 |
|---|---|
firmware/ |
主板固件源码 |
firmware_quad/ |
推进 / 四旋翼从板固件源码 |
scripts/ |
工具链安装、构建、烧录、调试脚本 |
cmake/ |
ARM GCC 工具链配置 |
openocd/ |
OpenOCD 接口与目标配置 |
ld/ |
STM32 链接脚本 |
Images/ |
项目图片与参考图 |
- 主板已经提供 6 路具名
AS5600通道。 - 从板实现了一套轻量级闭环飞控,基于
JY901S角度与陀螺数据完成roll/pitch稳定、yaw保持、指令斜坡和 IMU 失效降级。 - 本仓库聚焦底层控制,高层自主策略与视觉能力在其他仓库维护。
展开查看 6 路 AS5600 通道名称
left_arm_upper_360left_arm_lower_360right_arm_upper_360right_arm_lower_360tail_servo1tail_servo2
- 机械部分:
真甲咒、小白 - 视觉 / 感知:
大道寺知世 - 机械部分开源项目:https://github.com/iowqi/ShrimpROV
- 视觉 / 感知开源项目:https://github.com/zhizhizzzzzzz/OceanSphere
本项目使用 MIT License。




