




已阅读5页,还剩69页未读, 继续免费阅读
(计算机软件与理论专业论文)开放式数控系统软件面向性能的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 开放式数控系统是当今数控系统的发展趋势。采用c o m 组件技术有利于实现数 控系统的最高开放目标“开放式标准组件体系结构控制器”,即以p c 机和通用操作 系统为开放平台、体系结构完全开放的纯软数控系统。但是,这种开放给数控系统 的性能带来了一定负面影响:( 1 ) 相对于采用硬件控制模块处理强实时任务的封闭 或半封闭数控系统,纯软数控系统的性能可能较低;( 2 ) c o m 组件对象的方法是通 过类似虚拟函数的方式被间接调用的,它的执行效率不如可直接调用函数的编程规 范。而如何实现预定的性能目标本身就是数控系统设计和开发当中的重点和难点。 因此,如何解决或缓解这个矛盾、满足数控系统的性能要求成为开放式数控系统研 究的一个重要课题。 本文探讨的是在软件体系结构层面上,基于c o m 组件技术的开放式数控系统面 向性能的设计和实现。采用的通用操作系统是w i n d o w sc e t 。 本文在充分分析数控系统各项任务实时特征的基础上,通过采用细化任务、集 中读写1 0 端口、搭建管道一过滤器模型的数据处理流程、使用共享内存等策略,将 开放式数控系统响应硬实时、软实时、非实时请求的能力融入了它的软件体结构。 在设计软件体系结构和实现方案的过程中,本文提取了一套针对开放式数控系 统的组件提取原则、一套组件接口设计规则和一套计算各线程时间片的规则。 最后,本文基于以上设计思想实现了一个具有1 个通道的开放式数控系统和一 个具有3 个通道的开放式数控系统;并从可调度性分析和系统测试两个角度评价了 这两个系统的性能。 关键词开放式数控系统;c 0 m ;晰n d o w sc e n e t ;面向性能的设计 a b s t r a c t t b d a y ,o p e nn 岫e r j c a lc o r 帅ls y s t 蛐i sm e 仃锄do fn 啪e r i c a lc o i 帅ls y s t e n l u s i l l gc o m i s h e l p f l l lt o h i e v et l l eh i g h e s to p e n1 e v e lo fn u m e r i c a lc 伽t m ls y s t e m ,t h a ts y s t e mh 觞m r e e c h 甜t e r i s t i c s :( 1 ) b u i l to np c 龇du i l i v e f s a lo p e 俄i l l gs y s t e m ;( 2 ) h 嬲af i l 儿o p e na r c h i t e 咖陀;( 3 ) i sa ”r en u “1 e r i c a lc o n ls y s t e r n h d w e v e lm a t “n do f o p e nm a yg e n e r a t es o m en e g a t i v ei m p a c t 伽m e p e r f b n n a l l c eo fn 啪e r i c a lc 彻仃o ls y s t 啪:( 1 ) c o m p a r h l gw i mc l o s e 锄ds e m i c l o s en u m e r i c a lc o 胁叫 s y s t e mw h o s eh a r dr e a l t i m et a s k sa r ep r o c e s s e db yh a r d w a r em o d u l e s ,t h ep e r f 0 h n a n c el e v e lo fp u r e s o f l w 甜en 啪e r i c a lc o n t m ls y s t e mi sl o w e r ;( 2 ) c o m ,sf l i n c t i o ni si n d i r e c t l yc a l l e d ,s oi t se 位c i e n c yi s n o th i g h h o w e v e lh o wt oa c h i e v e 也ee x p e c t e dp e d b n n a i l c eo f 叫m e r i c a lc o n 仃0 1s y 咖mi se s s e n t i a l l y a ni m p o r c a n t 拍dd i m c u l tp r o b l e m s o ,h o wt or e s 0 1 v eo r l a xt l l 砒c 砌i c ta n dh o wt om e e t 缸 p e r f b h n 锄c e 协唱e t l ) e c o m eas i g n i f i c 锄tp r o b l e mi n 也ef e s e a r c ho f o p e nn u m e r i c a lc t m ls y s t e m t h ep 印e rw i l lr e s e a r c hm ep e d b m a n c eo f i e m e dd e s i g n 锄di m p l e m e n to fo p e nn 岫e r i c a l c o n 仰ls y s t e mo ns o f t 、ea r c h i t e c t u i o l 】ru n i v e r s a lo p 删n gs y s t c mi sw i n d o w sc e n e t b a s e do n 锄a l y z i n gr e a it i m ec 咖狮t e r i s 廿co f “lt a s k si nn u m e r i c a lc o r l 仃o ls y s t e 地m ep a p e r d e s i g n sm es o f i 、a r ea r c h i t e c t u f eo fo p e nn 啪c r i c a lc o m r o ls y s t e mw h i c hh a st h ea b i l i t yo fr e s p o n d i n g t oh a r dr e a l 髓m er e q u e s t ,s o f tr e a lt i m er e q u e s t 舶dn o n 陀a lt i m er e q u e s t i t ss t r a t e g i e si n c l u d e s : f h c t i o n i z i n gt 越k ,r e a d i n g w r i t i n ga l li n p u t o u t p mp o r tt o g e t i l e lb u i l d i i 】gap i p e m l t e rm o d e lt 0 p r o c c s s i n gd a 【a ,u s i n gs 1 1 a r em e m o 阱a n ds oo n m e a i l w h 钉e ,曲ep 印e rc r e a t e st h r e er e g u l a t i o i l sw h i c ha r er e s p e c t i v e l yu s e dt 0d i s t i j jc o m p o n e n t f o fo p e nn 咖e r i c a lc o n 廿o ls y 咖m ,t 0d e s i g ni m e r f k ef o re a c hc o m p o n e 毗a r i dt 0c a l c d i a t em et i m e s 1 c eo f e a c ht 1 1 r e a d a c c o r d 佃gt ot h o s ed e s i 印,t l l ep 印e ri l n p l e m e n t s 铆oo p e nn 啪e r i c a lc o 仃d ls y s t e m sw h i c h r e s p e c t i v e l yh a v eo n ec h a l l i l e la n dt h r e ec h a 衄e l s f i n a l i y ,i te v a l u a t e st h e i rp e r f b m a n c e 丘o m 咖 p o i n 乜:s c h e d u l a b i l 蚵a n a l y s i sa 1 1 ds y s t c mt e s t i n g k e yw o r d so p e nn u m e r i c a lc o n 廿0 ls y s t e m ;c o m ;w i n d o w sc e n c t ;p e 响册锄c eo r i e n t e dd e s 研 - i i i - 独创性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研 究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他 人已经发表或撰写过的研究成果,也不包含为获得北京工业大学或其它教育机构 的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均 已在论文中作了明确的说明并表示了谢意。 关于论文使用授权的说明 本人完全了解北京工业大学有关保留、使用学位论文的规定,即:学校有权 保留送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部或部 分内容,可以采用影印、缩印或其他复制手段保存论文。 ( 保密的论文在解密后应遵守此规定) 1 1 背景 第1 章绪论 开放式数控系统o n c ( o p e n n u m e r i c a i c 0 n 仃0 1s y s t e m ) 是当今数控系统的发展 趋势。它的研究目的主要是解决变化频繁的需求与封闭控制系统之间的矛盾,实现 数控系统的开放化,达到在较大范围内让用户针对不同的应用要求与应用环境自由 选择和配置不同的硬件和软件的目的,最终实现根据实际需要在开放系统的基础上 开发适合需求的专用系统的目标。 开放式数控系统般定义为:应用软件构筑于遵循可扩展性、兼容性原则的系 统平台之上的数控系统,使应用软件具备可移植性、互操作性和人机界面的一致性 等特征【4 】。由此可见,开放式数控系统应具备以下特点:( 1 ) 模块化,即系统被分为 逻辑独立的模块不同开发商可以提供功能相同的模块:( 2 ) 可互换性,即具备统 一的接口,相同功能的模块可以相互替换;( 3 ) 可伸缩性,即用户可以根据需求, 增减系统功能模块:( 4 ) 可移植性,即系统平台提供统的应用程序接口:( 5 ) 互 操作性,即具有标准协议的通讯接口;( 6 ) 可扩展性,即用户可以根据需求,扩展 功能模块的功能。 目前,数控系统的最高开放等级是“开放式标准组件体系结构控制器”【l ”,即: 以p c 机和通用操作系统作为开放平台、在数控系统中摈弃采用专用硬件控制模块、 体系结构完成开放的纯软数控系统。设计和实现达到这个开放等级的数控系统是本 文的日标。 c o m 组件技术是一种组件标准,具有高度模块化、可替换性强、互操作性强、 可扩展能力强、可二进制兼容等特点。它的这些特点与开放式数控系统的特点非常 吻合。因此,采用c o m 组件技术作为开放式数控系统的实现技术已经成为研究领域 和业界的探索重点”j ,这也是本文的选择。 w i n d o w sc e n e t 是一种通用的嵌入式实时操作系统,目前已广泛应用于嵌入式 系统的各个领域。它具有较高的实时支持能力、较高的可移植能力、丰富的共享软 件资源和友好的开发环境等优势。因此,采用w i n d o w sc e n e t 措建开放式数控系统 的软件平台也已经得到研究领域和业界的广泛重视 8 叫【1 2 j 。加上w i n d o w sc e n e t 支持c o m 组件技术,因此,本文选择它作为开放式数控系统的通用操作系统。 支持c 0 m 组件技术,因此,本文选择它作为开放式数控系统的通用操作系统。 北京工业大学工学硕士学位论文 1 2 问题的提出 本文探索的重点是“开放式数控系统软件面向性能的设计”,具体来讲是“开放 式数控系统软件面向性能的软件体系结构设计”。研究这个问题的原因来自以下三个 方面: ( 1 ) 系统开发经验的总结 人们通过不断的研究和实践证实:在硬件平台和软件平台一定的情况下,一个 系统是否能够表现出期望的( 或要求的) 质量性能,在选择软件体系结构时就已经 基本确定了【2 】。因此,在设计系统软件体系结构的过程中就考虑性能需求是保障系统 最终达到预期性能目标的一道有力保障。 ( 2 ) 数控系统的性能需求 数控系统是一个同时存在硬实时随机性任务、硬实时周期性任务、软实时任务 和非实时任务的实时多任务系统。 随着加工需求的发展,在这些任务的基础上,人们对数控系统加工精度的要求 越来越高,对加工周期的要求越来越短;同时对多通道加工的需求不断增大,即要 求数控系统能够有多组译码、刀具补偿、速度预处理、插补、位置控制等同时运行。 因此,如何满足如此多、如此复杂的性能要求成为数控系统设计和开发的重中之重。 ( 3 ) 数控系统开放化带来的问题 开发处于最高开放等级的数控系统,将原来封闭或半封闭数控系统中处理强实 时任务的硬件控制模块都软件化,这对系统是否达到预期的性能目标有一定的负面 影响。 本文采用c 0 m 组件技术作为开放式数控系统的实现技术,而c o m 组件方法是 通过类似虚拟函数的方式被间接调用的,这也对系统是否达到预期的性能目标有一 定的负面影响。 因此,如何弥补以上负面影响也成为开放式数控系统设计和开发当中需要考虑 一个重点。 综合以上分析,在设计开放式数控系统软件体系结构的过程中,加入面向性能 的设计考虑具有紧迫的理论和现实意义。 1 3 相关研究现状 目前,数控系统的实时设计模式主要有两种1 9 】: ( 1 ) 前后台模式 这一模式将数控系统软件分为两部分:前台程序和后台程序。前者主要完成插 弟1 苹绪论 补运算、位置控制、故障诊断等强实时任务,它是一个实时中断服务程序。后台程 序则完成图形显示、零件加工程序的编辑管理、p l c 扫描执行、系统的输入输出、 插补预处理( 译码、刀具补偿、速度预处理) 等弱实时任务,它是一个循环运行的 程序。在后台程序运行的过程中,不断地定时被前台中断程序打断,两者相互配合 完成零件的加工任务。前后台程序的关系如图1 1 所示。 图1 - l 前后台程序的关系 f i 9 1 1 托1 a t i o no f f b r e 野o u n d 印p l i c a t i o n 柚db 晦r 0 眦da p p l i c a t i o n 前后台模式采用的任务调度机制是优先抢占调度和顺序调度。前台程序和后台 程序之间的调度是优先抢占式的,允许前台程序抢占后台程序;前台程序内部各子 任务之间以及后台程序内部各子任务之间是顺序调度的。前台程序与后台程序之间, 以及它们内部的各子程序之间通过缓冲区交换信息。 这种模式的前台程序内部以及后台程序内部无优先级等级,也无抢占机制,因 而实时性差。例如,当系统出现故障时,可能要延迟前台程序或后台程序的整整一 个循环周期( 最坏情况) 才能作出反应。所以该模式仅适用于控制功能较简单的系 统【1 9 】。 ( 2 ) 中断型模式 这一模式将除初始化之外,整个系统软件的各个任务模块分别安排在不同级别 的中断服务程序中,然后由中断管理程序( 由硬件和软件组成) 对各级中断服务程 序实施调度管理。该模式的软件结构如图1 - 2 所示。 该模式的调度机制采用优先抢占式调度。各级中断服务程序之间通过缓冲区交 换信息。它的优点是:可将强实时任务安排在优先级较高的中断服务程序中,实时 性好;缺点是:模块关系复杂,耦合度大,不利于系统的维护和扩充。 托京工业太学工学硕士学位论文 r 磊疆 孛蘩镣莲幕缝稚终软释) 妻| 塞| l 塞l 。一一+ 蚕。:引 0 。 * 缓 中 蘩 囊 鼻 程 枣 强l 五中藜型软捧系统结毒奄 f 埝1 _ 2s t m c t 暇eo f s o f l w a r es y 毹e mb a 5 e d o ni n 咖p t i 。4 课题内豢和性麓虽标 本文薹予张:秘磁蛙曲粥c e ,建或搭建熬开放平会,戮e 0 髓经锋按术秀实褒按拳, 研究如何面向性能设计开放式数控系统的软件体系结构,研究体现面向性能设计思 怒熬实溪策略,碜 究译徐舞羧式数控系统性筑戆策略著给密评俊结采。 物理轴位鬣控制周期的长短是衡量数控系统性能高低的关键指标之一。本文期 鎏达到瀚周期蹩l m s 。这个躅麓篷不是当嚣渡赛最簸瓣( 禁些采弼疆舞控露模块簸 理强实时任务的系统融经达到几十微秒的水平) ,假小于一般纯软数控系统的设凝 ( 2 8 “玲或觉高) 。选择这个周期镶豹霖鑫毽捂:( 1 ) 本文设诗耧实现豹是楚软数 控系统;( 2 ) 本文所用试验平臼的c p u 频率比较低,2 0 0 m h z ;( 3 ) 基于c o m 组件 按本实现开放赋数控系统还忿予探索除段。 l 。5 本文鑫孽结构 第2 章,麓擎会绥嚣敦式数控系统戆实现技术_ c o m 缝谗技术。 第3 章,简单介绍开放式数控系统的软件开发平台w i n d o w sc e n e t 。 第4 幸,介绍开羧式数控系统瑟淘性魏静较锌髂系绪 鸯靛设诗繁珞和设计藏莱。 第5 章,介绍体现开放妓数控系统面向性能的软件体系结构设计思想的实现方 案。 第6 章,介绍从理论和实际测试两个角度评价开放式数控系统性能的方案和评 价结莱。 第2 章c o m 组件技术概述 第2 章c o m 组件技术概述 c o m 组件技术是由m i c r o s o f t 提出的组件标准,它定义了组件程序之间进行交 互的标准,并且提供了组件程序运行所需要的环境。 c o m 实际上是一组指导人们如何编程,建立可互操作组件的规范。c o m 的核 心思想是定义一组组件链接的标准和为这一标准提供的实现环境,其它高层的软件 遵照这种标准来构造应用程序,以使符合c 0 m 规范的组件具有很强的互操作性。 2 1c o m 接口 c 0 m 接口是组件对象间进行通讯的抽象协议嘲,是一种能提供语义相关操作 ( 方法) 的软件组件间强类型约定。c o m 接口是组件暴露它向外界提供的功能的 惟一窗口,是组件之间、组件与应用程序之间互操作的惟一途径。 c o m 接口不是组件对象,它只是一个处于客户代码和组件对象实现代码之间 的内存接口,确切地说,它只是一个包含函数指针数组的内存结构,每一个数组元 素都是一个由c o m 组件实现的函数的地址,如图2 1 所示。c o m 接口的这个特性 不仅能够实现组件接口和组件实现的分离,同时由于这种内存结构能够被支持指针 的任何语言实现,因此它能够保证c o m 组件实现二进制级的封装和重用。 虚拟函数表 接口指针 lv t b l 指针 毒 函数地址1 函数地址2 组件对象 函数地址3 的实现 菡数地址4 图2 1c o m 接口的内存结构 f i 酷一1m e m o r ys t n l c n h eo f c o mi m 刚沁e 所有c o m 接口必须直接或间接地继承一个特定的接口i u n k n o w n 。i u r l k n o w n 接口的语义可描述如下: i n t e r 蠡骟ei u n k n o 、t i h r e s u u q u e r y i n t c r 犯e ( 【i n r e f dr i i d , ,从c o m 对象获取指定接口 【o u t 】v o i d + + p p v ) ;,的接口指针 也s u i j a d d r e 坟v o i d ) ; ,c o m 对象的引用计数+ + h r e s u i ji 沁l e 嬲e ( v o i d ) ;c o m 对象的引用计数一 ) 北京工业大学工学硕士学位论文 2 2 c o m 组件 c o m 组件对外提供面向对象的、二进制级的封装。一方面,其他组件或应用 程序可以把它褥作一个类来成用;另一方蘑,一个绘定的缀 牛决不能以一个整体进 入另一个组件或应用程序,其他组件或应用程序只能通过接口访问佬。 c o m 组佟可以实瑗一个溅多个攘日,旦必须实现i u 呔黼、v n 接目的语义e c o m 对象的生命周期不爆由c o m 对象管联,而题由各个接口指针通过调用 i u 蛾n 删雌:a d 黜) 秘i u n 虹鲫吼:r e l e a s e ( ) 管理接口囊身盼生命周期来管瑗。 2 。3c o m 运行模式 c o m 采用客户目疆务器遣褥模式,如图2 _ 2 所示。c o m 对象以服务器的方式为 客户端提供服务,它可以与客户端运行在同一个迸橼中,也可以与客户端运行在间 一机器的不同进程中,甚至可以与客户端运褥在不同的机器上,实现同进程、跨进 程、跨网络的甄操作。 2 4 本章小结 图2 _ 2 c o m 运行模式 f i 醴一2n m m o d eo f c o m 通过对比开放式数控系统的特点和c o m 组件技术的特点,我们能够得到一个 缕论:基于c 0 艇缍锋技术粪够实璃舞敖式数控系统瓣牙敖疑标。艇麦子_ i 蘧过接爨 调用c o m 组件对象的方法具有间接性,会对软件的性能带来一定的负面影响,因 诧需要逶遘设诗或实魏土静莱耱策略弥羚。 第3 章w i n d o w sc e n e t 概述 w h d o 、c e n c t 是m i c r o s o r 公司开发的一个模块化、可定制、多线程、多进程 的抢占式3 2 位嵌入式实时操作系统川。o w sc e n e t 自1 9 9 6 年诞生第一个版本以 来,已经经过多次更新换代,现在的最高版本是2 0 0 5 年发布的w i n d o w sc e n c t5 o 。 至今为止,w i l l d o w sc e t 已经在信息家电、移动计算、工业控制等嵌入式系统领 域得到广泛应用并具有巨大的发展潜力。 3 1w i n d o w sc e n e t 的特征 w i n d o w sc e ,n e t 是为嵌入式实时系统设计的操作系统,具备嵌入式实时方面的 特征:同时由于它是由操作系统大家w i n d o w s 的开发商开发,因此它又沿袭了 w i n d o w s 的诸多优良特征。我们可以将这些特征总结如下: ( ”适用于小型系统 新版w i n d o w sc e n e t 操作系统只需要5 0 0 k b 的内存就可以将系统全部装下,而 且内核只需要2 0 0 k b 的运行空间 ”。 ( 2 ) 操作系统独立于处理器 w i n d o w s c e n 虬可以工作在不同的处理器上,目前它支持删系列、m i p s 系 列、s b 【系列和x 8 6 系列的多款c p u 及相关仿真技术口“。 ( 3 ) 具备高度的实时处理能力 w m d o w sc e n e t 可以满足9 5 的硬实时系统的要求2 “。它的实时特征包括: 定时周期误差小,1 m s 定时周期的误差约为1 0 0 s ,在2 0 0 m h z 的x 8 6 系统下可望 达到5 0 s ;中断响应时间短,在p e n 廿u m i i _ 3 5 0 m h zc p u 的硬件平台上,中断响应时 间为2 5 u s 嘲;支持嵌套中断,允许更高优先级的中断打断低优先级i s r 的执行;支 持多线程抢占式调度策略;支持优先级继承;允许为线程设置o 2 5 5 的优先级;线 程的时间片可调,最小可设置为l m s nw 协d o ,m c e m e t 在实际平台上的实时支持能 力请参看附录l j 。 ( 4 ) 具备灵活的电源管理功能 w i n d o w sc en e t 允许系统电池工作在断电、通电、空转、悬停、临界断电等五 种状态下,能够有效地减少能源消耗。 ( 5 ) 可针对目标平台定制w i d o w s c e n e t 平台 w i n d o w sc e n e t 是一个高度模块化的操作系统,允许用户根据目标平台的需要, 定制、裁剪出符合需要的w i n d o w s c e n e t 平台。 ( 6 ) 为应用提供了网络通信、图形用户界面、数据库、文件等支持 ( 6 ) 为应用提供了网络通信、图形用户界面、数据库、文件等支持 北京工业大学工学硕士学位论文 ( 7 ) 遵循w 砌o w s 平台的应用开发规范:提供w m 3 2 a p i 、支持c o m 组件技术 ( 8 ) 提供了丰富的开发、调试工具和手段,包括: p l a t f o 衄b u i l d e r : p la _ 响忧lb l l i l d e r 是构建基于w i n d o w sc e n e t 的嵌入式平台的集成开发环境 ( m e ) 。它可以用于设计、创建、编译、测试和调试w i i l d o w sc e 操作系统,可以 开发设备驱动程序和应用程序项目。 e m b e d d e d s u a lc + + : e m 【b e d d e d s u a lc + + 用于开发w i n d o w sc e n e t 应用程序,它具有与v i s l 谢c + + 基本一致的界面、语法和开发流程,简单易学。 远程调试工具: w i n d o w sc e m t 提供了模拟器、远程调用评测程序、远程文件浏览程序、远程 堆查看程序、远程内核跟踪程序、远程性能监视程序、远程进程浏览程序、远程注 册表编辑器、远程消息监视程序、远程系统信息、远程屏幕截图程序等远程调试工 具,大大降低了用户调试程序的难度。 3 2w i n d o w sc e n e t 的系统结构 一个基于w n d o w sc e n e t 的平台主要由三个部分组成:晰n d o w sc e n e t 内核组 件、0 a l 层和设备驱动程序、上层应用程序删,如图3 1 所示。 厂越蔚_ ie 困圈厦豳i 竺! ! :竺竺竺! 兰一。一l 图3 一1w i n d o 、v sc e 的体系结构 f 够一1a r c h h l r eo f w 砌o wc e o a l 层和设备驱动程序作为目标设备和w i n d o w s c e n e t 内核组件之间的接口, 将操作系统上层与硬件隔离,从而便于支持硬件扩展和即插即用功能。 3 3w i n d o w sc e n e t 的实时性分析 实时性是指能够在限定时间内执行完规定的任务,并对外部异步事件作出反应 的能力。实时性的强弱以完成规定功能和作出响应的及时程度来衡量。提高硬件能 力可以在一定程度上提高计算机系统的实时性,但是当硬件条件确定之后,一个实 时系统的性能主要由其操作系统决定的。因此,实时操作系统除了要满足应用的功 能需求之外,更重要的是要满足应用的实时性要求。 目前,操作系统的实时性主要从以下几个方面来考虑:( 1 ) 必须支持多线程和 抢占式任务;( 2 ) 必须支持中断嵌套;( 3 ) 必须支持线程的优先级调度;( 4 ) 线程 的优先级可以继承;( 5 ) 必须支持线程的可预测同步机制1 8 j 【1 0 j 。 3 4w i n d o w sc e n e t 的调度策略 w i n d o w sc e ,n c t 以线程作为调度的基本单位。它采用的调度策略【2 5 1 是基于优先 级的时间片轮转方法【l l 】,即优先运行具有最高优先级的线程,直至线程完成任务、 或线程的时间片用完、或线程被阻塞;对于具有同等优先级的线程按照f i f 0 的原则 运行。w i n d o w sc e 的调度策略如图3 2 所示: 最低优先毅队列,时间片轮转 状低优先圾队列。时间片轮转 最高优先级队列,时问片轮转 图3 2w i n d o w s c e 的调度策略 f 瞄- 2s c h e d u l e 咖t e g yo fw i n d o w sc e 3 4 1w i n d o w sc e n e t 线程的优先级及其时间片 与w 协d o w s9 8 肘t 相比,w i n d o w sc e n e t 为线程分配优先级的方法大不相同。 在w i n d o w sn t 当中,一个进程创建的时候将同时创建与一个优先级相关的类,线 程将从创建它的父进程的优先级类中获得自己的优先权,具有高优先级类的进程所 创建的线程将比具有较低优先级类的进程所创建的线程的优先级高。w i n d o w s c e n c t 没有类似的优先级类,所有的进程都是同等的,单个线程可以有不同的优先级,而 北京工业大学工学硕士学位论文 且线程所在的进程并不影响线程的优先级【7 】【1 ”。 w i n d o w s c e n e t 可以为线程设定o 2 5 5 的2 5 6 个优先级,其中o 的优先级最高, 2 5 5 的优先级最低。线程优先级的分段见表3 1 川: 表3 1 线程优先级范围 1 吾b l e3 一lt h er a 口l g eo f t h r e a dp r i o r i t i e s 优先级范围分配对象 0 9 6 高于驱动程序的程序 9 7 1 5 2基于,i n d o w sc e n 吐的驱动程序 1 5 3 - 2 4 7 低于驱动程序的程序 2 4 8 之5 5 普通的应用程序 w 洫d o w sc e n e t 支持优先级继承,即当一个较高优先级线程访问一个当前被一 个较低优先级线程拥有的共享资源时,操作系统暂时阻塞较高优先级线程的运行, 并将较低优先级线程的优先级调整为与较高优先级线程相同的优先级,待原较低优 先级线程释放共享资源之后,操作系统将它的优先级调回原来的级别。这种策略可 以有效地解决资源争用问题、防止系统死锁。 w h d o w sc e n c t 各线程的定时系统分别独立,允许用户为各线程设定不同的时 间片,最小可设置为1 m s 。w i n d o w sc e 中线程的默认时问片为1 0 0 m s l 7 j 【1 2 j 。 3 4 2w i n d o w sc e n e t 线程的同步机制 、聃n d o w sc e n e t 为线程提供了丰富的同步对象 7 】【13 1 ,它们可以分为两大类:用 户模式同步对象和内核模式同步对象。 ( 1 ) 用户模式同步对象:包括互锁函数、临界区和消息队列。 ( 2 ) 内核模式同步对象:包括事件对象、互斥对象和信标对象。 3 4 3w i n d o w sc e n e t 的中断处理 ( 1 )w i n d o w sc e n e t 中断处理的机制【l i 】【1 4 1 w i n d o w sc e n e t 的中断处理由两部分实现:中断服务例程i s r 和中断服务线程 i s t 。i s r :运行于内核模式,用于响应一个硬件中断请求1 r q ,并向操作系统核心 返回一个中断标识,以待操作系统核心根据返回值做相应的后续处理;i s t 的实现一 般要求短小精悍。i s t :运行于用户模式,用于处理中断的事务性工作;它一般设置 为较高的线程优先级,以保证中断处理能够在规定的时限内处理完毕。 ( 2 ) w i n d o w sc e n c t 中断处理的过程l i l 】 晰n d o w s c e 中断处理的过程分为9 步,如图3 3 所示: 第3 章w i n d o w s c e n c t 概述 园硬童l 竣冬发墩中簸信号, 妻捩是巽豢撼璐理枣糖获; 异常处理程j 葶激活揸裁的i s 鼬 i s r 响应硬1 昝、操作磺件; 固l s r 耨孛蘩酸瓣薯浚鬣辐痘静较,洛幸f 裴拣谖; 中断服务调皮程序与o a l 侧橼协作,谈置中断事件,操龇辉在特定中断事件上的等待队列; 囝o a 0 捌程掇馋硬件( 翱翔致变鞭静中凝状意) ; o 中断事件;i 觳系统调璇程序动伟。一定时间之蔚调菠中断目努臻撩 中断服务线穗处理各种中断拳静,并调用系宽支持库; 幕缝支持瘁诲瓣i 目翳,竞崴设镬臻襻。 一 = 图3 3w j n d o 、v s c e 的中断处理过程 f - 9 3 3i n t 蚪e s so f w i n d o w sc e ( 3 ) w i n d o w sc e n c t 中断处理的实时特征 w i n d o w sc e n e t 的中断处理将计算复杂的中断事务处理从i s r 中分离出来,这 有利于操作系统能够更快的响应硬件中断;同时,w 弧d o w sc e i n e t 支持中断嵌套, 允许更疯优先级的硬件中断请求打断巍煎较低优先级i s r 的执行,遮有利于系统中 竣紧急的事务褥至及时处理。w i n d o w sc e n e t 在实际平台上的中断响应能力如表3 2 所示f 2 4 以5 1 。 裳3 - 2 l s r 和i s t 静滞屠时间( 单位:u s ) c p u l s 疑滞螽酵疑i s 零洚磊辩闫 最小最大平均最小 最大平均 a m d x 垂2 - 3 5 0 m h z1 。63 31 69 。23 4 。32 l 。2 p e n t i 啪一1 6 6 m h z3 36 74 21 9 21 0 5 66 2 1 p e l l t i u mp i i i 一5 0 0m h z3 3 6 73 4 l o 2 6 81 7 2 3 5 本潼小结 w i n d o w sc e n e t 是个实时多任务操作系统。在2 0 0 m h z 以上的c p u 上,它的 中断喻殿时间被控制在5 皤s 疆海,可以满是魄较高酶硬实时需求翻】。它的线程可蔽 运行在o 2 5 5 的2 5 6 个不同的优先级上,并麒各线稷可以拥有不同的时间片,因此 北京工业大学工学硕士学位论文 基于w i n d o w sc e n e t 实现嵌入式实时系统拥有广阔的空间。 结合1 2 节描述的数控系统性能需求以及1 4 节确定的性能目标,我们可以确定 w i n d o 、sc e n e t 能为实现开放式数控系统的性能目标提供有力的实时支持能力。同 时它能够运行于多种c p u 上、支持c o m 组件技术,能够支持实现开放式数控系统 的开放性。 第4 章开放式数控系统的软件体系结构设计 第4 章开放式数控系统的软件体系结构设计 在1 2 节我们已经论述了为了实现开放式数控系统的性能目标,必须在设计软件 系统结构的时候就考虑它的性能需求,即加入面向性能的设计因素。 本章将按照开放式数控系统软件体系结构的设计过程描述本文的设计思想和设 计成果,并重点阐述与系统性能息息相关的线程模型的设计策略和设计成果。整个 设计过程描述如下:( 1 ) 明确系统环境和功能需求;( 2 ) 确定组件提取原则,建立 初步组件模型;( 3 ) 确定组件接口的设计规则;( 4 ) 根据系统特征选取软件体系结 构风格;( 5 ) 针对系统的实时要求设计线程模型;( 6 ) 完成软件体系结构设计。 4 1 开放式数控系统的系统环境模型和功能需求 4 1 1 系统环境模型 开放式数控系统的系统环境模型如图4 1 所示。操作人员通过显示器、键盘、控 制面板、手轮、急停开关与系统软件交互,他向系统发出的请求包括数据操作请求 和控制操作请求;伺服是控制数控机床中电机运动的部件,它向电机发送的运动指 令由系统软件计算并发送过来;机床电器分为两类,一类由系统软件发送指令控制, 一类向系统反馈数控机床的执行环境信息;网络用于系统与网络上其它计算机交互。 其中,控制面板、手轮、急停开关、伺服、机床电器等数控系统硬件都是通过i ,0 端 口与系统交互的,如图4 2 所示。 蝴 o 网络 慧阵开关 图4 1 开放式数控系统的系统环境模型 f i 斟一ls y s t e me n v 的i l l n e n tm o d c i o n c 北京工业大学工学硕士学位论文 l翌竺竺至竺l _ 忑 臣巫匿巫亟巫匾圈 图4 2 数控系统硬件与软件的交互途径 f i 9 4 2a i t e m 锄tw a yb e t w e e nh a r d w a 阳a n ds o f t _ 涨o f n 啪甜c a lc o t l _ 心o ls y s t e m 4 1 2 功能需求 我们从数控系统使用者的角度,对不同的数控机床操作方式进行了仔细分析, 认为绝大多数数控机床的操作都可以分为控制类操作和数据类操作。如图4 3 、图 4 4 、图4 5 所示。 数据操作 阿络 图4 3 数控系统的用例图 f i 9 4 3l l s e rc a s ev i e wo f n 啪e r - c a lc o n 们ls y s t e m 手黼制栅k 电藉 图4 - 4 控制操作的用例图 f i 9 4 4u s e rc 舔ev 泓vo f c o 脯d l0 p e 州o n - 1 4 - 图4 3 的说明: ( 1 ) 羟蒂g 操俸,操作对象是数控祝寐及萁辅助设备。 ( 2 ) 数据操作,操作对象是跟数控加工、数控系统相关的数据。 蕊4 4 瓣说疆: 设置工作方式,设置当前通道的数控工作方式。可选的工作方式有:自动、 手动数据输入、手动连续、手动增量、返回参考点和模拟等。 设置运行方式,设置当前通道的运行方式。可选的运行方式肖:机床锁定、 窝运行、单步运行、辅助功能锁定、单段霹过和迸给倍率有效等。 囱动加工,数控机床的主要工作方式,它依照一定的指令规则和事先编好的 零件加工程序自动执行。 警动运动控制,数控系统允许通过一必按钮实现简单的轴运动控制操作,主 癸是单轴控帝l 搡作,如返回参考点、警动增量和手动连续;或者由糟户手动 输入一条嬲工指令控制皴运动,即手动数据输入。 手动逻辑控制,通过已定义的、或自定义的按钮、开关实现i o 控制,如主 轴正反转、液聪装置控制、孚幼更换刀具等。 图4 5 数据操作的用例图 f i 酵* 5u s e rc 躺ev i e w 姥穗t 鑫o p e 隧i o 珏 图4 5 的说明: ( 1 ) 获取豢韵,获取瓣餐整羯系统瓣豢魏镶怠。 ( 2 ) 设置速率参数,调整速度和倍率。此功能不仅允许通过机床控制面板的波段 开关送行控螽l ,氇兔许遴过键盘修改。 ( 3 ) 设置工艺参数,设置数控加工的工艺参数。 ( 4 ) 餐瑾刀暴参数,管瑾数控穰床豹力吴参数。 ( 5 ) 编辑加工文件,编写零件加工穰序。 ) ) ) ) ) n o h 北京工业大学工学硕士学位论文 ( 6 ) 文件管理,管理数控系统中的文件信息,包括新建文件、删除文件、重命名 文件等。 ( 7 ) 模拟,对零件加工程序进行图形模拟。 ( 8 ) 选择显示方式,选择控制器坐标等信息的显示方式,包括全屏编辑、分屏编 辑、主视图全屏、俯视图全屏、左视图全屏、3 d 视图全屏、4 视图全屏、主 视图分屏、俯视图分屏、左视图分屏、3 d 视图分屏等多种显示方式。 ( 9 ) 选择通道,选择当前通道。 4 2 开放式数控系统的组件提取原则和初步组件模型 4 2 1 组件提取原则 在建立开放式数控系统初步组件模型的过程中,我们借鉴两个著名的实时系统 软件设计方法a d a r t s ( 基于a d a 的实时系统设计方法) 和c o d e r t s ( 实时系统 并发设计方法) 【1 8 1 ,归纳出一套组件提取原则: 控制内聚原则 这一原则将一套状态转换规则封装在一个组件中。这类组件的特点是:( 1 ) 组 件拥有一套状态转换规则:( 2 ) 组件拥有一个当前状态;( 3 ) 组件能够根据外部输 入指令,应用状态转换规则改变组件的当前状态,并控制相关组件进行相应的改变。 数据处理内聚原则 这一原则将完成某数据处理功能必须的类封装在一个组件中。这类组件的特点 是:( 1 ) 组件自身不产生输入数据,也不保存计算结果,只负责对来自外部组件的 输入数据进行某种计算,并将计算结果提供给外部组件;( 2 ) 组件可能记录并反馈 计算过程中的状态,如输入数据出错、计算任务完成等。 同类内聚原则 这一原则将功能相同的一组对象封装在一个组件中。它的优点是可以使系统结 构清晰,便于统一管理和操作。 i ,o 操作内聚原则 这一原则将一些操作方式类似、操作时间上可同步的i o 端口封装在一个组件 中。这个原则最大的优点是:能够集中处理i ,o 端口,总体上减少处理i o 的时间。 4 2 2 初步组件模型 根据以上组件提取原则,开放式数控系统的初步组件模型可以描述如图4 - 6 所 第4 章开放式数控系统的软件体系结构设计 示。从缀件提取原则上看,这嫂组件分为四类:( 1 ) 控制内浆组件,包括主程序、 通道;( 2 ) 数据处理内聚组侔,包括代硒解释、刀具牵 偿、逡度预处理、多轴插李 、 s t e p 插补、j o g 插补、h o m 飘插补、p l c ;( 3 ) 同类内聚组件,包括物理轴容器; ( 4 ) 硇操作内蒙组件,包括i o 系统。 藤一,芝。1 :努 一:噬舀塑霉藕赢一一旁 蔫剥 图4 6 开放式数控系统的韧步组件模型 f i 寥一6 蛙嘲e 藏托曙娜n 鞠t 掰棚eo f o 辨n 艘m e r i c 砖c 锄黝ls y s 据m 主程序 接牧并处理来自操作人员的数据操作命令帮控制操作命令,以及来自p l c 的控 制操作命令。 通道 在数控系统中,通道是指其有运渤关系盼一组物理轴( 由伺服电机驱动) 所缎 成鲍单元,一念数控机床可以拥有一个或多个逶道。通道可以工终在多秘王终方式 下,如自动加工、手动
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025青海国考申论真题及答案
- 2025劳动仲裁申请书合同争议
- 2025版合同续签协议书范本
- 2025年个体意外伤害保险合同范本
- 2025合同期内遭遇解雇补偿
- 2025年行测真题及答案解析
- 2025试用合同期合同(标准)
- 2025设备采购合同协议书模板
- 2025物业管理合同的写作结构
- 2025标准融资租赁合同范本
- 第16课《经济危机与资本主义国家的应对》中职高一下学期高教版(2023)世界历史全一册
- 猎聘测评题库
- 全国巾帼家政服务职业技能大赛(家务服务员)理论考试题库(含答案)
- 女性生殖系统炎症护理
- 管道、阀门安装方案
- 2025届新课标全国卷高考数学押题试卷含解析
- 四年级语文下册 第19课《小英雄雨来》同步训练题(含答案)(部编版)
- 读书分享读书交流会《你当像鸟飞往你的山》课件
- 高中英语:倒装句专项练习(附答案)
- 基于双向长短期记忆神经网络的三维地应力场模拟
- 移动机器人技术-课件 项目一:移动机器人概述、系统构成
评论
0/150
提交评论