(计算机应用技术专业论文)开放式控制器体系结构研究.pdf_第1页
(计算机应用技术专业论文)开放式控制器体系结构研究.pdf_第2页
(计算机应用技术专业论文)开放式控制器体系结构研究.pdf_第3页
(计算机应用技术专业论文)开放式控制器体系结构研究.pdf_第4页
(计算机应用技术专业论文)开放式控制器体系结构研究.pdf_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

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

文档简介

硕士论文 摘要 开放式控制器体系结构研究 本文对开放式控制器进行了系统的研究,分析了国内外开放式控制器的研究进展, 并综合许多系统中具有开放性特征的设计思路,从体系结构角度出发,给出开放式控制 器的总体构成和层次划分,逐层说明开放式控制器的开放性特征。 针对现有开放式控制器主要集中实现应用层的开放性,本文重点论述了开放式控制 器在硬件层和系统层实现开放性的机制,分析开放式控制器在硬件模块接入移除系统 过程中,硬件层的响应策略,并通过系统层驱动程序的动态加载技术支持硬件层的开放 性。 最后,本文设计了一个开放式控制器的模型系统,完成了模型系统的硬件设计, l i n u x 系统的移植和新接入模块步进电机的应用控制,说明在实际构建开放式控制器的 过程中,如何选用开放式控制器的具体模块以适应特定的应用需求。 关键字:开放式控制器,动态加载,缓冲技术,多支堆栈,p c i 0 4 总线 a b s t r a c t i nt h i sp a p e r , o p e nc o n t r o l l e ri ss t u d i e ds y s t e m a t i c a l l y , t h er e s e a r c hp r o g r e s so fo p e n c o n t r o l l e ri sa n a l y z e da th o m ea n da b r o a d ,a n dm a n yd e s i g ni d e a si nl o t so fs y s t e m sw i t h o p e n i n gc h a r a c t e r i s t i c sa r ei n t e g r a t e d f r o mt h ep o i n t o fa r c h i t e c t u r e ,t h ep a p e rg i v e st h e o v e r a l lc o m p o s i t i o na n dt h el e v e lo fd i v i s i o no ft h eo p e nc o n t r o l l e r , a n dd e s c r i b e st h eo p e n c o n t r o l l e r so p e n i n gc h a r a c t e r i s t i c sl a y e r - b y l a y e r f r o mt h ep o i n tt h a te x i s t i n go p e nc o n t r o l l e r sf o c u so nt h eo p e n i n gc h a r a c t e r i s t i c si nt h e a p p l i c a t i o nl a y e rt h i sa r t i c l ef o c u s e so n t h em e c h a n i s m st h a tt h eo p e n i n gc h a r a c t e r i s t i c so f o p e nc o n t r o l l e r sa l ei m p l e m e n t e di nh a r d w a r el a y e ra n ds y s t e ml e v e l a n a l y s i st h eh a r d w a r e l a y e ro f t h er e s p o n s es t r a t e g yo f t h eo p e nc o n t r o l l e ri nt h eh a r d w a r em o d u l ea c c e s s s y s t e m r e m o v a l ,a n ds u p p o r t t h eo p e n i n gc h a r a c t e r i s t i c si nh a r d w a r el a y e rt h r o u g hd y n a m i c a l l y l o a d e dd r i v e rt e c h n o l o g yo ft h es y s t e ml e v e l f i n a l l y , w ed e s i g n e dam o d e ls y s t e mw i t ho p e nc o n t r o l l e r , f u l f i l l i n gt h eh a r d w a r ed e s i g n , l i n u xs y s t e mt r a n s p l a n t a t i o na n dt h ea p p l i c a t i o nc o n t r o lo ft h en e wa c c e s ss t e p p e rm o t o r m o d u l e t h ep a p e rt e l l sh o wt oc h o o s et h es p e c i f i co p e nc o n t r o l l e rm o d u l ei no r d e rt oa d a p t t os p e c i f i ca p p l i c a t i o nr e q u i r e m e n t si nt h ep r o c e s so fc o n s t r u c t i n gt h ea c t u a lo p e nc o n t r o l l e r k e yw o r d :o p e nc o n t r o l l e r ,d y n a m i c a l l yl o a d e dd r i v e rt e c h n o l o g y ,b u f f e rt e c h n o l o g y , m u l t i s t a c k ,p c10 4 声明尸明 本学位论文是我在导师的指导下取得的研究成果,尽我所知,在 本学位论文中,除了加以标注和致谢的部分外,不包含其他人已经发 表或公布过的研究成果,也不包含我为获得任何教育机构的学位或学 历而使用过的材料。与我一同工作的同事对本学位论文做出的贡献均 己在论文中作了明确的说明。 研究生签名:埠吖年月朔 学位论文使用授权声明 南京理工大学有权保存本学位论文的电子和纸质文档,可以借阅 或上网公布本学位论文的部分或全部内容,可以向有关部门或机构送 交并授权其保存、借阅或上网公布本学位论文的部分或全部内容。对 于保密论文,按保密的有关规定和程序处理。 研究生签名:年6 只埠e l 硕士论文 开放式控制器体系结构研究 1 绪论 1 1 课题的背景 随着科学技术的发展,产品的设计已经呈现出数字化和智能化的特征。控制器作为 电子产品的核心部件,已经应用在生产和生活的方方面面,其中包括家庭电器,工业控 制,航空航天,电子通信和娱乐,医疗器械,工业机器人,公共服务等领域。控制器的 应用使我们的生产生活发生了革命性的变革。 传统的控制器设计一般是遵循这样的思路:控制器在保证特定功能的基础上,尽可 能的降低成本,它不考虑设计的重用性和未来预期的功能扩展,是一种专用的封闭的设 计。一般来说,控制器的软硬件是由各个供应商独立设计的,如果想在原有的控制器中 添加其它功能,就必须对控制器进行重新设计。 随着人们对产品有了智能化,人性化的要求,控制器的设计更加复杂和多样,原有 的控制器设计理念难以适应需求的急剧变化,已经呈现出许多弊端。 对控制器的开发商而言:首先,由于需求的急剧更新,原有控制器在设计完成之前, 市场很可能就出现了新的应用需求,从而使得控制器在未面市之前就被淘汰。其次,控 制器的功能需求是非常广泛的,单一控制器生产商为了实现不同控制器功能的微小差 别,必须进行多次同质的开发过程。再者,许多大型控制器是非常复杂的,其采用的控 制器采用一次开发的方式需要投入大量的人力,物力和财力,这对许多控制器供应商而 言是难以做到的。 从控制器的用户考虑:工业控制器用户希望能根据其特定的应用需求,方便灵活地 构建符合其需求的控制器,改变控制器封闭性的设计模式,摆脱对特定控制器供应商的 依赖。电子消费用户则希望产品更加智能化和人性化,使用起来更加便捷。这种用户需 求和原有控制器设计方法的矛盾促进了控制器设计和开发技术的变革。 开放式控制器设计主要是依循这一思想:实现对已有资源的最大化复用并尽可能地 方便用户。复用包含两种含义:其一是控制器开发商对自身资源的复用,其二是控制器 开放商对其他设计者设计功能的支持。方便用户则是指为用户提供更多的与控制器交互 的接口和方法。这就要求控制器供应商在设计控制器时要依循以下原则:功能的模块化 设计,软硬件接口的标准化设计,控制器组织的配置化设计等。采用这种设计原则,控 制器在开发过程中,可以方便的选择来自不同厂商的不同的模块,迅速构建符合特定要 求的控制器,从而延长了特定控制模块的生命周期,便于控制器功能的维护和调整以及 控制器功能的二次开发。 目前,从现有控制器的设计方法和开放式控制器的研究现状来看,控制器采用开放 性设计的方法并没有广泛应用。虽然采用开放式控制器的设计思路能够提高制造商的资 1 绪论 硕士论文 源利用率,减少控制器功能的重复设计,但是大部分控制器供应商主要提供控制器在应 用层的开放性。如果从开放式控制器的系统角度出发,现在控制器供应商提供的开放性 是外部的,这种开放性是通过标准接口实现应用层的开放性控制【l 】。这种状况的产生主 要源于两个方面的原因:从经济角度分析,控制器的大型供应商为了维持原有产品的市 场份额和经济利益,对开放式控制器研究并不积极;从技术角度分析,供应商对控制器 的开放性特征有着各自不同的理解,他们一般去实现特定层次的特定领域的开放性,很 少有从控制器的总体层次上去实现控制器的开放性。 本文便是针对上述情况,综合许多系统中具有开放性特征的设计思路,依循对已有 资源的最大化复用并尽可能地方便用户的思想,从体系结构角度出发,分析开放式控制 器在硬件层、系统层和应用层的模块组织方式,构建各个层次均具有开放性特征的控制 器抽象模型,实现控制器从硬件层到应用层均具有开放性特征的开放式控制器参考模 型。 1 2 开放式控制器的研究现状 对开放式控制器的研究,工业控制领域已经持续了多年。早在上世纪8 0 年代就已 经出现开放式控制器的概念。欧洲的o s a c a ( 自动化控制器和开放式体系结构) 1 2 1 、 美国的o m a c ( 开放式模块控制器) 和日本的o s e c ( 控制器的开放式系统环境) 等发 起者曾经为开放式控制器的体系结构制定规范和设计标准进行过一系列的研究。这三个 计划的发展基本上反映了国外开放性控制器的发展状况。 在1 9 8 1 年,美国国防部开始了名为“下一代控制器( n g c ) 的计划,并成立了“美 国国家制造科学中心( n c m s ) ,其主要目的是拟订并推进关于新一代开放式控制器的 详细分析与规范即o m a c 研究。而后,9 0 年代诞生的o s a c a 计划被认为是最完备的 开放式控制器研究计划。o s a c a 致力于在控制器领域中降低开发新型控制器的成本和 技术门限。但直到o s a c a 计划结束,也并没有诞生真正意义的开放式控制器产品甚至 原型产品。日本在2 0 世纪9 0 年代初就敏锐地捕捉到开放式控制器的技术动向,政府和 民间都展开了对控制器开放性的研究。具有代表性的o s e c 计划将重点集中在不同厂商 的控制器的互通互联和协调工作上。也许由于异构控制器的生产系统的构建并不为一般 的生产系统所采纳,有关的研究并没有形成工业领域可以采纳的互联标准【4 j 。 总结这三个计划的目的和结果,我们可以得出:o m a c 计划的发起者n g c 作为 开放式控制器探索者,为我们提出了开放的理想,开启了一个新的控制技术时代,但先 驱的作用仅限于“开启民智”。o s a c a 是一个持续在开放式控制器领域进行实际探索的 研究计划,它触及了开放式控制器构造过程中的许多本质问题,但并没有很好地解决。 o s a c a 试图从控制器体系结构上着手解决开放式的本质问题,但很多超前的技术思想 抬高了应用的门限。o s e c 作为控制器设计的应用研究者,其系统构建并不具有通用性, 2 硕士论文开放式控制器体系结构研究 最终也未成为国际标准。 国内开放式控制器的发展处于起步阶段,但有关开放式控制器的国家标准已经在制 定中,控制器设计和控制器技术已获得了很大的提高,并开发出一批具有自主知识产权 的中高档数控系统。目前国内已有的开放式控制器有华中i 型、中华i 型、航天i 型和 蓝天i 型等【5 1 ,这些系统已经具有一定的开放性,而且硬件可靠性很高。但这些控制器 还不具备开放式控制器的本质特征,其系统所采用的体系结构并不一致,仍是自成体系, 相互之间缺乏兼容性和互换性,而且对体系结构的阐述都只限于具体实现层,没有涉及 硬件层和系统层的开放特征,更没有将开放性提高到抽象的层次上来,因而各系统软硬 件可移植性和互操作性不强。此外,产品的升级、更新、修改和维修仍然依赖于控制器 供应商,用户无法把自己的或第三方的思想或产品融入到系统中去,这就是说,控制器 缺少和用户交互的途径。 从目前的研究状况来看,我国的开放式控制器发展还是初始的,只有最终确立自主 的体系结构,才能真正的实现控制器的开放性特征。 1 3 本文的工作内容 本文从体系结构的角度,给出开放式控制器的总体构成和层次划分,逐层的说明开 放式控制器的开放性特征。 首先,从系统属性的角度,将开放式控制器分成硬件层,硬件支撑层,操作系统层, 应用支撑层和应用层,并给出每层的模块组成和模块的功能。 然后,从硬件层的模块组成和模块功能出发,说明开放式控制器在硬件层上的开放 性特征。其中重点说明为了支持硬件层开放性特征而设计的模块设计方法。 其次,从系统层的模块组成和模块功能出发,说明开放式控制器在系统层上的开放 性特征。其中采用动态可加载模块的方法实现开放式控制器的在系统层功能的裁剪和添 加。重点描述了驱动程序的动态加载技术以及系统拓扑和设备驱动程序的管理,以实现 对硬件层开放性的支持。 最后设计一个开放式控制器的模型系统,完成模型系统的硬件设计,l i n u x 系统的 移植和新接入模块步进电机的控制应用,说明在实际构建开放式控制器的过程中,如何 裁剪开放式控制器的体系结构以适应特定的应用控制环境。 1 4 本文的组织结构 第一章,绪论。介绍了课题研究的背景,分析开放式控制器国内外的研究现状,并 给出本课题的工作内容和文章的组织结构。 第二章,开放式控制器的总体结构分析和设计。从开放式控制器的概念出发,按照 1 绪论 硕士论文 系统的属性,分析并设计了开放式控制器的原型系统。 第三章,开放式控制器硬件层的开放机制。首先针对控制器硬件层的开放性要求, 分析并设计开放式控制器硬件层的体系结构,然后给出硬件接入删除过程的系统响应策 略,并分析监控模块对开放式控制器硬件层开放的支持和辅助作用。 第四章,开放式控制器系统层的开放机制。首先从总体结构上给出开放式控制器系 统层的层次划分和模块组成。其次分析开放式控制器驱动程序的加载策略以及驱动程序 的管理方法,最后从原理上说明监控模块和配置模块对开放式控制器系统层开放性的支 持和辅助作用。 第五章,开放式控制器模型系统的设计。首先进行模型系统的硬件设计,然后对模 型系统的系统层进行裁剪和移植,最后通过系统对步进电机的控制,说明如何裁剪开放 式控制器的体系结构以适应特定的应用控制环境。 最后一章是对本文研究内容的总结,并从研究角度的局限性给出文中存在的不足。 4 硕士论文开放式控制器体系结构研究 2 开放式控制器的总体结构分析与设计 本文设计的开放式控制器体系结构,从控制器的硬件层、系统层以及应用层这三个 层次给出开放式控制器模块之间的组织方式以及每个层次的开放性特征。它不是针对特 定的应用领域设计的,是一种抽象模型和原型系统。本章是对这种具有通用性特征的开 放式控制器的系统组成给予说明。通过分析开放式控制器的概念以及特定行业的控制器 开放性策略,本章从控制器的系统属性角度,给出了开放式控制器的体系结构。 2 1 开放式控制器概况 本小节主要给出开放式控制器的概念和特征,并通过分析不同行业的开放式控制器 的开放性策略,给出开放式控制器的行业发展前景。 2 1 i 开放式控制器的概念和特征 在给出开放式控制器的概念之前,我们先了解开放式系统和开放式体系结构含义。 i e e e l 0 0 3 对开放式系统的定义是:“按照开放的接口、服务和支持格式规范而实现的计 算机系统,并使应用软件能以最少的修改实现不同系统之间的移植 。1 6 开放式系统是在 计算机体系结构、计算机系统、计算机软件和通信系统等领域广泛使用的一种术语。开 放式系统鼓励开发商生产相互兼容的产品。这是因为开放式系统可以使顾客在很广范围 内进行产品选择的,而且符合开放式系统的组件易于和其它厂商的产品互联的特征。目 前,开放式系统的运动已经从需要开发一种业界均能承认的协议模型,转移到接受多种 协议模型的过程。 开放式体系结构是指具有系统的可移植性、可剪裁性、互操作性和易于从多方获得 软件的体系结构,简称开放结构f 7 】。开放结构于2 0 世纪8 0 年代初提出,与开放系统概 念的提出和实现密切相关,它的发展是为了适应更大规模地推广计算机的应用和计算机 网络化的需求。为满足开放系统的需要,开放结构应具有以下四个特点: 1 可移植性:可移植性是指各种计算机应用系统、程序和组件可在具有开放结构 特性的不同计算机系统间进行移植,不论这些计算机是否同种型号、同种机型; 2 可互操作性:可互操作性是指不同计算机系统互连后控制地位的等价性,如计 算机网络中的各结点机都具有开放结构的特性,则该网上各结点机之间便可相 互操作和资源共享,不论各结点机是否同种型号、同种机型: 3 可剪裁性:可裁剪性说明同一系统的不同模块和组件可以根据应用需要进行配 置。当某个计算机系统具有开放结构特性的,则在该系统的低档机上运行的应 用系统应能在高档机上运行,在高档机上运行的应用系统经剪裁后也可在低档 机上运行; 2 开放式控制器的总体结构分析与设计硕士论文 4 易获得性:易获得性强调组件和模块在开发过程的通用性和共享性。在具有开 放结构特性的机器上所运行的软件环境易于从多方获得,不为某个来源控制。 当基于开放系统的概念和具有开放体系结构性能的计算机系统上开发体系结构时, 对任何一个系统便可通过三种不同的抽象级别进行描述,即需求描述、功能描述和结构 描述。同时可以把系统按功能划分为应用结构、系统结构和硬件结构三个层次,使得开 发过程更加明晰和简洁。 开放式控制器是在开放式系统和开放式体系结构的概念上提出的,在遵循它们对开 放性的要求下,具有在控制领域的特殊性。开放性控制器的概念出现在8 0 年代末9 0 年 代初,是欧美各国为了适应机床制造业在技术、市场和生产组织结构等多方面的变化而 提出的,其目的是建立一种崭新的控制器设计框架,使系统朝模块化、平台化、标准化, 可配置化和系列化的方向发展,在联合的前提下提高产品的竞争能力,有效利用原有资 源。 按i e e e 定义,一个开放式控制器应提供这样的能力:来自不同卖主的不同平台上 运行组件功能都能够在其他系统上完全实现,并能和其他系统互操作,且具有一致性的 用户界面。关于以上开放式控制器的概念,我们可从两个方面进行理解: 时间的开放性:时间的开放性是针对软硬件平台及其规范而言的,它以保证平台具 有适应新技术的发展,并能够接受新设备的能力。 空间的开放性:空间的开放性是针对系统接口及其规范化而言的,它又可分为互操 作性和互换性。 从本质上来说,开放式控制器是一个模块化的体系结构,其开放特征具有层次性, 既有硬件架构和系统平台的开放性,又有应用层功能模块的开放性。这里我们将开放式 控制器的特征总结如下: 1 可互操作性:可操作性是对模块接口规范化的说明。可互操作性要求模块的设 计要拥有标准化接口,通信和交互模型。通过提供标准化的通讯接口和交互机 制,不同模块以标准的应用程序接口运行于系统平台上,并获得平等的相互操 作能力。可互操作性是开放性最基本的要求,只有达到可互操作性,用户才能 摆脱对特定控制器提供商的依赖。 2 可移植性:可移植性包含两个层次,软件设计的可移植特征,硬件设计的支持 可移植属性。可移植性更多的偏重于系统软件的移植和应用软件的移植,这就 是说不同应用模块可运行于不同生产商提供的系统平台之上,同时系统软件也 可运行于不同特性的硬件平台之上,系统的功能软件应具有设备无关特征。这 就要求系统软件和应用软件设计时应遵循统一的数据格式、控制机制,以及一 致的设备接口,这样才能使模块能够运行在不同的硬件平台之上。可移植性是 对资源开发的最有效利用,只有系统的模块具有可移植性特征,才能从根本上 6 硕士论文开放式控制器体系结构研究 节约控制器设计上的成本,达到资源复用的目的。 3 可扩展性:可扩展性是针对系统在基础设计过程中的开发要求,在设计具有开 放性特征的控制模块时,要求设计者要有一定的预见性,既要考虑系统在未来 的需求变化中可能会增加的控制要求,从而预设特定的接口,又要考虑系统在 空间变化过程中,不同控制领域的特定控制要求,从而设计符合不同规范的通 信接口。这样设计的控制模块,可以有效运行在标准化环境的基础平台上,并 允许不同功能的模块接入用户或二次开发者能有效地将自己的模块集成到系统 中,形成自己的专用系统。开放式控制器的可扩展性特征可以通过特定模块的 装载或卸载为用户系统增添或减少控制器功能。 4 可互换性:可互换性是对模块设计的外观尺寸和接口的规格化约定。只有实现 同一功能的不同厂家提供的模块在物理特征和接口符合通用的标准,同一性能、 同一执行能力的模块互相代替才有可行性。符合可互换性特征的模块将使系统 构成的硬件和软件的选用不再受单一供应商的控制,从而在不影响系统整体性 能的情况下,根据功能、可靠性、性能相互替换。可互换性是对开放式控制器 的本质要求,也是在i e e e 的定义中重点强调的特征。 5 可伸缩性:可伸缩性是指控制器的可配置性。任何系统的构成都是基于关系树 的,关系树表达了系统拓扑结构和模块依赖关系。在开放式控制器中,关系树 我们又称之为配置树。配置树不仅仅表达了系统的拓扑结构和依赖关系,而且 标识了模块的功能特征和可选属性。这样系统的功能、规模便可以根据需要灵 活设置。如果说开放式控制器是基于模块化设计的,那么其开放式控制器的构 成将是基于可配置的。 2 1 2 开放式控制器的实现策略 从定义可以看出,开放式控制器实质上是一种抽象模型。我们在机制上给出了开放 式控制器的构成说明,在实际的研究过程中,针对不同的应用场合和设计需求,实现开 放式控制器的策略是不同的。为了实现控制器的开放性特征,不同的设计者采用了不同 的策略,其间也借鉴了许多其他领域的成熟技术。总结至今的国内外研究过程,以下将 简要介绍一些开放性控制器的实现策略。 首先,我们给出基于体系结构设计的开放式控制器;基于体系结构的开放式控制器 的研究一般式学院的,国家的或者是行业联盟的。他们一般并不关注其在开放式控制器 的短时间效益。 o m a c 是开放式、模块化体系结构控制器的缩写,它是由克莱斯勒、福特和通用三 大汽车公司提出的,目的是为了解决美国汽车工业在发展过程中遇到的一系列问题。由 于其是控制器的用户身份,所以他们的主要动机是向供应商和技术开发团体公布控制器 7 2 开放式控制器的总体结构分析与设计 硕士论文 用户,尤其是汽车制造业的需求,他们期望供应商可以更好的理解用户的需求,从而设 计符合汽车制造业需求的产品。他们希望通过该计划可以降低控制器的投资成本和维护 费用,缩短产品开发周期,提高机床利用率,提供软硬件模块的“即插即用”和高效的 控制器重构机制,简化新技术到原有系统的集成,从而使系统易于更新换代,尽快跟上 新技术的发展,并适应需求的变化。然而,由于其是控制器的用户,这就决定了o m a c 的产品化、实用化步伐不可能很快,其实质上是一种关于开放式控制器的概念说明。 o s a c a 与o m a c 不同,它是在1 9 9 0 年由欧共体国家的2 2 家控制器开发商、机床 生产商、控制器集成商和科研机构联合发起的,并于1 9 9 2 年5 月正式得到欧盟的认可, 纳入欧盟e s p 砒t - i i i 项目计划。它是一个由控制器制造商发起的计划,一般来说,其分 为三个阶段:计划开始至1 9 9 4 年是o s a c a 的第一个阶段,在这段时间里完成了o s a c a 规范和应用指南的制定;其后主要完成依照o s a c a 规范为其系统平台开发标准、通用 的软件模块和通用的o s a c a 系统平台,建立一个五轴制造系统环境,用以调试、验证、 扩展前一阶段的各种规范,这一阶段持续了两年多;1 9 9 7 年1 月,该计划进入第三个阶 段,主要是推广o s a c a 思想及前期工作的技术成果。o s a c a 从开始即想成为自动化 领域的通用国际标准,所以其积极与日本和美国的相关机构进行接触,并在整个计划中 投入巨大的人力物力。 o s e c 又称控制器的开放式系统环境,是由东芝机器公司、丰田机器厂和m a z a k 公 司三家机床制造商和日本i b m 、三菱电子及s m l 信息系统公司共同组建。它和o s a c a 一样,从计划开始即想建立一个国际性的工厂自动化( f a ) 控制设备标准。o s e c 以 c n c 系统参考模型为基础的,并针对c n c 提出了一个开放体系结构并,实现了i r o f a 的参考体系结构,并增加了定制和分化产品的功能。 无论是控制器用户提出的o m a c 还是控制器制造商提出的o s a c a 和o s e c 均是 针对开放式控制器的体系结构而言的。在工业控制领域,由于p c 软硬件资源的丰富和 以太网的成熟技术,以现有的p c 为基础或者网络为结构的开放式控制器已经有了诸多 的应用。目前采用这样构架的主要有三种埔j : 1 p c 嵌入n c 型。该类型将p c 作为专用控制器的前端接口,把p c 嵌入到n c 内部,使传统的专用n c 带有个人计算机的特点,n c 与p c 之间用专用的总线 连接。该系统的n c 作用没有改变,进行实时插补,伺服控制、电源控制以及 p l c 控制等一些实时控制。p c 执行人机界面、存储和通讯等非实时性任务p j 。 此类系统尽管也具有一定的开放性,但由于其n c 部分仍然是传统的数控系统, 其体系结构还是不开放的,不能实现n c 内核的开放。f a n u c1 6 0 、西门子8 4 0 等数控系统就采用此种结构。 2 n c 嵌入p c 型。以p c 机作为系统的核心,n c 部分集成为运动控制卡,把运 动控制卡插入到p c 机的扩展槽中完成数控系统的功能,软件的通用性好,一 8 硕士论文 开放式控制器体系结构研究 般p c 机处理各种非实时任务,运动控制卡处理实时任务。基于l a b v i e w 的开 放式数控系统及其网络监控的初步研究优点是可运行用户自定义的软件,成本 低,界面比传统的c n c 友好等。 3 软件( s o f t ) 型。c n c 功能基本由应用软件来实现,而硬件部分仅是计算机 与伺服驱动和外部i o 之间的标准化接口,具有最好的开放性,能实现n c 内 核的开放、用户界面的开放。但系统的实时性要求处理比较困难,技术要求高, 实现起来难度大。 从现有的应用角度来看,目前大部分控制器的开放性是针对特定领域的,基于c a n 总线技术的开放式控制器设计主要是用于分布式工业控制领域;开放式可编程控制器主 要是应用于控制参数变化频繁,而控制核心相对稳定的离散制造业;开放式嵌入式控制 器主要是应用于电子通信和家用电器领域。 2 1 3 开放式控制器的发展前景 从目前的系统研究和技术应用来看,开放式控制器是将来的一个趋势,但是目前的 研究和应用说明现有的控制器并不具备开放式控制器的本质特征,其特定的开放性主要 是针对特定的控制场合,如果从构建具有通用特征的开放式控制器而言,改进之处颇多。 首先概念不明晰,开放式控制器的概念虽然是i e e e 定义的,但其本质上是控制器用户 和控制器系统用户的性能改进的需求预期,它实质上是控制器用户和控制器制造商的一 种合作,是一种意见一致性表达和标准规范性的构建。这就要求两者摈弃经济利益的驱 动,从长远角度去实现开放式控制器的体系设计。目前,开放式控制器的研究主要有以 下问题和需要改进的方面。 首先,开放式控制器平台和体系设计。目前国内的大部分开放式控制器是开放式控 制软件,这主要是企业基于经济利益考虑的。他们很少对控制器从体系结构的层次进行 研究,即很少从理论的角度去研究体系架构,关注的焦点主要是集中在控制器的应用层 上。这样设计的系统是基于特定应用的,所以很难实现模块之间的兼容性和互换性。系 统软硬件不具备可移植性和互操作性。 其次,在系统的软件控制和支撑系统上。具有开放性特征的l i n u x 操作系统的运用 并不充分。设计过程中虽然利用了开放式操作系统的配置特征和模块化特征,但仅仅是 从优化代码和模块匹配的角度去分析,没有为系统的在伸缩变化过程中提供支持。也就 是说,一旦系统模块发生改变,相应的操作系统内核需要重新编译。另外,产品的升级、 更新、修改和维修仍然依赖于生产厂家,用户无法把自己的或第三方的思想或产品融入 到系统中去i l 。 目前各大控制器制造商并非不了解这些问题现状,而是不愿意进行实质的改进来真 正满足控制器用户的要求。用户要求开放式控制器的目的是为了实现企业内部的信息流 9 2 开放式控制器的总体结构分析与设计硕士论文 动的无缝化和软件硬件的标准化和通用化。一旦控制器制造商研发出符合开放性特征的 控制部件,原有的控制器的供应关系将会出现重组,势必会损害现有行业巨头的经济利 益。在这种情况下,政府和科研机构需要积极介入,政府和科研机构应当重视技术革新 研究对经济的推进作用。 2 2 开放式控制器的结构分析 在系统的体系分析和功能设计过程中,一般分为两个阶段。 首先是需求分析,需求分析表达了体系设计过程中的最根本的目的,即系统预想达 到一个具体效果状态。这就要求在体系设计过程中明确信息输入和输出的对应关系。从 使用者的角度考虑,就是要给出符合其要求的通用的具有系统特征的接口和层次。开放 式控制器就是要设计出具有开放性特征的接口,功能模块以及层次划分依据,并以此构 建控制器。 其次是实现的策略,当明晰系统的模块接口和系统的层次划分时,设计者必须采用 一定的方法实现相应的数据处理功能,即当用户的给出特定的输入,通过一定的策略和 处理方法,能够正确地给出预定的控制效果或输出数据。 开放式控制器体系分析和设计集中在需求分析,也就是说主要是给出开放性控制器 实现开放性的机制而不是具体的策略或者方法。 从系统工程的观点看来,任何复杂的系统都是由结构简单的,接口稳定的,层次明 确的基本元素组成的,这些基本元素之间存在复杂的相互作用,开放式控制器也是这样。 所以开放式控制器的体系分析和设计的基本任务是确立系统中的基本元素和这些元素 间相互作用的方式以及它们问的层次关系。针对目前的体系结构设计思路,主要存在以 下几种体系结构设计方式1 1 1 i : 1 严格的层次结构:这种体系结构适合于模块功能相对固定,模块交互关系直接, 系统运行进程可控的应用场合。采用严格的层次结构的设计有利于系统中的软 硬件功能划分,既可以用在功能单一的控制器中,也可以用在功能复杂的控制 器中,开放式控制器即采用了层次结构。 2 事件驱动的层次结构:基于事件驱动的体系设计对互操作性、特别是异构环境 下的互操作性要求非常高的系统。当整个系统中存在大量的并发的,相互之间 没有逻辑联系的组件时,可以使用这种体系结构。我们常见的网络系统和工控 系统一般都采用这种体系架构。由于控制器很大部分是用于工控领域的,所以 开放式控制器的体系结构设计采用了事件驱动的思想。 3 知识库的层次结构:一般情况下,以大量数据为核心的系统采用这种体系结构。 部分的人工智能和智能控制器便采用了这种体系结构。他们一般以数据库和规 则库为依托,通过监控和配置模块实现知识和数据的更新。当把面向对象的技 1 0 硕士论文开放式控制器体系结构研究 术引入其中之后,基于知识库的体系结构从一定程度上凸显为以后智能控制的 主要体系架构。开放式控制器要想满足系统的动态变化特征,亦需要系统数据 库和规则库的支持,这就是说,开放式控制器中可以借鉴知识库的体系结构设 计思想,下文中的监控模块和配置模块既是对知识库的体系结构的一种借鉴。 4 基于解释器的层次结构:在这种体系架构下,只需要将系统的基本操作以指令 的形式提供给用户,同时提供一种简单明了的语法和基本的数据操作功能,便 可以得到功能最强大、最灵活、具有最佳扩充性的应用系统。由于本文论及的 开放式控制器主要是针对硬件层和系统层,所以这种体系架构并未涉及。然而, 一旦应用层采用了基于w e b 服务的应用模块,基于解释器的体系结构变要发挥 作用了。 2 3 开放式控制器结构设计 系统的体系设计基本上都是以上几种体系结构的复合:在系统的某些部分采用一种 体系结构而在其他的部分采用另外的体系。在实际的系统分析和设计中,我们将系统从 功能上进行分析和权衡,得到最基本的体系结构,然后对模块继续分解,从而得到模块 相适应的体系结构。这就是说,系统在总体设计上,是基于分层的。分层的体系设计可 以比较清晰的获得系统的功能特征和交互界面。这样,我们可以在分析和设计阶段就可 以把重点集中在系统的总体设计和分层关系上,从而避免引入模块的实现细节。由此, 我们按照层次关系给出开放式控制器基本的系统结构如图2 1 所示。 w e b 服务控制程序界面程序 jkjl 事 j 配置系统i 编译连接系统i 监控系统l 组态软件l 1 r 配置数据库l 系统规则库协议库i 图形库i 编程支持库j | 1, 善 系统调用接口i 文件子系统i 进程控制子系统l 通讯模块i 内存管理i 令 硬件初始化设备配置 i 启动引导程序 i 系统固件 f 每 处理器i 多缓存储器1 0 接口 时钟系统l l 多源复位ip c i 。4 接口i 功能模块i i 图2 1 开放式控制器系统结构 一 一 一一一一一 2 开放式控制器的总体结构分析与设计硕士论文 我们按照系统的属性,将开放式控制器设计为五层,即硬件层、硬件抽象层、操作 系统层、应用支撑层、应用层,其中硬件抽象层、操作系统层、应用支撑层我们又称之 为系统层。采用这种分层划分之后,开放式控制器中下一层对上一层来说是透明的。 在计算机领域,所谓透明,是指无需知道特定层的属性和实现机制,仅仅通过接口 说明即可获得相应模块用途的一种特征。这就是说,硬件抽象层通过硬件接口访问硬件 层,而对具体的数据如何在硬件上的传输和控制并不关心。这样不同层次的模块直接通 过接口进行通信,从而使得系统模块间的耦合性大大降级,而且使不同功能体现为模块 化特征。 硬件层:开放式控制器的硬件层是整个控制器的基础,一般包括处理器,存储器, i o 接口,人机交互接口和必要的外围设备等。图2 1 中硬件层的其他模块是针对系统的 开放性要求而设计的。硬件层的开放性主要表现为硬件的动态添加和删除,以及在这种 系统拓扑变化过程中的系统更新。硬件层的设计遵循着功能设计的模块化和拓扑组成的 配置化的原则,其中关键的部件是i o 接口以及接口的通讯机制部件。当构建实际的控 制器时,这些接口和通讯方式必须是基于已有的国际标准的,这样构成的控制器才能有 效表达本文所设计的硬件构成机制。另外,基于模块化组成特征的硬件层使得控制器的 稳定性更好,并可根据实际的应用需要进行模块的更换和裁剪,从而减小系统的实际开 销,符合模块的互换性,互操作性和系统构成的可伸缩性特征。再者,硬件模块设计的 标准化和通用性将有利于硬件驱动的开发,从而使得不同模块的驱动开发过程可以在相 同的框架下进行。采用标准通信接口和系统扩展接口的设计方法,将使得系统的通信过 程更加简洁。 硬件抽象层:硬件抽象层位于操作系统内核与硬件电路之间,其目的在于将硬件进 行抽象化。它隐藏了特定平台的硬件接口细节,为操作系统提供统一的虚拟硬件平台, 使其具有硬件无关性,可在多种平台上进行移植。一般来说,硬件抽象层具有与硬件的 密切相关性和操作系统无关性特征。该层包括硬件的初始化、引导程序的启动、硬件设 备的配置等操作【1 2 1 。通过硬件抽象层去实现设备驱动序与硬件设备无关的特征,提高系 统的可移植性,为系统集成新的硬件设备并加载新的驱动程序提供方便,使控制器具有 良好的可扩展性【i 引。 操作系统层:操作系统层包含处理机管理,文件子系统,进程控制子系统,存储缓 冲系统,系统调用接口等【l 钔。现有的许多操作系统均具有开放性的特征,开放式控制器 可以充分利用这些操作系统已有的特征,并进行适当的改进以适应控制器的特定需求。 在实际构建开放式控制器时,我们一般建议采用l i n u x 操作系统,这不仅仅是因为l i n u x 是免费的,更因为它是开源的,其具有天然的开放性特征。本文在设计开放式控制器过 程中借鉴了l i n u x 操作系统中的诸多思想,如配置模块和监控模块对模块的动态加载过 程的支持策略等。 1 2 硕士论文 开放式控制器体系结构研究 应用支撑层:应用支撑层是为控制器提供控制,通信,配置等辅助支持。开放式控 制器的应用支撑层分为两个层次,处在下方的是必要支持,包括配置数据库,系统规则 库,协议库,图形库,编程支持库等,他们与操作系统的联系非常密切,是系统其它支 持功能的基础。其中配置数据库用于存储系统的模块拓扑结构和各个模块的属性等关键 信息:系统规则库既有控制过程的控制规则,又有系统配置过程的组态规则,它体现了 开放式控制器的智能性的一面【1 5 】;协议库为通信过程中的数据处理提供数据解析依据, 图形库和编程支持库为应用层编程提供必要的头文件,环境变量以及库支持。处在上方 的是开放式控制器的核心程序,它通过系统调用接口与操作系统进行交互,主要由配置 模块,监控模块,编译链接系统和组态系统构成。编译连接系统和组态系统为应用层的 程序开发提供支持。由于现有的系统已经从制定一个标准,转移到支持不同标准的设计 思路中,所以应用支撑层不同模块主要是为控制器在开放性设计中的可移植性和互操作 性功能而设计的。 应用层:应用层主要是由辅助程序和控制程序组成,辅助进程提供控制器和外界的 交互界面,控制程序实现特定控制领域的控制流程。在实际的开发过程中,一般采用c 语言进行控制程序的开发,这主要是因为不同系统对c 语言有着广泛的支持。 本文提出的开放式控制器系统是从抽象的层次给出的,并未涉及具体的处理器类 型,存储结构以及选用的操作系统。所以说本文对开放式控制器的设计是基于机制的, 而非策略。对本文提出的开放式控制器系统,主要在以下方面体现着开放性特征。首先 是系统的可扩展和可移植性,由于控制器中的上下层是基于统一接口的模块化设计,这 就使得各个模块间具有相对独立性,上一层次的模块并不依赖下一层次的特定模块,从 而使得系统在各个层次上具有独立性,方便了特定模块的不同平台的移植;其次是系统 的模块化设计,采用模块化设计降低了系统不同部件间的强耦合特征,从而使得系统通 过模块的加载和卸载实现特定功能的添加和删除,最后是系统的可配置性,可配置性来 源于l i n u x 的内核配置树特征,开放式控制器可以通过监控模块获取系统当前的配置树, 并通过对特定模块的配置操作实现系统的最优化配置。 2 4 本章小结 本章是对开放式控制器在总体架构上的分析和说明。由于本文提出的开放式控制 器,并不是针对特定的应用领域的,而是从控制器构成的不同层次,给出相应的开放机 制,是一种具有通用特征的理想的开放式控制器。本章主要是对开放式控制器的概念和 特征给出说明,从开放式控制器的系统属性出发,通过总结现有开放式控制器设计的思 路,给出开放式控制器在不同层次的划分,并对不同层次的功能进行简要的说明。 3 开放式控制器硬件层的开放机制硕士论文 3 开放式控制器硬件层的开放机制 通过上一章节对开放式控制器的总体分析,本章将对硬件层和硬件层中的模块进行 详细说明。从开放式控制器的硬件层进行分析,给出开放式控制器在硬件层的开放策略。 重点分析了开放式控制器的硬件组成,新硬件接入或者删除过程中的响应策略以及在此 过程中监控模块支持作用。 3 1 相关技术简介 在给出开放式控制器硬件结构之前,我们先对本章涉及的理论和技术给予说明。 3 1 1 总线技术 总线是计算机传送信息的通道,是连接各个功能部件的纽带,它实质上是一个共享 的传输媒介,在系统设计中起着至关重要的作用。 目前系统中的总线都有其技术规范和标准,一个系统所配置的总线结构很大程度上 决定了该系统的性能。使用总线实现部件互联,既可以减少各个部件直接的连线数量, 降低成本,又有利于系统快速构建、性能扩充和产品的更新。 从不同的角度,总线可以作不同的分类。一般来说芯片内部功能部件间的连接是通 过片内总线的,系统模块间的互联是通过内部总线的,系统与外设的连接是通过外部总 线,其中专门用于系统与外设之间互联的总线称为设备总线。总线上传输的信息可分为 地址信息,数据信息和控制信息,相应的总线又称地址总线,数据总线和控制总线。 总线的性能可以从总线的带宽、总线宽度、总线的时钟频率和总线的负载来衡量的。 描述总线标准和规范的主要参数是逻辑规范、时序规范、机械规范和通信协议等1 1 6 i 。 从逻辑来看,总线一般由连接模块的信号线和管理总线功能的总线控制器构成。一 个模块需要发送数据到另一个模块,必须要先获得总线,然后通过总线传送数据。一个 模块需要从另一个模块接受数据,也必须先获得总线,然后通过向控制总线和地址总线 传送相应的控制信号和地址信号,向特定的模块发送传送数据的请求并等待该模块发送 数据。 总线控制器负载控制和分配总线的使用权,主要完成以下功能: 1 总线系统的资源分配与管理,负责向使用总线的功能模块分配中断向量号、 d m a 通道号以及i o 端口地址等资源; 2 负责总线使用权的仲裁;提供总线定时信号脉冲以及负载,并实现不同总线协 议的转换和不同总线之间传输数据的缓存。 在总线

温馨提示

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

评论

0/150

提交评论