简介
介绍一个简单的步进电机驱动器方案,原作者公开发布自己的设计,包括原理图、接线、原材料清单。
描述:
Bruce Shapiro找我来搞了个UBW项目(使用USB接口的驱动板),以解决他电脑上没有并行接口的问题。UBW的设计远超出我的期望。除了达成最初的设计目标,它同样可以作为其它各种形式的固件的很好的平台。但还是有个问题!Bruce过去在他的鸡蛋机器人课程上使用UCN5804B步进电机驱动板,因为它很容易配合实验电路板,并且简单易用。不幸的是,它们现在要17美元一个,还很难找到。Bruce希望我能设计制作一款同样能搭载在实验电路板上的替代品,仍然只需要两条输入线(步数和方向),能驱动两极步进电机。于是就有了EasyDriver的设计。
简介:
每个EasyDriver 能够为两级步进电机提供大约每相750mA的驱动。它被设置为固定的8步细分模式。(所以如果你的电机是每圈200步,你使用EasyDriver时为每圈1600步)。这是一种基于Allegro A3967驱动芯片的细分断路器。对于此设计的完整规格,请查阅A3967的参数表。它的最大电流从150mA到750mA。它可以采用最大驱动电压大概是30V,其中包括板载5V的调压器,所以只需要一个电源。质优价廉,这玩意儿只要10美元,比你自己制作电路板更便宜。
我并不出售EasyDriver。这项设计和UBW一样是免费向公众发布的。任何人可以参考本页所述的设计方案并随心所欲的改动。我会提供原理图、电路板布局,还有原材料清单和如何制作和使用这一方案的说明。
不过,你也可以在SparkFun上买到EasyDriver成品,15美元一个。
状态:
(09/17/08)Daniel Thompson已经写了一个绝妙的教程(包含视频),配合Arduino使用EasyDriver来驱动步进电机!谢谢Daniel!
注意:很多人在电源、EasyDriver和Arduino未接地的情况下进行尝试。这可能会失效!所以先确认下接地吧,这样更容易成功。
(5/23/07)增加了V3方案的文档。
(4/6/07)建立最初的网页,放出了EasyDriver的V1、V2、V3的设计修订。
EasyDriver Hardware Versions Matrix
|
|
原理图
|
电路板布局
|
Picture
|
Guide
|
Eagle文件和物料清单
|
EasyDriver V1
|
N.A. |
N.A.
|
Here
|
N.A.
|
N.A.
|
EasyDriver V2
|
N.A. |
N.A. |
Here
|
N.A. |
N.A.
|
EasyDriver V3
|
Here |
Here |
Not Available yet
|
Here |
Here |
版本说明:
- EasyDriver V1 - 这是第一次尝试. 我在 BatchPCB (强烈推荐)制作了两片. 它工作得很好,但是因为板子太小发热量太大。并且没有可调的电流限制和5V调节器。
- EasyDriver V2 - 这是第二次尝试。我在 Futurlec制作了一些,没有用焊接掩模或者丝网印刷。这块板子比V1要大了一倍,散热好多了。 加上了5V的调压器,新增了可变的电流限制。
- EasyDriver V3 - 对V2的优化设计,板载了可变电流限制,转为0603组件。因为对于V2的设计还是挺有信心的,我就没有实际制作过V3。
说明:
Q) 我怎么来调节可变的电流限制?
A) 运行 R6 - 那个 10K 的电流限制组件 :) 其一,它会告诉驱动芯片提供每线圈750mA(通过线圈电阻和输入电压);其二,每线圈150mA。
Q) 我能用EasyDriver来驱动何种电机?
A) EasyDriver所基于的Allegro 3967是一种两级驱动器。这意味着它有一个内置的H桥,通过单个或两个线圈来传输电流。你可以使用4线、6线或8线步进电机。唯一不能使用的是5线步进电机。(它需要单级驱动器)
Q) 为什么EasyDriver这么热?
A) PWM(脉冲宽度调制)电流限制驱动器(所以叫做 '砍刀' 驱动器)会很快的开启和关闭线圈电流。这保证了最大的总电流(由R6控制)始终是通过步进电机的线圈的,即使它没动作。这正是EasyDriver的工作方式。这意味着驱动器持续的通过大量电流,同时它内部的电阻并不为零,所以会发热。如果你把R6调到每线圈通过750mA,整个EasyDriver就会烫手了。我是不会把手指放上去(摸它烫不烫)的,不过确实是很热。(在最低值-大约每线圈150mA-仅仅是微微发热)你觉得有必要的话可以在上面加个小风扇。但是不用害怕,驱动器芯片在165摄氏度会自动切断,它是自保护的。V3有相当一部分铜片,加快散热,情况比V1要好多了。
Q) 我能用什么硬件/软件来测试EasyDriver?
A) 很快,我会发布一个Liberty Basic 示例代码,通过一块UBW板或者并行接口来一次测试4块EasyDriver。
Q) 我怎么才能连接EasyDriver?
A) EasyDriver上所有的9针都在一个.100" 方阵里。这意味着可以插入一块实验电路板。当你将其插入一块实验板,你可以将你的步进电机插入四个电机针脚(JP4),你的5V-30V电源插到GND和 V+针(JP1),你的步数和方向信号连接到STP和DIR针(J3)。左下角的GND针脚只是用来做结构支撑的,但是你需要的话也可用于接地。你也可以做一个简单的带.100" 方阵母接头的连接线(比如调试样机时)。这样就很容易把很多EasyDriver和步进电机连接起来了。
注意我在EasyDriver V3丝网印刷是有一些错误,STEP针没有标记,电机线圈输入针也标记不清。请参考下图:
Q) 仅仅为了使用A3967芯片需要这么多工作啊。我不能直接把A3967焊接在我自己的电路板上吗?这样多省钱。
A) 当然。(笑)EasyDriver是提供给那些不介意花点小钱,省得麻烦自己去制作电路板来支持驱动芯片的人。是提供给那些需要得到一个可用的设计方案,而不是亲自去试来试去的人。是提供给那些需要搞个鸡蛋机器人而弄不到5804B芯片的人。如果你正在设计自己的电路板,那就不需要EasyDriver 了。直接把芯片放到你自己的电路板上就好了。
|