《2022年2022年简易数控机床控制系统设计_单片机课程作业 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年简易数控机床控制系统设计_单片机课程作业 .pdf(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1 简易数控机床控制系统设计学号: 0601302009 专业:机械电子工程姓名:浦汉军 2007,9,10 南宁任务:设计以单片机为控制核心的简易数控机床的数字程序控制器。要求1、能用键盘控制工作台沿 +X、-X、+Y、-Y 向运动,以校正工作台位置。2、可用于加工直线和圆弧。3、在运行过程中可人工干预而紧急停车。4、能实现越界报警。5、可与 PC机通讯。总体方案设计一、数控系统硬件电路设计选用 MCS-51系列的 8031CPU 作为数控系统的中央处理机。外接一片EPROM 用于存放控制程序、 固定批量生产的工件加工程序和数据,再选用一片 8kb 的 6264RAM 作为存放试制工件或小批
2、量生产的工件加工程序和数据。由于系统扩展,为使编程地址统一,采用 74LS138译码器完成译码法对扩展芯片进行寻址的功能。还要考虑机床与单片机之间的光电隔离、功率放大电路。其设计框图如下图所示:图 1.1 总体设计框图工作原理:单片机系统是机床数控系统的核心,通过键盘输入命令,数控装置送来的一系列连续脉冲通过环形分配器、光电耦合器和功率放大器,按一定的顺序分配给步进电动机各相绕组,使各相绕组按照预先规定的控制方式通电或断电,这样控制步进电动机带动工作台按照指令运动。1各单元电路设计11 存储器的扩展选择晶体振荡器的工作频率f 为 12MHz 。主控器 CPU 选用 8031,根据容量估算,选信
3、号驱动脉冲驱动信号单片机8031 光电偶合器功率放大器X 相步进电动机Y 相步进电动机键盘输入LED 显示名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 17 页 - - - - - - - - - 2 用一片 2764 作为程序存储器,一片6264 作为数据存储器。同时,还采用一片74LS373作为地址锁存器。12 程序存储器 2764 EPROM 是用紫外线可擦除的半导体只读存储器, 2764 芯片引脚的介绍如下。P0P7 :数据线,输出。编程时代码输入。A0A7 :
4、地址线,输入。CE:片选信号,低电平有效,输入:读信号,低电平有效,输入PGM:编程脉冲输入端,输入Vpp:编程电压 ( 典型值为 12.5V) Vcc:电源 (+5V) GND :接地 (0V)345TSDFD01 1D11 2D21 3D31 5D41 6D51 7D61 8D71 9A01 0A19A28A37A46A55A64A73A82 5A92 4A102 1A112 3A122GND1 4CE2 0P GM2 7Vcc2 8Vpp1NC2 6OE2 22 7 6 4图 1.2 2764引脚图13 数据存储器 6264 1)6264 为 24 脚双列直插式器件,其引脚图和逻辑符号图
5、如图1.3 所示。A0A12:地址输入线。D0D7 :双向三态数据线。:片选信号输入线,低电平有效。CE2 :片选信号输入线,高电平有效,可用于掉电保护。:读选通信号输入线,低电平有效。:写允许信号输入线,低电平有效。输出允许编程逻辑译码输出缓冲256256存储矩阵A12 A11 A0 OEPGMCED0 D7 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 17 页 - - - - - - - - - 3 :工作电源电压 (+5V)。GND :电源地。23NC1A1 2
6、2A73A64A55A46A37A28A19A01 0D01 1D11 2D21 3GND1 4D31 5D41 6D51 7D61 8D71 9CE 12 0A1 02 1OE2 2A1 12 3A92 4A82 5CE 22 6W E2 7Vcc2 86 2 6 4图 1.3 6264引脚图和逻辑符号图2)6264 芯片操作方式选择如表1.1 所示。如表 1.1 CEWEOE方式功能0 0 1 写D0D7上内容写入A0A10对应单元0 1 0 读A0A10对应单元内容输出到D0D7 0 X X 非选D0D7呈高阻14 键盘显示电路根据系统要求,通过键盘输入命令来实现对机床工作台的运行控制。
7、一共需要五个键,四个分别控制工作台向 +X、-X、+Y、-Y 方向运行,另一个作启动键;通过LED数码管显示工作台的运行位置,行程范围为10 米,精确到 0.01 米,所以用了 4 个 LED数码管采用动态显示。采用键盘显示器接口8279来实现键盘显示功能。它主要由以下几部分组成。1)I/0控制和数据缓冲器;2)控制和定时寄存器及定时控制部分;3)扫描计数器;4)回送缓冲器与键盘去抖控制电路;A12 Vcc WE CE2A0OED0 1CE GND D7 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - -
8、- - - - 第 3 页,共 17 页 - - - - - - - - - 4 5)FIFO( 先进先出 )寄存器和状态电路;6)显示器地址寄存器及显示RAM 。下面对引脚名称作简要说明。DB0 DB7:双向数据总线,用来传送8279与 CPU 之间的数据和命令。CLK:时钟输入线,用以产生内部定时的时钟脉冲。RESET: 复位输入线, 8279 复位后被置为字符显示左端输入,二键闭锁的触点回弹型式,程序时钟前置分频器被置为31,RESET 信号为高电平有效。CS:片选输入线,低电平有效,单片机在CS 为低时可以对 8279 进行读 / 写操作。A0:缓冲器低位地址,当A0为高电平时,表示数
9、据总线上为命令或状态,当为低名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 17 页 - - - - - - - - - 5 图 1.6 键盘、 LED 数码管显示器电路电平时,表示数据总线上为命令或状态,当为低电平时,表示数据总线上为数据。RD: 读信号输入线,低电平有效,将缓冲器读出,数据送往外部总线。WR: 写信号输入线,低电平有效,将缓冲器读出, 将数据从外部数据总线写入8279的缓冲器。SL0SL3 :扫描线RL0RL7 :回送线17 工作过程: 每当按下一个键
10、, 8279会自动识别键号, 产生相应的键编码自动送入先进先出寄存器 FIFO 中,同时产生中断请求信号IRQ,向 CPU 请求中断。当 CPU 响应中断,执行中断服务程序,并从FIFO 中读取编码数据之后,则IRQ 信号自动撤消。如果上一个键的编码数据尚未取走,下一个键盘又被按下,则新的键码进入FIFO中。由于 FOIO 中由 8 个存储单元组成,故最多可依次暂存8 个键码。只有在读完所有数据时, IRQ 信号才会撤消。在中断程序中,CPU 是用片外取数指令(MOVX 指令)从 FIFO 中读取数据。15 反应式步进电动机的选择根据所获得的信息和实际要求,选用步进电机为75BF001型三相六
11、拍反应式步进电机,23TitleNumberSizeA4Date:10-Jun-2007File:李煊论文5.2论P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7ResetINT0INT1ALEPSENP2.7P2.6P2.5P2.4P2.0P2.1P2.2P2.3WRRDVccVssEAXTAL1T0T1XTAL2TXDRXDP1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.08 031反相器驱动器GNDabfcgdeLEDabfcgdeLEDabfcgdeLEDabfcgdeLEDR R R R RCNTLSHIFTVSSSL1SL0SL2SL3RL0DB7DB
12、6RL6RL2RL3RL4RL7VccCSA0RL5DB5DB4RL1DB2DB1DB0DB3A0-A3B0-B3IRQWRRDRESETCLK8 279+5V名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 17 页 - - - - - - - - - 6 其工作电压为 +24V,相电流为 3A,步距角为 1.5 度。3.2.5.1环行脉冲分配器由于本设计选择三相步进电动机75FB001 ,相对应选择可以控制三相步进电动机的5G8713集成电路芯片。表 1.2 8713引
13、脚功能引脚功能说明1 正转脉冲输入端1、2 脚为双时钟输入端2 反转脉冲输入端3 脉冲输入端3、4 脚为单时钟输入端4 转向控制端。 0 为反转; 1 为正转5 6 工作方式选择: 00 为双三拍;01、10 为单三 ( 四) 拍;11为六( 八) 拍7 三/ 四相选择。 0 为三相; 1 为四相8 地9 复位端,低电平有效10 11 12 13 输出端。四相用13、12、11、10脚,分别代表 A、B、C 、D ;三相用 13、12、11角,分别代表 A、B、C 14 工作方式监视。 0为单三 ( 四) 拍;1 为双三 ( 四) 拍;脉冲为六 (八)拍15 输入脉冲状态监控,与时钟同步16
14、电源P1.0 3 13 A 相驱动P1.1 4 5V 12 B 相驱动8051 系列8713 5 11 C 相驱动单片机6 7 1.7 脉冲分配器与单片机接口名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 17 页 - - - - - - - - - 7 16 保护电路采用光电耦合器接口把控制计算机和外部驱动电路完全隔离开来。具体的光电耦合器如图 1.8 。驱动电路本设计采用的驱动电源是功率开关集成电路 TWH8715/2 。这是一个集放大、比较、选通、整形和功率开关于一
15、体的高速功率开关集成电路。其真值表分别见图1.9及表 3.7 。1)TWH8715/2引脚功能 18 1控制端(高电平有效,TTL电平,下同)2输入端(选通端低电平有效)3V-(单电源使用时,接地)4输出端5V+(工作电压: +12V+24V) 由 TWH8715/2 组成的步进电机驱动电路(只画出了 A相,B、C相同)原理见图 1.10。其工作原理为:无信号时,光敏三极管截止,2 角电位等于 1 角电位,为高电平;输出端 4 角也为高电平,即电枢绕组无电流通过;有信号时,光敏三极管受光照而导通,将2 角电位拉低至零电平,输出端4 角也将下降至输出管饱和电平 ( 约 1.6V) ,这时电枢绕组
16、中有励磁电流流过。其中V1起续流作用;随工作脉冲频率的升高,电路中呈现的感抗也随之增大,外接限流电阻R3就可以起到降低阻耗的作用。表 1.3 TWH8715/2 输入输出状态真值Pint1(st) Pint2(in) Pin4(out) X(任意状态 ) H(高电平大于 1.6V) OFF输出极截止L(低电平小于 1.2V) L( 低电平小于 1.2V) OFF输出极截止H ( 高电平大于 1.6V) L( 低电平小于 1.2V) ON 输出极接通名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - -
17、- - 第 7 页,共 17 页 - - - - - - - - - 8 二、数控系统软件设计21 加工指令1)加工指令每一条加工指令应包括那些内容与采用那种插补计算方法有关。我们采用逐点比较法,则每一条加工指令应包括下列内容:(1) 线型:直线或圆弧及它所在的象限、走向。(2)X 轴坐标:加工直线时,它为直线的 X轴终点坐标 (Xe) , 坐标原点取在直线起点。加工圆弧时,它为圆弧的X轴起点坐标值 (Xe) ,坐标原点取圆弧的圆心。(3)Y 轴坐标值: 加工直线时, 它为直线的 Y轴终点坐标 (Ye) ,坐标原点取在直线起点。加工圆弧时,它为圆弧的Y轴起点,坐标原点取圆弧的圆心。(4) 总步
18、数 J: X、Y轴走步数之和。本系统使用的加工指令由连续的4 个字节组成 ( 不包括加工速度等参数 ) ,各个字节的内容定义如下 ( 规定 FF为加工结束指令,只占一个字节):(a) 第 1 个字节为线型;(b) 第 2 字节为 X坐标值;(c) 第 3 字节为 Y坐标值;(d) 第 4 为字节为总步数。2.2 编程示例若加工如图所示的扇形工件,其加工程序由下列4 条指令组成:L1 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 17 页 - - - - - - - -
19、- 9 (1)L1:Xe=5 Ye=2 j=7 (2)NR1:Xe=5 Ye=2 j=6 (3)L2: Xe=5 Ye=2 j=7 加工结束指令 0FFH 机器编码程序如下:04H 05H 02H 07H 0CH 05H 02H 06H 06H 02H 05H 07H 0FFH 2.3 控制程序根据总电路图的硬件结构和加工指令格式,以直线圆弧插补计算方法来设计控制程序。整个控制程序由主程序、 T0 中断程序和外部 /INTO 中断程序组成。4.3.1 主程序主程序首先执行系统初始化工作,然后循环扫描键盘,如果键盘上有键入命令则做相应的命令处理,如果键入启动命令,则做好运行前准备工作以及有关指针
20、和标志初始化。对中断系统初始化, T0向 CPU 请求中断,使 CPU执行部件加工程序,允许外部INTO中断,在人工干预按下急停键时停止加工部件。接着循环查询加工结束标志,加工结束后又等待键命令或主机命令。2.3.2 T0中断服务程序T0 中断服务程序的功能是执行加工程序,一条指令执行完再取新的加工指令,直到遇到停机时关中断,置位结束标志。在加工指令执行过程中,根据线型做直线圆弧的插名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 17 页 - - - - - - - -
21、- 10 补计算。 T0 中断程序框图如下:2.3.3 0INT中断 程序0INT中断程序的功能是实现急停、行程开关的功能。由于只有 2 个外部中断请求中断接口,而本设计需要多对个外部中断源,所以采用“OC门”经“线或”后,引入芯片本身的外部中断请求输入端,就可以很方便地扩展多个外部中断源。几个扩展外部中断源中有一个或几个出现高电平,反相器输出为 0,引用0INT低电平触发中断, 所以这些中断源都是电平触发方式。本设计中当工作台越界时,行程开关闭合即满足外部中断源请求条件,则CPU 响应中断,转入0003H单元开始执行中断源服务程序。在中断服务程序中,由软件设定的顺序查询外中断哪一位是高电平,
22、然后进入该中断处理程序。查询的顺序就是外部扩展中断源的中断优先级顺序。本设计的0INT中断源查询程序的流程图如下。2.3.4 步进电动机的位置控制步进电动机的位置控制需要两个参数。第一个参数是步进电动机控制的执行机构当前的位置参数,叫绝对位置。 它是有极限的,其极限是执行机构运行位置的距离,超越了这个极限就报警。第二个参数是从当前位置移动到目标位置的距离,我么可以用折算的方式将这个距名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 17 页 - - - - - - - -
23、 - 11 离折 算成 步进 电动 机的 步数。这个参数是外界通过键盘输入的。对步进电动机位置控制的一般作法是:步进电动机每走一步,步数减 1,如果没有失步存在,当执行机构到达目标位置时,步数正好减到 0。因此,用步数等于0来判断否移动到目标位,作为步进电动机停止运行的信号绝对位置参数可作为人机对话的显示参数。它与步进电动机的转向有关,当步进电动机正转时,步进电动机煤走一步,绝对位置加1;当步进电动机反转时,绝对位置随每次步进减1。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11
24、 页,共 17 页 - - - - - - - - - 12 三、程序TYPE EQU 30H ;线型缓冲单元MM EQU 31H ;偏差缓冲单元XX EQU 32H ;x 坐标缓冲单元YY EQU 33H ;y 坐标缓冲单元JJ EQU 34H ;步数缓冲单元STATX EQU 35H ;步进电机状态坐标缓冲器STATYEQU 36H FEND EQU 0 ;结束标志FNEW EQU 1 ;取新指令标志FRAM EQU 2 ;执行 RAM 加工指令标志 ORG 0003H AJMP DO_INT0 ;转 INTO中断 ORG 0000H STRT : LJMP MAIN ;转主程序 LJMP
25、 PEX0 ORG 0BH PTF0 : JNB FNEW ,LITP ;定时器 T0中断程序CLR FNEW JNB FRAM,EPROM ;FRAM=0 ,转从 RPROM 中取指令 MOVX A, DPTR MOV TYPE,A INC DPTR MOVX A, DPTR MOVX XX ,A INC DPTR MOVX A, DPTR 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 17 页 - - - - - - - - - 13 MOVX YY ,A INC
26、 DPTR MOVX A, DPTR MOVX JJ, A INC DPTR ;DPTR 指向下条加工指令SJMP COMP EPROM: CLR A MOVC A,A+DPTR ;从 EPROM 中取加工指令 MOV TYPE,A INC DPTR CLR A MOVC A,A+DPTR MOV XX,A INC DPTR CLR A MOVC A,A+DPTR MOV YY,A INC DPTR CLR A MOVC A,A+DPTR MOV JJ,A INC DPTR CLR A COMP: MOV A,TYPE CJNE A,#0FFH ,PNEW ;非停机指令转新指令处理 SETB
27、FEND ;停机、关中断 CLR EA 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 17 页 - - - - - - - - - 14 RET1 PNEW: MOV MM ,#0 ;新指令令 MM=0 LITP: MOV A,TYPE JB ACC.3,MM1 ;ACC.3转圆弧插补 LCALL LLMA ;调用直线插补子程序 SJMP MM2 ;调用圆弧插补子程序MM1 : LCALL RRMA MM2 : DJNZ JJ,PTROR SETB FENEW ;步长
28、减为 0,置取新指令标志PTROR: TET1 MAIN : MOV P1 ,#0C9H ;步进电机状态初始化 MOV STATX,#0 ;步进电机状态缓冲器清零MOV STSTY ,#0 MOV SP,#0EEH ;SP 、T0初始化 MOV TMOD,#21H MOV TH0,#3CH MOV TL0,#0B0H MOV SCON,50H MOV TCON,#50H MOV 20H,#0H MLOP : LCALL AKSI ;调用判是否有键闭合子程序 LCALL KEYI ;调用读键子程序 JNZ MLP1 LCALL STEP1 ;调用 +X走步子程序 SJMP MLOP 名师资料总结
29、 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 17 页 - - - - - - - - - 15 MLP1 : CJNE A ,#1,MLP2 LCALL STEP3 ;调用 +Y走步子程序 SJMP MLOP MLP2 : CJNE A ,#2,MLP2 LCALL STEP2 ;调用 -X 走步子程序 SJMP MLOP MLP3 : CJNE A ,#3,MLP2 LCALL STEP4 ;调用 -y 走步子程序 SJMP MLOP MLP4 : CJNE A ,#4,ML
30、P5 SJMP BRUN ;转启动运行MLP5 : CJNE A ,#5,MLOP SETB FRAM SJMP MLOP LCLL PSSDATR SJMP MLOP MLPS1 : JNB TI,MLOP CLR TI SJMP MLOP BRUN : JB FRAM ,BRUN1 MOV DPTR,#1000H ;EPROM 加工程序首地址 DPIR BRUN2 : SETB FNEW ;置位取新指令标志 MOV MM,#0 ;偏差缓冲器初试清“ 0” MOV IE,#83H ;允许 T0、/INT0 中断 MOV IP,#1 ;允许 /INT0 为高级中断 JNB FEND,¥;循环等
31、待加工结束 CLR FEND 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 17 页 - - - - - - - - - 16 LJMP MLOP BRUN1 : MOV DPTR,#800H ;外部 RAM 加工程序首地址 DPTR SJMP BRUN2 PEX0 : CLT EA SETB FEND RET1 DO_INT0 :JB P1.4,LOOP1 ;转向中断服务程序1 JB P1.5,LOOP2 ;转向中断服务程序2 JB P1.6,LOOP3 ;转向中断
32、服务程序3 JB P1.7,LOOP4 ;转向中断服务程序4 INTEND : POP ACC ;恢复现场 POP PSW RET1 LOOP1 : +X 越界报警子程序LOOP2 : +Y 越界报警子程序LOOP3 : -X越界报警子程序LOOP4 : -Y越界报警子程序系统总电路图名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 17 页 - - - - - - - - - 17 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 17 页 - - - - - - - - -