amoBBS 阿莫电子论坛

 找回密码
 注册
搜索
bottom↓
楼主: chenyuqiu

STC11F16XE驱动4个步进电机(软件实现16细分)

  [复制链接]
发表于 2011-1-18 16:03:34 | 显示全部楼层
学习。
发表于 2011-1-23 20:02:27 | 显示全部楼层
lz 采用“基于定时器中断的多任务非抢占式轮循程序架构“.
发表于 2011-2-1 17:37:58 | 显示全部楼层

(原文件名:1.JPG)

使用LZ的

unsigned int code wTableBrakeSpace211_1[]做出来的曲线
发表于 2011-2-10 17:35:43 | 显示全部楼层
标记啦!
 楼主| 发表于 2011-2-10 21:48:07 | 显示全部楼层
回复【103楼】winkle
-----------------------------------------------------------------------

呵呵,厉害啊,一下子就会了!!!
发表于 2011-2-11 20:07:21 | 显示全部楼层
回复【106楼】chenyuqiu 小陈
回复【103楼】winkle  
-----------------------------------------------------------------------
呵呵,厉害啊,一下子就会了!!!
-----------------------------------------------------------------------
但是还是没有明白55楼的 加减速算法
但思路应该是:“基于定时器中断的多任务非抢占式轮循程序架构“.
 楼主| 发表于 2011-2-12 08:54:33 | 显示全部楼层
回复【107楼】winkle
-----------------------------------------------------------------------

呵呵,思路是对的,感兴趣的话可以了解了解
发表于 2011-2-12 11:59:07 | 显示全部楼层
LZ可以发一份给我吗,谢谢了。 xiduoduo49789@163.com
发表于 2011-2-12 12:23:23 | 显示全部楼层
麻烦LZ发一份,辛苦了。tcdzdiy@126.com
 楼主| 发表于 2011-2-24 13:34:24 | 显示全部楼层
自己再顶~~~~~~~~~~~~~~
发表于 2011-2-24 15:41:41 | 显示全部楼层
收藏
发表于 2011-2-24 17:38:04 | 显示全部楼层
mark
发表于 2011-2-24 19:28:57 | 显示全部楼层
好东西留下学习!
发表于 2011-2-24 19:39:39 | 显示全部楼层
先留个记号慢慢学
发表于 2011-2-24 19:46:47 | 显示全部楼层
楼主,我想看看电路图???
我是新新手
想学习学习
E-mail:  ssclark@163.com
万分感谢
 楼主| 发表于 2011-2-25 08:52:42 | 显示全部楼层
回复【116楼】ssclark
-----------------------------------------------------------------------

上面有我的QQ联系方式,大家有兴趣的话可以多交流交流~~~
发表于 2011-2-28 18:33:24 | 显示全部楼层
感兴趣,望楼主也发一份给我,谢谢!  邮箱:zjjmcu@163.com
发表于 2011-3-1 17:46:48 | 显示全部楼层
很有兴趣···望楼主也给一份,long-lian123@163.com   谢谢!!!
发表于 2011-3-4 00:50:02 | 显示全部楼层
先MARK一下!
发表于 2011-4-14 14:18:56 | 显示全部楼层
LZ可以发一份给我吗,谢谢了。 duxiaowei321@163.com
发表于 2011-4-25 23:11:03 | 显示全部楼层
步进值是什么意思
发表于 2011-5-1 21:08:25 | 显示全部楼层
回复【楼主位】chenyuqiu 小陈
-----------------------------------------------------------------------

陈先生:能否把步进电机细分的程序发给我一个,我的电子邮件是:chenyonghuang2006@126.com   谢谢!
发表于 2011-5-1 23:03:09 | 显示全部楼层
强帖留名
发表于 2011-5-5 09:00:15 | 显示全部楼层
真的很好
发表于 2011-5-5 09:02:53 | 显示全部楼层
回复【35楼】lloovve
-----------------------------------------------------------------------

发表于 2011-5-5 09:18:59 | 显示全部楼层
步进电机 标记下。。。
 楼主| 发表于 2011-5-5 15:29:46 | 显示全部楼层
