基于ARM的嵌入式数控车床控制系统的开发_第1页
基于ARM的嵌入式数控车床控制系统的开发_第2页
基于ARM的嵌入式数控车床控制系统的开发_第3页
基于ARM的嵌入式数控车床控制系统的开发_第4页
基于ARM的嵌入式数控车床控制系统的开发_第5页
已阅读5页,还剩80页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中图分类号TP273TP391论文编号1028705090167学科分类号080202硕士学位论文基于ARM的嵌入式车床数控系统研究与开发研究生姓名杨军学科、专业机械电子工程研究方向机电控制工程指导教师游有鹏教授南京航空航天大学研究生院机电学院二八年十二月NANJINGUNIVERSITYOFAERONAUTICSANDASTRONAUTICSTHEGRADUATESCHOOLCOLLEGEOFMECHANICALANDELECTRICALENGINEERINGRESEARCHOFEMBEDEDCNCFORLATHESBASEDONARMATHESISINMECHANICALENGINEERINGBYYANGJUNADVISEDBYPROFYOUYOUPENGSUBMITTEDINPARTIALFULFILLMENTOFTHEREQUIREMENTSFORTHEDEGREEOFMASTEROFENGINEERINGDEC2008承诺书本人郑重声明所呈交的学位论文,是本人在导师指导下,独立进行研究工作所取得的成果。尽我所知,除文中已经注明引用的内容外,本学位论文的研究成果不包含任何他人享有著作权的内容。对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确方式标明。本人授权南京航空航天大学可以有权保留送交论文的复印件,允许论文被查阅和借阅,可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或其他复制手段保存论文。保密的学位论文在解密后适用本承诺书作者签名日期南京航空航天大学硕士学位论文I摘要传统的中、低档数控车床在结构上往往采用8/16位单片机加精插补器,以获得较高的性价比。随着嵌入式系统的迅速发展,高性能的32位CPU已经普及,以ARM为代表的32位微处理器速度快、功能强、价格低,完全可以开发出具有更高性价比的嵌入式数控系统。本文旨在研究和设计一种基于ARM7的嵌入式数控车床控制系统。本文首先通过对嵌入式技术和数控技术的全面分析,选择确定了车床嵌入式数控系统的软硬件平台。硬件平台以ARM7系列微处理器LPC2220为核心,基于可编程逻辑器件CPLD实现精插补器,并配以必要的外围电路。软件平台以源代码公开的C/OS实时操作系统为基础,开发系统所需的驱动程序和应用软件。规划设计了基于C/OS的车床数控系统控制任务划分以及各任务模块间的通讯协调机制。控制任务划分为7个主控、液晶显示、文件系统服务、数控程序解释、速度处理、插补和逻辑控制;利用C/OS提供的邮箱、信号量等服务机制,有效实现了任务与任务、任务与中断之间的通信与同步。此外,本文还研究了系统程序解释的实现方法。首先,基于有限状态机(DFA)的分析策略构造了数控程序解释的词法分析器,把程序的字符流转换为内部标记流,然后对程序进行语法和语义分析,最后翻译成速度处理和逻辑控制所需要的数据结构。重点分析了子程序调用和返回的机制及其实现方法。最后,介绍了系统的软硬件开发工具和调试方法。软硬件测试表明,该嵌入式车床数控系统可满足预期目标。关键词嵌入式车床数控系统,ARM,CPLD,C/OS,程序解释基于ARM的嵌入式车床数控系统研究与开发IIABSTRACTTOGAINHIGHCOSTPERFERMENCE,TRADITIONALCNCFORLATHESUSUALLYADOPTS8BITOR16BITMCUANDFINEINTERPOLATORWITHTHEDEVELOPMENTOFTHEEMBEDDEDSYSTEM,HIGHPERFERMENCE32BITCPUHASBEENPOPULARIZATIONARMASATYPICALPRODUCTOF32BITSPROCESSORS,BEINGOFHIGHSPEEDINCOMPUTATIONANDFUNCTIONANDLOWCOSTS,CANBECOMPLETELYUSEDTODEVELOPEMBEDDEDCNCWITHHIGHERCOSTPERFERMENCEINTHISPAPARANEMBENDEDCNCFORLATHESBASEDONARMISDESIGNEDANDDEVELOPEDBASEDONGENERALANALYSISOFEMBEDDEDSYSTEMSANDNCTECHNOLOGY,THEHARDWAREANDSOFTWAREPLATFORMOFEMBEDDEDCNCFORLATHESARECHOSEDA32BITCPULPC2220ISUSEDASTHEKERNELOFHARDWARE,TOGETHERWITHAFINEINTERPOLATORIMPLEMENTEDWITHACPLD,ANDSOMEOTHERNECESSARYPERIPHERALMODULESTHESOFTWAREOFTHEEMBEDDEDCNCISBASEDONC/OSII,AREALTIMEEMBEDDEDOPERATINGSYSTEMWITHOPENSOURCECODESOMEEQUIPMENTDRIVERANDAPPLICATIONPROGRAMAREINCLUDEDINTHESOFTWAREFORTHEDEVELOPMENTOFTHEEMBEDDEDCNCFORLATHESBASEDONC/OSII,CONTROLTASKSINTHESYSTEMAREFIRSTLYPLANEDANDTHECOMMUNICATIONCOORDINATIONMECHANISMAMONGEACHTASKISTHENDESIGNEDSEVENTASKSISINVOLVEDINTHECNCMAINCONTROL,LCDDISPLAY,FILESERVICE,NCPROGRAMINTERPRETATION,ACC/DECCONTROL,INTERPOLATIONANDPLCUPONTHESERVICEOFMAILBOXANDSEMAPHOREPROVIDEDBYC/OSII,THECOMMUNICATIONANDSYNCHRONIZATIONCANBEEFFICIENTLYREALIZEDAMONGTASKSORBETWEENTASKANDISRINADDITION,THEIMPLEMENTATIONMETHODOFTHEINTERPRETATIONOFNCPROGRAMFORLATHESISINVESTIGATEDFIRST,ALEXICALANALYZEROFNCPROGRAMISCONSTRUCTEDBYFINITESTATEAUTOMATONDFAWHICHCANTRANSFORMCHARACTERSTREAMSTOINNERTOKENSTREAMSTHEN,SYNTAXANDSEMANTICANALYSISAREUSEDFORTHENCPROGRAMFINALLY,THEERRORFREEMACHININGINFORMATIONISSTOREDINASPECIFICALDATASTRUCTUREWHICHCANBERECEIVEDANDUSEDBYBOTHTHETASKOFACC/DECCONTROLANDPLCTHEMECHANISMANDIMPLEMENTATIONOFCALLANDRETURNFORSUBROUTINESAREANALYZEDANDGIVENFINALLY,THEINSTRUMENTSOFDEBUGGINGANDDEVELOPMENTFORHARDWAREANDSOFTWAREAREINTRODUCEDBYTESTING,THEEMBEDDEDCNCFORLATHESCANMEETTHEEXPECTEDDESIGNDEMANDSKEYWORDSEMBEDDEDCNCFORLATHES,ARM,CPLD,C/OSII,PROGRAMINTERPRETATION南京航空航天大学硕士学位论文III目录第一章绪论111数控技术概况1111数控技术发展背景1112国外数控发展现状2113国内数控发展现状3114数控技术的发展趋势312嵌入式系统概况413本文研究意义及主要工作5131研究意义5132论文主要内容6第二章嵌入式数控车床系统总体结构设计721嵌入式数控系统的总体设计722嵌入式数控系统的硬件组成7211ARM子系统8212CPLD子系统8213液晶模块8214键盘模块823嵌入式数控系统软件的结构9231人机界面管理9232逻辑处理9233运动控制10234数据处理控制10235辅助控制10236伺服处理1024本章小结11第三章车床数控系统硬件平台设计1231LPC2220概述12311ARM简介12312LPC2220微控制器概述及特性12基于ARM的嵌入式车床数控系统研究与开发IV32电源、时钟及复位电路设计14321电源电路设计14322时钟电路设计15323复位电路设计1633LPC2220的外部存储器设计1634EPM1270的电路设计1735人机界面电路设计18351键盘输入电路设计18352液晶显示模块接口电路设计1836RS232串行通信电路2037本章小结21第四章数控系统软件平台设计2241嵌入式实时操作系统简介2242C/OS简介23221、C/OS的特点23422C/OS的工作原理24423C/OS的任务间通讯和同步254231信号量254232消息邮箱26424C/OS的中断机制2743C/OS在LPC2220上的移植29431编写OS_CPUH294311定义不依赖编译器的数据类型304312OS_ENTER_CRITICAL和OS_EXIT_CREITICAL的编写304313OS_STK_GROWTH的编写314314OS_TASK_SW函数的编写31432编写OS_CPU_CC31433编写OS_CUP_AASM334331OSSTARTHIGHRDY函数的编写334332OSCTXSW函数的编写344333OSINTCTXSW函数的编写344334OSTICKISR函数的编写3444系统的软件任务及中断划分34441车床控制系统的任务划分35南京航空航天大学硕士学位论文V442车床控制系统任务优先级的确定36443车床数控系统中断的确定37444车床控制系统中各个任务及ISR之间的工作流程3745系统驱动程序设计39451液晶驱动设计394511速度匹配394512地址空间访问394513S1D13305的初始化404514字符、汉字及图形的显示404515提高界面切换和屏幕刷新速度的措施42452键盘驱动程序的设计4246本章小结45第五章车床数控程序解释模块的实现4651程序解释模块的总体分析46511程序解释模块的方法46512程序解释模块结构划分4752数控程序的检查48521词法分析485211词法分析器485212分析方法48522语法分析49523语义分析5153数控程序的翻译52531一般G代码的翻译52532子程序的研究与实现53533MST代码的处理55534重新译码的处理5554程序解释模块的部分测试56541程序错误的测试56542一般G代码的测试56543子程序调用的测试5755本章小结58第六章系统的软件调试5961系统开发与调试的工具59基于ARM的嵌入式车床数控系统研究与开发VI611ADS集成开发环境介绍596111ADS12集成开发环境的组成606112CODEWARRIORIDE简介606113AXD调试器简介61612EASYJTAGH仿真器的使用6262系统的软件调试63621系统的模块调试63622系统联调6463本章小结65第七章总结展望6671论文总结6672课题展望66参考文献67致谢70硕士期间发表的学术论文71南京航空航天大学硕士学位论文VII图表目录图21数控系统总体结构模型7图22嵌入式数控硬件结构图8图23嵌入式数控软件结构图9图31LPC2220功能框图13图325V转33V电路14图3333V转18V电路15图3430M有源晶振时钟电路15图35110592M的无源晶振时钟电路15图36SP708S的复位电路16图37外部RAM扩展电路17图39ZLG7290键盘电路18图310液晶模块接口电路19图311串口通信电路21图41任务结构24图42任务间的状态转换25图43任务、中断服务子程序和信号量之间的关系26图44任务、中断服务子程序和邮箱之间的关系27图45中断服务子程序流程图28图46基于C/OS的硬件和软件体系结构图29图47任务堆栈结构32图48车床系统中各个任务和中断之间的工作流程38图49CA320240液晶模块初始化流程40图410按键处理流程图44图51数控加工过程流程46图52译码模块结构图47图53确定有穷状态自动机(DFA)49图54子程序调用关系图54图55语法检查结果56图56一般G代码测试结果57基于ARM的嵌入式车床数控系统研究与开发VIII图57子程序调用测试结果58图61运动控制器实物图59表61ADS12的组成60图62CODEWARRIORIDE集成开发环境61图63AXD调试器61图64测试ARM核62图65测试FLASH63图66系统的打印调试原理64图67系统自动运行时的画面65南京航空航天大学硕士学位论文1第一章绪论随着全球经济竞争日益加剧,制造行业面临着产业升级换代被加工零件复杂度的增加,加工单元柔性化、工厂自动化的实现等等。数控机床作为一种自动化的加工设备而被广泛采用。同时,随着现代机械制造业向更高层次的发展,数控机床也成为柔性制造单元FMC、柔性制造系统FMS以及计算机集成制造系统CIMS的基础装备。数控技术是数控机床的关键技术,它的迅速发展和广泛应用,使得普通机械逐渐被高效率、高精度的数控机械所代替,从而形成了巨大的生产力。一个国家的工业化水平,很大程度上体现在制造业的水平,而数控机床技术正是制造技术中关键性的技术之一。近年来我国机床需求旺盛,市场巨大。自2002年来,我国已经连续六年成为世界上最大的机床消费国和进口国,其中数控机床是机床消费的主流。随着制造技术,计算机技术,微电子技术等的发展,数控机床必然向更高精度、更高速度、更高可靠性及更完善的功能方向发展,以提高国家的整体制造业水平。11数控技术概况111数控技术发展背景数控研究的历史始于20世纪40年代前后,美国帕森斯公司和麻省理工学院伺服机构研究所合作,进行数控机床的研究工作,在1952年研制成功了世界上第一台三坐标数控铣床1。从此,传统机床产生了质的变化。近半个世纪以来,数控系统经历了四个阶段、八代的发展26。1数控NC阶段早期计算机运算速度低,这对当时的科学计算和数据处理影响还不大,但不能适应机床实时控制的要求。人们不得不采用数字逻辑电路“搭”成一台机床专用计算机作为数控系统,被称为硬件连接数控,简称为数控NC。随着元器件的发展,这个阶段历经了三代,即1952年第一代一电子管1959年第二代一晶体管1965年第三代一小规模集成电路。2计算机数控CNC阶段到1970年,通用小型计算机业已出现并成批生产,其运算速度比五、六十年代有了大幅度的提高,这比专门“搭”成的专用计算机成本低、可靠性高。于是将它移植过来作为数控系统的核心部件,从此进入了计算机数控CNC阶段。1970年在美国芝加哥数控展览会上,首次展出了由小型计算机为核心的计算机数控系统,标志着数控系统进入了计算机为主体的第四代。至此,原来由硬件实现的功能逐步改由软件完成,从此系统进入了软件数控时代。1974年,首次出现了采用微处理器芯片的软件CNC系统,象征着数控系统进入了以微机基于ARM的嵌入式车床数控系统研究与开发2为背景的第五代。这一发展真正实现了机电一体化,进一步缩小了体积,降低了成本,简化了编程和操作,使数控系统达到了普及的程度。70年代末、80年代初,随着超大规模集成电路、大容量存储器、CRT的普及应用,CNC系统进入了第六代。它虽然仍以微处理器为基础,但控制功能更为完备,达到了多功能的技术特征,尤其在软件技术方面发展更快,具有了交互式对话编程,三维图形动态显示/校验,实时精度补偿等功能。在系统结构上,开始出现了柔性化、模块化的多处理机结构。数控系统产品也逐步实现了标准化,系列化。3高速高精度CNC的开发与应用阶段进入八十年代,为了实现高速、高精度曲面轮廓精加工,必须提高微轮廓线的解释处理能力和伺服驱动特性,为保证零件程序的传送、插补、加工线速度控制等连续处理,CNC系统应具有足够高的数据处理速度和能力。32位CPU以其很强的数据处理能力在CNC中得到了应用,使CNC系统进入了面向高速、高精度的第七代。1986年,三菱电机公司率先推出了CPU为68020的32位CNC,掀起了32位CNC的热潮,并逐渐成为当今数控系统的主流。4基于PC的开放式CNC的开发与应用进入九十年代,个人计算机PERSONALCOMPUTER,PC的性能已发展到很高的阶段,从8位、16位发展到32位,可以满足作为数控系统核心部件的要求,而且PC机生产批量很大,价格便宜,可靠性高。数控系统从此进入基于PC的CNC系统阶段。1994年,这种基于PC的CNC控制器在美国首先亮相市场,并在此后获得了高速发展。PC的引入,不仅为CNC提供高性能价格比的硬件资源和极其丰富的软件资源,更为CNC的开放化提供了基础,使之成为数控历史最具影响的发展。人们常称这种PCNC结构为第八代数控系统。112国外数控发展现状近年国外数控技术发展呈如下趋势L国际机床市场的消费主流是数控机床1998年世界机床进口额中大部分是数控机床,美国进口机床的数控化率达70,我国为60。目前世界数控机床消费趋势己从初期以数控电加工机床、数控车床、数控铣床为主转向以加工中心、专用数控机床、成套设备为主7。2国外数控机床的信息化世界装备制造业市场正在向全面信息化的方向迈进,技术发展主要表现为柔性制造系统、计算机集成制造系统的开发与应用,并向制造智能化方向发展。技术发展特征表现为技术的融合化;产品的发展特征表现为高附加值化、智能化和系统化;系统管理的发展特征表现为集成化(包括系统集成、软件集成、技术集成和接口集成)和网络化。随着计算机技术、网络技术南京航空航天大学硕士学位论文3日益普遍运用,数控机床走向网络化、集成化己成为必然的趋势和方向。从另一角度来看,目前流行的ERP即工厂信息化对于制造业来说,仅仅局限于通常的管理部门或设计、开发等上层部分的信息化是远远不够的,工厂、车间的最底层加工设备一数控机床不能够连成网络或信息化就必然成为制造业工厂信息化的制约瓶颈。以FANUC和西门子为代表的数控系统生产厂商己在几年前推出了具有网络功能的数控系统。在这些系统中,除了传统的RS232接口外,还备有以太网接口,为数控机床联网提供了基本条件。113国内数控发展现状我国数控机床起步并不晚,大约与日本、德国、前苏联同步。1958年,由北京机床研究所和清华大学等单位研制成功第一台数控机床7。但是由于相关工业基础差,尤其是电子工业薄弱,致使其发展速度缓慢。但由于历史的原因,一直没有取得实质性的成果。数控机床的品种和数量都很少,稳定性和可靠性都比较差,只在一些复杂的、特殊的零件加工中使用。20世纪80年代以来,在消化吸收国外先进技术的基础上,我国数控技术有了新的发展,数控机床才真正进入小批量生产的商品化时代。“七五”、“八五”期间的技术攻关,大大推动了我国数控机床的发展,目前我国已经能生产100多种数控机床。尤其是最近10年来,我国己研制了具有自主版权的数控技术平台和数控系统,比如2008年国产机床展上的大连机床集团的VDW500五轴联动立式加工中心、华中数控的LVC600五轴联动立式加工中心其机床各项性能指标都接近国际先进水平8。但从数控机床的整体来看,我国的数控技术与发达国家相比仍有相当差距,数控产业仍十分薄弱,而且国产数控绝大部分是中低档经济型,高档数控仍然被国外发达国家技术封锁。为了促进我国数控技术的发展,国家已经在“十一五”继续把数控技术列为优先发展的技术之一,使我国的数控技术在较短的时间里加快赶上世界先进水平。114数控技术的发展趋势随着微电子技术、计算机技术、精密制造技术及检测技术的发展,数控机床性能日臻完善,数控系统应用领域日益扩大。为了满足市场和科学技术发展的需要,达到现代制造技术对数控技术提出的更高的要求,当前,世界数控技术及其装备发展趋势主要体现在以下几个方面L高速度、高精度机床向高速化方向发展,可充分发挥现代刀具材料的性能,不但可大幅度提高加工效率、降低加工成本,而且还可提高零件的表面加工质量和精度。超高速加工技术对制造业实现高效、优质、低成本生产有广泛的适用性。精密化是为了适应高新技术发展的需要,也是为了提高普通机电产品的性能、质量和可靠性,减少其装配时的工作量从而提高装配效率的需要。随着高新技术的发展和对机电产品性能与质量要求的提高,机床用户对机床加工精度的要求也越来越基于ARM的嵌入式车床数控系统研究与开发4高。现代数控机床主轴转速在12000R/MIN以上较为普及,高速加工中心的主轴转速高达100000R/MIN;快速进给速度一般机床都在50M/MIN以上,有的机床高达120M/MIN。加工的高精度比加工速度更为重要,微米级精度的数控设备正在普及,一些高精度机床的加工精度已达到01UM9。2高可靠性高可靠性是指数控系统的可靠性要高于被控设备的可靠性在一个数量级以上,新型的数控系统大量采用大规模或超大规模的集成电路,采用专门芯片及混合式集成电路,使线路的集成度提高,元器件数量减少,功耗降低,提高了可靠性。现代数控机床都装备了计算机数控系统(即CNC系统),只要改变软件控制程序,就可以适应各类机床的不同要求,实现数控系统的模块化、标准化和通用化。数控控制软件的功能更加丰富,具有自诊断及保护功能。为了防止超程,可以在系统内预先设定工作范围(即软限位)。数控系统还具有自动返回功能(即断点保护功能)。3多功能大多数数控机床都具有CRT图形显示功能,可以进行二维图形的加工轨迹动态模拟显示,有的还可以显示三维彩色动态图形;具有丰富的人机对话功能,“友好”的人机界面;借助CRT和键盘的配合,可以实现程序的输入、编辑、修改、删除等功能。现代数控系统,除了能与编程机、绘图机、打印机等外设通信外,还应能与其他CNC系统、上级计算机系统通信,以实现FMS的连接要求。4智能化数控系统应用高技术的重要目标是智能化。如引进自适应控制技术、人机对话自动编程、自动诊断并排除故障等智能化功能。5复合化复合化是近几年数控机床发展的模式,它将多种动力头集中在一台数控机床上,在一次装夹中完成多种工序的加工。如立卧转换加工中心、车铣万能加工中心及四轴联动(X、Y、Z、C)的车削中心等。12嵌入式系统概况嵌入式系统是以应用为中心,以计算机技术为基础,软件硬件可裁减,适应于应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统10。随着社会的日益信息化,计算机和网络已经全面渗透到日常生活的每个角落。对于我们每个人来说,需要的已经不再仅仅是那种放在桌上处理文档、进行工作管理和生产控制的计算机“机器”。任何一个普通人都可以使用嵌入式电子产品,小到MP3、PDA等微型数字化产品,大到网络家电、智能家电、南京航空航天大学硕士学位论文5车载电子设备等。纵观嵌入式系统的发展历程大致经历了4个阶段。1无操作系统阶段是以8位单芯片为核心的可编程控制器形式,执行一些单线程程序,具有与监测、伺服、指示设备相配合的功能。这类系统大部分应用于一些专业性强的工业控制系统中,通过汇编语言编程对系统进行直接控制。这一阶段系统的主要特点是系统结构和功能相对单一,处理效率较低,存储容量较小,几乎没有用户接口。由于这种嵌入式系统使用简单、价格低,以前在国内工业领域应用较为普遍,但是己经远不能适应高效的、需要大容量存储的现代工业控制和新兴信息家电等领域的需求。2简单操作系统阶段20世纪80年代,随着微电子工艺水平的提高,集成电路制造商开始把嵌入式系统应用中所需的微处理器、I/O接口、串行接口及RAM、ROM等部件集成到一片VLSI中,制造出面向I/O设计的微控制器。与此同时,嵌入式系统的程序员也开始基于一些简单的操作系统开发嵌入式软件,缩短了开发周期,提高了开发效率。此时的嵌入式操作系统虽然还比较简单,但已经初步具有了一定的兼容性和扩展性。典型的有1981年,READYSYSTEM开发出世界上第一个商业嵌入式实时内核(VTRX32)。这个实时内核包含了许多传统操作系统的特点,包括任务管理,任务间通信,同步与互相排斥、中断支持和内存管理等功能。3实时多任务操作系统阶段20世纪90年代,随着硬件实时性要求的提高,嵌入式系统的软件规模也在不断扩大,实时内核逐渐形成了实时多任务操作系统(RTOS),并开始成为嵌入式系统的主流。这一阶段的操作系统实时性得到了很大改善,已经能够运行在各种不同类型的微处理器上,具有高度的模块化和扩展性。典型的有VXWORKS、PALMOS、WINCE,嵌入式LINUX等。4面向INTERNET阶段21世纪是网络时代,随着INTERNET的进一步发展,以及INTERNET技术与信息家电、工业控制技术等的结合日益紧密,嵌入式设备与INTERNET的结合是嵌入式系统未来的发展趋势。信息时代和数字时代的到来,为嵌入式系统的发展带来了巨大的机遇。嵌入式技术与INTERNET技术的结合正推动着嵌入式系统的飞速发展,成为当今世界最热门的技术之一。1999年,根据美国EMF(电子市场分析)报告,嵌入式操作系统全球产值362亿美元,而相关的整个嵌入式开发工具(包括仿真器、逻辑分析仪、软件编译器和调试器)则高达9亿美元,并预计到2001年市场规模将达到317亿美元。2002年嵌入式系统带来的工业年产值已超过了1万亿美元11。基于ARM的嵌入式车床数控系统研究与开发613本文研究意义及主要工作131研究意义一个国家的工业水平,很大程度上体现在制造业的水平上,而数控机床技术正是现代制造技术中关键性的技术之一。我国是一个制造业大国,但数控技术的水平还不是很高,跟欧美、日本还有很大的差距,这严重制约着我国制造业水平的提高。以PC机作为基础的CNC,为我国的NC开发和应用带来了新的机遇,使得我国数控系统开发商有了一个赶上世界数控技术发展潮流的机遇。然而,在我国蓬勃发展的基于PC的数控系统也有着不足之处,如基于PC的数控系统难以装入体积严格要求的微小型系统内。另外,基于PC的CNC往往功能强大,但相对一些功能相对简单的应用场合,成本过高,结构复杂。我国现在面临着制造业产业结构的调整和升级,也面临几百万台旧式机床的改造,其中部分机床可改造成具有较高性价比的经济型数控;同时设计和生产一些适合本国制造业需求的经济型数控系统,则可以显著的提高经济效益和社会效益,减少资源的浪费。目前国内中小型的数控系统多采用8/16位单片机系统,其内部资源有限,一般需要扩展资源,且较多采用汇编编程,没有操作系统在其上运行,程序的修改、升级和维护都比较困难。嵌入式系统的不断普及应用,可为数控技术提供一种灵活方便、能在工业环境长期稳定可靠工作的微小型廉价的控制系统。目前,嵌入式系统的推广应用已经成为潮流,也成为中、低档数控系统的发展趋势。数控车床作为使用最多、功能相对简单的机床种类,非常适合采用嵌入式系统。为此,本文以基于ARM的嵌入式车床数控系统的研究与开发为目标,开发一种低成本、高性价比的车床数控系统。132论文主要内容本文主要研究内容包括1以32位ARM7内核微处理器作为核心,基于嵌入式操作系统C/OS,构建整个数控系统的软硬件架构。2完成嵌入式实时操作系统C/OS在ARM硬件平台上的移植、系统多任务的划分与调度。编写数控系统的串口通讯、液晶显示、键盘输入等低层驱动程序。3研究NC程序解释的实现方法,编写数控加工程序解释模块等相关应用程序。南京航空航天大学硕士学位论文7第二章嵌入式数控车床系统总体结构设计本文所要研究的嵌入式车床数控系统的主要功能包括能够给用户提供一个良好的人机界面,支持键盘的输入并实现机床加工代码的编程,能实现车削加工的高速运动控制,可以实现常用的直线插补、圆弧插补和螺纹加工插补,能够实现对异常情况的实时处理。此外,系统还能够支持与PC机的串口通信,上传和下载数控文件12。21嵌入式数控系统的总体设计嵌入式车床数控系统在结构上由硬件和软件两大部分组成。硬件选择以ARM处理器和复杂可编程逻辑器件CPLD为核心,并配以系统所需的外围模块组成完整的硬件平台;软件选择C/OS实时嵌入式操作系统,开发系统所需的底层驱动和应用软件。嵌入式数控系统的总体结构模型如图21所示,由硬件层、操作系统层及软件层三个层次构成。硬件层由ARM处理器硬件构架和CPLD可编程逻辑控制器件组成,ARM处理器用来管理调度,而CPLD芯片用于在较短的时间内完成复杂的运动控制。嵌入式数控系统的操作系统层采用了源代码公开的嵌入式实时操作系统C/OS,C/OS是一款可根据功能需要裁减,采用可剥夺性实时内核的多任务操作系统。采用C/OS使得嵌入式数控系统的控制软件划分明确、模块化,并且使系统具有多任务处理能力及良好的实时性。软件层主要是数控系统匹配软件,包括设备驱动程序、相关的API函数、数控各任务模块等。OS层(C/OS)硬件层(ARMCPLD)软件层(设备驱动程序、数控各任务模块等)图21数控系统总体结构模型22嵌入式数控系统的硬件组成系统硬件结构如图22所示。嵌入式微处理器选用ARM7系列的LPC2220,它是32位的高性能、低成本的嵌入式RISC微处理器,具有数据处理能力强,稳定可靠,可支持操作系统,低功耗和低成本的特点。在嵌入式数控系统中主要负责数据处理、运算和对外设(LCD、RAM、FLASH、键盘等)的控制。大规模可编程逻辑控制器件CPLD主要用作精插补、码盘反馈和实现I/O控制1316。基于ARM的嵌入式车床数控系统研究与开发8键盘模块脉冲输出编码反馈存储模块I/O控制ARM液晶模块CPLD图22嵌入式数控硬件结构图211ARM子系统设计了一个满足嵌入式车床数控性能要求的ARM子系统,其资源主要包括LPC2220微处理器,主频60MHZ。1MB的外部RAM、2MBNORFLASH、16MBNANDFLASH、专用复位电路、JTAG凋试接口、实时时钟等。并且周围引出了外部扩展需要用到的全部数据、地址总线、各外设接口及I/O信号等,能够作为嵌入式车床控制系统主控模块使用。212CPLD子系统CPLD子系统采用ALTERA公司的MAX7000AAE系列的EPM1270。它以第二代多阵列矩阵(MAX)结构为基础,是一种高性能CMOSEEPROM器件;逻辑密度为2000个可用编程门电路,128个宏单元;引脚到引脚的逻辑延时为50NS,计数器工作频率可达到178MHZ;有集电极开路选择,可编程宏单元触发器;具有专有的清除、时钟、输出使能控制;包括一个可编程的程序加密位,全面保护专利设计。能够很方便实现嵌入式数控的精插补、码盘输入、I/O控制等功能,同时对产品可以加密保护。在本系统中,CPLD器件是挂在ARM的存储器总线上,这样通过存储器映射,ARM可以很方便的访问CPLD器件。213液晶模块液晶(LCD)模块包括液晶显示屏液晶显示控制器。液晶模块使用CA320240B,其核心是日本SEIKOEPSON公司出品的液晶显示控制芯片S1D13305,该芯片支持文本即字符显示、图形显示以及文、图相结合的显示模式;LCD显示分辨率可达320240像素;内部掩模有一个具有160字符、57像素点阵的字符发生器ROM;支持在片外设置一个具有256字符、最大达816像素点阵的字符发生器ROM或RAM。能够快速响应数控车床系统图形仿真和实时监控的需求。与采用彩屏的数控系统相比,具有价格功耗上的优势。214键盘模块键盘与ARM处理器的接口设计主要采用专用的键盘接口芯片ZLG7290。该芯片采用I2C串行接口,提供键盘中断信号,方便与ARM接口,并且可以支持64个按键消息,满足了南京航空航天大学硕士学位论文9嵌入式数控车床的要求。采用专用的键盘芯片可以采用中断的方式实现对键码的读取,免去对键盘的循环扫描,节约了CPU的运算资源,同时节省了很多任务切换和内部信号量处理时间。23嵌入式数控系统软件的结构嵌入式数控系统软件由嵌入式实时多任务操作系统C/OS及其相应的应用软件组成。C/OS实时操作系统支持多任务管理,采用基于占先式的实时内核,可以把任务的调度时间控制在毫秒级内,满足系统实时性的要求。但C/OS仅提供了一个任务调度的实时内核,没有提供相应得标准API函数,因而需要自行开发一系列与系统运行相关的设备驱动程序、API函数以及应用软件。嵌入式数控软件功能结构如图23所示。数控系统按功能可划分为以下六个部分17(1)人机界面管理(2)逻辑处理(3)运动控制(4)辅助控制(5)数据处理(6)伺服控制。图23嵌入式数控软件结构图231人机界面管理该部分主要实现人机交互,为数控车床的工作提供数据和信息,反馈机床的运行状态,监控整个加工过程。主要功能有以下几点1)获得车床系统当前运行状态,比如处于手动、自动、运行还是其它状态,获得各种机床信息,比如当前机床X、Z轴坐标、进给速率等,并且通过LCD显示给用户。2)实现与用户的人机交互,通过接受用户的按键消息,完成对系统的控制,比如对刀偏值、主轴速率等系统参数的修改。3)对NC程序进行加工过程中的刀尖轨迹仿真、在LCD上显示刀具轨迹路径,用户可以检验刀具所走过的轨迹判断NC程序是否正确。基于ARM的嵌入式车床数控系统研究与开发10232逻辑处理逻辑处理主要负责主轴的正反转,冷却液的开关,换刀等。由于C/OS是个实时多任务系统,逻辑处理的优先级很高,一般在几个MS,所以能够满足数控车床的需求。233运动控制运动控制主要是对机床位移、速度、加速度的控制。速度控制主要指的是CNC系统的加减速控制。在CNC装置中,为了保证机床在启动或停止时不产生冲击、失步、超程或振荡,必须对进给电机的脉冲频率或电压进行加减速控制。即在机床加速启动时,保证加在电机上的脉冲频率或电压逐渐增加而当机床减速停止时。保证加在电机上的脉冲频率或电压逐渐减小。加减速算法主要有T型和S型加减速,本系统采用的是T型加减速,在于经济型数控车床相对于其它机床来说,轮廓形状变化小,加工精度要求不是太高。位移的控制主要由插补来实现。插补是数控系统的核心,数控系统正是通过插补计算,才能加工出各种复杂轮廓的零件。并且各种复杂轮廓的精度也是由插补任务保证的。本系统采用了数据采样插补,并且插补过程分成两步,由ARM处理器完成插补运算的第一步,即粗插补,这里采用时间分割法。根据速度控制任务得到的进给速度计算出每个插补周期内的总进给量,放入插补缓冲区内。由CPLD完成精插补,通过中断方式,获得粗插补的X、Z轴进给量,然后通过数字积分法DDA变换成进给脉冲序列控制电机的运动。234数据处理控制数据处理主要完成NC代码的译码和刀具补偿。译码就是将数控代码从文件系统中取出,经过语法检查和语义分析,最后翻译成系统能识别的代码形式,存放在译码缓冲区中。经过译码后的数据段主要分为三部分,分别供速度控制任务(F指令)、插补任务(G指令)、逻辑控制(T、S、M指令)使用,常常需要将刀具补偿等各种参数考虑进轨迹计算的过程中。235辅助控制这部分功能比较繁琐,主要有控制面板监控、主轴管理、刀库管理、系统诊断等,主要由微处理器完成控制任务。236伺服处理数控机床进给电机逐步由原来的步进电机转向采用交流伺服电机,以提高加工速度和精度。这就涉及到伺服控制。伺服控制又可称为位置控制,主要用于数控系统的闭环控制,包括了机床位置检测、控制规则的制定等,涉及到大量的串行的数学运算。所以伺服算法部分由微处理器完成,信号检测则由CPLD实现。南京航空航天大学硕士学位论文1124本章小结本章通过对嵌入式数控车床控制系统的功能需求分析,基于ARM和C/OS,提出了实现系统的软硬件的架构,并对系统的总体结构、硬件部分各模块、软件部分各模块的功能和实现方法分别作了简要的说明和介绍。基于ARM的嵌入式车床数控系统研究与开发12第三章车床数控系统硬件平台设计嵌入式系统的硬件是嵌入式系统软件运行的基础,一般包括嵌入式微控制器、电源和时钟、复位电路、存储器、输入输出设备接口和调试接口等。本数控系统以飞利浦公司的LPC2220和ALTERA公司的EPM1270为核心构成硬件控制平台,具有低价格、低功耗、高性能的特点。31LPC2220概述311ARM简介ARM是ADVANCEDRISCMACHINES的缩写,是微处理器行业的一家知名企业,该企业设计了大量廉价、高性能、低功耗的RISC处理器、相关技术和软件。ARM是全球领先的16/32位RISCREDUCEDINSTRUCTIONSETCOMPUTER微处理器知识产权设计供应商。ARM公司自1990年正式成立以来,在32位RISCCPU开发领域不断取得突破,其结构己从V3发展到V6。ARM公司设计的芯核具有低功耗,低成本等显著优点,获得众多半导体厂家和整机厂商的大力支持,在32位嵌入式应用领域已经占有70以上的产品市场,在低功耗、低成本的嵌入式应用领域确立了市场领导地位。现在设计、生产ARM芯片的国际大公司已经超过50多家。其中包括国际著名的INTEL、IBM、LG半导体、NEC、PHILIPS、SAMSUNG公司等18。目前非常流行的ARM核有ARM7TDMI,ARM9,ARM9E,ARM10、SECURECORE和STRONGARM。ARM芯片还获得了许多实时操作系统RTOSREALTIMEOPERATINGSYSTEM供应商的支持,比较有名的有WINDOWSCE,LINUX,VXWORKS,C/OS等。312LPC2220微控制器概述及特性LPC2220微控制器是基于一个支持实时仿真和嵌入跟踪的32/16位ARM7TDMISCPU。对代码规模有严格控制的应用可使用16位THUMB模式将代码规模降低超过30,而性能的损失却很小。由于LPC2220的144脚封装、极低的功耗、多个32位定时器、8路10位ADC、PWM输出以及多达9个外部中断管脚使它们特别适用于工业控制、医疗系统、访问控制和电子收款机(POS)。通过配置总线,LPC2220最多可提供76个GPIO。由于内置了宽范围的串行通信接口,LPC2210/2220也非常适合于通信网关、协议转换器、嵌入式软件调制解调器以及其它各种类型的应用1920。其功能框图如图31所示。南京航空航天大学硕士学位论文13图31LPC2220功能框图LPC2220特性116/32位ARM7TDMIS微控制器,拥有64KB片内静态RAM,通过外部存储器控制器可扩展4组,每组的容量高达16MB,数据宽度为8/16/32位。2多达76个通用I/O口(可承受5V电压)。可使用9个边沿或电平触发的外部中断管基于ARM的嵌入式车床数控系统研究与开发14脚。3多个串行接口,包括2个16C550工业标准UART、高速I2C总线(400KBIT/S)和2个SPI接口。可选择带有数据缓冲区和可变长度传输的同步串行口(SSP)来代替一个SPI。42个32位定时器带4路捕获和4路比较通道、PWM单元(6路输出)、实时时钟(RTC)和看门狗。8路10位A/D转换器,转换时间低至244S。5通过可编程的片内锁相环(PLL)可实现最大为75MHZ的CPU操作频率,设置时间为100US。带外部晶体的片内振荡器频率范围130MHZ,外部振荡器的频率高达50MHZ。6LQFP144和TFBGA144两种封装。32电源、时钟及复位电路设计321电源电路设计电源为整个系统提供能量,是整个系统工作的基础,电源系统的稳定性和可靠性对整个系统来说具有极其重要的地位。LPC2220有4组电源输入数字33V,数字18V,模拟33V,模拟18V。如果不使用AD功能,模拟电源和数字电源可以不分开,本系统不使用LPC2220的AD功能,所以只提供两组电源数字33V,数字18V。EPM1270和存储器都需要外部33V电源供电,而数控系统外部面板一般只提供12V,5V输入。所以需要将5V电压转换成33V和18V。LM1086是NATIONALSEMICONDUCTOR公司生产的线性稳压电源芯片,可完成5V到33V的转换,输出电流可达15A。SPX1117M318是SIPEX公司生产的5V转18V的电源芯片,用于LPC2220内核供电。这个型号的芯片具有很低的静态电流,当输出电流减少时,静态电流随负载变化,并提高效率21。两种芯片的电平转换电路如图32、图33所示。图325V转33V电路南京航空航天大学硕士学位论文15图3333V转18V电路322时钟电路设计目前所有的微控制器均含有时钟电路,需要时钟信号才能正常工作。本系统使用2个晶振,分别为ARM和CPLD提供时钟。其中30M的有源晶振信号作为EPM1270芯片主时钟,如图34所示。LPC2220采用内部的晶体振荡器设计时钟电路,所以外接一个110592M的无源晶振来组成时钟电路,如图35所示。图3430M有源晶振时钟电路图35110592M的无源晶振时钟电路基于ARM的嵌入式车床数控系统研究与开发16323复位电路设计微控制器在上电时状态不确定,这会造成微控制器不能正确的工作。为解决这个问题,所有的微控制器都需要有一个复位信号,它负责将控制器初始化为某个确定的状态。一些微控制器自己上电时会产生复位信号,但是多数控制器需要外部输入这个信号,因此它的稳定性和可靠性对微控制器的正常工作有重大影响。简单的阻容复位电路成本比较低,但它不能保证任何情况产生稳定可靠的复位信号,由于ARM和CPLD芯片的高速、低功耗、低电压导致噪声容限低,对电源的纹波、瞬态相应性能、时钟源的稳定性、电源监控可靠性等诸多方面也提出了更高的要求。本系统复位电路使用了专用芯片SP708S,在电源上电、掉电以及监控系统电源电压的变化时,产生可靠的电源复位信号,提高了系统的可靠性22。当按下复位按钮时,该芯片输出的低电平对微处理器进行复位操作。具体的电路如图36所示。图36SP708S的复位电路33LPC2220的外部存储器设计由于LPC2220本身只有64KB的静态RAM,没有程序存储器ROM,所以基于LPC2220的嵌入式系统都必须外扩存储器系统,才能满足系统要求。LPC2220自带了外部存储器控制器(EMC),可扩展4个存储器组,每个存储器组都支持SRAM、ROM、FLASH、EPROM等,每组的容量高达16MB,数据宽度为8/16/32位。由于嵌入式数控系统的编程代码量较大,并且数控加工的NC代码文件也需要保存在系统FLASH内,所以本系统外扩了两个512K的SRAM,2M的NORFLASH,16M的NANDFLASH,提供比较丰富的存储资源。通过CS0片选信号选中相应的存储器作为BANK0。因为当LPC2220上电或复位时,BANK0可以引导程序。所以一般在调试的时候BANK0为SRAM,BANK1为FLASH。最终代码固化时,BANK0为南京航空航天大学硕士学位论文17FLASH,BANK1为SRAM。其中512K的SRAM61LV51216

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论