[STC单片机]

STC12C5单片机控制步进电机驱动器

[复制链接]
3359|12
手机看帖
扫描二维码
随时随地手机跟帖
Scj_rb|  楼主 | 2015-9-12 11:39 | 显示全部楼层 |阅读模式
一个单片机控制两台步进电机,动作相同,主要是想
按键启动,电机正转一段时间后停止,再反转一样的距离。
然后控制一个继电器开,由传感器控制关
接着控制另一个继电器开和关。。最好能自动运行,不知道定时器怎么设置,STC12有两路PWM输出的
有人写过类似的c语言代码吗?谢谢了
最好能说说思路

相关帖子

受不了了| | 2015-9-12 11:58 | 显示全部楼层
PWM怎么计数,用定时器中断好了,再说,你这动作描述让人实在无语

使用特权

评论回复
xyz549040622| | 2015-9-12 15:57 | 显示全部楼层
用简单的if,else就可以实现的。PWM配置参考官方的例程。重要的是设立你个标志位,以及注意各个步骤互锁的实现。

使用特权

评论回复
无量寿经| | 2015-9-12 21:07 | 显示全部楼层
如果使用专用驱动器,只要控制发给驱动器的脉冲个数就能控制电机转动步数,单片机普通IO口即可方便实现。
15.5  步进电机专用驱动器介绍
一般的步进电机步进角都较大(比如7.5°),这种步进角通过前面的程序控制最小一次也得走半个步进角,即3.75°,对于实际的精密控制一般是不能满足要求的,有两种解决办法,一种是采用减速齿轮组并将齿轮组与电机封装成一体,比如60:1的减速齿轮组,减速后7.5°的步进角就变成了7.5°/ 60= 0.125°,另一种办法是使用步进电机专用驱动器,外形如图15-9所示,通过外置的选择开关可以将步进角设置得很小,前面介绍的驱动电路与程序都不需要了,驱动器使用非常简单,电路连接如图15-10所示,PULS+与PULS-用于输入脉冲信号,脉冲信号频率越高,电机转速越快,DIR+与DIR-用于电机运转方向控制,ENBL+与ENBL-为使能信号,悬空时正常工作,如果提供输入信号,则使电机处于静止状态时绕组完全断电,使能信号一般可以不用。

未命名10.JPG
若想了解更多电机驱动内容,可查阅下面这本书第15章。
书封面照片.JPG


使用特权

评论回复
Scj_rb|  楼主 | 2015-9-15 23:08 | 显示全部楼层
受不了了 发表于 2015-9-12 11:58
PWM怎么计数,用定时器中断好了,再说,你这动作描述让人实在无语

我是新手。。。定时中断吗,

使用特权

评论回复
Scj_rb|  楼主 | 2015-9-15 23:08 | 显示全部楼层
无量寿经 发表于 2015-9-12 21:07
如果使用专用驱动器,只要控制发给驱动器的脉冲个数就能控制电机转动步数,单片机普通IO口即可方便实现。15 ...

好的,谢谢你!

使用特权

评论回复
Scj_rb|  楼主 | 2015-9-15 23:09 | 显示全部楼层
xyz549040622 发表于 2015-9-12 15:57
用简单的if,else就可以实现的。PWM配置参考官方的例程。重要的是设立你个标志位,以及注意各个步骤互锁的 ...

给方向信号的时候,电机没反应。:(

使用特权

评论回复
xyz549040622| | 2015-9-16 08:09 | 显示全部楼层
Scj_rb 发表于 2015-9-15 23:09
给方向信号的时候,电机没反应。

不知道你用的什么电机,买电机的时候,应该会给你提供一段驱动程序。即使用IO模拟,你需要先弄懂电机的驱动,把电机驱动起来才可以考虑后面的。

使用特权

评论回复
无量寿经| | 2015-9-16 08:43 | 显示全部楼层
给方向信号的时候,电机没反应。
一般是电机停止后,改变向信号电平,再发驱动脉冲。

使用特权

评论回复
受不了了| | 2015-9-17 21:23 | 显示全部楼层
Scj_rb 发表于 2015-9-15 23:08
我是新手。。。定时中断吗,

中断赋值决定脉冲频率,以及计数,步进电机要转起来很容易,要转得好十分不容易,有些行业,就给一个步进电机发脉冲,没三五几年的功力根本没发言权

使用特权

评论回复
songchenping| | 2015-9-20 08:52 | 显示全部楼层
描述的时候应该是第一步。。。第二步。。。第三步。。。

使用特权

评论回复
zhoukaiyue| | 2017-2-15 19:39 | 显示全部楼层
学习学习

使用特权

评论回复
学到了,谢谢

使用特权

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

本版积分规则

1

主题

4

帖子

0

粉丝