呵呵,很多天没来了,有这么多人顶我的贴,谢谢!!!
留邮箱发文件这种交流方式我想不大好,这也有违这个论坛的本意来的,所以大家有什么问题最好就是在这里讨论,方便以后的人也能学习借鉴得到嘛~~
发表于 2011-5-5 16:32:38 | 显示全部楼层
回复【131楼】chenyuqiu 小陈

-----------------------------------------------------------------------

你的曲线表跨度太大,小一点好,大负载,大惯量时电机跑的吃力,效率也不好。

我试下来好一点的曲线表是像下图的:


(原文件名:111.JPG)



把曲线表也放给大家,250~3500Hz的,对应 2 细分使用,差不多好用了,用的AVR,比较器方波就可以了,每步直接改,不用像PLC那样每个频率再走几拍,所以加速很快,也很有力:)
曲线表=  
{
    32000,27352,21959,17755,14987,13241,12003,11065,10321, 9711,/*10*/
    9200, 8762, 8383, 8049, 7753, 7488, 7248, 7031, 6832, 6649,/*20*/
    6480, 6324, 6179, 6043, 5917, 5798, 5686, 5580, 5480, 5386,/*30*/
    5296, 5211, 5129, 5052, 4978, 4907, 4840, 4775, 4712, 4653,/*40*/
    4595, 4540, 4486, 4435, 4385, 4337, 4291, 4246, 4203, 4161,/*50*/
    4120, 4080, 4042, 4005, 3969, 3933, 3899, 3866, 3834, 3802,/*60*/
    3771, 3741, 3712, 3684, 3656, 3629, 3602, 3576, 3551, 3526,/*70*/
    3502, 3478, 3455, 3432, 3410, 3388, 3367, 3346, 3326, 3306,/*80*/
    3286, 3267, 3248, 3229, 3211, 3193, 3176, 3159, 3142, 3125,/*90*/
    3109, 3093, 3077, 3061, 3046, 3031, 3016, 3002, 2988, 2974,/*100*/
    2960, 2946, 2933, 2919, 2906, 2894, 2881, 2869, 2856, 2844,/*110*/
    2832, 2821, 2809, 2798, 2786, 2775, 2764, 2754, 2743, 2733,/*120*/
    2722, 2712, 2702, 2692, 2682, 2672, 2663, 2653, 2644, 2635,/*130*/
    2626, 2617, 2608, 2599, 2591, 2582, 2574, 2565, 2557, 2549,/*140*/
    2541, 2533, 2525, 2517, 2509, 2502, 2494, 2487, 2479, 2472,/*150*/
    2465, 2458, 2451, 2444, 2437, 2430, 2423, 2417, 2410, 2403,/*160*/
    2397, 2391, 2384, 2378, 2372, 2366, 2360, 2354, 2348, 2342,/*170*/
    2336, 2330, 2324, 2319, 2313, 2307, 2302, 2296, 2291, 2286,/*180*/
}
发表于 2011-5-5 16:38:13 | 显示全部楼层
这个是好贴啊
 楼主| 发表于 2011-5-5 17:04:42 | 显示全部楼层
回复【132楼】ada1983
回复【131楼】chenyuqiu 小陈
-----------------------------------------------------------------------
你的曲线表跨度太大,小一点好,大负载,大惯量时电机跑的吃力,效率也不好。
我试下来好一点的曲线表是像下图的:


(原文件名:111.jpg)
引用图片
把曲线表也放给大家,250~3500hz的,对应 2 细分使用,差不多好用了,用的avr,比较器方......
-----------------------------------------------------------------------

呵呵,我那个表格跨度不大,配合的那种加减速算法程序效果很好。
发表于 2011-5-5 17:09:16 | 显示全部楼层
回复【134楼】chenyuqiu 小陈
-----------------------------------------------------------------------

