教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 行业资料 >

ULN2003驱动步进电机

来源:网络收集 时间:2026-09-15
导读: 反向驱动器驱动步进电机方案 基于GAL16V8和ULN2003的步进电机 驱动器的设计 任明岩 孙金英 利用阵列逻辑器件GAL16V8对步进电机实现控制,给出了89C55单片机控制的硬件、软件设计实例 引言 在医学检验中经常用到微孔板作为测量载体,为提高测量的

反向驱动器驱动步进电机方案

基于GAL16V8和ULN2003的步进电机

驱动器的设计

任明岩  孙金英

利用阵列逻辑器件GAL16V8对步进电机实现控制,给出了89C55单片机控制的硬件、软件设计实例

引言

在医学检验中经常用到微孔板作为测量载体,为提高测量的定位准确度和运行的平稳性,需要进行Y方向及X方向顺序运动,采用步进电机进行驱动是很好的选择。

中断口,2个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,片内时钟电路。AT89C55采用两种软件控制其进入省电睡眠模式的静态逻辑工作闲置方式设计,可以用RAM、定时/计数器、串行口和外部中断唤醒睡眠状态而继续工作,在睡眠模式下,RAM被冻

AT89C55和GAL16V8简介

AT89C55是Atmel公司的低电压、高性能8位单片机,兼容标准MCS-51指令系统,引脚兼容工业标准89C51和89C52芯片。AT89C55有40个引脚,32个外部双向I/O端口,同时内含2个外

结,其他功能全部停止,直至下个外中断触发或硬件复位方可开始运行。特别是可反复擦写的Flash存储器可有效地降低开发成本。

通用阵列逻辑GAL(Generic ArrayLogic)是美国Lattice公司研制的一种电

可擦除的PLD器件,可以用来构成译码器、优先级编码器、多路开关、比较器、移位寄存器、计数器、总线仲裁器等。采用GAL16V8器件对两相和四相混和式步进电机进行控制,不仅简化了系统的结构,降低了成本,而且编程灵活方便,提高了系统的可靠性,使系统具有更强的适应性。

硬件设计

本设计选用GALl6V8为环形脉冲分配器,ULN2003(国产型号为5G1413)是七路达林顿驱动器阵列,是个集电极开路(OC)输出的反向器.最大驱动电流可以达到500mA。通常应用时是把负载

图1 硬件驱动电路图

反向驱动器驱动步进电机方案

步进电机的一端接到VDD(12V)上,另一端接到输出引脚上,如16脚。为了防止程序进入死循环,增加了外部的硬件看门狗定时器MAX813L,其内部的看门狗定时器监控UP/UC的工作。如果在1.6s内未检测到其工作,内部的定时器将使看门狗输出WDO处于低电平状态,WDO将保持低电平直到在WDI检测到UP/UC的工作。将WR和WDO连接可使看门狗超时产生复位。采用两片ULN2003分别驱动X、Y方向的步进电机。具体硬件电路如图1所示。

F6 = D1&D2&!D3&D4;F5 = D1&D2&!D3&!D4;F4 = D1&!D2&D3&D4;F3 = D1&!D2&D3&!D4;F2 = D1&!D2&!D3&D4;F1 = D1&!D2&!D3&!D4;end motor。设置软件陷阱

当程序进入到非程序区,只要在非程序区设置拦截措施,使程序进入陷阱,然后强迫程序回到初始状态。如对CPU的RST指令对应的字节码为0FFH,如果不用的程序存储区预先写

软件设计

步进电机的脉冲控制通常是由逻辑电路实现的。在计算机控制的系统中,也可以通过编制程序,由扩展I/O口输出脉冲来决定电机的运行方式、方向及转速,但这种方式占用CPU的时间过多。GAL器件有多种型号,根据设计的需要,同时从经济的角度考虑,选用GALl6V8来实现四相混和式步进电机进行控制。使用ABEL语言编程,源码如下。

module motortitle

Operation of the simulator ondevices with motor

DATA I/O Corp.  21 10 2002FB1  device 'P16V8R';D1,D2,D3,D4  pin 2,3,4,5;F1,F2,F3,F4,F5,F6,F7,F8  pin19,18,17,16,15,14,13,12;

equations

F8 = D1&D2&D3&D4;F7 = D1&D2&D3&!D4;

图2 软件程序流程

汇编原码如下

MOV120: MOV     R3,#51HMOV121: LCALL   MOV124 ;12行前进程序1

DJNZMOV

R3,MOV121P1,#0H ;电机失电

MOV R0,#100RD08:DJNZ

LCALL  DELYR0,RD08

MOV80:MOV     R3,#13HMOV

2CH,#7 ;8列前进程序1

MOV81:LCALL   MOV84DJNZMOV

R3,MOV81

P1,#0H ;电机失电

入0FFH,则当程序因干扰而“飞”到该区域执行代码时,就相当于执行1条RST指令,从而达到系统复位的目的。程序流程如图2所示。

MOV  R0,#10H

RD09:   LCALL  DELY;测量单孔程序

DJNZSETB

R0,RD09ET0;开定时器0

LCALL COTP; 单孔测量程序CLR ET0 ;关定时器0LCALLQUITINC

2DH

LCALLD10MS;延时1msLCALLD10MS;延时1msMOV85: MOV  R4,#0CH;8列前进程序2

MOV83:LCALL MOV86DJNZ R4, MOV83MOV P1,#0HMOV R0,#10HRD03:DJNZSETB

LCALL  DELYR0,RD03ET0;开定时器0

LCALLCOTP;单孔测量程序

(下转第44页)

反向驱动器驱动步进电机方案

R1:13K,1%R2:10K,1%R3:1K,1%R4、R5:10K

R6、R7:0.33Ω,1W,1%C1:4700pF,5%C2、C3:1000pFC4:47μF,50VC5:0.1μF

D1、D2、D3、D4:D1FS4斩波频率理论值:f=1/0.72 4700 10-12 13 103=22.7kHz;

驱动电流理论值:Ip=(5×1)/

图6 实际测试电流波形图

(10+1)×50% ×(1/0.33)=0.68A;

实际测量结果如图6,斩波频率为

马达能够平稳加速到一定的速度,或者减速到停止。

加减速曲线一般有2种:渐进式和阶梯式。在汽车电动车窗的应用中,阶梯式在实际使用中效果更好。阶梯式加减速曲线见图5。

应用实例

应用实例的电路原理如图5所示,PWM设计值为50%,所使用的器件参数如下。

U1:MTD2005FU2:74HCT07

23kHz,驱动电流为700mA,符合设计要求。

(上接第36页)

CLR  ET0 ;关定时器0LCALL  QUITINC  2DH

LCALL D10MS;延时1msLCALL  D10MS

DJNZ  2CH,MOV85;测量,循环7次,

CJNE  R7,#1,RD02 ;判断测量是否完毕

POP  07H

SETB P3.3 ;P3.3=1 highvoltage = 450V

LCALL …… 此处隐藏:729字,全部文档内容请下载后查看。喜欢就下载吧 ……

ULN2003驱动步进电机.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/2272014.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)