基于LINUX实时扩展的嵌入式数控系统研究与开发.pdf_第1页
基于LINUX实时扩展的嵌入式数控系统研究与开发.pdf_第2页
基于LINUX实时扩展的嵌入式数控系统研究与开发.pdf_第3页
基于LINUX实时扩展的嵌入式数控系统研究与开发.pdf_第4页
基于LINUX实时扩展的嵌入式数控系统研究与开发.pdf_第5页
已阅读5页,还剩78页未读 继续免费阅读

基于LINUX实时扩展的嵌入式数控系统研究与开发.pdf.pdf 免费下载

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

文档简介

南京航空航天大学 硕士学位论文 基于linux实时扩展的嵌入式数控系统研究与开发 姓名:曹玉华 申请学位级别:硕士 专业:机械电子工程 指导教师:游有鹏 2011-01 南京航空航天大学硕士学位论文 i 摘 要 嵌入式数控系统是嵌入式技术在现代数控领域的应用,它集嵌入式、机械制造、计算机、 信息处理、自动控制、机电一体化等多种技术于一体,是数控系统一个重要的研究和发展方向。 为了满足数控系统多任务、强实时性的功能需求,目前大多嵌入式数控系统采用“嵌入式 处理器+运动控制器” 的双cpu结构形式, 其强实时性任务功能主要在下位机的运动控制器中实 现,因此对运动控制器性能要求非常高,导致其开发难度较大、开发周期较长。为此,本文充 分利用当前嵌入式主机的优良特性及开发的便利性,尝试将系统强实时性的任务功能在上层主 机中实现,而将下层运动控制器简化为一个带精插补器的运动控制接口。 本文设计研究了一款以pc104嵌入式板卡为主处理单元的单cpu嵌入式数控系统,并通过 linux实时扩展在上层实现其多任务、强实时性的数控功能。主要研究工作和成果如下: 1. 详细分析了嵌入式数控系统在硬件上的要求, 特别是对硬件的实时性需求。 设计构建了 以pc104嵌入式板卡为主处理单元的,以fpga为核心扩展单元的硬件平台。 2. 为实现单cpu嵌入式数控系统的强实时性任务功能, 对系统实时性开发和运行环境进行 了深入研究,提出了linux+xenomai架构的多任务、实时性扩展的系统开发运行环境,并对该 架构进行了实时性定量测试,验证了理论的正确性和架构的实用性。 3. 构建了符合本嵌入式数控系统要求的嵌入式linux系统,安装了xenomai内核实时子系 统,实现了linux+xenomai的多任务、强实时性扩展环境,并在此基础上规划和实现了数控系 统的核心软件功能模块。 4. 对linux设备驱动构架进行了分析,总结了linux字符设备驱动开发的一般流程,并以 rs-232c标准串口为通讯接口,在linux系统环境下设计了一款数控系统专用键盘。 通过初步的性能测试, 本文搭建的基于pc104嵌入式板卡和fpga运动控制接口的数控系统 硬件平台,构建的以linux+xenomai架构的多任务、强实时性扩展环境,可满足常用嵌入式数 控系统功能的控制需求。 关键词:关键词:嵌入式系统,数控系统,实时性,linux,xenomai,pc104,设备驱动程序 基于 linux 实时扩展的嵌入式数控系统研究与开发 ii abstract the embedded cnc system is the embedded technology applied in the modern cnc field. it integrates embedded applications, machinery manufacturing, computer, information processing, automation, mechatronics and other technologies. also, it is an important direction of research and development in the cnc system. at present, to meet the multi-tasking and real-time requirements, most of the embedded cnc systems use the dual-cpu structure of “embedded processor + motion controller”. in this structure, the strong real-time task functions are mainly achieved in the motion controller. it is obvious that high requirements are placed on the performance of the motion controller, which would lead to more difficultly and longer cycle in the development of the cnc system. to avoid these problems, taking advantage of the good characteristics and the convenience of development of the current embedded processor, this thesis tries to make the strong real-time task functions implemented in the upper host, and make the motion controller simplified as a movement control interface with a fine interpolator. to this end, the main research work and outcomes are as follows: 1. through the detailed analysis of the requirements on the hardware of cnc system (especially the real-time requirements), a hardware platform which uses the pc104 embedded board as its main processing unit and uses the fpga as its core expansion unit is designed. 2. the real-time development and operation environment of the system are researched in depth, and accordingly a multi-task and strong real-time environment based on the structure of “linux + xenomai” is proposed. meanwhile, the real-time performance of the environment is tested. 3. the embedded linux system which is suitable for the cnc system is constructed, and the xenomai real-time kernel subsystem is installed. on this basis, the core software function modules related to the cnc system are planned and implemented. 4. the general development processes of linux device drivers are summarized. at the same time, a kind of special keyboard for the cnc system is designed under the environment of linux system. in the thesis, a platform for the cnc system based on the pc104 and fpga is built, and a multi-task and strong real-time environment is constructed. after a preliminary performance test, the platform and the environment can meet the demands of the common embedded cnc system. keywords: embedded system, cnc system, real-time, linux, xenomai, pc104, device driver 基于 linux 实时扩展的嵌入式数控系统研究与开发 vi 图表清单 图 2.1 系统硬件总体架构.10 图 2.2 pcm-3350 板卡的系统框架图12 图 2.3 系统接口扩展单元结构图.14 图 2.4 嵌入式数控系统硬件平台.14 图 3.1 linux 系统层次结构18 图 3.2 不可抢占性和可抢占性任务调度的区别.19 图 3.3 三种 linux 实时化改造方法示意图.20 图 3.4 adeos 系统架构.21 图 3.5 linux+xenomai 的实时性扩展架构.22 图 3.6 周期性抖动 23 图 3.7 实时任务调度延迟测试界面.26 图 3.8 实时任务调度平均延迟时间直方图.26 图 3.9 内核定时器中断延迟测试界面.27 图 3.10 内核定时器中断平均延迟时间直方图.27 图 4.1 linux 内核功能配置菜单界面31 图 4.2 xenomai 实时内核配置菜单界面.32 图 4.3 数控系统的多任务性软件结构.34 图 4.4 linux+xenomai 架构下的并行处理调度方式 .34 图 4.5 嵌入式数控系统软件功能模块规划.35 图 4.6 实时层主要功能模块和各个数据缓冲区.37 图 4.7 数控系统用户图形界面层次结构.40 图 4.8 嵌入式数控系统主界面.40 图 4.9 一个线程的状态转换过程.42 图 4.10 译码模块工作流程图.44 图 4.11 直线连接直线的刀补示意图.46 图 4.12 直线连接圆弧的刀补示意图.46 图 4.13 圆弧连接直线的刀补示意图.46 图 4.14 圆弧连接圆弧的刀补示意图.46 图 4.15 直线连接圆弧缩短型刀补点求解.47 南京航空航天大学硕士学位论文 vii 图 4.16 加减速曲线(s 形) .49 图 5.1 linux 内核功能及设备驱动作用55 图 5.2 字符设备驱动开发流程.57 图 5.3 rs-232c 标准公头插座 db960 图 5.4 键盘硬件电路原理简图.61 图 5.5 at89s52 单片机模块硬件电路图.61 图 5.6 max232 电平转换模块硬件电路图 62 图 5.7 led 模块硬件电路图62 图 5.8 串口驱动初始化过程.63 图 5.9 键盘控制器软件功能流程图.67 表 1.1 数控系统发展历史.1 表 3.1 正常负载下的周期性抖动对比.25 表 3.2 大负载下的周期性抖动对比.25 基于 linux 实时扩展的嵌入式数控系统研究与开发 viii 注释表 r 圆弧半径 r 刀具半径 x s 刀具中心轨迹转接点x轴坐标 y s 刀具中心轨迹转接点y轴坐标 x p 工件轮廓圆弧轨迹的圆心x轴坐标 y p 工件轮廓圆弧轨迹的圆心y轴坐标 s v 当前轨迹起点进给速度 e v 当前轨迹终点进给速度 m v 机床最大进给速度 m a 机床最大进给加速度 )7 , 6 , 5 , 4 , 3 , 2 , 1( =ktk s 形加减速各段运行时间 f 进给速度指令 t 插补周期 l 一个插补周期内的微小进给段 承诺书 本人郑重声明:所呈交的学位论文,是本人在导师指导下,独立进 行研究工作所取得的成果。尽我所知,除文中已经注明引用的内容外, 本学位论文的研究成果不包含任何他人享有著作权的内容。 对本论文所 涉及的研究工作做出贡献的其他个人和集体, 均已在文中以明确方式标 明。 本人授权南京航空航天大学可以有权保留送交论文的复印件, 允许 论文被查阅和借阅,可以将学位论文的全部或部分内容编入有关数据库 进行检索,可以采用影印、缩印或其他复制手段保存论文。 (保密的学位论文在解密后适用本承诺书) 作者签名: 日 期: 南京航空航天大学硕士学位论文 1 第一章 绪论 现代全球经济发展日新月异,先进制造技术层出不穷,整个工业系统对现代机械制造业的 自动化、集成化和智能化要求也不断提高。数控机床作为一种高效的自动化加工设备而被广泛 采用。与此同时,随着现代机械制造业向着更高层次的发展,数控机床也逐渐成为柔性制造系 统(fms) 、工厂自动化系统(fas)和计算机集成制造系统(cims)的基础装备。数控技术 是数控机床的关键技术,它是综合了计算机、自动控制、机电一体化、电气传动、测量、监控 和机械制造等学科领域最新成果而形成的一门学科技术1。数控技术的飞速发展,使得传统普 通机床逐渐被高效率、高速度、高精度的数控机床所代替,从而极大地提高了机械制造业的生 产力。数控系统是机床数控技术的核心,同时作为数控机床的神经中枢,其性能和水平直接决 定着数控机床的性能和水平,也是衡量一个国家技术水平和战略地位的重要标准。 1.1 数控系统发展概述 1.1.1 数控系统发展历史 1946 年,第一台电子计算机在美国诞生,它具有划时代的意义,标志着人类创造了可增强 和部分代替脑力劳动的工具,与人类在以往农业、工业领域中创造的那些用来增强体力劳动的 工具相比,产生了质的飞跃。1952 年,计算机技术应用到了机床上。为了研制飞机螺旋桨叶片 轮廓样板的加工设备,美国帕森斯公司(parsons co.)和美国麻省理工学院(mit)伺服机构 研究室合作,研制成功了世界上第一台三坐标数控铣床。这是制造技术发展过程中的一个重大 突破,标志着制造领域中数控加工时代的来临。半个多世纪以来,随着计算机技术,尤其是微 电子技术的发展,数控系统历经了以下两个阶段和六代的发展,如表 1.1 所示2,3。 表 1.1 数控系统发展历史 阶段 世代 诞生年代系统代表元件 第一代1952 电子管、继电器、模拟电路 第二代1959 晶体管 硬件连接数控(nc) 第三代1965 小规模集成电路 第四代1970 小型计算机 计算机数控(cnc) 第五代1974 微处理器 第六代1990 基于 pc 机 基于 linux 实时扩展的嵌入式数控系统研究与开发 2 进入新世纪,随着各相关领域技术的飞速发展,高速高精度数控系统、嵌入式数控系统、 基于 pc 的开放式数控系统业已成为新一代数控系统的发展和研究方向。 1.1.2 数控系统研究现状 1.1.2.1 国外数控系统现状 目前,全球中高档数控系统市场基本上都由国外的数控系统制造商如西门子(siemens) 、 发那克(fanuc) 、三菱电机(mitsubishi electric) 、博世力士乐(bosch rexroth)等占据。以 2007年全球数控系统市场为例, 西门子占了34.6%, fanuc占了29.2%, 三菱电机则占了12.3%。 在国外,数控技术已经是一种相对比较成熟的技术,其发展也正逐步由过去的专用性、封闭式、 开环控制模式向通用型、开放式、实时动态、全闭环控制模式以及智能化方面发展。 在传统数控系统方面,传统 nc 系统在世界各国仍有较为广泛应用,由于传统 nc 系统具 有专用性、封闭式的特点,且各制造商 nc 系统软硬件也不兼容,用户基本难以定制或者改造 升级。 目前, 传统 nc 系统主要有 fanuc 0 系列、 mitsubishi m50 系列和 sinumerik 810m/t/g 系列等。 在开放式数控系统发展方面,国外已经开发或者正在研制的有: “pc 嵌入 nc”结构的 nc 系统、“nc 嵌入 pc” 结构的 nc 系统以及软件化开放式的 nc 系统。 其中典型的有: fanuc 10、 11、 12 系列, 美国 delta tau 公司的 pmac-nc 系统, 德国 power automation 公司的 pa8000 nt 系统,日本三菱电机的 e60 系统等。 在数控系统的实时智能化控制方面,国外不少数控系统在综合了计算机、通信、先进控制 技术、人工智能等多学科技术的基础上,实现了数控机床的高速、高精、高效率加工。有的甚 至能在加工过程中实现了智能自动修正和调整各项参数、实时在线故障诊断等功能。 此外, 为了加快数控系统的应用和开发速度, 计算机仿真技术也已经应用到了数控系统中。 如西门子开发的“虚拟 cnc”技术,使数控系统具有真正的用户图形化界面、计算机模拟加工、 实时在线修正、加工全过程的可视化仿真演示、可联网的开放式结构等功能4,5。 1.1.2.2 国内数控系统现状 自 1978 年实行改革开放政策以来, 我国数控系统和数控机床有了重大的发展。 在引进国外 先进数控系统的同时,通过自主研发,我国在数控系统的开发和生产上取得了明显进展。经过 “九五” 、 “十五”国家科技攻关与“863”数控产业化项目,我国形成了一批数控车床、数控铣 床和加工中心的产业化基地。目前,我国数控系统主要生产企业有 20 家,2006 年我国数控系 统的市场销量约为 11 万套,其中国产数控系统销售达到 7 万多台。较具规模的企业有:广州数 控、凯恩帝数控、华中数控等。 这些企业和基地所生产的国产经济型数控系统可靠性高,功能实用,价格低廉,有很大的 南京航空航天大学硕士学位论文 3 竞争优势,已形成了规模优势,目前约占到我国整个数控系统市场的 60%左右;大力研制和推 广的普及型数控系统的功能、性能与国外比并不差,价格和服务方面还有较大优势,可靠性与 国外系统的差距也已明显缩小,已具备了较强的市场竞争力;然而,长期以来,虽然我国的经 济型和低档数控系统发展很快,但中、高档数控系统方面却发展缓慢,与国外一些先进产品相 比,在主要技术指标、效率、精度和可靠性方面均有一定的差距。 纵观上述数控产业现状,对于我国整个数控系统和数控机床行业来说,需稳住经济型系统 市场,努力提升技术;大力推动中档数控系统发展,努力提升市场占有率;重点开发高档数控 系统,积极吸收和借鉴国外先进技术并结合我国的实际情况,不断创新提升我国数控系统的水 平,实现技术上的突破和产品化,努力扭转中高档数控系统依赖进口的局面。 1.1.3 数控系统发展趋势 自从上世纪中叶美国研制出第一台数控机床以来,数控技术的出现给传统制造业带来了革 命性的变化,使制造业成为了工业化的象征。随着数控技术的不断发展和应用领域的扩大,它 对航空航天、汽车、船舶、国防工业等一些重要行业的发展起着越来越重要的作用。与此同时, 随着机械产品形状、结构和材质的不断改进,零件加工精度要求的不断提高,加工技术以及一 些其他相关技术的不断发展,整个工业系统对数控系统的发展和进步又提出了新的要求,数控 系统也向着更高精度、更高速度、更高可靠性及更完善的功能方向发展。目前,国内外数控系 统主要发展趋势如下5,6: 1. 向开放式体系结构方向发展 随着计算机及相关领域技术的飞速发展,世界上许多数控系统生产商正利用 pc 丰富的软 硬件资源开发开放式体系结构的新一代数控系统。 最具代表性的有美国的 omac 计划、 欧洲的 osaca 计划和日本的 osec 计划等。开放式体系结构使数控系统有更好的通用性、柔性、适 应性、可扩展性,并可以较容易的实现智能化、网络化。开放式体系结构大量采用通用微机技 术,使开发、编程以及技术升级和更新变得更加简单快捷,而且其软硬件及总线规范都具有开 放性,使数控系统生产商和开发人员可根据这些开放的资源进行系统开发和集成,同时也为用 户根据实际需要灵活配置数控系统带来了极大方便,从而大大缩短了开发生产周期。 2. 向软数控方向发展 数控系统不但从封闭体系结构向开放体系结构发展,而且正在有从硬数控向软数控方向发 展的趋势。软件化的数控系统尽可能使用智能化的软件来代替传统的硬件,提供给用户最大的 选择性和灵活性,十分便于系统定制和升级更新。数控系统的全部功能在上层主机单元中以软 件模块的形式实现,而硬件部分仅是作为主处理单元与伺服驱动和外部的接口。 3. 向智能化方向发展 智能化是本世纪先进制造技术发展的一个大方向。随着人工智能在计算机领域的渗透,自 基于 linux 实时扩展的嵌入式数控系统研究与开发 4 适应、模糊系统和神经网络等控制机理开始逐渐引入到数控系统中来,使数控系统在具有友好 人机界面的同时,还具有自动编程、模糊控制、学习控制、自适应控制、工艺参数自动生成、 三维刀具补偿、运动参数动态补偿等功能。此外,目前正在逐步完善的故障诊断专家系统也使 数控系统具备了智能化的自诊断和故障监控功能。 4. 向网络化方向发展 随着网络技术的成熟和发展,数控系统向网络化发展是必然趋势。数控系统的网络化,主 要指数控系统与外部其它控制系统或主机进行网络连接,实现网络控制。数控系统的网络化, 通过现场总线、局域网和 internet/intranet 等技术,从点(数控单机、加工中心等) 、线(柔性制 造单元、柔性制造系统等)向着面(工厂自动化) 、体(计算机集成制造系统、分布式网络集成 制造系统)的方向发展。 5. 向高可靠性和复合化方向发展 数控系统与数控机床一起,工作在底层车间,经受恶劣的环境,如:温度、湿度、振动、 油雾和粉尘的影响。同时又要求连续工作,因此对可靠性要求特别高。随着数控机床网络化应 用的日趋广泛,数控系统的高可靠性已经成为数控系统制造商追求的目标。数控系统的复合化 方向发展,其核心是促使系统功能的整合,在一台机床上完成多种操作工序,从而提高机床的 效率和加工精度,提高生产的柔性。目前,主流的数控系统开发商都能提供高性能的复合机床 数控系统。今后,复合化发展方向仍将是数控系统重要发展方向之一。 1.2 嵌入式数控系统简述 1.2.1 嵌入式系统概念 上世纪 70 年代, 微处理器的发明给计算机的发展带来了历史性的变化。 以微处理器为核心 的微型计算机以其小型、价廉、高可靠性的特点迅速在工业控制领域得到应用。于是,将微型 计算机嵌入到对象体系中,并配置各种外围接口电路,实现对象体系智能化控制的嵌入式系统 应运而生。伴随着计算机及相关技术的飞速发展,嵌入式系统在各个领域得到了广泛应用。区 别于通用型计算机系统,嵌入式系统是以应用为中心,软硬件可裁减的,适用于对功能、可靠 性、成本、体积、功耗等综合性严格要求的专用计算机系统。一个典型的嵌入式系统主要由嵌 入式处理器、相关支撑硬件、嵌入式操作系统及应用软件系统等组成。其特点是:系统功耗低、 可靠性高;功能强大、性价比高;实时性强,多任务支持;占用空间小,效率高;面向特定应 用,可根据需要灵活定制7。嵌入式系统的发展,大致历经了以下四个阶段: 1. 以单芯片为核心的可编程控制器形式的嵌入式系统。 这一阶段的系统大多应用在一些专 业性极强的工业控制系统中,且一般没有操作系统的支持。其主要特点是:系统结构和功能相 对比较单一、处理效率较低、存储容量小、用户接口很少; 2. 以嵌入式 cpu 为基础的、以简单操作系统为核心的嵌入式系统。这一阶段系统的特点 南京航空航天大学硕士学位论文 5 是:cpu 类型多但通用性差,系统开销小、效率高,带有简单的操作系统,具备一定的兼容性 和扩展性,但用户界面不够友好; 3. 以嵌入式操作系统为标志的嵌入式系统。 这一阶段系统的主要特点是: 嵌入式操作系统 能运行于各种不同类型的微处理器上,兼容性好;操作系统内核精小、效率高,并且具有高度 的模块化和扩展性;具备文件和目录管理、设备支持、多任务、网络支持、图形界面等功能; 具有大量的应用程序接口(api) ,程序开发简单; 4. 以基于 internet 为标志的嵌入式系统。嵌入式系统与 internet 的结合代表着嵌入式技术 未来的发展方向8。 嵌入式系统在工业控制、交通管理、信息家电、家庭智能管理系统、机器人、机电产品、 个人数字终端等领域均有广泛应用。随着信息化、智能化、网络化的发展,嵌入式技术也将获 得更广阔的发展空间。 1.2.2 嵌入式操作系统 嵌入式操作系统是一种支持嵌入式系统应用的操作系统软件,它是嵌入式系统极为重要的 组成部分,通常包括:与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图 形界面等。嵌入式操作系统具有通用操作系统的基本特点,如:能够有效管理复杂的系统资源; 能够把硬件虚拟化,使开发人员专注于软件设计而不会过于局限于硬件;能够提供库函数、驱 动程序、工具链以及相关应用程序。此外,与通用操作系统相比较,嵌入式操作系统在系统实 时性、硬件依赖性、软件固态化以及应用的专用性等方面具有较为突出的特点。 从上世纪 80 年代开始, 嵌入式操作系统作为整个嵌入式系统的核心, 不断发展, 日趋完善。 市场上也出现了各式各样的商业嵌入式操作系统,比较著名的有以下几种: 1. windows ce。windows ce 是微软公司推出的一款应用于嵌入式方向的操作系统。作为 嵌入式、移动计算平台的基础,windows ce 能够从整体上为有限资源平台提供多线程、完整 优先权、多任务的开发和运行环境。其缺点是:速度慢、价格高、开发相对较难; 2. vxworks。vxworks 是美国 wind river system 公司推出的一款专门面向嵌入式应用的 实时多任务操作系统,它以其良好的可靠性和卓越的实时性被广泛应用于高精尖技术及实时性 要求极高的领域。vxworks 具有高性能的内核以及友好的用户开发环境,在嵌入式实时操作系 统领域占据一席之地; 3. qnx。qnx 是由 qnx 软件系统公司开发的一款分布式、嵌入式和可规模扩展的实时 操作系统。qnx 具有独一无二的微内核实时平台,其核心仅提供 4 种服务:进程调度、进程间 通信、底层网络通信和中断处理,且其进程运行在独立的地址空间。qnx 核心非常小巧,运行 速度极快,并具有实时、稳定、可靠的特点; 4. psos。psos 是美国 isi 公司设计开发的一款实时嵌入式操作系统。该操作系统可以支 基于 linux 实时扩展的嵌入式数控系统研究与开发 6 持多种处理器,主要应用于远程通信、航天、信息家电和工业控制等领域。作为一个专门为嵌 入式微处理器设计和开发的、具有模块化和高效率特点的实时操作系统,psos 提供了基于标 准化开放系统的完整的多任务环境。 上述这些商用型嵌入式操作系统在嵌入式领域占有一定的市场份额,但客观上均存在着价 格昂贵、需要版权、开放性差等问题。目前,在嵌入式系统开发领域最为流行的是 linux 操作 系统。linux 是一个类 unix 操作系统,起源于芬兰一个名为 linus torvalds 的业余爱好者。从 1991 年问世到现在,linux 已发展成为一个功能强大、设计完善、多平台支持的操作系统。与 上述各种商业嵌入式操作系统相比,在嵌入式领域,linux 具有以下优点8,9: 1. 源代码开放。linux 采用 gpl(general public license)授权,不受任何商品化软件的 版权制约,内核源代码开放,用户可以根据需要对源代码进行定制和修改,从而满足不同平台 的需求。linux 这一特点特别适用于嵌入式系统的开发; 2. 内核结构模块化。linux 内核采用模块化的设计方式,使用户可以根据需要对系统内核 进行最优定制,最有效地利用实际硬件资源,裁剪得到小而精的系统内核; 3. 功能强大和多平台支持。目前,linux 已经被成功移植到 amd、x86、arm、cris、 ibm s/390、intel ia-64、motorola 68000、powerpc、sparc 和 mips 等各种体系结构上。这些 平台几乎涵盖了所有嵌入式系统所需的 cpu 类型; 4. 丰富的技术支持。linux 拥有丰富的开发工具和开放社区的支持,它不属于任何一家公 司,但它的开发人员却是全世界最多的,每天全球有无数的技术人员参与 linux 内核的改进、 除错、测试。凭借强大的网络,开发人员可以快速地得到丰富的技术支持。 正是鉴于以上优点,使得以 linux 为核心构建嵌入式操作系统具有相当大的优势。目前, 嵌入式 linux 系统以及基于 linux 内核的嵌入式操作系统(如目前流行的 android 系统)在各 个领域得到越来越广泛的应用。 1.2.3 嵌入式数控系统 嵌入式系统的显著优点使嵌入式数控系统成为数控系统一个重要的发展方向。嵌入式技术 进入数控领域,极大地丰富了数控系统的软硬件资源,利用嵌入式系统硬件的专一性,针对特 定的数控系统采用定制的硬件,可以提高硬件系统的可靠性,并且具有功能够用、价格低、体 积小等优点。嵌入式数控系统兼备了嵌入式技术和数控技术结合的巨大优势,能够符合新一代 数控系统的各项性能要求10。 嵌入式数控系统起源于上世纪 80 年代的单片机应用。然而,随着时代的发展,现代的机械 制造业要求嵌入式数控系统既能够完成高速加工中大量的数据采集、处理和传输任务,又能够 提供丰富的图形界面,还能够提供丰富的网络互联等功能,单片机则难以胜任这些需求。因此, 人们开始转而使用基于 arm、dsp、powerpc、x86 等结构的 32 位微处理器的嵌入式系统。 南京航空航天大学硕士学位论文 7 这些功能强大的嵌入式系统为数控系统的开发提供了一个很好的硬件平台。 嵌入式数控系统应用的特点,使得它对所使用的嵌入式微处理器的功耗和体积要求不高, 但作为数控机床的控制神经中枢,对可靠性有很高的要求。同时,数控系统中的插补运算、位 置控制、进给控制等轨迹控制功能都是实时性很强任务,因此嵌入式数控系统是一个强实时性 系统。联系到嵌入式系统的实时性,由于当前嵌入式系统中普遍使用了操作系统,所以它的实 时性不只是与嵌入式微处理器有关,而且和操作系统直接相关。现在的嵌入式微处理器的运算 速度通常都是能达到百兆级以上, 所以硬件平台对于嵌入式系统的实时性限制已经很小, 因此, 选择和构建一种合适的嵌入式实时操作系统就成为开发嵌入式数控系统的关键环节。 随着微电子技术的飞速发展,嵌入式微处理器各项性能指标的不断提高,嵌入式硬件平台 的不断完善和发展,以及嵌入式操作系统的不断改进和优化,都将促使嵌入式数控系统的性能 越来越完善,功能越来越强大。 1.3 本文研究内容与组织结构 1.3.1 研究内容 以嵌入式系统为平台,利用其软硬件资源可定制、低功耗、高可靠性、高性价比的优势构 建数控系统,是当前数控系统一个重要的发展方向,也是本文研究的最终目标。 嵌入式数控系统是相对复杂的控制系统,它不仅要求具备大数据量的处理和计算能力、卓 越的实时性和良好可靠性,而且也要求能够为用户提供人性化的操作界面和良好的程序移植能 力。为充分满足这些要求,目前普遍采用的一种典型的嵌入式数控系统结构是“嵌入式处理器 +运动控制器”的形式。嵌入式处理器完成对整个系统的总体控制,是数控系统软件运行的平 台;运动控制器完成对机床的直接控制,同时也接收或处理机床的反馈信息。在这样的结构形 式下,一般由嵌入式处理器实现人机交互、任务管理等非实时性或者实时性要求不高的任务, 而由运动控制器来完成诸如插补、刀补、速度控制等实时性要求很高的任务。这样的任务分工 形式对运动控制器的性能要求非常高,目前采用的主要方式有:以专用芯片为核心的运动控制 器、以数字信号处理器(dsp)为核心的运动控制器、以可编程逻辑器件(fpga)运动控制器 等。 而采用这些方式的运动控制器在实现时则存在着双 cpu 通信繁琐复杂、 在运动控制器内需 实现较为复杂的算法、性价比低等诸多问题。另外,当前的嵌入式处理器性能优秀,但实际开 发和运行过程中并没有充分发挥其优势。因此,为避免这些问题和局限性,本文采用了这样的 设计思想:充分利用当前嵌入式处理器的性能及其开发的便利性,在嵌入式处理器内部同时完 成非实时性和实时性的任务,而运动控制器只需实现与上下层通信接口的功能,将其简化成系 统接口扩展单元。为了遵循这个设计思想,则需解决以下问题: 1. 硬件方面。 嵌入式处理器要在具有大数据量的处理和计算能力的前提下, 还能够满足数 基于 linux 实时扩展的嵌入式数控系统研究与开发 8 控系统强实时性任务的加工要求,且该处理器要能够支持方便程序开发和调试环境的构建; 2. 系统环境方面。 为了实现在嵌入式处理器上同时完成非实时性和实时性任务的目标, 需 构建一个多任务的、强实时性的系统开发和运行环境; 3. 系统功能方面。 在满足上述两个条件下, 需根据系统架构和任务的实时性特点合理规划 嵌入式数控系统的各个任务功能模块。 综合考虑上述问题及其解决方法,结合课题任务要求,本文主要完成以下工作: 1. 设计嵌入式数控系统的硬件总体架构,选择合适的主处理单元,要求其性能优秀,能够 满足实时性的要求,同时与 pc 机兼容,方便程序开发和调试; 2. 构建符合本嵌入式数控系统的 linux 操作系统,完成了对标准 linux 的小型化工作; 3. 对嵌入式数控系统实时性开发和运行环境进行研究, 构建多任务的、 实时性扩展的架构; 4. 在上述架构的基础上规划嵌入式数控系统软件功能模块,并完成各个模块的设计工作; 5. 在 linux 系统环境下设计开发一款满足本数控系统要求的专用键盘。 1.3.2 组织结构 综上,本文将从系统整体架构出发,设计一种以 pc104 嵌入式板卡为主处理单元的,采用 linux+xenomai 多任务实时扩展架构的嵌入式数控系统。本文的组织结构安排如下: 第一章 首先介绍数控系统的发展历史、 国内外研究现状及发展趋势, 然后对嵌入式系统及 嵌入式数控系统进行概述,最后简述本文的研究内容与组织结构; 第二章 对嵌入式数控系统硬件进行需求分析, 规划和设计数控系统的硬件总体架构, 包括 主机单元设计、嵌入式板卡选型、系统接口扩展单元设计、扩展单元硬件选型等; 第三章 对嵌入式数控系统实时性开发和运行环境进行研究,分析现有 linux 系统不足,提 出 linux+xenomai 架构的实时性扩展环境,并对该环境进行实时性评测; 第四章 完成嵌入式数控系统的软件设计工作, 包括系统多任务、 强实时性开发运行环境的 构建以及嵌入式数控系统非实时层和实时层各个软件功能模块的设计实现; 第五章 完成嵌入式数控系统外围硬件设计及驱动开发工作, 对 linux 设备驱动进行综述并 详细介绍一款串口键盘的硬件设计、设备驱动和应用程序的开发流程; 第六章 对本文的研发工作进行总结,并提出对后续研究工作的展望。 南京航空航天大学硕士学位论文 9 第二章 嵌入式数控系统硬件架构设计 本章将从硬件层出发,根据嵌入式数控系统的性能和功能需求,对嵌入式数控系统进行总 体架构分析,并选择合适的处理器和扩展芯片搭建系统的硬件平台,以此作为数控系统后续的 开发运行环境建立、功能模块设计和外围设备软硬件开发的基础。 2.1 数控系统硬件需求分析 设计和开发一个嵌入式系统,首先需明确系统应具备的性能和所要实现的功能,即先对系 统进行硬件总体需求分析,再进行硬件设计与选型。 本课题研究目标是嵌入式数控系统。在性能上,对硬件的要求除了要具有高可靠性、能够 适应数控机床恶劣的加工环境之外,还需兼顾嵌入式系统的性能特点,如:系统功耗低、体积 符合嵌入式系统的需求、性价比高等。 在功能上,本文的嵌入式数控系统则应具备以下特点: 1. 系统应具有一个功能强大的主机单元。 主机单元需配备一块性能优良的微处理器, 以满 足嵌入式数控系统在高速加工中大量的数据采集、运算和传输任务的要求; 2. 系统主机单元需具备足够的存储空间或者存储空间容易扩展, 以满足数控系统程序和数 据的存储要求; 3. 系统主机单元需提供友好的人机交互接口, 支持屏幕显示和键盘输入, 以实现系统指令 控制和加工代码编程; 4. 系统主机单元需具有丰富的接口资源,如串口、usb 以及各种标准总线接口等,以实 现对外通讯和总线扩展功能; 5. 系统主机单元要能够支持网络通讯,以实现联机和组网等功能; 6. 系统需具有性能优良的接口扩展单元, 实现对外扩展设备从而间接控制机床运动。 该单 元应该性能稳定,反应迅速且对外扩展方便可靠,能够实现数控系统多轴运动控制、精插补、 开关量控制、d/a 转换、码盘信号采集、滤波等功能; 7. 系统主机单元与接口扩展单元之间要求方便的和高可靠性的通讯; 8. 要能够满足数控系统的实时性要求。 数控系统是一个具有实时计算特性的控制系统, 系 统的一些功能需要严格满足处理和时间的关系,特别是本文将原来在运动控制器中实现的强实 时性任务放到上层主机单元来实现时,更应该重点考虑在硬件上能否满足系统的实时性要求。 因此,在选择硬件时要充分考虑硬件的架构和处理运算速度,明确硬件是否能够支持系统多任 务强实时性环境的建立。 此外,在明确嵌入式数控系统性能和功能上的需求之后,还需重点考虑所选择的硬件平台 基于 linux 实时扩展的嵌入式数控系统研究与开发 10 是否能够方便后续的模块设计和软件开发工作。选择和构建一个能够支持系统开发所需环境、 能够方便获得软件开发和调试工具的硬件平台, 往往能够对整个系统开发起到事半功倍的作用。 2.2 数控系统硬件总体架构 综合考虑数控系统上述性能和功能需求,同时兼顾高性价比的原则,对系统硬件进行合理 选型和设计,本文采用了“核心板+扩展板”的硬件平台模式,分别对应为主机单元和接口扩 展单元两部分。系统总体硬件架构如图 2.1 所示。 人机交互单元 lcd 键盘 pc104主板 (pcm-3350) 主机单元 sdramusb 电源bios 网络接口 串口 vga fpga i/o 信号 d/a 脉冲 信号 码盘 jtag 接口扩展单元 pc104接口 cf卡 图 2.1 系统硬件总体架构 图中, 核心板采用以 geode gx1-300 为 cpu 的 pc104 嵌入式板卡 pcm-3350, 实现主机单 元的相关功能;扩展板以 fpga 为核心作为扩展接口,并提供外围辅助硬件电路,实现系统接 口扩展单元的相关功能。 在硬件上,主机单元除了 pc104 嵌入式板卡外,还以 sdram 为内存,cf 卡为外存,并 提供人机交互单元接口和各种标准对外接口,主要实现了对整个数控系统的总体控制,是嵌入 式数控系统软件运行的平台。系统接口扩展单元除了 fpga 外,还对外连接了 d/a 转换芯片、 脉冲信号输出、码盘等硬件电路,一方面,接收和处理主机单元传来的数据,并通过内部各种 相应模块输出控制信号;另一方面,监视和接收机床运动中的各种反馈信号,或者直接处理这 些反馈信号,或者将反馈信息传递给主机单元,从而完成对数控机床的运动控制。主机单元通 过 pc104 标准总线接口与系统接口扩展单元连接,实现主机与接口扩展单元之间的通讯。 2.3 数控系统主机单元 2.3.1 pc104 嵌入式板卡 系统主机单元采用的是研华科技公司生产的嵌入式 pc104 板卡,型号为 pcm-3350。所谓 南京航空航天大学硕士学位论文 11 的 pc104 板卡是指一种基于 pc/104 总线规范的、优化的、微小型、堆栈式结构的嵌入式控制 系统。而 pc/104 总线则是一种专门为嵌入式控制而定义的工业控制总线,其管脚定义与 isa (industrial standard architecture,工业标准结构总线)规范完全兼容,实质上就是一种紧凑型 的 isa 总线。与标准 pc 和其它嵌入式板卡相比,pc104 具有以下优点11: 1. 小尺寸。pc104 板卡标准尺寸为 90mm96mm,其大小只有普通书籍的一半,小巧的 尺寸符合嵌入式系统小型化要求,使得 pc104 成为嵌入式系统应用理想的解决方案; 2. 开放的和高可靠性的工业规范。pc104 板卡与标准的 isa 总线兼容,开放性好,在电 气特性和机械特性上也具有极高的可靠性; 3. 具有灵活的可扩展性。 pc104 板卡可根据嵌入式系统的应用需求来扩展和匹配各种功能 卡,也允许根据系统的需求而升级 cpu; 4. 低功耗、高性价比。总线驱动电流可低至 4ma,散热量小,无需专用散热装置; 5. 堆栈式连接,可有效减小整个系统所占的空间; 6. 软件资源丰富,开发方便。pc104 最大的特点和优势就是它与 pc 系统兼容。所有能够 在普通 pc 机上运行的操作系统、开发工具、应用软件都可以直接运行或者移植到 pc104 中, 从而可以利用 pc 系统丰富的软件资源,降低开发难度,减少开发成本。 2.3.2 pcm-3350 pcm-3350 是一款工业级的嵌入式板卡,是高速低功耗 pc104 系列产品的代表之一,其技 术规格参数如下12: 1. 板卡类型:3.5 英寸嵌入式 pc104 板卡; 2. 处理器:板载低功耗 ns gx1 系列 cpu(gx1-300) ,主频达 300mhz,586 级别,无需 风扇可正常运行; 3. 系统内存:sdram,可扩展至 256m; 4. bios:award 256kb 闪存; 5. 视频模块:采用 ns cx5530a 芯片,14m 共享内存,支持 crt 和 tft lcd; 6. 网络模块:采用 intel 82559er 芯片,10/100mbps 以太网控制器,rj45 接口; 7. 多路 i/o 接口:2 路串口,可支持 rs-232c 和 rs-485;2 路 usb1.0 接口;1 路并口, 支持 spp/epp/ecp 模式; 8. 可扩展外存:cf 卡或 ide 硬盘; 9. 扩展总线:pc/104 总线; 10. 电源需求:2.0a,+5v,低功耗。 基于 linux 实时扩展的嵌入式数控系统研究与开发 12 处理器芯片 (ns gx1 300) 核心逻辑芯片 (cx5530a) 内存单元 (sdram) 时钟芯片 10/100m网络接口 (intel82559) vga接口 ide硬盘接口 cf卡接口 多路i/o口biospc104接口 fddlptcom1com2rtc 图 2.2 pcm-3350 板卡的系统框架图 板卡的系统框架如图 2.2 所示。纵观 pcm-3350 的相关技术参数,选择这款嵌入式板卡具 有以下优势: 1. 其板载低功耗 cpu 具有处理高速、大数据量运算任务的能力,能支持 windows ce、 linux 等嵌入式操作系统,完全具备了实现系统实时性的条件; 2. 与 x86 结构兼容, 省去了繁琐的交叉编译器选择、 交叉编译环境配置等步骤, pc 机 (x86 结构)上开发编译的应用程序可直接在 pc104 板卡上运行,开发方便; 3. 可采用大容量的 cf 卡(本文采用 4g 容量)作为系统外存,完全满足嵌入式数控系统 程序和数据存储要求; 4. 其外部接口

温馨提示

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

评论

0/150

提交评论