拾瑞 发表于 2013-6-22 09:01:38

本帖最后由 拾瑞 于 2013-6-27 14:42 编辑

根据你的代码,你的舵机刷新远高于20ms!

如果你担心50HZ的频率不够,更改SERVO库!

舵机的运行好象是这样的:

1,给出转动角度指令
2,舵机按令动作(问题在这里,由于舵机转动是相对于MCU来说,太慢了,也许舵机从接到指令到完成需要20ms)
3 , 转动到指定角度后,舵机需要保持角度的信号,所以需要一个刷新指令的时间(这里对不对,我没有考证过,知道真相的请指正)这个刷新时间,可能最小是2.5ms,最大是20ms!(这个我是根据舵号控制信号猜想的,也不知道理论上对不对,但我让舵负载状态下做过试验,刷新时间从2.6-19都没有问题,即频率50-400HZ)

----------

所以楼主的程序中,你舵机即使采用1度递增方法,程序运行的速度仍然远远高于舵机运行的速度,不知道你的舵机是什么反应?

如果你在FOR循环里加入delay(5),并且将库文件中的刷新率由50HZ改为400HZ,程序应该是能运行的,舵机也会随动!

幻生幻灭 发表于 2013-8-13 21:04:50

学长 发表于 2013-5-21 22:22 static/image/common/back.gif
先贴图跟代码 再解释




才发现还有繁体的Wiki@弘毅
http://www.game7777.net/doku.php?id=arduino:arduinoreference
页: 1 [2]
查看完整版本: 舵机运行时间一个小问题