嗯,正常使用 没问题都可以,遇到极限情况了才要特别重视曲线的,不然就算是直线加速也可以的,和PLC差不多,我做过实验的,都有数据的:)
发表于 2011-5-5 18:11:43 | 显示全部楼层
支持
发表于 2011-5-5 18:27:06 | 显示全部楼层
学习一下
 楼主| 发表于 2011-5-7 13:08:04 | 显示全部楼层
多谢这么多人来捧场!!
发表于 2011-5-7 23:27:24 | 显示全部楼层
谢谢楼主的分享.一定支持!
发表于 2011-5-8 00:07:59 | 显示全部楼层
mark
发表于 2011-5-8 00:31:28 | 显示全部楼层
谢谢
发表于 2011-5-8 11:30:17 | 显示全部楼层
谢谢了
发表于 2011-5-19 20:38:37 | 显示全部楼层
码不在多,而在于精!
评价:妙!
虽然说没能上传全部工程,但也算是有图有码了阿莫同志是不是应该考虑穿条裤了
 楼主| 发表于 2011-5-20 09:41:01 | 显示全部楼层
回复【143楼】cnwep
码不在多,而在于精!
评价:妙!
虽然说没能上传,但也算是有图有码了阿莫同志是不是应该考虑穿条裤了
-----------------------------------------------------------------------

呵呵,哪里敢要阿莫给裤子啊。看到大家对步进马达那么激_情,所以搞出来一个驱动小方案而已。不过如果大家想要全部工程的话我也是可以上传上来的。
发表于 2011-5-21 11:48:38 | 显示全部楼层
真不错,该给条裤子!
 楼主| 发表于 2011-5-21 12:28:46 | 显示全部楼层
回复【145楼】ccdavid
真不错,该给条裤子!
-----------------------------------------------------------------------

谢谢,过奖了!!
 楼主| 发表于 2011-5-21 12:33:01 | 显示全部楼层
有这么多人来捧场对我来说已经是莫大的支持了,谢谢。
另:我已经发表了另外一篇步进电机的帖子了,主要是A3992(和A3972通用的)和L6205的应用,有驱动电路和驱动代码。
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4751589&bbs_page_no=1&search_mode=3&search_text=chenyuqiu&bbs_id=9999
发表于 2011-5-21 12:51:01 | 显示全部楼层
mark
发表于 2011-5-21 13:27:41 | 显示全部楼层
原来如此,阿莫还不给LZ条裤子啊
 楼主| 发表于 2011-5-21 16:47:53 | 显示全部楼层
回复【149楼】trent5145
原来如此,阿莫还不给lz条裤子啊
-----------------------------------------------------------------------

发表于 2011-5-21 17:16:40 | 显示全部楼层
步进电机 标记下。。。
发表于 2011-5-31 15:10:59 | 显示全部楼层
chenyuqiu 小陈
应该给你个完整的代码和原理图给我们学习
发表于 2011-5-31 17:26:03 | 显示全部楼层
mark
发表于 2011-6-2 17:57:20 | 显示全部楼层
如果把这个工程全放上来就好了,那大家真的要好好谢谢小陈同志了
 楼主| 发表于 2011-6-2 18:22:24 | 显示全部楼层
回复【154楼】lixingling
如果把这个工程全放上来就好了,那大家真的要好好谢谢小陈同志了
-----------------------------------------------------------------------

呵呵。如果大家都很想要整个工程代码的话我可以考虑一下,让大家个个获益!!
发表于 2011-6-2 22:39:25 | 显示全部楼层
回复【144楼】 小陈
回复【143楼】cnwep  
码不在多,而在于精!  
评价:妙!  
虽然说没能上传,但也算是有图有码了阿莫同志是不是应该考虑穿条裤了
-----------------------------------------------------------------------
呵呵,哪里敢要阿莫给裤子啊。看到大家对步进马达那么激_情,所以搞出来一个驱动小方案而已。不过如果大家想要全部工程的话我也是可以上传上来的。
-----------------------------------------------------------------------

