您好,欢迎来到尚车旅游网。
搜索
您的当前位置:首页基于ARM+PMAC结构的数控系统设计

基于ARM+PMAC结构的数控系统设计

来源:尚车旅游网
第23卷第1期 机电产品开崖与 斩 Vo1.23.NO.1 2010年1月 Development&Innovation of Machinery&Electrical Products Jan.,2010 文章编号:1002—6673(2010)O1—173—03 基于ARM+PMAC结构的数控系统设计 戴朝永 (广州数控设备有限公司,广东广州510165) 摘 要:主要阐述ARM+PMAC的数控系统的硬件体系架构、ARM(txC/OS)与PMAC之间的通讯的 实现、ARM与PMAC数控系统软件结构,这种结构思路能够开发出高速高精的数控系统。 关键词:ARM;PMAC;高速高精;数控系统 中图分类号:TG67 文献标识码:A doi:10.3969/j.issn.1002—6673.2010.01.069 Design of CNC Based on ARM+PMAC DAIChao-Yong (GSK CNC EQUIPMENT Co.,Ltd.,Guangzhou Guangdong 510165,China) Abstract:It mainly expounds the hardware structure of CNC system with ARM+PMAC,the communication between ARM( ̄C/OS)and PMAC,and software structure of CNC system with ARM and PMAC,this conceptive can develop high speed and high precision CNC system. Key words:ARM;PMAC;high speed and high precision;CNC system 0引言 板。在CPU板上运行以I ̄C/OS多任务实时控制操作系 统中的CNC数控系统,其对界面控制、PLC控制、译 当前数控系统的发展都是以模块化,集成化和开放 码、刀补,及译码或刀补后的指令转换成PMAC指令接 化为发展趋势,在这样的环境中产生ARM+FPGA+ 口;在PMAC中要实现对各轴的插补,并用其本身的 PMAC结构的数控系统的设想。PMAC(Programmable PLC功能实现回零功能。PMAC卡能过各轴控制信号以 Muli—Axis Controller)是多轴运动控制器,是目前世界 及CPU板的I/0信号都通过I/O板与机床、伺服及电机 上功能最强的运动控制器之一,不仅有相当高的轨迹跟 控制柜的连通形成一个回路。结构如图1所示。 踪能力,而且有运算快、精度高的能力。ARM是在工 控业应用成熟的一款CPU,加上源码开放性、高稳定性 和高可靠性的IxC/OS多任务实时操作系统结合。只要这 种ARM+PMAC的结构在具备以上条件就能够开发出一 款高性能的数控系统。 1硬件体系架构 PMAC运动控制器选用PMAC2一PC104(40HMZ) 型,能控制1-8轴,在插补时有前瞻的功能。整个硬件 图1硬件结构图 Fig.1 Hardware structure pattern 结构由三层组成:ARM为CPU的线路结构板为一层 (简称CPU板);PMAC卡为一层;输入输出电路板为一 层(简称I/0板)。CPU板与I/0板连接,PMAC也与I/O 2 ARM与PMAC通讯的实现 板连接,CUP板与PMAC卡通讯是以ISA总线方式,外 ARM与PMAC之间的通讯稳定性很重要,选择 部I/0信号通过I/0板分别可发送到PMAC卡和CPU PMAC2一PC104(40HMZ)型,其具有ISA总线和RS232 两种通讯方式。我们采用ISA总线通讯方式,首先实现 收稿日期:2009—11—27 作者简介:戴朝永(1977一),男,江西大余县人,大学专 CUP板与PMAC卡的ISA总线之间的硬件连接,实现通 科。研究开发数控铣床系统。 过FPGA中提供一个基地址与PMAC的ISA总线的基地 173 ・数控机床世界・ 址映射起来,然后实现低层的(unsigned short address) 以0DOA(回车换行)结束一行, 与outport(unsigned short address,unsigned char data)两 flag=Pmac_SendChar(outchar[i]); 个基础通讯函数实现如下: if(flag)f #define FPGA_ISAREADY (volatile unsigned short ) sprinff ftmpGetLineBuf,”Send Time Out=%s”, 0x2000003C)//写数据映射地址 outehar); #define FPGA( (volatile unsigned short ) UartPrintf(tmpGetLineBuf); _ISAREAD0x2000003E)H读数据映射地址 } unsigned char inport(unsigned short address)f,/读取数据 i++: unsigned short in ISAaddress; ) —unsigned short int iTime=O; Pmac—SendChar(13); ISA_address=(unsigned short int )((address<<1)+(un— return 0: signed int)0x20003000); ) FPGAISAREADY= ISAaddress; int PMAC—GetLine(char linebuf){ ——while(((FPGA_ISAREADY&OxrV)!=0x55)&&((iTime++) char ic=0; <1000)); int i=0,nc=0; if(iTime<1000)return((unsigned cha0(FPGA_ISAREAD if(able to talk)( &0b(FF)); while ri++<PMAC timeout&&ic!=13&&ne< else return 0: 255) } if((inpotr(combase+2)&1)==1){ void outport(unsigned shotr address,unsigned char data) ic=inport(combase+7); ll『写入数据 linebuf[nc++】=ic; unsigned short int ISAaddress; i:0: unsigned short int iTime=0; } ISAaddress=(unsigned short int )((address<<1)+(un- if(i>=PMAC—timeout){ _signed int)0x20003000); linebuf[nc]=0; ISA_address=(unsigned short int)data; return(o); while((f PGA—ISAREADY&0xFF)!=0x55)&&((iTime++) ) <10O0)); linebuf【nc】=0; ) return(nc); 实现以上两个函数后.就可以根据inport0与outportO可 )else{ 以实现发送一个字符串指令和接收一个字符串功能的函数 linebuf[0】=0; int Pmac—SendLine(char*outchar)、int Pmac—SendChar(char return(0); outchar)与int Pmac—GetLine(char linebuf),实现代码如下: } int Pmac_SendChar char outchar)f ) int i-0: 可根据以上基本的函数实现PMAC初始化配置函数 while((i<PMAC—timeout)&&!(inport(combase+2)& config_card_for(void),偏移量地址为:0X210实现如下: 2)){i++;} eombase=0X210; if(i<PMAC_timeout)outport(combase+7,outchar); PMACtimeont=7 speed l00;//通讯的超时时间 —else return 1: outpotr(eombase+5,0); return(0); outport(combase+6,0); } 以下是实现检查PMAC卡是否存,实现函数im int PmacSendLine(char outcharCards一0n—Line(void),当返回是1表示卡已成功找到已连接. _){ int i=O.intflag=0; 实现代码如下: char tmpGetLineBu玎500]; int i=0,n=0; while(outchar[i]!=0){ able—to—talk=1; if(i>255)return 0;//退出 while n<3&&i<11){ if(outchar[i】==1O)break;,/换行符 PMAC_SendLine(”RHL:¥720”); else if(outchar[i】==13)break;//回车符(文本文件是 i=Pmac—GetLine(PMAC InputBuf); n++;l 174 ・数控机床世界・ if(j>11&&j<17){/嘁功找到已连接 Ua札Printf(”Found PMAC…\r\n”); while r'mac—GetLine(PMAC—lnputBuf));,半清除PMAC 的输出缓冲 , return(1); }else{ UartPrintf f”No PMAC found!\r\n”); 图2软件结构图 Fig.2 Software structure pattern abletotalk=0; ——return(o); } 以上configcardfor 0与Cards—On—Line 0就能够实 __NC参数、PLC到机床参数诊断;参数设置可以设置各 轴反向误差补偿、快速进给速度、空运行速度、轴的方 向,正反向限位等,使数控系统应用到各种机床,在参 现卡的配置与连接。还有一个重要的PmacGetResponse 数界面中还有PID调试功能,修改相对应轴的PID参数 来调整电机的理论位置与实际位置的跟随误差与钢性: 补偿是刀具半径、长度、螺距、间隙的设置:报警是当 系统出现异常时报警,如果这种报警是内容报警则暂停 (char response,jn£retlen,char command)函数要实现,这 1 个函数可以实现PMAC的指令和G、M、s、T指令发送, I 都是以字符形式发送,返回的表示当前指令是否执行成功, ! response指针表指令执行后返回数据信息,command执行的 : 指令代码,实现代码如下: char tmpResPonse[5000]=… ; iJ 运行并显示报警否则只显示报警信息,并且保存报警信  J 息。I (2)由PLC控制的功能:编辑是对本地程序进行添 I nt len=0,ilen=0;itmes=10000; _PMACSendLine(command); 加、删除、修改然后保存;自动是能够载人本地的NC while(itmes一>O){ len:PMAC—I 程序文件,能够连续运行,在加工过程中实时显示当前  点理论位置、实际位置以及跟随误差等加工状态:在运 l 助锁、暂停;录入是能够进行单段程序、单个G、M、: GetLineLong(tmpResPonse); memcpy(response+ilen,tmpResPonse,sizeof(tmpResPonse)); l 行过程中还可以执行跳段、单段、空运行、机床锁、辅 strepy(tmpResPonse, ); jf((jlen+1en)>=Ie_£1en)return retlen;  S、T指令;回零是可以实现回到机床的零点位置,可 }ilen=ilen+len; if(1en<4999)break;} ifitime>0)return ilen; l 以三轴同时进行回零和也可以单个轴单独回零;单步是 I : 指每次运行指定的长度;手动是指能够连续对各个轴移 动:手轮是通过对档位调节使各轴精确定位到某个位 置;DNC与自动方式有基本相同,区别在于它所调用的 else retu133 0; port 0两个基本的函数来实现。 i f 其它函数可根据自己的需要.能过inport 0与out— j 文件是USB存储器中的文件或通过串口传人的数据, 不能执行M99功能。 3 AllM与PMAC数控系统软件结构 1 4总结 为了实现数控系统的模块化和集成化,根据传统的 f 根据以上提出的数控系统控制方案中。采用了基于 ARM的CPU板的硬件控制平台和基于 ̄C/OS多任务实 时操作系统上开发的传统数控软件系统平台.结合 PMAC多轴运动控制器的高速高精的插补功能。为快速 l 数控系统的结构与功能可分为非PLC控制功能方式和 PLC控制功能方式。非PLC控制功能方式主要是针对图 I 形界面的控制,而PLC控制功能方式是针对不同的编 J 辑、运行控制方式。其结构如图2所示。 i (1)非PLC控制的功能:设置、位置、图形、参 : 的开发ARM+PMAC硬件结构数控系统提供了一种模式, 目前该模式的数控系统已在广州数控设备有限公司的 218MA系统上得到了良好应用。 数、诊断、补偿、报警的界面在任何时候都能够相互的 l 切换。设置功能包括:基本设置的中英文件设置和使用 I 位置主要包括显示相对坐标、绝对坐标、跟随误差、进  串口还是USB接口设置,开关控制参数是否可以修改; l 参考文献:[1】PMAC/PMAC2 Software Reference Manua1.DELTA TAU Data Sys- terns,2006. 给速度、实际速度、主轴正反转和速度以及G代码模 j 或三维的图形;程序是显示当前加工或编辑的NC程序 : 的界面;诊断是对I/O信号、CNC到PLC参数、PLC到 I 态;图形是显示当前加工工件的加工轨迹,可以以二维 i [3]PMAC2A-PC/104 HARDWARE Reference Manua1.DELTA TAU Data Systems,2006. [2]PMAC User's MANUAL.DELTA TAU Data System,2004. 175 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- sceh.cn 版权所有 湘ICP备2023017654号-4

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务