我正在使用一台装有处理软件的计算机发送Arduino (通过USB串行连接)数据来设置一些伺服系统的角度。现在,所有这些都工作得很好,但有很多抖动。我使用鼠标移动来控制每个伺服的旋转程度。理论上,它应该像屏幕上的鼠标一样平滑,但实际上存在一些抖动。无论如何,以减少这种抖动?
发布于 2012-06-18 04:44:02
原因有很多。
即使不是第一个,也不是最不重要的,就是电力不足。在这种情况下,伺服系统在稳定到所需位置之前通常会发生growl和振荡。如果你的伺服系统已经驱动了一个机械装置,你可能还想确认它们是否能提供足够的扭矩。
另一个因素-您的输入速度可能会超过伺服的最大旋转速度,请查看规格并计算是否是这种情况。
还有另一种串行连接没有那么快,并且最轻微的时序偏差可能会导致不均匀的运动。您可能希望在Arduino固件中添加记录伺服命令定时和坐标的代码,然后根据收集的数据绘制图表-您将清楚地看到是否是这种情况。
一种可能的解决方法是实现基于Arduino定时器中断的伺服处理程序,只需给它所需的结束角度和到达时间,并让它找出它-这将使串行定时从画面中消失。
最后,您的伺服可能不是最好的质量-如果有过多的内部摩擦,无论输入多么流畅,它们都不会平滑地移动。
发布于 2012-06-18 19:05:17
您可能正在尝试将角度更改为快速,您可以通过每隔几毫秒更新角度而不是立即更改角度来解决此问题。
https://stackoverflow.com/questions/11074079
复制相似问题