chenyuqiu同志请注意了:引用原文是不能篡改的!注意:"虽然说没能上传,但也算"不是原文哦
发表于 2011-6-2 22:49:33 | 显示全部楼层
我觉得154楼想法是好的,把工程全放上,请大家多学点东西,希望小陈同志能够满足大家对知识的渇望!我顶你 小陈同志,阿莫给裤子
 楼主| 发表于 2011-6-3 21:25:50 | 显示全部楼层
回复【157楼】luoxi
我觉得154楼想法是好的,把工程全放上,请大家多学点东西,希望小陈同志能够满足大家对知识的渇望!我顶你 小陈同志,阿莫给裤子
-----------------------------------------------------------------------

等放假后我找个时间整理好整个工程文件,共享给大家!!!
赞同的话就顶起来!!!
 楼主| 发表于 2011-6-3 21:29:07 | 显示全部楼层
回复【156楼】cnwep
回复【144楼】 小陈
回复【143楼】cnwep   
码不在多,而在于精!   
评价:妙!   
虽然说没能上传,但也算是有图有码了阿莫同志是不是应该考虑穿条裤了  
-----------------------------------------------------------------------  
呵呵,哪里敢要阿莫给裤子啊。看到大家对步进马达那么激_情,所以搞出来一个驱动小方案而已。不过如果大家想要全部工程的话我也是可以上传上来的。
-----------------------------------------------------------------------
chenyuqiu同志请注意了:引用原文是不能篡改的!注意:"虽然说没能上传,但也算"不是原文哦
-----------------------------------------------------------------------

请问我在什么地方改过你的原文了???我没有改过你的原文啊???
发表于 2011-6-3 22:10:52 | 显示全部楼层
先谢谢了,小陈同志,我支持你!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!顶!
发表于 2011-6-3 22:37:17 | 显示全部楼层
新手路过,谢谢【159楼】 chenyuqiu 小陈同志无私的精神,我也来支持下!
发表于 2011-6-4 02:20:50 | 显示全部楼层
步进电机 mark   mark 。。。
发表于 2011-6-8 21:34:10 | 显示全部楼层
期待楼主作品!我顶!
发表于 2011-6-9 00:45:26 | 显示全部楼层
studying...
发表于 2011-6-15 19:29:32 | 显示全部楼层
小陈哥,牛人。一直想去学习步进电机的细分,和加减速的算法。不知道怎么下手。
发表于 2011-6-16 19:05:42 | 显示全部楼层
mark
发表于 2011-6-16 20:01:10 | 显示全部楼层
我要打印一份看看,谢谢啦
 楼主| 发表于 2011-6-16 20:02:08 | 显示全部楼层
回复【167楼】qd118118
我要打印一份看看,谢谢啦
-----------------------------------------------------------------------

不用客气,希望能帮到你!!!
发表于 2011-6-16 22:07:52 | 显示全部楼层
mark
发表于 2011-6-16 22:08:48 | 显示全部楼层
收藏
发表于 2011-6-19 19:51:10 | 显示全部楼层
楼主的作品了?
发表于 2011-6-20 13:59:00 | 显示全部楼层
标记!
发表于 2011-6-22 15:10:31 | 显示全部楼层
小陈大哥
再来一些猛料嘛
大家都期待您的奉献了
发表于 2011-6-22 17:09:39 | 显示全部楼层
谢谢分享
发表于 2011-6-22 17:29:36 | 显示全部楼层
牛逼完了
 楼主| 发表于 2011-6-22 19:41:33 | 显示全部楼层
回复【175楼】FlashNuk
牛逼完了
-----------------------------------------------------------------------

不理解你这句话是啥意思???
发表于 2011-6-23 08:20:14 | 显示全部楼层
他说楼主说放假以后给我们工程文件,现在还没给
发表于 2011-6-24 13:20:27 | 显示全部楼层
mark
step motor
发表于 2011-6-24 14:24:52 | 显示全部楼层
太强了。。。MARK
发表于 2011-6-24 14:41:09 | 显示全部楼层
mark
发表于 2011-7-2 08:20:17 | 显示全部楼层
是什么思路,加减速
 楼主| 发表于 2011-7-2 08:33:03 | 显示全部楼层
