我以前很容易把控制问题看成一条公式:输入一个目标,经过控制器,得到一个输出。机器人真正动起来之后,公式只是很小的一部分。
先看一眼完整的回路
在轮腿机器人的工作里,我会把问题拆成四个互相拉扯的部分:模型告诉我系统应该怎样运动,传感器告诉我它此刻在哪里,控制器决定下一步要做什么,执行器再把这个决定变成实际的电流和力。
稳定不是静止。稳定是系统面对误差时,仍然知道下一步要往哪里走。
这也是为什么五连杆动力学、VMC 和整车控制不能各自孤立。模型过于理想,传感器噪声就会放大;采样和执行存在延迟,控制器的“正确答案”也可能来得太晚。
我现在会先问三个问题
- 这个误差来自模型、测量,还是执行器本身?
- 系统能否在下一次采样前完成一轮判断?
- 如果最坏的情况发生,系统会以什么方式退化?
这些问题比调一个参数更慢,但它们让调参不再只是碰运气。好的控制代码应该让人看见它在保护什么,也让现场的人知道它为什么会这样反应。
继续观察,继续记录。
— Timer