Skip to content

Refactor omni-b and add omni-c hardware - #95

Closed
ZGZ713912 wants to merge 12 commits into
dev/robotsfrom
merge/deformable
Closed

Refactor omni-b and add omni-c hardware#95
ZGZ713912 wants to merge 12 commits into
dev/robotsfrom
merge/deformable

Conversation

@ZGZ713912

@ZGZ713912ZGZ713912 commented Jul 22, 2026

Copy link
Copy Markdown
Member

摘要

  • 重构变形全向底盘,新增 DeformableInfantryOmniBDeformableInfantryOmniC 硬件插件。
  • 统一新版 RmcsBoardLite、CAN、UART、IMU 和遥控器接口。
  • 新增悬架、爬升机构、底盘模式管理和相关协程控制组件。
  • 重构底盘、云台、射击和电源控制逻辑,支持自动瞄准、无线充电、编码器模式、低速摩擦轮和导航控制。
  • 更新 ChassisMode,新增供电模式和旋转模式判断接口。
  • 新增 Px4VisionBridge,支持通过 MAVLink 发布视觉位姿和看门狗重启。
  • 新增静态转矩、扫频识别、CSV 写入、数值采集和 PID 拟合工具。
  • 新增自动瞄准测试配置、远程调试脚本、上下文命令、tmux 工作流和补全脚本。
  • 更新哨兵裁判数据解析、事件结构、状态 UI 和自动瞄准 UI。
  • 移除旧版 Steering、DeformableInfantryV2 和旧底盘控制器及其配置。
  • 更新插件注册、依赖、Docker 镜像、SDK 版本和子模块提交。

重点影响

  • 新硬件和控制器接口替换了多项旧插件接口。
  • ChassisMode 枚举发生不兼容变更。
  • DjiMotorDr16Vt13RemoteControl 的硬件设备接口发生扩展或重构。
  • 新增 StatusMonitorNodeMixinCsvWriterRingBuffer::peek_front_n 公共 API。

@coderabbitai

coderabbitaiBot commented Jul 22, 2026

Copy link
Copy Markdown

Review Change Stack

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: c45815c5-8a76-4b6b-8ee1-216dbe2ff59c

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 3a3bd4f2-f25f-46bf-97c9-9f0589f49972

📥 Commits

Reviewing files that changed from the base of the PR and between 6686325 and 50a0ddf.

