扬州大学本科毕业设计(论文) 毕业设计用纸
三相六拍工作方式通电换相的正序为:A?AB?B?BC?C?CA,共有6个通电状态。如果P1口输出的控制信号中,0代表使绕组通电,1代表绕组断电,则可用6个控制字来对应这6个通电状态。这6个控制字如表3-3所列。
表3-3 三相六拍工作方式的控制字
通电状态 A AB B BC C CA P1.2(C) 1 1 1 0 0 0 P1.1(B) 1 0 0 0 1 1 P1.0(A) 0 0 1 1 1 0 控制字 FEH FCH FDH F9H FBH FAH 在程序中,只要依次将这6个控制字送到P1口,步进电动机就会转动一个齿距角。每送一个控制字,就完成一拍,步进电动机转过一个步距角。程序就是根据这个原理进行设计的。
用R0作为状态计数器,用来指示第几拍,正转时加1,反转时减1的操作规律,则正转程序为: CW:
INC CJNE MOV
ZZ: MOV
MOV MOVC MOV RET
;6个控制字
0F9H,0FBH,0FAH
反转程序: CCW: DEC
R0
;反转减1
R0
;正转加1
;如果计数器等于6修正为0
R0,#06H,ZZ
R0,#00H A,R0
;计数器值送A ;取控制字 ;送控制字到P1口
DPTR,#ABC P1,A
;指向数据存放首地址
A,@A+DPTR
ABC: DB 0FEH,0FCH,0FDH,
27
扬州大学本科毕业设计(论文) 毕业设计用纸
CJNE MOV
FZ: MOV
MOV MOVC MOV RET
R0,#0FFH,FZ ;如果计数器等于FFH修正为5
;计数器值送A ;取控制字 ;送控制字到P1口
R0,#05H A,R0 DPTR,#ABC P1,A
;指向数据存放首地址
A,@A+DPTR
软件法在电动机运行过程中,要不停产生控制脉冲,占用大量CPU时间,可能使单片机无法同时进行其他工作,所以硬件法使用更广泛。 2、硬件法
硬件法是使用脉冲分配器芯片,来进行通电换相控制。脉冲分配器有很多中,下面介绍8713集成电路芯片。
8713属于单极性控制,用于控制三相和四相步进电动机,可以选择不同的工作方式:
● 三相步进电动机:单三拍、双三拍、六拍; ● 四相步进电动机:单四拍、双四拍、八拍。
8713可以选择单时钟输入和双时钟输入;具有正反转控制、初始化复位、工作方式和输入脉冲监视等功能;所有输入端内部都设有斯密特整形电路,提高抗干扰能力;使用4~8V直流电源,输出电流为20mA。
8713有16个引脚,各引脚功能如表3-4所示。
表3-4 8713引脚功能 引 脚 1 2 3 4 5、6 功 能 正转脉冲输入端 反转脉冲输入端 脉冲输入端 转向控制端:0—反转;1—正转 01、10为单三(四)拍;11为六(八)拍 说 明 1、2脚为双时钟输入端 3、4脚为单时钟输入端 工作方式选择:00为双三(四)拍; 28
扬州大学本科毕业设计(论文) 毕业设计用纸
7 8 9 三/四相选择;0—三相;1—四相 地 复位端。低电平有效 10、11、 输出端。四相用13、12、11、10脚, 12、13 分别代表A、B、C、D;三相用13、12、11脚,分别代表A、B、C 14 工作方式监视。0为单三(四)拍; 1为双三(四)拍;脉冲为六(八)拍 15 16 输入脉冲状态监视,与时钟同步 电源
29
扬州大学本科毕业设计(论文) 毕业设计用纸
第四章 步进电机控制系统软件部分
4.1定时器中断服务
步进电机的速度控制通过控制单片机发出的步进脉冲频率来实现。 步进电机启动时如果一次将速度升到给定速度,由于启动频率超过极限启动频率fq,会发生失步现象,而到终点时若突然停下,由于惯性作用,又会发生过冲现象而影响定位精度;若缓慢升降速,又会影响执行机构的工作效率。所以对步进电机的加减速要严格控制,在保证不失步和过冲的前提下,用最快的速度移动到指定位置。
4.1.1定时器初值
本设计的步进电机的齿数为40,齿距角为360°/40=9°,采用三相六拍时步距角为9°/6=1.5°。
程序中用T0定时中断控制步进电机每走一步所用的时间(单步时间),改变T0定时中断的定时时间,就改变了步进电机的转速。定时器T0用方式一,由于步进电机的步距角为1.5°,转一圈要240个脉冲,步进电机转速为N(r/min),则每分钟需送脉冲数据的个数为240N,既每送一个脉冲数据需时:
t=1s/240N(min)=250000/N(us)
定时器T0的计数初值T=65536-11.0592*t/12
30
扬州大学本科毕业设计(论文) 毕业设计用纸
=65536-11.0592*250000/12N
=65536-230400/N (单片机晶振为11.0592MHz)
4.1.2定时器中断服务子程序
SPEED:CPL
PUSH PUSH CLR CLR MOV ADD ADD
ACC PSW C TR0
P1.0
;改变P1.0电平状态
;累加器A进栈保护 ;程序状态字进栈保护
;进位位清零
;关定时器
;取T0低8位当前值 ;加8个机器周期 ;低8位加定时常数 ;低8位重装定时常数
A,TL0 A,#08H A,30H TL0,A A,TH0 A,31H TH0,A TR0 PSW ACC
MOV MOV
;取T0高8位当前值
;高8位加定时常数
ADDC MOV
;高8位重装定时常数 ;开定时器 ;程序状态字出栈 ;累加器出栈
;返回
SETB POP POP
RETI
4.2 速度控制
步进电动机启动时如果一次将速度升到给定速度,由于启动频率超过极限启动频率fq,会发生失步现象,而到终点时若突然停下,由于惯性作用,又会发生过冲现象而影响定位精度;若缓慢升降速,又会影响
31