chassis
上游未提供说明。
Controller/Slave/Slave.hpp:180.1.0+825f1408280d7 / 27 个公开 API 符号没有说明。
上游未提供说明。
Controller/Slave/Slave.hpp:18上游未提供说明。
Controller/Slave/Slave.hpp:18从机控制模式的底盘控制器。 该控制器不自己规划轨迹,而是消费外部送来的离散轨迹点, 再在世界坐标系下做位置误差闭环(与 Master 的 errorUpdate 一致)。 pushTrajectoryPoint() trajectoryUpdate() 在线模式 (Offline = false):通过写入环形缓冲区,消费。 profileUpdate(const TrajectoryPoint&) 离线模式 (Offline = true):不持有缓冲区,直接通过注入轨迹点。 支持两种模式: BufferCapacity 轨迹点缓冲区容量(离线模式下忽略) Offline 离线模式开关 BufferCapacity >= 轨迹时长 s * (主机发送频率 Hz - trajectoryUpdate 调用频率 Hz), buffer 占用空间 BufferCapacity * 24 Byte
Controller/Slave/Slave.hpp:39当 Offline = true 时替代 RingBuffer 的空占位类型。
Controller/Slave/Slave.hpp:169三个自由度各自的位置误差 PD 参数(世界坐标系下)。
Controller/Slave/Slave.hpp:46上位机发来的单个轨迹点:位姿参考 + 速度前馈。
Controller/Slave/Slave.hpp:54
chassis::controller::Slave< BufferCapacity, Offline >::Slave (motion::IChassisMotion &motion, loc::IChassisLoc &loc, const PDConfig &pd_cfg)
构造时绑定 Motion、Loc 以及三个自由度各自的 PD 控制器。
Controller/Slave/Slave.hpp:61
void chassis::controller::Slave< BufferCapacity, Offline >::apply_position_velocity ()
上游未提供说明。
Controller/Slave/Slave.hpp:177
void chassis::controller::Slave< BufferCapacity, Offline >::clearTrajectory ()
清空所有尚未消费的轨迹点,常用于控制权交接前丢弃旧命令。
Controller/Slave/Slave.hpp:152
void chassis::controller::Slave< BufferCapacity, Offline >::errorUpdate ()
误差跟踪,在世界坐标系下做位置误差闭环。 与 Master 的 errorUpdate 一致:世界系下用 PD 计算位置误差, 叠加前馈速度后统一转换为车体系速度下发。
Controller/Slave/Slave.hpp:106
void chassis::controller::Slave< BufferCapacity, Offline >::profileUpdate (const TrajectoryPoint &point)
离线模式下注入一个轨迹点作为当前参考。 该接口直接设置参考位姿和速度,不做缓冲区操作。 point 外部生成的轨迹点
Controller/Slave/Slave.hpp:94
bool chassis::controller::Slave< BufferCapacity, Offline >::pushTrajectoryPoint (const TrajectoryPoint &point)
轨迹点 point 轨迹点 true 表示成功入队;false 表示缓冲区已满,轨迹点未写入
Controller/Slave/Slave.hpp:143
void chassis::controller::Slave< BufferCapacity, Offline >::stop () override
上游未提供说明。
Controller/Slave/Slave.hpp:120
void chassis::controller::Slave< BufferCapacity, Offline >::trajectoryUpdate ()
消费一个新的轨迹点作为当前参考。 errorUpdate() 该接口只负责从缓冲区取点,不做误差闭环;真正的跟踪在中完成。
Controller/Slave/Slave.hpp:73
PD::Config chassis::controller::Slave< BufferCapacity, Offline >::PDConfig::vx
x 位置误差 PD
Controller/Slave/Slave.hpp:48
PD::Config chassis::controller::Slave< BufferCapacity, Offline >::PDConfig::vy
y 位置误差 PD
Controller/Slave/Slave.hpp:49
PD::Config chassis::controller::Slave< BufferCapacity, Offline >::PDConfig::wz
yaw 位置误差 PD
Controller/Slave/Slave.hpp:50
Posture chassis::controller::Slave< BufferCapacity, Offline >::TrajectoryPoint::p_ref
上游未提供说明。
Controller/Slave/Slave.hpp:56
Velocity chassis::controller::Slave< BufferCapacity, Offline >::TrajectoryPoint::v_ref
上游未提供说明。
Controller/Slave/Slave.hpp:57
std::conditional_t<Offline, NoBuffer, libs::RingBuffer<TrajectoryPoint, BufferCapacity> > chassis::controller::Slave< BufferCapacity, Offline >::cmd_buffer_
上游未提供说明。
Controller/Slave/Slave.hpp:175
osMutexId_t chassis::controller::Slave< BufferCapacity, Offline >::lock_
保护 stop 等状态切换
Controller/Slave/Slave.hpp:159
Posture chassis::controller::Slave< BufferCapacity, Offline >::p_ref_
当前正在跟踪的参考位姿(世界系)
Controller/Slave/Slave.hpp:165
PD chassis::controller::Slave< BufferCapacity, Offline >::pd_vx_
x 位置误差 PD 控制器
Controller/Slave/Slave.hpp:161
PD chassis::controller::Slave< BufferCapacity, Offline >::pd_vy_
y 位置误差 PD 控制器
Controller/Slave/Slave.hpp:162
PD chassis::controller::Slave< BufferCapacity, Offline >::pd_wz_
yaw 位置误差 PD 控制器
Controller/Slave/Slave.hpp:163
Velocity chassis::controller::Slave< BufferCapacity, Offline >::v_ref_
当前正在跟踪的参考速度(世界系)
Controller/Slave/Slave.hpp:166上位机主控模式的底盘控制器。 syhanjin 2026-02-24
Controller/Slave/Slave.hpp