基于ARM的嵌入式数控车床控制系统的开发.doc
《基于ARM的嵌入式数控车床控制系统的开发.doc》由会员分享,可在线阅读,更多相关《基于ARM的嵌入式数控车床控制系统的开发.doc(149页珍藏版)》请在咨信网上搜索。
1、基于ARM的嵌入式数控车床控制系统的开发130资料内容仅供参考,如有不当或者侵权,请联系本人改正或者删除。中图分类号: TP273 TP391论文编号: 1028705 09-0167学科分类号: 080202 硕士学位论文基于ARM的嵌入式车床数控系统研究与开发研究生姓名杨军学科、 专业机械电子工程研究方向机电控制工程指导教师游有鹏 教授南京航空航天大学研究生院 机电学院二八年十二月Nanjing University of Aeronautics and AstronauticsThe Graduate SchoolCollege of Mechanical and Electrical
2、EngineeringResearch of Embeded CNC for Lathes Based on ARMA Thesis inMechanical EngineeringByYangJunAdvised byProf. You YoupengSubmitted in Partial Fulfillmentof the Requirementsfor the Degree ofMaster of EngineeringDec. 承诺书本人郑重声明: 所呈交的学位论文, 是本人在导师指导下, 独立进行研究工作所取得的成果。尽我所知, 除文中已经注明引用的内容外, 本学位论文的研究成果不
3、包含任何她人享有著作权的内容。对本论文所涉及的研究工作做出贡献的其它个人和集体, 均已在文中以明确方式标明。本人授权南京航空航天大学能够有权保留送交论文的复印件, 允许论文被查阅和借阅,能够将学位论文的全部或部分内容编入有关数据库进行检索, 能够采用影印、 缩印或其它复制手段保存论文。(保密的学位论文在解密后适用本承诺书)作者签名: 日 期: 摘 要传统的中、 低档数控车床在结构上往往采用8/16位单片机加精插补器, 以获得较高的性价比。随着嵌入式系统的迅速发展, 高性能的32位CPU已经普及, 以ARM为代表的32位微处理器速度快、 功能强、 价格低, 完全能够开发出具有更高性价比的嵌入式数
4、控系统。本文旨在研究和设计一种基于ARM7的嵌入式数控车床控制系统。本文首先经过对嵌入式技术和数控技术的全面分析, 选择确定了车床嵌入式数控系统的软硬件平台。硬件平台以ARM7系列微处理器LPC2220为核心, 基于可编程逻辑器件CPLD实现精插补器, 并配以必要的外围电路。软件平台以源代码公开的C/OS-实时操作系统为基础, 开发系统所需的驱动程序和应用软件。规划设计了基于C/OS-的车床数控系统控制任务划分以及各任务模块间的通讯协调机制。控制任务划分为7个: 主控、 液晶显示、 文件系统服务、 数控程序解释、 速度处理、 插补和逻辑控制; 利用C/OS-提供的邮箱、 信号量等服务机制, 有
5、效实现了任务与任务、 任务与中断之间的通信与同步。另外, 本文还研究了系统程序解释的实现方法。首先, 基于有限状态机( DFA) 的分析策略构造了数控程序解释的词法分析器, 把程序的字符流转换为内部标记流, 然后对程序进行语法和语义分析, 最后翻译成速度处理和逻辑控制所需要的数据结构。重点分析了子程序调用和返回的机制及其实现方法。最后, 介绍了系统的软硬件开发工具和调试方法。软硬件测试表明, 该嵌入式车床数控系统可满足预期目标。关键词: 嵌入式车床数控系统, ARM, CPLD, C/OS-, 程序解释 AbstractTo gain high cost perfermence, tradit
6、ional CNC for lathes usually adopts 8-bit or 16-bit mcu and fine interpolator. With the development of the embedded system, high perfermence 32-bit CPU has been popularization. ARM as a typical product of 32 bits processors, being of high speed in computation and function and low costs, can be compl
7、etely used to develop embedded CNC with higher cost perfermence. In this papar an Embended CNC for lathes based on ARM is designed and developed.Based on general analysis of embedded systems and NC technology, the hardware and software platform of embedded CNC for lathes are chosed. A 32-bit CPU LPC
8、2220 is used as the kernel of hardware, together with a fine interpolatorimplemented with a CPLD, and some other necessary peripheral modules. The software of the embedded CNC is based on C/OSII, a real-time embedded operating system with open source code. Some equipment driver and application progr
9、am are included in the software.For the development of the embedded CNC for lathes based on C/OSII, control tasks in the system are firstly planed and the communication coordination mechanism among each task is then designed. Seven tasks is involved in the CNC: main control, LCD display, file servic
10、e, NC program interpretation, ACC/DEC control, interpolation and PLC. Upon the service of mailbox and semaphore provided by C/OSII, the communication and synchronization can be efficiently realized among tasks or between task and ISR.In addition, the implementation method of the interpretation of NC
11、 program for lathes is investigated. First, a lexical analyzer of NC program is constructed by finite state automaton (DFA) which can transform character streams to inner token streams. Then, syntax and semantic analysis are used for the NC program. Finally, the error-free machining information is s
12、tored in a specifical datas tructure which can be received and used by both the task of ACC/DEC control and PLC. The mechanism and implementation of call and return for subroutines are analyzed and given.Finally, the instruments of debugging and development for hardware and software are introduced.
13、By testing, the embedded CNC for lathes can meet the expected design demands.Key Words: embedded CNC for lathes, ARM, CPLD, C/OSII, program interpretation目 录第一章 绪论11.1 数控技术概况11.1.1 数控技术发展背景11.1.2 国外数控发展现状21.1.3 国内数控发展现状31.1.4 数控技术的发展趋势31.2 嵌入式系统概况41.3 本文研究意义及主要工作51.3.1研究意义51.3.2论文主要内容6第二章 嵌入式数控车床系统总
14、体结构设计72.1 嵌入式数控系统的总体设计72.2 嵌入式数控系统的硬件组成72.1.1 ARM子系统82.1.2 CPLD子系统82.1.3 液晶模块82.1.4 键盘模块82.3 嵌入式数控系统软件的结构92.3.1 人机界面管理92.3.2 逻辑处理92.3.3 运动控制102.3.4 数据处理控制102.3.5 辅助控制102.3.6 伺服处理102.4 本章小结11第三章 车床数控系统硬件平台设计123.1 LPC2220概述123.1.1 ARM简介123.1.2 LPC2220微控制器概述及特性123.2 电源、 时钟及复位电路设计143.2.1 电源电路设计143.2.2 时
15、钟电路设计153.2.3 复位电路设计163.3 LPC2220的外部存储器设计163.4 EPM1270的电路设计173.5 人机界面电路设计183.5.1 键盘输入电路设计183.5.2 液晶显示模块接口电路设计183.6 RS-232串行通信电路203.7 本章小结21第四章 数控系统软件平台设计224.1嵌入式实时操作系统简介224.2.C/OS-简介232.2.1、 C/OS-的特点234.2.2 C/OS-的工作原理244.2.3 C/OS-的任务间通讯和同步254.2.3.1 信号量254.2.3.2 消息邮箱264.2.4 C/OS-的中断机制274.3 C/OS-在LPC22
16、20上的移植294.3.1 编写OS_CPU.H294.3.1.1 定义不依赖编译器的数据类型304.3.1.2 OS_ENTER_CRITICAL()和OS_EXIT_CREITICAL()的编写304.3.1.3 OS_STK_GROWTH的编写314.3.1.4 OS_TASK_SW()函数的编写314.3.2 编写OS_CPU_C.C314.3.3 编写OS_CUP_A.ASM334.3.3.1 OSStartHighRdy函数的编写334.3.3.2 OSCtxSw函数的编写344.3.3.3 OSIntCtxSw()函数的编写344.3.3.4 OSTickISR()函数的编写34
17、4.4 系统的软件任务及中断划分344.4.1 车床控制系统的任务划分354.4.2 车床控制系统任务优先级的确定364.4.3 车床数控系统中断的确定374.4.4 车床控制系统中各个任务及ISR之间的工作流程374.5 系统驱动程序设计394.5.1 液晶驱动设计394.5.1.1 速度匹配394.5.1.2 地址空间访问394.5.1.3 S1D13305的初始化404.5.1.4 字符、 汉字及图形的显示404.5.1.5 提高界面切换和屏幕刷新速度的措施424.5.2 键盘驱动程序的设计424.6 本章小结45第五章 车床数控程序解释模块的实现465.1 程序解释模块的总体分析465
18、.1.1 程序解释模块的方法465.1.2 程序解释模块结构划分475.2 数控程序的检查485.2.1 词法分析485.2.1.1 词法分析器485.2.1.2 分析方法485.2.2 语法分析495.2.3 语义分析515.3 数控程序的翻译525.3.1 一般G代码的翻译525.3.2 子程序的研究与实现535.3.3 MST 代码的处理555.3.4 重新译码的处理555.4 程序解释模块的部分测试565.4.1 程序错误的测试565.4.2 一般G代码的测试565.4.3 子程序调用的测试575.5 本章小结58第六章 系统的软件调试596.1 系统开发与调试的工具596.1.1 A
19、DS集成开发环境介绍596.1.1.1 ADS1.2集成开发环境的组成606.1.1.2 CodeWarrior IDE简介606.1.1.3 AXD调试器简介616.1.2 EasyJTAG-H仿真器的使用626.2 系统的软件调试636.2.1 系统的模块调试636.2.2 系统联调646.3 本章小结65第七章 总结展望667.1 论文总结667.2 课题展望66参考文献67致 谢70硕士期间发表的学术论文71 图表目录图2.1 数控系统总体结构模型7图2.2 嵌入式数控硬件结构图8图2.3 嵌入式数控软件结构图9图3.1 LPC2220功能框图13图3.2 5V转3.3V电路14图3.
20、3 3.3V转1.8V电路15图3.4 30M有源晶振时钟电路15图3.5 11.0592M的无源晶振时钟电路15图3.6 SP708-S的复位电路16图3.7外部RAM扩展电路17图3.9 ZLG7290键盘电路18图3.10液晶模块接口电路19图3.11 串口通信电路21图4.1 任务结构24图4.2 任务间的状态转换25图4.3 任务、 中断服务子程序和信号量之间的关系26图4.4任务、 中断服务子程序和邮箱之间的关系27图4.5 中断服务子程序流程图28图4.6 基于C/OS-的硬件和软件体系结构图29图4.7 任务堆栈结构32图4.8 车床系统中各个任务和中断之间的工作流程38图4.
21、9 CA320240液晶模块初始化流程40图4.10 按键处理流程图44图5.1 数控加工过程流程46图5.2 译码模块结构图47图5.3 确定有穷状态自动机( DFA) 49图5.4 子程序调用关系图54图5.5 语法检查结果56图5.6 一般G代码测试结果57图5.7 子程序调用测试结果58图6.1 运动控制器实物图59表6.1 ADS1.2的组成60图6.2 CodeWarrior IDE集成开发环境61图6.3 AXD调试器61图6.4 测试ARM核62图6.5 测试FLASH63图6.6 系统的打印调试原理64图6.7 系统自动运行时的画面65第一章 绪论随着全球经济竞争日益加剧,
22、制造行业面临着产业升级换代: 被加工零件复杂度的增加, 加工单元柔性化、 工厂自动化的实现等等。数控机床作为一种自动化的加工设备而被广泛采用。同时, 随着现代机械制造业向更高层次的发展, 数控机床也成为柔性制造单元(FMC)、 柔性制造系统(FMS)以及计算机集成制造系统(CIMS)的基础装备。数控技术是数控机床的关键技术, 它的迅速发展和广泛应用, 使得普通机械逐渐被高效率、 高精度的数控机械所代替, 从而形成了巨大的生产力。一个国家的工业化水平, 很大程度上体现在制造业的水平, 而数控机床技术正是制造技术中关键性的技术之一。近年来中国机床需求旺盛, 市场巨大。自 来, 中国已经连续六年成为
23、世界上最大的机床消费国和进口国, 其中数控机床是机床消费的主流。随着制造技术, 计算机技术, 微电子技术等的发展, 数控机床必然向更高精度、 更高速度、 更高可靠性及更完善的功能方向发展, 以提高国家的整体制造业水平。1.1 数控技术概况1.1.1 数控技术发展背景数控研究的历史始于20世纪40年代前后, 美国帕森斯公司和麻省理工学院伺服机构研究所合作, 进行数控机床的研究工作, 在1952年研制成功了世界上第一台三坐标数控铣床1。从此, 传统机床产生了质的变化。近半个世纪以来, 数控系统经历了四个阶段、 八代的发展2-6。(1)数控(NC)阶段早期计算机运算速度低, 这对当时的科学计算和数据
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 ARM 嵌入式 数控车床 控制系统 开发
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。