腿足机器人之三驱动器控制算法
腿足机器人的驱动器控制算法(如PID和PD)是实现其运动稳定性和动态响应的核心技术。
PID与PD控制的基本原理
- PID
PID 控制器是一种常见的反馈控制器,其名称来源于比例(Proportional)、积分(Integral)和微分(Derivative)这三个控制作用元素。PID 控制器通过计算设定点(期望值)和系统实际输出之间的误差,并对该误差应用比例、积分和微分运算,以调整系统输入,从而使系统输出更接近设定点。
- 比例项(P):快速响应当前误差,但可能导致稳态误差或超调。
- 积分项(I):累积历史误差,消除稳态误差(如重力或摩擦导致的静差),但可能引入振荡或积分饱和。
- 微分项(D):预测未来误差趋势,抑制超调并提高稳定性。
PID 控制的基本表达式为:
u ( t ) = K p e ( t ) + K i ∫ 0 t e τ d τ + K d d e ( t ) d t u(t)=K_pe(t)+K_i\int_0^te^{\tau}d\tau + K_d\frac{de(t)}{dt} u(t)=Kpe(t)+Ki∫0teτdτ+Kddtde(t)
其中 e ( t ) = r ( t ) − y ( t ) e(t)=r(t)-y(t) e(t)=r(t)−y(t)是误差项,即设定点 r ( t ) r(t) r(t)和系统输出 y ( t ) y(t) y(t)的差值, K p K_p Kp, K i K_i Ki, K d K_d Kd为比例、积分和微分增益(控制参数)。
- PD
PD 控制器是 PID 控制器的一个简化版本,仅包含比例和微分项。这种控制器常用于机器人关节和其他需要快速响应且对稳态误差不敏感的系统中,因为微分项能够预测系统误差的未来趋势,并立即做出调整。
PD 控制的基本表达式为:
u ( t ) = K p e ( t ) + K d d e ( t ) d t u(t)=K_pe(t)+ K_d\frac{de(t)}{dt} u(t)=Kpe(t)+Kddtde(t)
相对PID算法,减少积分项带来的相位滞后,提高动态稳定性,但是无法消除静态差(如重力导致的关节角度偏差)。
在腿足机器人等应用中,常用伺服电机进行精确的位置、速度和扭力控制。伺服电机通常是集成的系统,包含电机本身和一个电机控制器。这些伺服控制器一般都集成了控制算法,如 PID 或 PD 控制,用户无需从头编写这些基本的控制算法。
但对于不同的运动模式,如奔跑或缓慢移动,机器人的控制需求可能会有所不同,这通常表现在对速度、加速度、稳定性等方面的不同需求。因此,PD 控制参数( K p K_p Kp和 K d K_d Kd)需要根据不同的运动模式进行调整以适应各种动态行为。
比如 在奔跑时,系统可能需要更高的响应速度和较大的增益,以实现快速动作和高动态稳定性。此时, K p K_p Kp(比例增益)和 K d K_d K