图5-3
2. 驱动系统
传动驱动部分包括步进电机的驱动和电磁铁的驱动,步进电机须满足快速急停、定位和退刀时能快速运行、工作时能带动工作台并克服外力(如切削力、摩擦力)并以指令的速度运行。在定位和退刀时电磁铁吸合使绘笔抬起,绘图时能及时释放磁力使笔尖压下。
1)步进电机驱动电路和工作原理
步进电机的速度控制比较容易实现,而且不需要反馈电路。设计时的脉冲当量为0.005mm,步进电机每走一步,工作台直线行进0.005mm。
步进电机驱动电路中采用了光电偶合器,它具有较强的抗干扰性,而且具有保护CPU的作用,当功放电路出现故障时,不会将大的电压加在CPU上使其烧坏。
图5-4 步进电机驱动电路图
该电路中的功放电路是一个单电压功率放大电路,当A相得电时,电动机转动一步。电路中与绕组并联的二极管D起到续流作用,即在功放管截止是,使储存在绕组中的能量通过二极管形成续流回路泄放,从而保护功放管。与绕组W串联的电阻为限流电阻,限制通过绕组的电流不至超过额定值,以免电动机发热厉害被烧坏。
由于步进电机采用的是三相六拍的工作方式(三个线圈A、B、C),其正转的通电顺序为:A-AB-B-BC-C-CA-A,其反转的通电顺序为:A-AC-C-CB-B-BA-A。
步进时钟 A相波形 B相波形 C相波形
图5-5 三相六拍工作方式时相电压波形(正转)
2)电磁铁驱动电路
该驱动电路也采用了光电偶合器,但其功放电路相
对简单。其光电偶合部分采用的是达林顿管,因为驱动电磁铁的电流比较大。
图5-6 电磁铁驱动
3)电源设计
两电机同时工作再加上控制系统用电,所需电源容量比较大,需要选择大容量电源。此系统中用到的电源电压为27V、12V、5V,为了便于管理和电源容量需求,就采用了标准的27V电源作为基准,通过芯片进行电压转换得到所需的12V和5V电压。
图5-7 电源转换电路图
电路中在转换芯片的前后有两个电容,前面电容起防止自激作用,后面电容起滤波作用。此外,在具体应用的过程中,LM7805必须加上散热片。
3. 传感器和人机界面
由于步进电机不需要反馈电路,但是要注意工作台不能超过最大行程。因此,
必须在X、Y轴的方向各加上两个行程开关。这里行程开关作用有两个:(1)防止工作台超过最大行程,使电机损坏(2)可以用与定位。所以这4个行程开关就充当了传感器。
人机界面设计的准则就是要有良好的人机交互能力,一般要求操作简便,界面简洁明了。此系统中共有9个LED,LED1灯亮表示X轴负方向禁止通行,LED2灯亮表示X轴正方向禁止通行,LED3灯亮表示Y轴负方向禁止通行,LED4灯亮表示Y轴正方向禁止通行,LED5灯亮表示手动使工作台向X轴负方向通行,LED6灯亮表示手动使工作台向X轴正方向通行,LED7灯亮表示手动使工作台向Y轴负方向通行,LED8灯亮表示手动使工作台向Y轴正方向通行,LED9亮表示系统通电运行。
界面上的7个按扭意义为:按扭1是通断电开关,按扭2是向X轴负方向运行的点动开关,按扭3是向X轴正方向运行的点动开关,按扭4是向Y轴负方向运行的点动开关,按扭5是向Y轴正方向运行的点动开关,按扭6是复位开关,按扭7是执行绘制圆弧开关。
图5-8 人机界面图
六、控制系统软件设计
1. 总体方案
对于AT89S51的程序设计,由于所需实现的功能较简单,采用汇编的形式。编译器采用Keil 7.02b。该编译器是51系列单片机程序设计的常用工具,既可用汇编,也支持C语言编译。同时具有完善的调试功能。
2. 主流程图
CTL EQU 3FF8H PA EQU 3FF9H
上电复位 PB EQU 3FFAH PC EQU 3FFBH CMD EQU 02H
P1.6=0,吸合电磁铁,绘笔抬起 ORG 0000H
AJMP MAIN ORG 0003H
外部中断,8155初始化 AJMP INT0IS ;外部中断0入口
ORG 000BH
AJMP TM0IS ;定时器0中断入口 ORG 0013H
开外部中断,开总中断 AJMP INT1IS ;外部中断1入口 ORG 001BH
AJMP TM1IS ;定时器1中断入口
等待中断 ORG 0100H
MAIN:ANL P1,0EFH
SETB IT0 ;外中断负跳沿触发
图6-1 SETB IT1 MOV A,CTL MOV DPTR,A
MOVX @DPTR,CMD ;A口输入,B口输出,C口输入 SETB EX0 ;允许外中断0 SETB EX1 ;允许外中断1 SETB PX0
SETB PX1 ;设置优先级 SETB EA ;开总中断 LOOP:AJMP LOOP ;等待中断
在等待中断的过程中,如果有中断到来,先检查中断0的状态,是中断0则进入中断0的中断服务INT0IS,是中断1则进入中断1的中断服务INT1IS。
中断服务0是由4个行程开关触发的,它触发后通过单片机读取PA口内容,然后将结果反馈到PB口的LED上。
中断服务1有6个中断源,这六个中断源分别是手动X正方向运行,手动X负方向运行,手动Y正方向运行,手动Y负方向运行,复位和绘制圆弧。
3. INT0中断服务流程图
图6-2 INT0IS:PUSH ACC PUSH DPTL PUSH DPTH PUSH PSW MOV A,PA MOV DPTR,A
MOVX A,@DPTR ;读PA口内容 MOV R2,A MOV A,PB MOV DPTR,A MOV @DPTR,R2 MOV A,R2
CPL A ;A取反
ANL A,#03H ;屏蔽高6位 JZ A,TM2C SETB P1.0 SETB P1.1 SETB P1.2 TM2C: MOV A,R2 CPL A
ANL A,#0CH JZ A,RETIN SETB P1.3
SETB P1.4 SETB P1.5 RETIN:POP PSW POP DPTH POP DPTL POP ACC RETI