📒 Files selected for processing (100)
  • .github/workflows/update-image.yml
  • .gitmodules
  • .script/autoaim-debug
  • .script/complete/_local-context
  • .script/complete/_remote-context
  • .script/host/rmcs
  • .script/identification/fit_friction_velocity_pid.py
  • .script/identification/fit_gravity_torque.py
  • .script/identification/fit_sweep_graybox.py
  • .script/local-context
  • .script/remote-context
  • .script/remote-status
  • .script/rmcs-cli
  • .script/scan-remote
  • Dockerfile
  • rmcs_ws/src/hikcamera
  • rmcs_ws/src/rmcs_auto_aim_v2
  • rmcs_ws/src/rmcs_bringup/config/auto_aim_test.yaml
  • rmcs_ws/src/rmcs_bringup/config/deformable-infantry-omni-b.yaml
  • rmcs_ws/src/rmcs_bringup/config/deformable-infantry-omni-c.yaml
  • rmcs_ws/src/rmcs_bringup/config/deformable-infantry-omni.yaml
  • rmcs_ws/src/rmcs_bringup/config/flight.yaml
  • rmcs_ws/src/rmcs_bringup/config/sentry.yaml
  • rmcs_ws/src/rmcs_bringup/config/steering-hero-little-six-friction.yaml
  • rmcs_ws/src/rmcs_bringup/config/steering-hero-little.yaml
  • rmcs_ws/src/rmcs_bringup/config/steering-hero.yaml
  • rmcs_ws/src/rmcs_bringup/config/steering-infantry.yaml
  • rmcs_ws/src/rmcs_core/CMakeLists.txt
  • rmcs_ws/src/rmcs_core/package.xml
  • rmcs_ws/src/rmcs_core/plugins.xml
  • rmcs_ws/src/rmcs_core/src/controller/chassis/chassis_climber_controller.cpp
  • rmcs_ws/src/rmcs_core/src/controller/chassis/chassis_controller.cpp
  • rmcs_ws/src/rmcs_core/src/controller/chassis/chassis_power_controller.cpp
  • rmcs_ws/src/rmcs_core/src/controller/chassis/climber/co_schduler.hpp
  • rmcs_ws/src/rmcs_core/src/controller/chassis/climber/stick_group.hpp
  • rmcs_ws/src/rmcs_core/src/controller/chassis/climber/track_group.hpp
  • rmcs_ws/src/rmcs_core/src/controller/chassis/deformable_chassis.cpp
  • rmcs_ws/src/rmcs_core/src/controller/chassis/deformable_joint_controller.cpp
  • rmcs_ws/src/rmcs_core/src/controller/chassis/deformable_joint_layer.hpp
  • rmcs_ws/src/rmcs_core/src/controller/chassis/deformable_mode.hpp
  • rmcs_ws/src/rmcs_core/src/controller/chassis/deformable_omni_wheel_controller.cpp
  • rmcs_ws/src/rmcs_core/src/controller/chassis/deformable_suspension.cpp
  • rmcs_ws/src/rmcs_core/src/controller/chassis/deformable_wheel_controller.cpp
  • rmcs_ws/src/rmcs_core/src/controller/chassis/hero_chassis_controller.cpp
  • rmcs_ws/src/rmcs_core/src/controller/chassis/steering_wheel_controller.cpp
  • rmcs_ws/src/rmcs_core/src/controller/flight/px4_vision_bridge.cpp
  • rmcs_ws/src/rmcs_core/src/controller/gimbal/deformable_infantry_gimbal_controller.cpp
  • rmcs_ws/src/rmcs_core/src/controller/gimbal/dual_yaw_controller.cpp
  • rmcs_ws/src/rmcs_core/src/controller/gimbal/eccentric_dual_yaw.cpp
  • rmcs_ws/src/rmcs_core/src/controller/gimbal/eccentric_dual_yaw_solver.hpp
  • rmcs_ws/src/rmcs_core/src/controller/gimbal/hero_gimbal_controller.cpp
  • rmcs_ws/src/rmcs_core/src/controller/gimbal/player_viewer.cpp
  • rmcs_ws/src/rmcs_core/src/controller/gimbal/two_axis_gimbal_solver.hpp
  • rmcs_ws/src/rmcs_core/src/controller/pid/pid_calculator.hpp
  • rmcs_ws/src/rmcs_core/src/controller/shooting/bullet_feeder_controller_17mm.cpp
  • rmcs_ws/src/rmcs_core/src/controller/shooting/friction_wheel_controller.cpp
  • rmcs_ws/src/rmcs_core/src/controller/shooting/hero_friction_wheel_controller.cpp
  • rmcs_ws/src/rmcs_core/src/controller/shooting/hero_heat_controller.cpp
  • rmcs_ws/src/rmcs_core/src/controller/shooting/putter_controller.cpp
  • rmcs_ws/src/rmcs_core/src/controller/shooting/shooting_recorder.cpp
  • rmcs_ws/src/rmcs_core/src/debug/value_collector.cpp
  • rmcs_ws/src/rmcs_core/src/hardware/deformable-infantry-omni-b.cpp
  • rmcs_ws/src/rmcs_core/src/hardware/deformable-infantry-omni-c.cpp
  • rmcs_ws/src/rmcs_core/src/hardware/deformable-infantry-omni.cpp
  • rmcs_ws/src/rmcs_core/src/hardware/deformable-infantry-steering.cpp
  • rmcs_ws/src/rmcs_core/src/hardware/device/bmi088_ekf.hpp
  • rmcs_ws/src/rmcs_core/src/hardware/device/dji_motor.hpp
  • rmcs_ws/src/rmcs_core/src/hardware/device/dr16.hpp
  • rmcs_ws/src/rmcs_core/src/hardware/device/lk_motor.hpp
  • rmcs_ws/src/rmcs_core/src/hardware/device/remote_control.hpp
  • rmcs_ws/src/rmcs_core/src/hardware/device/vt13.hpp
  • rmcs_ws/src/rmcs_core/src/hardware/flight.cpp
  • rmcs_ws/src/rmcs_core/src/hardware/omni_infantry.cpp
  • rmcs_ws/src/rmcs_core/src/hardware/sentry.cpp
  • rmcs_ws/src/rmcs_core/src/hardware/steering-hero-little-six-friction.cpp
  • rmcs_ws/src/rmcs_core/src/hardware/steering-hero.cpp
  • rmcs_ws/src/rmcs_core/src/hardware/steering-infantry.cpp
  • rmcs_ws/src/rmcs_core/src/hardware/util/status_monitor.hpp
  • rmcs_ws/src/rmcs_core/src/identification/static_torque_test_controller.cpp
  • rmcs_ws/src/rmcs_core/src/identification/swept_frequency_controller.cpp
  • rmcs_ws/src/rmcs_core/src/referee/app/ui/auto_aim.cpp
  • rmcs_ws/src/rmcs_core/src/referee/app/ui/deformable_infantry_ui.cpp
  • rmcs_ws/src/rmcs_core/src/referee/app/ui/hero.cpp
  • rmcs_ws/src/rmcs_core/src/referee/app/ui/infantry.cpp
  • rmcs_ws/src/rmcs_core/src/referee/app/ui/shape/shape.hpp
  • rmcs_ws/src/rmcs_core/src/referee/app/ui/widget/animated_toggle.hpp
  • rmcs_ws/src/rmcs_core/src/referee/app/ui/widget/crosshair_circle.hpp
  • rmcs_ws/src/rmcs_core/src/referee/app/ui/widget/deformable_chassis_top_view.hpp
  • rmcs_ws/src/rmcs_core/src/referee/app/ui/widget/status_ring.hpp
  • rmcs_ws/src/rmcs_core/src/referee/command/interaction/sentry_decision.cpp
  • rmcs_ws/src/rmcs_core/src/referee/status.cpp
  • rmcs_ws/src/rmcs_core/src/referee/status/field.hpp
  • rmcs_ws/src/rmcs_msgs/include/rmcs_msgs/camera_frame.hpp
  • rmcs_ws/src/rmcs_msgs/include/rmcs_msgs/chassis_mode.hpp
  • rmcs_ws/src/rmcs_msgs/include/rmcs_msgs/rmcs_msgs.hpp
  • rmcs_ws/src/rmcs_msgs/include/rmcs_msgs/robot_id.hpp
  • rmcs_ws/src/rmcs_msgs/include/rmcs_msgs/sentry_event.hpp
  • rmcs_ws/src/rmcs_utility/include/rmcs_utility/csv_writer.hpp
  • rmcs_ws/src/rmcs_utility/include/rmcs_utility/rclcpp/node_mixin.hpp
  • rmcs_ws/src/rmcs_utility/include/rmcs_utility/ring_buffer.hpp