回复【182楼】liukan
是什么思路,加减速
-----------------------------------------------------------------------

简单来讲就是梯型加减算法
发表于 2011-7-2 11:30:26 | 显示全部楼层
可是你这个表的数是怎么得来的,我在那调用加减速函数
发表于 2011-7-2 14:38:24 | 显示全部楼层
使用LZ的

unsigned int code wTableBrakeSpace211_1[]做出来的曲线
i.word < wTableBrakeSpace211_1[cPanMotorNowSpeed】
i.word 不是绝对位置吗?跟这个数组里面的数有什么关系,数组里的数不是定时器的值吗?这个有点不解,
发表于 2011-7-2 14:40:04 | 显示全部楼层
楼主应该举一个这表是如何调用小例子的应用,那样就容易理解
发表于 2011-7-2 18:00:43 | 显示全部楼层
顶楼主
 楼主| 发表于 2011-7-2 21:30:22 | 显示全部楼层
回复【185楼】liukan
使用lz的  
unsigned int code wtablebrakespace211_1[]做出来的曲线
i.word &lt; wtablebrakespace211_1[cpanmotornowspeed】
i.word 不是绝对位置吗?跟这个数组里面的数有什么关系,数组里的数不是定时器的值吗?这个有点不解,

-----------------------------------------------------------------------

unsigned int code wtablebrakespace211_1[]这个数组是减速参考点,用来减速用的。
发表于 2011-7-2 22:11:40 | 显示全部楼层
参考点,怎么做的,跟距离有什么关系
 楼主| 发表于 2011-7-3 00:20:26 | 显示全部楼层
回复【189楼】liukan
参考点,怎么做的,跟距离有什么关系
-----------------------------------------------------------------------

看来你还没看懂上面的驱动程序
发表于 2011-7-3 01:39:35 | 显示全部楼层
mark
发表于 2011-7-3 08:09:29 | 显示全部楼层
期待楼主继续放猛料啊!真的很猛!
发表于 2011-7-3 09:03:40 | 显示全部楼层
unsigned int code wtablebrakespace211_1[]这个数组
是怎么做出来的,你从一地方到另外一个地方只有加速吗?表中的数是怎么计算出来?
 楼主| 发表于 2011-7-3 10:59:03 | 显示全部楼层
回复【193楼】liukan
-----------------------------------------------------------------------

表中的数已经是一组经验数值了,可以固定不变的了
发表于 2011-7-3 11:04:11 | 显示全部楼层
这个做法不错。
发表于 2011-7-3 13:06:56 | 显示全部楼层
请问楼主void Uln2803Drive(unsigned char cPort, unsigned char cPosition) 函数中的cPositon参数是什么含义?

看到上面楼主说是电机步数,不是很理解,还望楼主能指点一下
 楼主| 发表于 2011-7-3 14:27:17 | 显示全部楼层
回复【196楼】lvyi913
请问楼主void uln2803drive(unsigned char cport, unsigned char cposition) 函数中的cpositon参数是什么含义?
看到上面楼主说是电机步数,不是很理解,还望楼主能指点一下
-----------------------------------------------------------------------

就是电机步数,比如你是用1.8°的电机,则360/1.8 = 200,乘以16细分 200*16 = 3200
发表于 2011-7-3 15:16:50 | 显示全部楼层
谢谢楼主小陈!继续看程序了!

例如1.8度的电机,16细分的话,一圈是3200个脉冲,那请问这种情况cPosition取值多少呢?cPosition是8位的变量,好像最大值为63。
友情提示:标题不合格、重复发帖,将会被封锁ID。详情请参考:论坛通告:封锁ID、获得注册邀请码、恢复被封ID、投诉必读
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|阿莫电子论坛(原ourAVR/ourDEV) ( 公安备案:44190002001997(交互式论坛) 工信部备案:粤ICP备09047143号 )

GMT+8, 2019-10-18 01:09

阿莫电子论坛, 原"中国电子开发网"

© 2004-2018 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表