打印

用单片机对步进电机加减速的控制

[复制链接]
4146|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
nedonho|  楼主 | 2010-6-23 10:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
奇兵| | 2010-6-23 14:07 | 只看该作者
用定时器的中断间隔做时基,定义两个变量a,b;a为记录定时器中断次数的,b则为比较用;比较ab两变量大小当a>b时这对a变量进行清零,同时改变输出到步进电机的脉冲;这样可以通过改变b的值来改变输出脉冲的间隔,加速时使b减小,减速时使b增大.

使用特权

评论回复
板凳
maibb| | 2010-6-29 20:14 | 只看该作者
直接用PWM控制不是很好吗?

使用特权

评论回复
地板
cgchb| | 2010-7-9 16:40 | 只看该作者
用PWM 来控制

使用特权

评论回复
5
airwill| | 2010-7-18 08:25 | 只看该作者
楼主的要求, 不合适用 PIC , 个人觉得.
要想得到比较准确的线性频率变化(这时加减速的要求), 就自然会用到除法.
因为单片机容易实现的是时间线性(定时器计数).倒数关系, 时间线性, 频率肯定不线性.
PIC 的乘除法, 的确是个累活. 而数 K 的频率要求的计算量 对应 PIC 来说够呛了
就这个计算, 还不如 MCS51, 或者 AVR, 本人推荐, 我也用 AVR 干这事.

使用特权

评论回复
6
airwill| | 2010-7-18 08:29 | 只看该作者
记得经我改造的 AVR 24位 除以 16 位的整数除法(汇编程序) 大约 150 多个周期.
完全胜任 频率线性的定时器计算.

使用特权

评论回复
7
autuy123| | 2010-7-18 12:05 | 只看该作者
pic 的单片机可以的, 我用的是 dspic30f的

只是对电机的加加减速曲线不是那么清楚,所以电机没有过太高的转速,最高也就120转,我是用PWM做的

使用特权

评论回复
8
望断云山| | 2010-7-19 23:12 | 只看该作者
事先做一张加速曲线表,取表中的值写入定时器

使用特权

评论回复
9
5880527| | 2010-7-20 10:24 | 只看该作者
楼上正解

使用特权

评论回复
10
YINGZEZIGA| | 2010-7-20 17:54 | 只看该作者
做个表格,查表就可以了。10KHz向定时器里面写个值A,9KHz向定时器里面写个B。不过我做这个东西从来不使用定时器寄存器的,定时器固定频率,例如500KHz,利用另外一个计数寄存器来判断是否到了需要更改电平方向的时刻,这样一个定时器可以给多个脉冲频率输出使用。这个应该很简单,但是要注意,你要做线性的减速的话,控制的时候需要给低频多留一些时间,否则电机有可能无法启动。

使用特权

评论回复
11
5880527| | 2010-7-21 10:24 | 只看该作者
11# YINGZEZIGA
500KHZ?

使用特权

评论回复
12
sankyo_feng| | 2010-7-29 21:26 | 只看该作者
占位,不是太懂

使用特权

评论回复
13
winkle.zhang| | 2010-9-26 13:43 | 只看该作者
受教
不过6L说的不是很懂

使用特权

评论回复
14
zhuyjgh| | 2010-10-8 17:00 | 只看该作者
500k的定时器,,还有时间干其他的活吗??11楼用的什么片子啊??

使用特权

评论回复
15
TRINAMIC| | 2011-4-23 22:10 | 只看该作者
500k的定时器,,还有时间干其他的活吗??11楼用的什么片子啊??》》》》》如果这样MCU的负担很重啊 哪有空间做其他的啊,加减速的确比较难控制,可以采用专用的控制芯片,这样可以解放MCU的负担,MCU来控制更高层次的控制比如I/O之类得
3轴控制芯片Stsedir 输出 .pdf (839.73 KB)

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

31

帖子

1

粉丝