2.2步进电机开环伺服原理
分配后的 脉脉冲 信器YBO14 脉冲分配脉冲信号 功率 放大 CDB放大后的 脉冲信号 A
2.3步进电动机的控制框图
保设步长计Y转向标志置反转控置正转控制制字 输出控延时、控制字地址指针是结束总步数恢复返回
2.4软件程序设计(逐点比较法直线插补)
- 14 -
用逐点比较法进行直线插补计算,每走一步,都需要以下四个步骤: 偏差判别:判别偏差FM≥0或FM<0,从而决定哪个方向进给和采用哪个偏差计算公式。
坐标进给:根据直线所在象限及偏差符号,决定沿+X、+Y、-X、-Y的哪个方向进给。
偏差计算:进给一步后,计算新的加工偏差。
终点判别:进给一步后,终点计数器减1。若为零,表示到达终点停止插补;不为零,则返回到第一步继续插补。终点计数判别可用两个方向坐标值来判断,也可由一个方向的坐标值来判断。当XE>YE,可用X方向走的总步数XE作为终点判别的依据,如动点X等于终点XE则停止。当XE 由此,第一象限直线插补程序的算法如下: (1) 判别FM是大于0还是小于0。 (2) 若FM≥0,则向+X方向输出一进给脉冲,计算新偏差FM=FM-YE,并修改动 点坐标为X=X+1;若FM<0,则向=Y方向输出一进给脉冲,计算新偏差FM=FM+XE,并修改动点坐标为Y=Y+1。 (3) 终点判别:若X=XE(Y=YE),则停止插补运算。否则转入第一步,重复上述 步骤。 第一象限直线插补程序框图如下图: - 15 - 初始化 NFm>=0? Y方向进X方向进F m=Fm+X F m=Fm—Y Y=Y+1 X=X+1 X=Xe? Y=Ye? N返 回 2.4.1程序设计 设计程序时,在RAM数据区分别存放终点坐标值XE,YE,动点坐标值X,Y,偏差FM。对8位机,一般可用2字节,而行程较大时则需用3字节或4字节才能满足长度和精度要求。此外,所有的数据区必须进行初始值、X、Y向步进电机初态(控制字)。 插补程序所用的内存单元如下: 28H XE29H YE 2AH X 2BH Y M2CH F 70H 电机正反转控制字 - 16 - 电机正反转控制字为: D7 DDDDDDD6 5 4 3 2 1 0 D1D0为X向电机控制位。D0=1运行,D0=0停止;D1=1正转,D1=0反转。D3D2为Y向电机控制位。D2=1运行,D2=0停止;D3=1正转,D3=0反转。 第一象限直线插补的程序: ORG 2000H MAIN:MOV SP, #60H LP4: MOV 28H, #0C8H; MOV 29H, #0C8H; MOV 2AH, #00H; MOV 2BH, #00H; MOV 2EH, #00H; MOV 70H, #0AH LP3: MOV A, 2EH JB ACC.7, LP1 MOV A, 70H SETB ACC.0 CLR ACC.2 MOV 70H, A LCALL MOTR LCALL DELAY MOV A, 2EH SUBB A, 29H INC 2AH AJMP LP2 LP1: MOV A, 70H SETB ACC.2 CLR ACC.0 LCALL MOTR LCALL DELAY MOV A, 2EH - 17 - ADD A, 28H LP2: MOV 2EH, A MOV A, 28H CJMP A, 2AH, LP3; RET 2.5 CPU和存储器 采用8031芯片,由于8031芯片内无程序存储器,需要有外部程序 器的支持,同时8031内部只有128B的数据存储器也远不能满足控制的 需要。故扩展了16KB程序存储器由两片2764组成,又扩展了6264的数据存储器。8031芯片的P0和P2用来传送外部8位地址和数据,P2口传送高8位地址,P0口传送低8位地址和数据,故要采用74ls373地址锁存器的输入和输出透明,即输入的低8位存储器地址在输出端出现,此时不需要锁存。当ALEN高电平,出现下降沿时,低8位地址锁存存入地址锁存器中,74LS373的输出不再随输入变化,这样p0口就可用来传送读写的数据了。8031芯片的配口和74ls373送出的p0口共组成16位地址,2764和6264芯片都是8KB,需要13根地址线。A0~A7低8位接74LS373的输出,A8~A12接8031芯片的P2.0~P2.4.系统采用全地址译码,两片2764芯片片选信号CE分别接74LS138译码器的Y0和Y1系统复位以后程序从0000H开始执行。6274芯片的片选信号CE1也接74LS138的Y1,单片机扩展系统允许程序存储器和数据存储器独立编址(即允许地址重叠),8031芯片控制信号PSEN接2764的OE引脚,读写控制信号WR和RD分别接6264芯片的WE和OE,以实现外部数据存储器的读写。由于8031芯片内部没有RAM故始终要旋外部存储器,故其EA必须接地。 2.6 I∕O接口电路 由于8031只有p1和p3部分能提供用户作为IO口使用,不能满足输入输出口的需要,因而系统必须扩展输入输出接口电路,系统扩展了一片8155和一片8255可编程IO接口芯片。8155的片选信号ce接74ls138的y,8255芯片片选信号CS接74ls138的y2端。74ls138译码器有三个输入,A,B.C分别接到8031的p2.5、和p2.6、p2.7、输出Y0~Y78个输出,低电平有效。Y0~y7对应的输入A,B.C的000至111的8种组合,其中Y0对应A,B,C为000,Y7对应的A,B,C为111.74LS138还有三个使能端,其中2上(G2A和GB)为低电平使能,另一个G1为高电平使能,只有当使能端处于有效电平时,输出才能产生,否则输出处于高电平无效状态。 IO接口芯片与外设的连接是这样安排的,8155芯片PA0~PB7是显示器的位选信号输出,PC0~PC4是键盘扫描输入。8155芯片的IO∕m引脚接8031芯片的P2.0,因为使用8155的I∕O口,故P2.0为高电平。 8255芯片PA0~PA7接X向、Y向和Z向步进电机硬件环形分配器,为输出PB0~PB7为三个方向的点动及回零输入,PC0~PC5为面板撒谎那个的选择开关是输入,设有编辑单步运行,单段运行,自动 、手动1.手动2等方式。 - 18 -