Python编程实现机器人编码器控制
1. 控制器参数调整与速度计算
在机器人控制中,通过调整控制器的常数,可以使各个因素对最终结果产生更大的影响。在实际应用中,我们不使用微分分量,相当于将其常数设为零。积分分量可以让机器人进行自我调整,但需要使用非常小的常数,因为较大的值可能会使机器人开始晃动。
右电机的速度计算公式如下:
integral_sum = integral_sum + error
right_motor_speed = speed + (error * proportional_constant) + (integral_sum * integral_constant)
为了让右电机能够加速或减速以匹配左电机,需要保留一定的电机速度余量。如果速度接近100%,会出现削波现象,这可能导致机器人行为异常,因此输入速度应不超过80%。
2. 创建Python PID控制对象
为了方便使用,我们创建一个PID控制对象,实际上这是一个PI(比例积分)控制器。以下是 pid_controller.py 文件中的代码:
class PIController(object):
def __init__(self, proportional_constant=0, integral_constant=0):
self.proportional_constant = proportional_constan
超级会员免费看
订阅专栏 解锁全文
660

被折叠的 条评论
为什么被折叠?