Walkthrough

Changes

运行脚本与识别工具

Layer / File(s)Summary
调试、上下文与 tmux 工作流
.script/*
新增自动瞄准调试、远程上下文、容器管理和 tmux 控制脚本,并更新远程扫描行为。
参数识别工具
.script/identification/*
新增摩擦轮 PID、重力扭矩和扫频灰盒模型的 CSV 拟合工具。
构建与子模块配置
.gitmodules, Dockerfile, .github/workflows/*, rmcs_ws/src/*
新增自动瞄准子模块,更新子模块指针、ROS 依赖和镜像触发路径。

底盘、云台与射击控制

Layer / File(s)Summary
底盘模式与悬架控制
rmcs_ws/src/rmcs_msgs/include/*, rmcs_ws/src/rmcs_core/src/controller/chassis/*
新增底盘模式、悬架、攀爬、导航、无线充电和功率控制逻辑。
云台控制
rmcs_ws/src/rmcs_core/src/controller/gimbal/*
新增偏心双偏航求解器、编码器刹车状态机、自动瞄准门控和俯仰保持控制。
射击控制
rmcs_ws/src/rmcs_core/src/controller/shooting/*
新增单发控制、低速摩擦轮调节、预装状态和新的拨片状态机。

硬件与数据链路

Layer / File(s)Summary
设备与遥控仲裁
rmcs_ws/src/rmcs_core/src/hardware/device/*
新增 DjiMotor 编号映射、Vt13 解析、Dr16 超时管理和 RemoteControl 仲裁。
板卡组件
rmcs_ws/src/rmcs_core/src/hardware/*
迁移多个硬件组件到新版板卡回调接口,并新增 Omni B、Omni C 和 SteeringHeroLittle 组件。
插件与依赖
rmcs_ws/src/rmcs_core/plugins.xml, rmcs_ws/src/rmcs_core/CMakeLists.txt, rmcs_ws/src/rmcs_core/package.xml
更新插件注册、librmcs SDK 版本和构建依赖。

裁判数据与界面

Layer / File(s)Summary
裁判数据解析
rmcs_ws/src/rmcs_core/src/referee/status/*, rmcs_ws/src/rmcs_msgs/include/*
新增哨兵事件、交互数据、敌方血量、伤害差值和激光雷达广播解析。
自动瞄准与机器人界面
rmcs_ws/src/rmcs_core/src/referee/app/ui/*
更新距离显示、摩擦轮状态、悬架图形、模式颜色和超级电容能量显示。
通用工具
rmcs_ws/src/rmcs_utility/include/*
新增 CSV 写入器、节点参数混入和环形缓冲区非消费遍历接口。

Estimated code review effort: 5 (Critical) | ~120 minutes

Possibly related PRs

Suggested reviewers:qzhhhi, creeper5820

Poem

我是兔子,蹦过控制线,
新脚本点亮调试窗。
电机、云台齐响应,
CSV 记录每一场。
悬架稳稳,数据清,
祝这次变更顺利上线!

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch merge/deformable

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@ZGZ713912

Copy link
Copy Markdown
MemberAuthor

@coderabbitai summary

@coderabbitai

Copy link
Copy Markdown
✅ Action performed

Summary regeneration triggered.

@ZGZ713912
ZGZ713912force-pushed the merge/deformable branch 4 times, most recently from 9f23fea to c3fc3aeCompareJuly 31, 2026 20:09
@ZGZ713912
ZGZ713912force-pushed the merge/deformable branch 3 times, most recently from c66163c to a359b1cCompareAugust 3, 2026 22:35
@ZGZ713912

Copy link
Copy Markdown
MemberAuthor

@coderabbital summary

@ZGZ713912

Copy link
Copy Markdown
MemberAuthor

@coderabbitai summary

@coderabbitai

Copy link
Copy Markdown
✅ Action performed

Summary regeneration triggered.

@github-project-automationgithub-project-automationBot moved this from Todo to Done in RMCSAug 13, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants

@ZGZ713912@creeper5820