YaphetS 发表于 2012-5-17 22:00:32

请教关于步进电机驱动器的使用?

一般传统的步进电机驱动器使用起来都很方便,一般就是3组输入端,
分别是脉冲,方向,使能,

需要控制步进电机走6步只需要给6个脉冲,

我这里想问的,是想寻求一个比较好的控制方案,
假设我要控制步进电机走的步数,也就是控制我输入的脉冲数,同时又要控制步进电机的速率,就是脉冲的频率,就是我单片机
给的频率,这里我用的是PWM
为了控制脉冲数我以前是讲单片机输出脉冲的端口既接到驱动器,又接到单片机定时器捕捉的端口上,当捕捉的脉冲数
达到我设定的,就关断pwm模块,但是感觉这样控制很复杂,
不知道大家有没有什么推荐的,
因为现在要同时控制2个这样的步进电机,感觉以前的方法好烦琐。

ITOP 发表于 2012-5-17 22:09:09

楼主问题想的复杂了,其实你只要设定一个走的距离,然后换算成步数,脉冲数就行了,在使用定时器走相应的距离就行了!

YaphetS 发表于 2012-5-17 22:24:27

ITOP 发表于 2012-5-17 22:09 static/image/common/back.gif
楼主问题想的复杂了,其实你只要设定一个走的距离,然后换算成步数,脉冲数就行了,在使用定时器走相应的距 ...

你能说得明白点吗?
我觉得你可能没有明白我的意思呢。

.titrwh 发表于 2012-5-17 22:25:46

输出PWM的同时打开产生这个PWM的定时器中断,中断内计数即可。

YaphetS 发表于 2012-5-17 22:42:20

.titrwh 发表于 2012-5-17 22:25 static/image/common/back.gif
输出PWM的同时打开产生这个PWM的定时器中断,中断内计数即可。

我现在就是这么做的 就是感觉控制有点麻烦
因为步进电机一直在运动,
我准备加个CPLD专门做运动控制,
单片机和cpld交换数据。

YaphetS 发表于 2012-5-18 02:42:15

不知道 这个问题 为什么 这么少的人 讨论。。

rifjft 发表于 2012-5-18 03:26:06

电机虽然在动,但是信号是单片机控制的,所以发信号时直接计脉冲数,这样最省事。别把简单的事情复杂化了

而控制脉冲的频率方面,既然都能输出脉冲了,调节频率也不是难事。关键是自己要想通才能编出来

控制电机的多少,在于单片机的速度和你的程序能协调好

rifjft 发表于 2012-5-18 03:27:31

顺便说一下, 签名中的视频就是速度可调、脉冲数有限度变化的{:tongue:}

ITOP 发表于 2012-5-18 12:07:27

楼主的意思应该是使用不同的速度走一段距离吧!

YaphetS 发表于 2012-5-18 12:17:19

ITOP 发表于 2012-5-18 12:07 static/image/common/back.gif
楼主的意思应该是使用不同的速度走一段距离吧!

对 用不同的速度 走一段确定的距离

ITOP 发表于 2012-5-18 12:21:47

设定好加速减速,使用定时器,中断就可以了,这个只要一片AVR就可以搞定了!

jingwaner 发表于 2012-5-18 13:55:56

用单片机的普遍做法是:
1、脉冲分流,让定时器计数
2、PWM 中断计数
无论哪一种,单片机都是频繁进入中断,细分一高,甚至几us就一个中断,总觉得太伤身体。。。

楼主的加CPLD的想法,之前我也有想过,可惜换公司了没继续做下去
这种绝对是好方法。

YaphetS 发表于 2012-5-18 14:05:16

jingwaner 发表于 2012-5-18 13:55 static/image/common/back.gif
用单片机的普遍做法是:
1、脉冲分流,让定时器计数
2、PWM 中断计数


好 我准备发扬你的精神 ,搞不好继续完善还能流片呢就用cpld
页: [1]
查看完整版本: 请教关于步进电机驱动器的使用?