单片机控制步进电机的原理 时间:2011-05-18 23:07:15 来源: 作者: 本资料详细介绍邓步进电机的工作原理以及单片机控制步进电机的特点。步进电机是数字控制电机,它将脉冲信号转变成角位移,即给一个脉冲信号,步进电机就转动一个角度,因此非常适合于单片机控制。 步进电机可分为反应式步进电机、永磁式步进电机和混合式步进电机。步进电机区别于其他控制电机的最大特点是,它是通过输入脉冲信号来进行控制的,即电机的总转动角度由输入脉冲数决定,而电机的转速由脉冲信号频率决定。它具有高精度的定位、位置及速度控制、具定位保持力、动作灵敏、开回路控制不必依赖传感器定位、中低速时具备高转矩、高信赖性、小型、高功率等特征,使其具有广泛的应用。 一、步进电机的工作原理 步进电机是机电控制中一种常用的执行机构,它的用途是将电脉冲转化为角位移,它的的驱动电路根据控制信号工作,控制信号由单片机产生。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,控制换相顺序,即通电控制脉冲必须严格按照一定顺序分别控制各相的通断。通过控制脉冲个数即可以控制角位移量,从而达到准确定位的目的。控制步进电机的转向,即给定工作方式正序换相通电,步进电机正转,若按反序通电换相,则电机就反转。控制步进电机的速度,即给步进电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步,两个脉冲的间隔越短,步进电机就转得越快。同时通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。 二、设计方案 本设计采用51单片机AT89C51(晶振频率为12MHZ)对四相六线制步进电机(内阻33欧,步进1.8度,额定电压12V)进行控制。通过I/O口输出的具有时序的方波作为步进电机的控制信号,信号经过芯片ULN2003驱动步进电机。ULN2003 是高耐压、大电流达林顿陈列,由七个硅NPN 达林顿管组成。ULN2003 的每一对达林顿都串联一个2.7K 的基极电阻,在5V 的工作电压下它能与TTL 和CMOS 电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。ULN2003 工作电压高,工作电流大,灌电流可达500mA,并且能够在关态时承受50V 的电压,输出还可以在高负载电流并行运行。通过ULN2003构成步进电机的驱动电路,电路图如图1所示。51的25-28口接ULN2003的1-4输入端。另外,用键盘来对电机的状态进行控制,并用数码管显示电机的转速,采用74LS164作为2位单个数码管的显示驱动。74LS164带锁存,使用串行接法可以节约I/O口资源。其电路图如图2所示。通过51的TXD和RXD口对CLK和DATA发送数据。 file:///C:/Users/victor/AppData/Local/Temp/ksohtml/wps_clip_image-17944.png 图1 51单片机控制步进电机线路图 file:///C:/Users/victor/AppData/Local/Temp/ksohtml/wps_clip_image-3326.png 三、预期目标 将图1图2连接起来,使之实现:按下启动键,电机旋转,按下加1键,速度增加,按下减1键,速度降低,最高速度为100转/分,最低速度为25转/分,按下停止键,电机停转。速度值在数码管上显示出来。 综合以上选取的方案,总的流程如图3所示。 file:///C:/Users/victor/AppData/Local/Temp/ksohtml/wps_clip_image-31807.png 图3 系统电路流程图 结束语 设计的步进电机基本能实现预期目标,经过调试和修改,但还是存在问题,比如按开关的时候会出现不稳定情况,转速有时比较乱,显示有时也有些不理想,后面的工作就是在软件和硬件等方面进行修改,以完全达到预期目标。 <注>但用单片机是不够的,关键是要有个专用的驱动芯片,驱动芯片含有每相电流检测,当收到单片机相位开关信号时打开电流通路,由电机电感形成三角波电流,到达电机额定电流即停止而维持等待下个相位信号,并且该芯片还有停转保持半电流控制脚等功能,具体可参考芯片资料,才能根据芯片功能编程,步进电机越转越快可通过单片机对相应相位脚发控制脉冲,使脉冲频率变快就可实现,但最高速度受给驱动芯片的主电源电压有关,电压低时电感中的三角波电流到不了额定就可能发生不同步。 如果带有电机控制器的,控制器只有步进输入脉冲脚,正反转控制脚,就可对控制器的这两脚控制,在步进输入脚脉冲加快就可使转速加快。 |