2
使用PID获得差动机器人直线驱动的方法
考虑一个差动驱动机器人,该机器人具有两个电动轮,每个电动轮都附有一个编码器,用于反馈。假设每个DC电动机都有一个功能,其浮点数从-1到1,并设置PWM信号以向该电动机提供成比例的功率。不幸的是,并非所有电机都相等,因此向每个电机发送相同的PWM信号会使机器人转向左侧或右侧。我试图考虑如何使用附加到每个电机的编码器作为PID回路的输入来直线驱动机器人。 我将执行以下操作:我将左右编码器之间的差取整,将误差限制在某个范围内,将其归一化为[-1,1],然后将其映射到电机功率0至1。因此,如果I和D为零,并且我们得到的误差为1(因此,左马达的旋转比右马达大得多),则左马达将设置为0,右马达将设置为1(造成硬剩下)。 这有什么问题吗?有什么更好的方法?