(机械电子工程专业论文)基于rtlinux的雕刻控制系统研究.pdf_第1页
(机械电子工程专业论文)基于rtlinux的雕刻控制系统研究.pdf_第2页
(机械电子工程专业论文)基于rtlinux的雕刻控制系统研究.pdf_第3页
(机械电子工程专业论文)基于rtlinux的雕刻控制系统研究.pdf_第4页
(机械电子工程专业论文)基于rtlinux的雕刻控制系统研究.pdf_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

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

文档简介

摘要 开放式数控系统已经成为现代数控系统的发展趋势,技术体系由封闭走向开 放,对数控技术的发展产生了深远的影响。在“开放式数控”呼声日益高涨下,p c 机以其高标准的配置、合理的硬件结构及优异的性能价格比,成为开发数控系统 的首选硬件平台。在p c 机上开发数控系统己成为数控技术发展的趋势。 剥于基于p c 的数控系统来院,采用的软件平台对系统的成本和性能有关键 性的影响,基于p c 的开放式数控系统的理想软件平台是实时多任务操作系统。本 文提出了在p c 平台上实现基于r t l i n u x 的开放式数控系统的思想。r t l l n u x 是一个源码开放的、稳定可靠的实时多任务操作系统,研究r t l i n u x 系统在数控 系统中的应用有利于开发低成本高效率的实时控制技术,有利于我国数控技术的 发展。 本文论述了基于r t l i n u x 的雕刻控制系统的软、硬件结构及具体实现方法。 系统采用是“通用p c + i o 卡”的硬件平台,全部硬件仅由一台普通p c 和i 0 接口 卡构成;软件部分由r t l l n u x 实时操作系统和控制控制软件组成。系统的全部功 能均山运行于p c 之上的软件系统实现,其中实时功能在r t l i n u x 内核中实现, 非实时功能在l 1 n u x 内核中实现,实时功能模块和非实时功能模块间通过管道实 现通信。本文最后况明了基于r t l i n u x 的雕刻控制系统的开发情况,并从 r t l l n u x 系统实时性能、控制软件实时性能、系统发送脉冲的频率三个角度分析 了系统性能。系统开发结果表明:r t l i n u x 系统完全能够满足控制系统对实时性 的要求,丌发基于r t l i n u x 的数控系统是完全可行的。 关键词:数控系统开放性实时操作系统r t l i n u x 插补 a b s t r a c t o n e na r c h i t e c t u r ec o n t r o lh a sb e e nb e c o m i n gt h ee s s e n t i a lr e q u i r e m e n tf o rm o d e m c n c s y s t e m t h ed e v e l o p m e n to fc n ct e c h n i q u eh a sb e i n gi n f l u e n c e dv i t a l l yb yt h e t e c h n o l o g i c a ls y s t e m r e v o l u t i o nf r o mt h ec l o s u r et e c h n o l o g i c a ls y s t e mt ot h eo p e n a r c h i t e c t u r e b e c a u s eo fi t sh i g h - s t a n d a r dc o n f i g u r e ,r a t i o n a lh a r d w a r es t r u c t u r ea n d e x c e l l e n tp e r f o m l a n c e c o s tr a t i o ,p ch a sb e c o m et h ep r e f e r r e dh a r d w a r ep l a t f o r mf o r d e v e l o p i n g c n cs y s t e m d e v e l o p i n gc n cs y s t e mo np ch a r d w a r ep l a t f o r mh a s b e c o m et h et e c h n o l o g i c a ld e v e l o p m e n tt r e n do fc n c t ot h ec n cs y s t e mb a s e do np c ,t h es o f t w a r e p l a t f o r ma d o p t e d h a s g r e a t l y d e t e r m i n e dt h es y s t e mc o s ta n dp e r f o r m a n c et h er e a l t i m em u l t i t a s k0 si st h ei d e a l s o f t w a r ef l a t f o r mf o rt h ec n cs y s t e mb a s e do np c i nt h i s p a p e r ,a ni d e a t h a t d e v e l o p i n go p e nc n cs y s t e mb a s e do nr t l i n u x o np ci sp r o p o s e d r t l i n u xi sa c o d e o p e n i n gs t a b l er e a l t i m em u t i 。t a s ko si t i 5f a v o r a b l ef o rd e v e l o p i n ge f f e c t i v ea n d l o w c o s tc n ct e c h n o l o g ya n dt h ed e v e l o p m e n to fc h i n e s ec n ct e c h n o l o g yt os t u d y r t l n 、j u x a p p l i c a t i o ni nt h ec n cs y s t e m i nt h i s p a p e r , t h e s o r w a r es t r u c t u r e h a r d w a r es t r u c t u r ea n dc o n c r e t e i m p l e m e n t a t i o nm e t h o do fc a r v i n gc o n t r o ls y s t e mb a s e do nr t l i n u x a r ei n t r o d u c e d t h es y s t e ma d o p t st h e “p c + i 0c a r d ”h a r d w a r es t r u c t u r e i t sa l lh a r d w a r eo n l y c o n s i s t so fp ca n di oc a r d a n di t ss o f t w a r ec o n s i s t so fr t l i n u xr e a l t i m eo sa n d c o n t r o ls o f t w a r e a 1 1f u n c t i o no fs v s t e mi sr e a l i z e db vt h es o f t w a r er u no np c t h e r e a l t i m ef u n c t i o ni sr e a l i z e di nt h er t l i n u xc o r ea n dt h en o n r e a l t i m et a s ki s a c h i e v e di nt h el i n u xc o r e t h ec o m m u n i c a t i o nb e t w e e nt h er e a t i m em o d u l ea n dt h e n o n r e a l t i m em o d u l ei sa c h i e v e db y p i p e l i n e p a p e rs h o w se v e n t u a l l yt h ed e v e l o p m e n t r e s u l to f c a r v i n gc o n t r o ls y s t e mb a s e d o nr t l i n u x a n d a n a l y s e ss y s t e mp e r f o r m a n c e t o a s p e c t s o ft h er t l i n u xr e a l t i m e p e r f o r m a n c e c o n t r o i s o f t w a r er e a l t i m e p e r f o r m a n c ea n dp u l s ef r e q u e n c yt h a ts y s t e mc a ns e n d s y s t e md e v e l o p m e n tr e s u l t s h o w st h a tr t l f n u x s y s t e mc a r lm e e te n t i r e l y t h er e a l t i m e r e q u i s i t i o no fc o n t r o l s y s t e m ,a n di ti sf e a s i b l ea b s o l u t e l yt od e v e l o pc n cs y s t e mb a s e do ni h l i n u x k e yw o r d :n u m e r i c a l c o n t r o l s y s t e m ,o p e n i n gq u a l i t y , r e a l t i m eo s ,r t l l n u x , i n t e r p o l a t i o n 1 1 第一章绪论 第一章绪论 1 1课题的工程背景、目的和意义 1 1 1 课题的工程背景 数控技术的问世已有5 0 多年的历史,它是由机械学、控制论、电子学、计算 机科学四大基础学科发展起来的一门综合性的新型学科。1 9 4 6 年诞生了世界上第 一台电子计算机,6 年后,计算机技术应用到了机床上,在美国诞生了第一台数控 铣床。从此,传统机床产生了质的变化。近半个世纪以来,数控系统经历了六代 的发展【1 ,2 ,3 ,4 】: 1 9 5 2 年的第一代一电子管 1 9 5 9 年的第二代一晶体管 1 9 6 5 年的第三代一小规模集成电路 1 9 7 0 年的第四代一小型计算机 1 9 7 4 年的第五代一微处理器 1 9 9 0 年的第六代一基于p c ( 国外称为p c b a s e d ) 1 9 7 0 年以来,通用小型计算机业已出现并成批生产,于是将它移植过来作为 数控系统的核心部件,从此进入了计算机数控( c n c ) 阶段。9 0 年代以来,p c 机 ( 个人计算机) 的性能已经发展到很高的阶段,完全可以满足作为数控系统核心 部件的要求,而且p c 机的生产批量大,价格便宜,可靠性高。各系统制造商纷纷 研究基于p c 的数控系统,从此数控技术发展到了一个新的基于p c 的阶段,此类 系统被称作第六代数控系统。 对于基于p c 的数控系统来说,采用的软件平台对系统的成本和性能有着关 键性的影响。基于p c 的开放式数控系统的理想软件平台是实时多任务操作系统, 目前国内普遍采用的d o s 或w i n d o w s 都不是开放式数控系统的理想系统平台。 数控系统软件必须进行实时多任务调度,而d o s 是单任务操作系统,不具备多任 务调度能力;w i n d o w s 虽然是多任务操作系统,但实时性严重不足。商业实时 多任务操作系统有很多,比较著名的有v x w o r k s 、i r m x 、q n x 等,这些操作系 统产品大多比较昂贵,且开放性较差。l i n u x 是p c 机平台上源码开放的、免费 的、多个用户、多任务操作系统,而通过加载实时补丁或直接修改l i n u x 内核后 形成的实时内核具有很好的实时性能。开发基于实时l i n u x 的开放式数控系统已 成为了数控领域的一个研究热点,本课题在这样的工程背景下以雕刻控制系统为 河海人学t 学坝l j 论文 牡于r l1 。 n u x 的雕刻控制系统研究 刈象研究了实f , j l i n u x 在数控系统得应用。 112 课题的研究目的 l i n u x 操作系统在近几年迅猛发展和不断成熟,除了在网络服务器,集群技 术和p c 桌面领域的进展引人瞩目外,它在嵌入式设备和实时应用领域也崭露头 角。但是作为分时操作系统l i n u x 在实时性方面较弱,无法胜任一些实时性要求 较高的硬实时、软实时任务,r t l i n u x 是l i n u x 的一个实时补丁,它通过修改 l i n u x a r c h f i 3 8 6 下的与体系结构有关的部分,在l i n u x 与硬件之间创建一个硬实时 内核,使得最后的l i n u x + r t l i n u x 的组合内核具有实时功能。本文以雕刻控 制系统为研究对象提出了“在p c 平台上实现基于r t l i n u x 的数控技术”的思想, 旨在研究在免费的、代码丌放的l i n u x 系统上实现实时控制的方法以及r t l i n u x 系统的实时性能,研究r t l i n u x 系统在数控系统中应用的可行性及实现途径,以 最终在p c 平台上开发基于r t l r n u x 的数控系统。 1 1 3 课题的研究意义 在p c 的基础上进行控制系统的开发已经成为大家的一个共识,但是在p c 平 台上,控制系统的多任务特性和实时性要求却限制了通用操作系统如d o s 、 w i n d o w s 等在控制系统中的应用。开发适合于控制系统要求的多任务实时操作 系统,一直是控制系统研究的一个热点。本文论述的基于r t l i n u x 的雕刻控制系 统提出的基于r t l i n u x 系统的实时控制方法,也是对这个研究热点的一个补充。 由于l i n u x 、r t l i n u x 部是自由软件,用户可以无偿地获得其源代码,可 以无偿地获得大量的应用程序,而且可以任意地修改和补充它们,这对用户学习、 了解l i n u x 操作系统的内核非常有益。就p c 机平台而言,r t l i n u x 跟l i n u x 相结合提供了比其他任何操作系统都要强大的功能,还可以使用户远离各种商品 化软件提供者促销广告的诱惑,再也不用承受每过一段时间就得升级之苦,可以 节省大量用于购买或升级应用程序的资金。由此看来,r t l i n u x 操作系统本身就 具有很好的研究价值和实用价值。 目前,随着对数控系统的性能要求越来越高,数控领域的研究人员、技术人 员从多方面寻求着解决数控系统高实时性的最优的方法与途径。这一现状要求我 们发展先进、高效、低廉的数控技术,跟上时代的发展步伐,从而促进我国数控 加工、集成制造技术水平的提高。本文提到的基于r t l i n u x 的雕刻控制系统其本 身就是一个小型的数控系统,因此对r t l i n u x 系统在雕刻控制系统中的应用所作 的研究,有助于将r t l i n u x 系统运用到其他数控领域当中去,有助于在p c 平台 上丌发基于r t l i n u x 的开放式数控系统。雕刻控制系统中所采用的基于 销一章绪论 r t l i n u x 的实时控制技术也可以应用在工业控制、航空航天技术等其他领域。从 这个角度出发,本课题具有一定的理论研究价值和实用价值。 1 2 数控系统的国内外研究现状 1 2 1 数控系统的开放性 随着计算机控制技术和先进制造技术的发展,人们逐渐认识到专用数控系统 之间自成一体所带来的互不兼容的弊病,迫切需求具有配置灵活、功能扩展简便、 基于统一规范的开放式系统。1 9 8 7 年,美国推出了下一代控制器n g c ( n e x t g e n e r a t i o n c o n t r o l l e r ) 计划,首次提出了开放式体系结构的概念。随后为了构建开 放式体系结构,欧共体国家的2 2 家控制器开发商、机床生产商、控制系统集成商 和科研机构于19 9 2 年联合提出了o s a c a ( o p e ns y s t e ma r c h i t e c t u r ef o rc o n t r o l w i t ha u t o m a t i o ns y s t e m ) 计划;美国克莱斯勒、福特和通用三大汽车公司于1 9 9 4 年丌始了一项名为“开放式、模块化体系结构控制器( o m a c ) ”的计划;日本东芝 机器公司、丰田机器公司和m a z a k 三家机床制造商以及日本i b m 、三菱电子以及 s m l 信息公司共同提出了o s e c 计划。从目前对开放式数控的研究成果看,开放 式数控体系结构还没有统一、明确的概念内涵其实现技术也仍处于百家争鸣的时 代i s , 6 , v 。 i e e e 对开放式控制系统的定义是:开放式控制系统提供这样一些功能,它们 能在不同厂商的各种不同平台上运行,能与其它系统相互兼容,并且具有一致风 格的用户交互界面。根据这个定义,一般认为开放式控制系统应该具备以下特点 f 4 ,8 9 互操作性( i n t e r o p e r a b i l i t y ) 通过提供标准化接口、通信和交互机制,使不同功能模块能以标淮的应用程 序接口运行于系统平台之上,并获得平等的相互操作能力,协调工作。 可移植性( p o r t a b i l i t y ) 系统的功能软件与设备无关,即应用统一的数据格式、交互模型、控制机理, 使构成系统的各功能模块可来源于不同的开发商,并且通过一致的设备接口,使 各功能模块能运行于不同供应商提供的硬件平台之上。 可伸缩性( s c a l a b i l i t y ) 系统的功能、规模可以灵活设置,方便修改,用户既可以增加硬件或软件构 成功能更强的系统,也可以裁减其功能以适应低端应用。 互换性( i n t e r c h a n g e a b i l l t y ) 构成系统的各硬件模块、功能软件的选用不受单一供应商的控制,可根据其 l :晦人学工学硼一l 论义 牿于r t l i n u x 的雕刻控制系统研究 功能、可靠性及性能要求相互替换,而不影响系统整体的协调运行。 12 2 p c 机在数控技术中的应用 1 9 9 0 年以来,p c 机的性能已发展到很高的阶段,可以满足作为数控系统核 心部件的要求。数控系统从此进入了基于p c 的阶段。在“开放式数控”呼声日益高 涨下,世界上一些著名的数控制造商纷纷推出基于p c 的数控系统。例如:f a n u c 公司的f a n u c1 6 0 1 1 8 0 ,西门子公司的s i e m e n s8 4 0 d i ,f a g o r 公司的 f a g o r 8 0 7 0 。德国i n d r a m a t 公司的m t c2 0 0 。美国的c i n c i n n a t i 公司开发的 a c r a m a t i c2 1 0 0 系统建立在w i n d o w sn t 平台上,采用了双p c 平台,一个p c 控制工作站功能,如车j 刨编程和数据库工作,另一个p c 作实时伺服控制】。 近年来,国内学者和科研单位也对开放式数控系统的体系结构和软、硬件开 发做了大量研究工作。周祖德的基于“p c + 适配器”硬件平台,提出了面向对象的 分层次数控软件系统建模方法。周凯提出了集成化p c 数控系统的体系结构。国 内j _ 商和科研机构相继丌发了基于d o s 平台的实时任务调度系统和3 2 位工业p c 机的丌放式数控系统如:蓝天i 型、c h 2 0 1 0 s 型、中华i 型、航天i 型等系统。 北京航天数控系统有限公司研制的c a s n u c 2 1 0 0 型数控系统是以p c 机为硬件基 础的模块化、开放式数控系统,它采用了开放式数控系统的软、硬件平台,是国 内第一款采用l i n u x 实时操作系统的数控系统 h l o 。 由于p c 具有丌放的体系结构和极为丰富的软硬件资源,系统开发难度和成 本较低,为构造开放式的控制结构提供了有效的途径,基于p c 的丌放式数控系统 成为近年来国内外研究和丌发的热点,被认为是数控技术有史以来最具深远意义 的发展f 4 1 。 1 2 3 通用操作系统在基于p c 数控系统中的应用 操作系统的选择是基于p c 的数控系统丌发的关键坏节,它直接关系到数控的 丌发难度、开发进度以及系统的性能,只有采用实时多任务操作系统才能真正保 证数控系统的实时性能。目前,运行在p c 上的通用操作系统主要有1 2 , 8 ,l o , 1 1 1 :d o s 、 w r n d o w s 、l i n u x 。 d o s 操作系统 d o s 操作系统是一个单任务操作系统。d o s 中的应用程序在运行时是过程式 的,即:它顺序执行自己的代码,直到运行完毕后才放弃c p u ,在此期间其它应 用程序都不能运行。由于d o s 是单任务操作系统,且提供的开发资源较少,开发 者需要在较少的资源环境下开发多任务环境,开发周期长,成本高。另外,d o s 运行于c p u 实模式下,只能管理6 4 0 k 内存,字符型操作界面用起来不方便,而 第一章绪论 且对网络通信、数据库等提供的支持很少,对数控系统性能造成了严重限制。因 此,基于d o s 操作系统丌发的数控系统已经不再是数控系统的发展趋热。 w i n d o w s 操作系统 w i n d o w s 操作系统以其方便友好的图形操作界面和丰富的软硬件资源支 持在桌面p c 操作系统中占据了垄断地位,其基于优先级抢占式多任务调度方式和 功能强大的可视化软件开发工具为软件开发提供了很大便利。但是w i n d o w s 系 统本身不是实时操作系统,其内核也不对外开放,难以有效进行底层开发。 w i n d o w sn t 通过采用虚拟地址空间的方式在稳定性方面有了较大提高,然而 n t 系统的硬件抽象层使硬件的接口非常困难,效率也较低,而且系统不具备严格 的实时处理能力。针对这种情况,许多商家纷纷推出n t 的实时展系统,如 v e n t u r c o m 的r t x ,t e n a s y s 的1 n t i m e 等。但这类扩展系统及其相应开发工具的价 格较高,因此该种系统的开发成本比较高。 l i n u x 操作系统 l i n u x 是一套类似于u n i x 的、源代码开放的、免费的、支持多种硬件平台、 多个c p u 、支持3 2 位和6 4 位的多任务、多用户的网络操作系统。但是,l i n u x 本身并不是一个实时的操作系统,它的核心的不可抢占性、采用基于固定时间片 的可变优先级调度算法、支持虚拟内存、1 0 m s 的任务调度时间精度以及在使用临 界资源时关中断时间比较长的特性在很大程度上限制了其在实时控制领域的应 用。目前已经有r t l i n u x 、k u r t 、r t a i 等多种同样免费、代码开放的实时l i n u x 操作系统【1o ,瞳】。这些系统都以稳定,高效的l i n u x 内核为基础,通过扩展而建 立开放、标准、高效、便宜的多任务实时操作系统;系统还充分使用了l i n u x 的 网络、x 窗口和开发环境等资源,极大的方便了用户在网络、界面等方面的非实 时应用软件的开发。 通用操作系统具有良好的可移植性并可以运行在多种硬件平台之上, w i n d o w s 和l i n u x 系统还提供了强大的网络功能和良好的用户界面,拥有丰富 的软件资源和软件开发工具,其开发能力远远优于专用的实时操作系统。l i n u x 系统的源码开放和免费的特性更是吸引了众多的数控开发人员的目光。 1 3 论文研究的主要内容 研究了基于p c 的数控技术的研究现状,简述了开放式数控系统的基本特性。 阐述了基于p c 的数控系统所采用的硬件结构和软件系统平台。提出了一套运行于 p c 系统中的基于r t l i n u x 的雕刻控制系统实现方案。论文分为以下几个部分: 第一章主要介绍了数控系统的发展历程以及基于p c 的数控技术在国内外的 研究现状。说明了本论文的研究内容、目的及意义。 河海人学t 学倾_ 】j 论文 基于i r l l 【,i n u x 的雕刻控制系统研究 第二二章分析了基于p c 的数控系统通常所采用的硬件结构和软件系统平台。 提出了一套运行于通用p c 上的基于r t l i n u x 的雕刻控制系统实现方案,并对方 案作了软、硬件可行性分析。 第三章较详细的介绍了l i n u x 和r 1 l i n u x 操作系统各自的基本特性、体系 结构以及通信和中断的处理机制,着重分析了l i n u x 在实时性方面的局限性及 r t l i n u x 优越的实时性能。 第四章着重说明了基于r t l i n u x 的雕刻控制系统的软、硬件实现,并分析 了系统实现过程中的几个关键问题。 第五章分析晓明了系统的具体实现情况以及实时性能。 第六章结论与展望 第二章控制系统的框架结构 第二章控制系统的结构及可行性分析 21 基于p c 的数控系统的优点 数控系统采用丌放式体系结构的主要目的是为了使之成为具有互操作性、用 户化、集成化、元件化的开放式系统【l 。为了达到这些目的,选择好系统平台是 关键,数控系统的平台由硬件平台和一定数量通用的软件模块组成。在硬件平台 方面,当前的p c 机具有高标准的硬件结构、配最及优异的性能价格比,使得p c 机理所当然地成为开发开放式数控系统的首选硬件平台,在p c 机上开发c n c , 己成为大多数国家数控同行的共识 1 。 本文提到的雕刻控制系统就是在p c 平台之上开发的,选择p c 机作为数控系 统开发的硬件平台是考虑到它有如下的优点【1 ”: ( 1 ) 可以使用c 语言进行开发,不必担心效率问题( p c 机平台下优秀的c 编译器可以达到汇编语言效率的9 0 以上) 。程序具有移植性,不依赖于硬件。软 件的可重用性好,后续的开发工作不必从头开始。 ( 2 ) 软件资源丰富,尤其在r t l i n u x 下,所需开发软件均为免费软件,不 存在软件开发成本问题。能在图形界面下进行开发,充分利用p c 机平台的丌发优 势。 ( 3 ) 有强大的实时操作系统支持,可轻松实现多任务调度。通过多任务编程, 能实时改变控制参数和控制算法,实时监控控制器的输入、输出及内部变量。 ( 4 ) a d 、d a 板卡可从专业厂商处获取,价格不高,不需自行开发,硬件 平台可以很快构建完毕,且这一部分投资不会因p c 机的升级而作废。 ( 5 ) 易于实现网络编程,必要时可通过局域网进行远程监控。 ( 6 ) 运算速度以及实时性能随p c 机的升级而自然升级,升级成本低,性能 提升迅速。 2 2 基于p c 的数控系统硬件结构的选择 基于p c 的丌放式数控系统的硬件结构大致可分为4 种类型 1 2 , 1 4 , 15 :p c 连接 c n c 型、c n c 内嵌入p c 型、p c 内嵌a c n c 型、通用p c + i o 接口卡型。 p c 连接c n c 型 这种系统只是将现有c n c 与p c 机通过串行接口直接相连。c n c 保持原有功 能,p c 机进行管理或零件编程。这种方案最容易实现,但原来的c n c 照样保留, w 海人学r 学坝i 一论文 基于h i l i n u x 的雕刻控制系统研究 既降低不了价格,也无法实现丌放性。 c n c 内嵌入p c 型 该类型系统是将p c 装入到c n c 内部,p c 与c n c 之间用专用的总线连接。 系统数据传输快,响应迅速,原型c n c 系统可以不加修改就得以利用。缺点是不 能直接利用通用p c ,开放性受到限制,通用p c 强大的功能和丰富的软硬件资源 不能得到有效的利用。 p c 内嵌入c n c 型 该类型系统是在通用p c 机的扩展槽中插入运动控制板或整个c n c 单元( 包 括集成的p l c ) 。p c 机处理非实时部分,实时控制由插入p c 机扩展槽中的c n c 单元或运动控制卡来承担。这种方案的优点是能在保证系统性能的条件下,充分 利用p c 机的软件资源;零件编程方便灵活,造价也降低了。缺点是难以利用原有 c n c 资源。 通用p c + i o 接口卡型 这种模式是将i o 接口卡插入到p c 机的标准插槽中,整个系统是由p c 扩展 而成。个人计算机既完成非实时任务,又完成实时任务。i o 接口卡只担任沟通p c 接口和驱动接口的任务。通用p c + u o 接口卡模式的数控系统= 刁是真正意义上的开 放式数控系统,能实现c n c 内核的开放、用户操作界面的开放。由于c n c 可以 直接运行各种应用软件,因而能够最大限度地利用p c 机的软硬件资源,带给生产 厂家和最终用户非常大的利益。与前面几种数控系统相比,这种模式的开放式数 控系统具有最高的性能价格比,因而最有生命力。 考虑到控制系统的丌放性、开发难度、性能价格比等多方面的因素,本文提 到的雕刻控制系统采用了通用p c + i o 接口卡的硬件结构。 2 3 实时l i n u x 系统的选择 l i n u x 是目前p c 机平台上唯一可免费获得的、多个用户、多任务操作系统, 正因为如此,目前i b m 、h p 、s u n 等知名的大牌公司都纷纷把发展l i n u x 作为 公司的重要战略之一。然而,l i n u x 本身与w i n d o w s 一样也不是实时的操作系 统,因此必须为它做实时扩展或直接修改l i n u x 内核代码,才能获得l i n u x 系 统的实时性。目前已经有r t l i n u x 、k u r t 、r t a i 等多种实时l i n u x 操作系 统”2 ”1 ,这些系统本身都具有良好的实时性能,能够在事先指定或确定的时间内 完成系统功能,对外部或内部的中断能作出快速的响应。 ( 1 ) r t l i n u x r t l i n u x 是新墨西哥科技大学( n e wm e x i c oi n s t i t u t eo f t e c h n o l o g y ) 开发的实 时l i n u x 系统。由v i c t o ry o d a i k e n 和他的学生m i c h a e lb a r a b a n o v 所完成。它的 第一章控制系统的框架结构 目的是将l i n u x 提供的标准p o s i x 服务与硬实时服务有机地结合起来,提供透 明的、模块化、可扩展的实时操作系统。在概念上,通过架空l i n u x ,并把l i n u x 的优先缴设为最低,使得r t l i n u x 的实时进程可以被实时的执行。r t l l n u x 基 本上是一个独立的微内核,它把l i n u x 操作系统当作其中的进程。 r t l i n u x 内核中拦截全部来自硬件的中断,并且将他们放在一个队列里面, 等到实时任务全部执行完之后,才。让这些中断进入到l i n u x 内核,因此r t l i n u x 不受l i n u x 的影响。为了使实时任务与非实时任务之间的通信不依赖于l i n u x 的通信接口,r t l i n u x 丌发了实时f i f o 、信号量、消息队列、共享内存等通信 机制来实现实时任务之间、实时任务和非实时任务问的通信。r t l i n u x 所需的资 源全部静态分配,以避免动态分配资源产生不可预测的延时。实时任务可编译成 一个模块,并在运行时动态加载。r t l i n u x 接管系统所有硬件资源,所以它是一 个硬实时的操作系统。 ( 2 ) r t a i 意大利的r t a i ( r e a l t i m ea p p l i c a t i o ni n t e r f a c e ) 大致上跟r t l i n u x 是相同的 技术。它同样架空了l 1 n u x ,并采用可加载的模块来实现实时进程。r t a i 和 r t l i n u x 最大的不同点在于,它小心地在l i n u x 上定义了一个实时硬件抽象层 ( r e a l t i m eh a r d w a r ea b s t r a c t i o nl a y e r ) 。r t a i 修改了l i n u x 操作系统目录 l i n u x a r c h i 3 8 6 中与体系结构相关的代码而形成了r t h a l 层。r t h a l 的作用是使 r t a i 能够在实时任务需要运行的任何时刻中断l i n u x 。引入r t a i 后,l i n u x 的 功能没有改变,但运行于最低优先级下。当无实时任务执行时,才允许它执行。 r t h a l 将r t a i 需要在l i n u x 中修改的部份定义成实时应用接口,r t a l 只 使用实时应用接口和l i n u x 沟通。其好处在于,可以将直接修改l i n u x 核心的 程序代码减至最小,使得将r t h a l 移植到新版l 1 n u x 的工作量减至最低。 ( 3 ) r e d l i n u x r e d l i n u x ( r e a l t i m ea n de m b e d d e dl i n u x ) 是由c a l i f o m i a 大学开发的,目 的是为了建立一个用于嵌入式环境的实时操作系统内核,并提供较高的执行效率 和灵活的调度策略。r e d l i n u x 提供较高的执行效率和灵活的调度策略。 为提高效率,r e d l i n u x 采用一个很短的任务分派间隔f 2 5 , 2 6 是对l i n u x 内核进行改造,将l i n u x 内核工作环境 做了一些变化,将l i n u x 系统上的任务以及l i n u x 内核本身作为一个优先级最 低的任务,而实时任务作为优先级最高的任务,即在实时任务存在的情况下运行 实时任务,否则才运行l i n u x 本身的任务。实时任务不同于l i n u x 普通进程, 它是以l i n u x 的内核模块l k m 的形式存在的,需要运行实时任务的时候,将这 个实时任务的内核模块插入到内核中去。实时任务和l i n u x 进程之间的通信通过 共享内存或者f i f o 通道( 用l i n u x 虚拟字符设备) 来实现。 从图2 2 可以看出,在l i n u x 进程和硬件中断之间,本来由l i n u x 内核完 全控制,现在两者之间加上了个r t l i n u x 内核。l i n u x 的所有控制信号都要 先交给r t l i n u x 内核进行处理,r t l i n u x 最先知道硬件的信息,实时任务直接 和r t l i n u x 内核进行交互,这样大大缩短了系统和实时任务访问硬件的时间,从 而得到最快的响应速度。在r t l i n u x 内核中实现的虚拟中断机制里,l i n u x 本 身永远不能屏蔽中断,也不能中断自己( 而r t l i n u x 可以) ,它发出的中断屏蔽 信号和打开中断信号都修改成向r t l i n u x 发送一个信号。r t l i n u x 将所有的中 断分成l i n u x 中断和实时中断两类,并接收所有的中断信号,如果收到的中断信 号是普通l i n u x 中断,那就设置个标志位;如果是实时中断,则立即响应中断。 第三章l i n u x 及r t l i n u x 系统 中断控制硬件 善 fr t - l i n u x 内核 图2 - 2r t l i n u x 对l i n u x 内核工作环境的变化 因此当l i n u x 内核屏蔽中断时,不影响r t l i n u x 的中断处理。r t l i n u x 系统 提供了若干个时间控制函数,可以让中断管理器用来精确控制中断处理,从而确 保关键性的中断可以在需要的时间得到执行。据测试,在p e n t i u m l 2 0 的p c 上, l i n u x 中断延迟是2 0 u s 左右。 r t l i n u x 的设计原则是:在实时内核模块中的工作尽量少,如果能在l i n u x 巾完成而不影响实时性能的话,就尽量在l 1 n u x 中完成。因此,r t l i n u x 内核 尽量做的简单,在r t l i n u x 内核中不应该等待任何资源,也不使用共享旋转锁 ( s p i n l o c k ) ,实时任务和l 1 n u x 进程间的通信也是非阻塞的,从而不用等待进 队列和出队列的数据。r t l i n u x 使用静态的内存分配机制,以杜绝由于系统内存 缺页所带来的访问延迟。 3 2 3 r t l i n u x 和l i n u x 间的通信机制 r t l i n u x 的实时任务并不能直接调用系统调用,它必须通过特定的方法和 l i n u x 进程进行通信。r t l i n u x 提供了两种通信的方法 2 5 , 2 6 , 2 7 】: ( 1 ) 共享内存 在r t l l n u x 启动的时候,通过指定给内核个m e m 参数决定内核可以使用 的内存大小,空出来的内存空间用于实时任务和l i n u x 进程问进行通信的共享内 存。在r t l i n u x 任务中通 3 浏d e v m e m 设备在这段内存中寻址,l i n u x 进程也通 过读取这段内存的数据获得实时任务提供的信息,这样完成实时任务和l i n u x 进 程之间的通信。 r t l i n u x 提供的m b u f f h 文件是用于实现共享内存的驱动程序,它通过个 链表来管理申请的内存,每段共享内存都用一个标识符来标识。m b u f fa i l o c ( ) 函数 用来给所申请的内存定义标识符,通过这个标识符实现r t l i n u x 进程和l i n u x 之间的内存共享。 ( 2 ) 实时f i f o 设备 实时f i f o 是能够被内核实时进程和l i n u x 用户进程访问的快进快出的字符 塑塑查兰! 兰塑笙;! ! ! : 苎主望! 型望苎塑壁! 坚! 竖垄! ! 塑 设备,它创建在d e v 目录下。实时进程可以往这个字符设备写数据,非实时进程 可以从这个设备中读耿数据。对f i f o 设备的读写是不同步的,非实时任务对没备 的读取并不会影响实时任务刘它的写。 实时f i f o 是r t l i n u x 应用中使用最广泛的通信方法,比如在一个数据采集 系统中,通过实时任务将数据采集并处理,然后写到f i f o 设备中。通过一个在x w i n d o w 环境中的图形界面程序读取f i f o 的数据,然后显示在x w i n d o w 窗口中。 这样,既保证了对数据的实时处理,又提供了友好的用户界面。 3 2 4r t l i n u x 的编程接口( a p i ) 1 2 7 r t l i n u x 提供了以l i n u x 标准模块形式出现的编程和控制接口( a p i ) 。通 过使用这些a p i 可以提供实时任务的创建和删除、任务的调度和控制、进程通信、 中断控制等功能。这些模块如下: r t ls c h e d 提供了基于优先级的调度方法,支持p o s i x 接口和1 0 版本 的r t l i n u x a p i 函数。 r t lt i m e 提供了处理器时钟控制和处理的抽象接口。 r t lp o s i x i o 提供了以p o s i x 方式读倡打丌的系统调用的驱动程序。 r t lf i f o 提供了实时进程和l i n u x 进程i 刨的f i f o 设备通信机制; s e m a p h o r e 提供对信号量数据结构的支持。 r e b u f f 提供实时进程和l 1 n u x 进程间的共享内存通信机制。 在这些模块里面,提供的a p i 函数主要有如下几类: 中断控制a p i 函数 时钟控制和获取函数 线程的创建和删除以及线程优先级和调度策略的控制a p i 函数 p o s i x 方式的驱动接口函数 f i f o 设备驱动函数 串口驱动程序的a p i 函数 内存共享驱动函数 浮点运算a p i 函数 3 2 5 本控制系统涉及的编程接口( a p i ) 简介 为了便于读者理解以后章节的内容,下面将在开发本雕刻控制系统过程中用 到的部分编程接口函数作一个简要的介绍。 进程相关函数 i n t p t h r e a d c r e a t e ( p t h r e a d t + t h r e a d ,p t h r e a d a t t r t4 a t t r ,v o i d 第= 章l i n u x 及r t l i n u x 系统 + r 4 s t a r tr o u t i n p j ( v o i d ,v o i d + a r g ) i i g j 建进程 i n t p t hr e a d j o i n ( p t h r e a d t t h r e a d ,v o i d “a r g ) 删除进程 h i tp t h j e a da t t ri n i t ( p t h r e a da t t l t * a t t r )初始化进程属性 i n tp t hr e a da t t r d e s t r o y ( p t h r e a da t tr t + a t t r )销毁进程属性 in t p t hr e a d s us

温馨提示

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

评论

0/150

提交评论