Dalong357 发表于 2011-11-1 22:12:24

mega128+74hc595 多路舵机控制器实现方法讨论

我最近一直想用M128做一个多路的舵机控制器,也学习了 polarbear 枫叶 的关于采用595控制LED灰度等级的方法(http://www.ourdev.cn/bbs/bbs_content_all.jsp?bbs_sn=985613)(26楼),但是个人感觉在舵机控制上稍加改动即可以实现多路控制,但是控制精度可能较低,无法达到1us的要求,但是现在市场上却已经存在了差不多满足要求的产品,故想和各位高手谈论下有没有其他的方法可实现的?
目前本人的做法是通过单片机的SPI接口来驱动舵机,可以驱动舵机,但是精度却很难达到,求个高手指教。
欢迎大家讨论灌水。

Dalong357 发表于 2011-11-1 22:13:06

占楼贴图
今天不知网络问题还是什么图片传不上来,我正在尝试……
还请各位高手,帮忙讨论下
http://cache.amobbs.com/bbs_upload782111/files_47/ourdev_690963OLRBZ1.JPG
单片机与595接线图 (原文件名:595-PWM电路.JPG)

Dalong357 发表于 2011-11-2 10:21:37

难道没有人对该话题感兴趣吗?那大家的舵机控制都是怎么做到10us以下精度的呢?

bbs2009 发表于 2011-11-2 11:05:50

jim20090418 发表于 2011-11-2 11:59:06

回复【楼主位】Dalong357
我最近一直想用m128做一个多路的舵机控制器,也学习了 polarbear 枫叶 的关于采用595控制led灰度等级的方法(http://www.ourdev.cn/bbs/bbs_content_all.jsp?bbs_sn=985613)(26楼),但是个人感觉在舵机控制上稍加改动即可以实现多路控制,但是控制精度可能较低,无法达到1us的要求,但是现在市场上却已经存在了差不多满足要求的产品,故想和各位高手谈论下有没有其他的方法可实现的?
目前本人的做法是通过单片机的spi接口来驱动舵机,可以驱动舵机,但是精度却很难达到,求个高手指教。
欢迎大家讨论灌水。
-----------------------------------------------------------------------

用595除非cpu的速度夠快否則達不到你的要求的,

舵機只要能在20ms內更新一次pwm的值就可以保證它的工作,

因此不需要每路都同步更新pwm的值,

所以可以利用74hc138或74HC238配合AVR的一路PWM來達到多路輸出的目的,

如下圖,AVR的硬件PWM每做完一次PWMSEL即+1並且把下個PWM的值輸入到硬件PWM比較器內(OCRn).
http://cache.amobbs.com/bbs_upload782111/files_47/ourdev_690983QW0PQY.png
(原文件名:2011-11-02_114624.png)

longwu537 发表于 2012-6-19 21:28:49

看大自己之前账号发的帖子,又重新弄了下,发现离成功不远了,做好后考虑下贡献出来啊……

rainismk 发表于 2012-6-21 17:02:49

''SPI接口来驱动舵机''   这个显得没有必要吧,不知道是我理解的不对?   莫非你是用SPI通讯控制多路输出,

rainismk 发表于 2012-6-21 17:06:06

哦,看了你上面的描述,明白了, 那么你用74HC595 即使输出多路能单独控制吗,

longwu537 发表于 2012-9-8 10:24:54

rainismk 发表于 2012-6-21 17:06 static/image/common/back.gif
哦,看了你上面的描述,明白了, 那么你用74HC595 即使输出多路能单独控制吗, ...

这个帖子好久不看了,利用SPI可定可以实现没录单独控制啊,因为你只要用个数组存放每路的电平状态,然后修改任一路后在送给595就可以实现了啊
页: [1]
查看完整版本: mega128+74hc595 多路舵机控制器实现方法讨论