步进电机控制电路设计解读.docx
- 文档编号:8024367
- 上传时间:2023-01-28
- 格式:DOCX
- 页数:18
- 大小:122.17KB
步进电机控制电路设计解读.docx
《步进电机控制电路设计解读.docx》由会员分享,可在线阅读,更多相关《步进电机控制电路设计解读.docx(18页珍藏版)》请在冰豆网上搜索。
步进电机控制电路设计解读
黄冈职业技术院
系别:
04机电工程系
专业:
应用电子
班级:
二班
设计者:
戴久志、邓修海、徐凯
指导老师:
温锦辉
设计课题:
液晶8279步进电机系统
设计时间:
二00七年六月二十号
步进电机控制电路设计
1、系统基本方案
根据设计要求,步进电机控制电路可以分为控制模块、显示模块、电源模块、键盘模块、电机驱动模块、步进电机部分。
步进电机控制电路基本模块方框图如图1.1所示。
2、系统硬件设计与实现
2.1、步进电机介绍
随着工业技术的不断进步,在自动化控制、精密机械加工、航空航天技术及所有要求高精度定位等高新技术领域,步进电机的得到了广泛的应用。
步进电机是一种将脉冲信号转化为角位移的执行机构。
若在其输入端加入有规律的脉冲信号,就能驱动步进电机按设定的方向移动一定的距离或转动一个角度(称为“步距角”)。
从结构上步进电机分为单相、双相、三相、四相、五相、六相等多种。
本次设计使用步进电机分为A、B、C、D四相绕组,每相通电一次称为一拍。
四相步进电机根据不同的通电规律可分为几种工作模式:
1、四相单四拍:
A-B-C-D;
2、四相双四拍:
AB-BC-CD-DA;
3、四相单八拍:
A-AB-B-BC-C-CD-D-DA;
4、四相双八拍:
AB-ABC-BC-BCD-CD-CDA-DA-DAB。
步进电机的正反转与电机每相的通电顺序有关,可以改变相序来改变电机的正反转。
步进电机每步所旋转角度的大小,称为步距角(βB)。
它是由电机本身转子的齿数(ZR)。
一个通电循环内通电节拍数(MQ)决定的。
即βB=360/ZRMQ。
电机出厂的步距角是固定的。
四相步进电机的步距角为0.90/1.80(表示半步工作时为0.90,整步工作时为1.80)。
步进电机转速的高低与控制脉冲频率有关。
改变控制脉冲频率,可改变电机转速。
2.2、步进电机驱动模块
步进电机的驱动电路采用常用的电动机驱动芯片L298,它能够接受标准的TTL电平控制信号,驱动电机。
L298操作时能提供的电压能达到46V,直流电流4A,具有过热保护功能,逻辑“0”的输入电压达到1.5V。
L298在控制器的控制下驱动一个步进电动机,控制器产生L298年需的控制信号,以控制步进电机的运动状态。
为了防止定子绕组的电感作用,使得电流切换时产生过电压,步进电机每相绕组两端都须并联一个用天在换相时起续流作用的肖基特二极管。
步进电机驱动电路原理图如图2.2.1所示。
图2.2.1步进电机驱动电路原理图
2.3、控制子程序
2.3.1、四相单四拍正转子程序
四相单四拍正转子程序主要用于控制步进电机以步距角为1.80角度顺时针旋转。
控制器从端口依次向步进电机的每相输出脉冲信号。
每输出一个脉冲信号步进电机转动一定的角度。
其工作模式为:
A-B-C-D。
;******单四拍正转******
MOVP1,#01H
ACALLDELAY2
MOVP1,#02H
ACALLDELAY2
MOVP1,#04H
ACALLDELAY2
MOVP1,#08H
ACALLDELAY2
2.3.2、四相单四拍反转子程序
四相单四拍反转子程序主要用于控制步进电机以步距角为1.80角度逆时针旋转。
其工作模式为:
D-C-B-A。
;******四拍反转******
MOVP1,#08H
ACALLDELAY2
MOVP1,#04H
ACALLDELAY2
MOVP1,#02H
ACALLDELAY2
MOVP1,#01H
ACALLDELAY2
2.3.3、四相双四拍正转子程序
四相双四拍正转子程序主要用于控制步进电机以步距角为1.80角度顺时针旋转。
其工作模式为:
AB-BC-CD-DA。
MOVP1,#0CH
ACALLDELAY2
MOVP1,#06H
ACALLDELAY2
MOVP1,#03H
ACALLDELAY2
MOVP1,#09H
ACALLDELAY2
2.3.4、四相双四拍反转子程序
四相双四拍反转子程序主要用于控制步进电机以步距角为1.80角度逆时针旋转。
其工作模式为:
DA-CD-BC-AB。
MOVP1,#09H
ACALLDELAY2
MOVP1,#03H
ACALLDELAY2
MOVP1,#06H
ACALLDELAY2
MOVP1,#0CH
ACALLDELAY2
2.3.5、四相单八拍正转子程序
四相单八拍正转子程序主要用于控制步进电机以步距角为0.90角度顺时针旋转。
其工作模式为:
A-AB-B-BC-C-CD-D-DA。
MOVP1,#08H
ACALLDELAY2
MOVP1,#0CH
ACALLDELAY2
MOVP1,#04H
ACALLDELAY2
MOVP1,#06H
ACALLDELAY2
MOVP1,#02H
ACALLDELAY2
MOVP1,#03H
ACALLDELAY2
MOVP1,#01H
ACALLDELAY2
MOVP1,#09H
ACALLDELAY2
2.3.6、四相单八拍反转子程序
四相单八拍反转子程序主要用于控制步进电机以步距角为0.90角度逆时针旋转。
其工作模式为:
DA-D-CD-C-BC-B-AB-A。
MOVP1,#09H
ACALLDELAY2
MOVP1,#01H
ACALLDELAY2
MOVP1,#03H
ACALLDELAY2
MOVP1,#02H
ACALLDELAY2
MOVP1,#06H
ACALLDELAY2
MOVP1,#04H
ACALLDELAY2
MOVP1,#0CH
ACALLDELAY2
MOVP1,#08H
ACALLDELAY2
2.3.7、四相双八拍正转子程序
四相双八拍正转子程序主要用于控制步进电机以步距角为0.90角度顺时针旋转。
其工作模式为:
AB-ABC-BC-BCD-CD-CDA-DA-DAB
MOVP1,#0CH
ACALLDELAY2
MOVP1,#0EH
ACALLDELAY2
MOVP1,#06H
ACALLDELAY2
MOVP1,#07H
ACALLDELAY2
MOVP1,#03H
ACALLDELAY2
MOVP1,#0BH
ACALLDELAY2
MOVP1,#09H
ACALLDELAY2
MOVP1,#0DH
ACALLDELAY2
2.3.8、四相双八拍反转子程序
四相双八拍反转子程序主要用于控制步进电机以步距角为0.90角度逆时针旋转。
其工作模式为:
DAB-DA-CDA-CD-BCD-BC-ABC-AB。
MOVP1,#0DH
ACALLDELAY2
MOVP1,#09H
ACALLDELAY2
MOVP1,#0BH
ACALLDELAY2
MOVP1,#03H
ACALLDELAY2
MOVP1,#07H
ACALLDELAY2
MOVP1,#06H
ACALLDELAY2
MOVP1,#0CH
ACALLDELAY2
MOVP1,#0EH
ACALLDELAY2
2.4、显示模块
步进电机控制电路的显示模块采用液晶显示,因为液晶显示器与数码管相比,占用空间小、低功耗、无闪烁、降低视觉疲劳等优点。
故选用液晶显示器TG12864A。
2.4.1、液晶显示器工作原理
液晶是一种呈液体状的化学物质,当受到外界电场影响时,其分子会产生精确有序的排列。
如果对分子的排列加以适当的控制,液晶分子将会允许光线穿越。
液晶显示器的显示原理是在两片玻璃基板上装配向膜,液晶会沿着沟槽配向,具有偶极矩的液晶棒状分了在外加电场的作用下,其排列状态发生变化,使得通过液晶显示器件的光被调制,从而呈现明与暗或透过与不透过的显示效果。
在控制信号的控制下可以在显示屏上显示不同的字符、数字及图形。
液晶显示器由三部分构成:
点阵式液晶板、液晶驱动电路和液晶控制电路。
2.4.2、液晶管脚定义
TG12864A液晶显示器有8条数据线,6条控制线。
当与控制器相连接时,通过送入数据和指令,就能使模块正常工作。
管脚排列如表所示。
接口说明
a. 12864-1,12864-2接口说明表
管脚号
管脚
电平
说明
1
VSS
0V
逻辑电源地。
2
VDD
5.0V
逻辑电源正。
3
V0
LCD驱动电压,应用时在VEE与V0之间加一10K可调电阻另一头接Vcc即可。
4
D/I
H/L
数据\指令选择:
高电平:
数据D0-D7将送入显示RAM;
低电平:
数据D0-D7将送入指令寄存器执行。
5
R/W
H/L
读\写选择:
高电平:
读数据;低电平:
写数据。
6
E
H.H/L
读写使能,高电平有效,下降沿锁定数据。
7
DB0
H/L
数据输入输出引脚。
8
DB1
H/L
数据输入输出引脚。
9
DB2
H/L
数据输入输出引脚。
10
DB3
H/L
数据输入输出引脚。
11
DB4
H/L
数据输入输出引脚。
12
DB5
H/L
数据输入输出引脚。
13
DB6
H/L
数据输入输出引脚。
14
DB7
H/L
数据输入输出引脚。
15
CS1
H/L
片选择信号,高电平时选择前64列(左屏)。
16
CS2
H
片选择信号,高电平时选择后64列(右屏)。
17
RET
L
复位信号,低电平有效(一般接高电平即可)。
18
VEE
-10V
LCD驱动电源(自带)。
19
BL
AC
背光电源正,LED+。
20
BL
AC
背光电源负,LED-。
2.4.3、液晶显示指令描述
1、显示开/关设置
CODE:
R/W
D/I
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
L
L
L
L
H
H
H
H
H
H/L
功能:
设置屏幕显示开/关。
DB0=H,开显示;DB0=L,关显示。
不影响显示RAM(DDRAM)中的内容。
2、设置显示起始行
CODE:
R/W
D/I
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
L
L
H
H
行地址(0~63)
功能:
执行该命令后,所设置的行将显示在屏幕的第一行。
显示起始行是由Z地址计数器控制的,该命令自动将A0-A5位地址送入Z地址计数器,起始地址可以是0-63范围内任意一行。
Z地址计数器具有循环计数功能,用于显示行扫描同步,当扫描完一行后自动加一。
3、设置页地址
CODE:
R/W
D/I
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
L
L
H
L
H
H
H
页地址(0~7)
功能:
执行本指令后,下面的读写操作将在指定页内,直到重新设置。
页地址就是DDRAM的行地址,页地址存储在X地址计数器中,A2-A0可表示8页,读写数据对页地址没有影响,除本指令可改变页地址外,复位信号(RST)可把页地址计数器内容清零。
DDRAM地址映像表
Y地址
0
1
2
………
61
62
63
DB0
∫ PAGE0
DB7
X=0
DB0
∫ PAGE1
DB7
X=1
∷
DB0
∫ PAGE6
DB7
X=7
DB0
∫ PAGE7
DB7
X=8
4、设置列地址
CODE:
R/W
D/I
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
L
L
L
H
列地址(0~63)
功能:
DDRAM的列地址存储在Y地址计数器中,读写数据对列地址有影响,在对DDRAM进行读写操作后,Y地址自动加一。
5、状态检测
CODE:
R/W
D/I
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
H
L
BF
L
ON/OFF
RST
L
L
L
L
功能:
读忙信号标志位(BF)、复位标志位(RST)以及显示状态位(ON/OFF)。
BF=H:
内部正在执行操作; BF=L:
空闲状态。
RST=H:
正处于复位初始化状态; RST=L:
正常状态。
ON/OFF=H:
表示显示关闭; ON/OFF=L:
表示显示开。
6、写显示数据
CODE:
R/W
D/I
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
L
H
D7
D6
D5
D4
D3
D2
D1
D0
功能:
写数据到DDRAM,DDRAM是存储图形显示数据的,写指令执行后Y地址计数器自动加1。
D7-D0位数据为1表示显示,数据为0表示不显示。
写数据到DDRAM前,要先执行“设置页地址”及“设置列地址”命令。
7、读显示数据
CODE:
R/W
D/I
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
H
H
D7
D6
D5
D4
D3
D2
D1
D0
功能:
从DDRAM读数据,读指令执行后Y地址计数器自动加1。
从DDRAM读数据前要先执行“设置页地址”及“设置列地址”命令。
2.4.3、驱动子程序
;功能:
初始化
INT:
CLRRST
SETBRST
MOVRAM,#3FH
CALLINST
MOVRAM,#0C0H
CALLINST
RET
;功能:
写指令命令
INST:
PUSHDPH
PUSHDPL
CALLBUSY
MOVDPTR,#LCDIR
MOVA,RAM
MOVX@DPTR,A
POPDPL
POPDPH
RET
;功能:
写数据命令
DATA_:
PUSHDPH
PUSHDPL
CALLBUSY
MOVDPTR,#LCDDR
MOVA,RAM
MOVX@DPTR,A
POPDPL
POPDPH
RET
;功能:
检测液晶忙状态
BUSY:
MOVDPTR,#LCDIR
BUSY1:
MOVXA,@DPTR
ANLA,#80H
XRLA,#80H
JZBUSY1
RET
;功能:
清屏
CLEAR:
MOVR6,#08
MOVR7,#00
CLR0:
MOVA,R7
ADDA,#0B8H
MOVRAM,A
CALLINST
MOVRAM,#40H
CALLINST
MOVR3,#64
CLR1:
MOVRAM,#00H
CALLDATA_
DJNZR3,CLR1
INCR7
DJNZR6,CLR0
RET
2.4.4、液晶连接控制电路图
图2.3.3液晶连接控制电路图
2.4、8279键盘显示原理:
键盘分为独立式和行列式(矩阵式)两类。
独立式键盘电路简单,但当键盘键数较多时,占用较多的I/O口线,为了节省单片机的I/O口资源,使用可编程的键盘、显示接口器件Inter8279。
它能够完成键盘输入和显示控制两种功能。
键盘部分提供一种扫描的工作方式,可以和矩阵键盘相连接,能对键盘不断扫描、自动消抖、自动识别按下的键,并给出编码,能对双键或N个键同时按下时实行保护。
2.4.1、8279引脚功能
1、数据线
DB0——DB7是双向三态数据总线,在接口电路中与系统数据总线相连,用以传送CPU和Inter8279之间的数据和命令。
2、地址线
CS选中Inter8279,当A0=1时,为命令字及状态字地址;当A0=0时,为片内数据地址,故Inter8279芯片占用2个端口地址。
3、控制线
CLK:
Inter8279的时钟输入线。
IRQ:
中断请求输出线,高电平有效。
RD、WR:
读、写输入控制线。
SL0——SL3:
扫描输出线,用来作为扫描键盘和显示的代码输出或直接输出线。
RL0——RL7:
回复输入线,它们是键盘或传感器矩阵的信号输入线。
SHIFT:
来自外部键盘或传感器矩阵的输入信号,它是Inter8279键盘数据的次高位即D6位的状态,该位状态控制键盘上/下档功能。
在传感器方式和选通方式中,该引脚无用。
NTL/S:
控制/选通输入线,高电平有效。
键盘方式时,键盘数据最高位(D7)的信号输
入到该引脚,以扩充键功能;选通方式时,当该引脚信号上升沿到时,把RL0——RL7的数
据存入FIF0RAM中。
OUTA0——OUTA3:
通常作为显示信号的高4位输出线。
OUTB0——OUTB3:
通常作为显示信号的低4位输出线。
BD:
显示熄灭输出线,低电平有效。
当BD=0时将显示全熄灭。
2.4.2键盘/显示扫描方式
2.4.3、时钟编程命令
特征位D7D6D5=001
D4——D0用来设定分频系数,分频系数范围在0——31之间。
有的设计会用单片机的ALE端接Inter8279的CLK端,但ALE端输出的脉冲频率比Inter8279所
需工作时钟频率(100KHz)高出很多,通过设置分频系数就可使8279得到所需的时钟频
率。
(注意:
实验板上Inter8279的CLK并不直接连到ALE。
我们采用的是20分频以后的,刚好100K,此状态的延时去抖动时间为10.3MS。
2.4.4、8279控制子程序
1、初始化键盘:
MOVDPTR,#M8279;设置8279的命令口地址
MOVA,#34H;设置8279分频系数
MOVX@DPTR,A
MOVA,#01H;设置为按键方式
MOVX@DPTR,A
2、读回键值:
INT1_:
MOVDPTR,#M8279
MOVA,#40H
MOVX@DPTR,A
MOVDPTR,#D8279
MOVXA,@DPTR
MOVR4,A;存在R4里面
RETI
2.4.5键盘接口电路模块
3、系统软件设计与实现
系统的软件设计采用汇编语言,对单片机进行编程实现各项功能。
程序是在Windows2000环境下采用KeiluVision2软件编写,可以实现对步进电机正转、反转、停止以及速度调节等功能。
4、总结
本系统以单片机AT89S52、驱动集成块L298和Intel8279芯片为核心部件,利用液晶显示、键盘输入等技术实现了步进电机的正转、反转、速度、显示和键盘控制等功能。
在系统设计的过程中,力求硬件线路简单,充分发挥软件编程方便灵活的特点,来满足系统的设计要求。
在本次设计的过程中,也遇到了各种困难,但是通过仔细分析和不断的改进后解决了问题。
在这个过程中我们深刻地体会到共同协作和团队精神的重要性,提高了自已解决问题的能力。
4、参考文献
1胡宴如,耿苏燕.模拟电子技术.北京:
高等教育出版社,2004年
2黄智伟,王彦.全国大学生电子设计竞赛训练教程.北京:
电子工业出版社,2005年
3谢自美,电子线路设计.实验.测试.武汉:
华中科技大学出版社,2004年
5、附录
附录1源程序
附录2步进电机原理图
附录3系统功能及使用说明
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 步进 电机 控制电路 设计 解读