基于COM技术的工业CT控制软件I/O组件分析

发布者:Yuexiang888最新更新时间:2016-12-08 来源: e-works关键字:工业CT  组件对象模型  控制软件 手机看文章 扫描二维码
随时随地手机看文章

    工业CT(Computerized Tomography),即工业计算机断层扫描成像技术,广泛应用于无损检测与无损质量评价领域。其基本原理是:射线束透射被测工件某一断层并进行扫描,探测器阵列接收透过工件衰减的射线束强度,并转换成电信号;数据采集系统对电信号进行处理,将所获取到与扫描透射射线强度成比例的数字化像素阵列数据,最后经过图像重建系统以二维灰度图像形式再现出该工件扫描断层内部结构状况。工业CT 控制系统则是它的中枢神经,用来实现对扫描检测过程中机械运动的精确定位控制,系统的逻辑控制、时序控制、检测工作流程的顺序控制和系统各部分协调,并担负系统的安全连锁控制。

    工业CT 机属于单件定制产品,每个客户的要求都不相同,需要为每一台机器开发配套的控制软件。但实际上工业CT 控制软件中的很多功能都是相同的,如在扫描运动中实现工件的平移和旋转等。这就在控制软件的开发中造成大量重复性工作。同时若是开发人员发生变动,以及需要对产品维护和升级时,就需要对原来的代码作较大改动,甚至要编写全新的控制软件,这极大的降低了工作效率。

    随着计算机技术的迅猛发展,面向对象技术、软件复用等软件工程概念纷纷出现。COM(ComponentobjectModeI)技术则是其中的典范。基于COM 技术开发的软件具有很好的开放性,便于软件的开发和维护,为解决工业CT 控制软件的上述问题提供了良机。

1 基于COM 技术的工业CT 控制软件结构及其特点

    1.1 COM 技术及其特点

    COM,即组件对象模型,是一种规范。COM 组件则是遵循COM 规范编写的、基于C / S 体系结构、以动态链接库(DLL)或可执行文件(.EXE)形式发布的二进制代码,作为服务器端(Server)在客户端程序(CIient)需要的时候被调用。它把一个庞大的应用程序分成多个组件,每个组件封装和实现一定的功能,并按照标准的接口规范向外显露自己的接口(Interface)。组件与组件之间、组件与客户端程序之间的互操作就是通过这些接口来实现的。

    COM 技术具有以下特点:可重用性好,COM 技术重用性是建立在二进制代码级上的重用,比之于一般的面向对象语言开发的基于源代码级的重用更进一步,这使得它具有跨平台的特点;编程语言无关性,COM 规范的定义不依赖特定的语言,编写组件所使用的语言与编写客户端程序所使用的语言可以不同,只要能够生成符合COM 规范的可执行代码就可以了;可扩展性,COM 将软件功能分配给几个相对独立的组件,各个组件之间按照COM 定义的规范接口有机的整合。当原有软件的功能需要扩展时,只需开发一个新的功能组件然后添加进来即可。COM 技术的上述特点为解决工业CT 控制软件中存在的问题提供了良好的基础。

    1.2 基于COM 技术的工业CT 控制软件体系结构及特点

    根据COM 技术的特点及工业CT 控制要求,对控制系统的功能按照其特性及其内部逻辑结构进行合理划分,将控制软件中独立性强、功能明显且集中的模块做成独立的组件,将其功能嵌入到各个组件中,做成组件的方法。各组件之间通过胶连逻辑进行连接,组件接口开放。工业CT 控制软件组件划分如下:

    1)人机交互界面组件:提供多种图元元素生成图形交互机面,并负责提供CT / DR 扫描参数、断层选择、准置器切换、速度等参数的设置;动态显示进程及各种扫描状态。

    2)I / O 组件:初始化时写入各个板卡的控制模式;在扫描过程中与运动控制卡通信,实现各种运动控制命令;与光栅计数卡通信,读取各个轴的位置反馈等状态值,实现闭环控制。

    3)故障诊断及报警组件:收集射线源系统、运动系统、采集系统、探测系统的运动状态和故障信息,对扫描过程进行全程实时诊断,并指出故障类型。

    4)文档及数据库操作组件:生成各种数据存档格式文件,负责CT / DR 数据文件管理,以提供实时数据和历史数据的保存、查询、更新、显示等;对报表进行编辑,生成数据库点记录值。

    5)网络配置组件:提供对接点的通信协议进行必要配置,完成上位机和下位机、控制计算机与现场PLC之间的通信。

    6)控制策略组件:提供多种逻辑运算、算术运算、控制模块,负责图形界面生成模块中制定的功能。

    7)其他组件:根据客户具体要求而需要另外添加的特殊功能组件。

    基于COM 规范的工业CT 控制软件具有组件化的结构和标准的接口。在工业CT 产品的开发、维护和升级中,如果系统外界软、硬件环境发生变化,或用户需求有所更改,并不需要对原有的控制软件进行整个修改,只需对受影响的组件进行修改或是添加新的组件,然后重新组合就能得到新的工业CT 控制软件。而且由于COM 技术的编程语言无关性以及二进制级的代码可重用性,软件开发人员可以充分利用各种语言的优点进行软件开发和维护,工业CT 控制软件在各平台间也比较容易移植。

2 基于COM 技术的工业CT 控制软件I / O 组件的实现

    2.1 工业CT 控制软件I / O 组件接口的设计

    I / O 组件的功能包括写入工业CT 控制计算机控制板卡的控制模式,扫描过程中实现各种运动控制命令以及读取各轴的状态值等。根据组件所要实现的功能,设计了InMotion 和IOutstatuS 2 个接口,其结构如图1 所示。

  

    图1 I / O 组件接口示意图

    2.2 工业CT 控制软件I / O 组件功能的实现

        

    I / O 组件封装了组件对象的属性和方法,对外显露出InMotion、Ioutstatus 这2 个接口。组件开发完毕之后要向操作系统进行注册,之后即可向客户端程序提供服务了。

    2.3 工业CT 控制软件I / O 组件的注册

    I / O 组件用GUID( 全局唯一标示符)来标示自己的接口(IID)和类(CLASID)。 GUID 是一个128 位的数字,根据一个复杂的算法而产生,以确保这个GUID 在时间和空间上的唯一。微软的VC + + 提供了一个工具:GUIDGen. EXE 来产生GUID,也可利用COM 库的API 函数来得到一个指向GUID 的指针:HRESULTCoCreateGuid( GUID * pGuid )。最后把生成的I / O组件添加进注册表即可。注册完成后,I / O 组件就可以向工业CT 控制软件客户端程序或是其他组件提供服务了。

3 工业CT 控制软件客户端程序对I / O 组件的调用

    利用COM 库的API 函数,使用其他符合COM 规范的语言编写的工业CT 控制软件客户端程序都可以向I / O 组件请求所需服务。根据COM 的另一个特点———透明性,客户端程序不需要知道这个组件在那里,它只需根绝组件注册的GUID 得到这个组件的接口指针,然后调用组件的方法即可实现它请求的功能,代码如下:

    

     

4 结束语

    不断发展的软件技术对解决工业CT 控制软件面临的问题提供了新的解决方法。并对基于COM 技术的工业CT 控制软件进行了分析。根据工业CT 控制软件的控制功能划分了组件模块,并开发了其中的I / O 组件。该组件在某型号工业CT 机调试时顺利的实现了与客户端程序的通信,基于COM 技术的工业CT 控制软件具有可扩充性,可复用性,易于维护和升级等特点,具有良好的开放性,使得以后工业CT 新产品控制软件的开发变得简单,也降低了工业CT 新产品的开发成本。


关键字:工业CT  组件对象模型  控制软件 引用地址:基于COM技术的工业CT控制软件I/O组件分析

上一篇:DCS控制系统及工业控制技术研究
下一篇:基于PLC与变频器的风机节能控制系统应用探讨

推荐阅读最新更新时间:2024-05-03 00:52

Qt/Embedded的/蓄电池状态检测控制软件设计
1 引言 蓄电池生产过程中的状态参数检测是保证蓄电池出场质量的关键。然而目前,国内蓄电池的状态检测主要依靠蓄电池 电压 巡检仪、蓄电池电导测试仪和内阻容量测试仪等仪器,这些仪器只是能够实现单一的检测蓄电池状态,而且操作灵活度有限,数据的存储、传输以及实时分析都需要额外的pc的辅助来实现, 已经不能很好的满足当前许多要求较高的工业现场控制的应用。为了使蓄电池生产线上的蓄电池性能参数测量更加灵活,本文提出一种基于qt/embedded的便携式蓄电池状态检测系统,实现了对蓄电池的多路数据采集,控制软件界面友善、检测仪器轻巧方便。 2 系统总体设计与实现 本检测系统由数据采集部分、a/d转换、arm微控制器和数据存储等几部分组成,总
[电源管理]
Qt/Embedded的/蓄电池状态检测<font color='red'>控制</font><font color='red'>软件</font>设计
中国四家汽车大厂联手推进电子控制软件平台国产化
  中国的汽车市场销量已位居全球首位,达到了1800万辆,并且正以30%以上的年均增长率迅速发展。中国四家大汽车厂商为推动汽车电子控制技术的国产化,开始采取行动。2011年4月旨在实现电子控制单元(ECU)嵌入软件国产化的产学官合作联盟“中国汽车电子基础软件自主研发与产业化联盟(CASA)”成立,除了中国四大汽车厂商中的3家公司(第一汽车、上海汽车及长安汽车)以及奇瑞汽车之外,其成员还包括ECU供应商、大学及研究机构等20个组织(表1)。 接受国家项目的支援推进开发   参加该联盟的各公司将对中国政府直属软件开发企业普华基础软件(iSOFT)注1)所开发的车载软件与平台“汽车电子基础软件平台v3.0”进行评测。   
[汽车电子]
大众将开发软件控制底盘
随着未来软件将越来越多地决定车辆的特性,大众汽车(Volkswagen)将开发下一代软件控制的底盘,并计划在未来使用新的线控转向系统。 (图片来源:大众) 上述计划也是大众“加速(Accelerate)”战略的一部分,以转型为以软件为导向的移动出行服务供应商。数字化不仅限于底盘和转向系统等经典机械车辆部件。虽然软件控制的控制系统已被整合到这些组件的早期版本中,但大众汽车希望进一步加速开发。 大众汽车驾驶动力学、转向和控制系统主管Karsten Schebsdat表示:“由于汽车辆对转向运动的反应更快,驾驶更精确,新一代软件密集型系统旨在显著减少车身俯仰和侧倾,并优化驾驶动态。这一发展对于高度自动化的驾驶也极为重要。因
[汽车电子]
大众将开发<font color='red'>软件</font><font color='red'>控制</font>底盘
COM组件技术在现场总线控制系统组态软件中的应用
COM(Component Object Model)组件技术是构造二进制兼容软件的规范,通过它可以建立能够相互传输数据的组件,其服务器-客户机结构非常适合工控软件应用程序的开发。由于工控软件不仅包括PC机上的HMI(人-机界面)程序,还包括与各种基于ISA或PCI总线的数据采集卡进行数据交换的程序,这部分程序对开人员的硬件水平要求较高,而且开发难度较大,与HMI程序是相互独立的,所以可以把工控软件分成两部分,即把HMI程序作为客户机端程序,把与硬件进行数据交换的程序作为服务器端程序。基于这种思想,本文将服务器-客户机结构应用到现场总线控制系统的组态软件中,着重介绍客户机和服务器的功能及实现。首先介绍现场总线控制系统的组成。
[嵌入式]
一种智能门禁控制器的软件设计
智能门禁控制系统是保安监控系统的一个重要组成部分. 在机关单位、工厂、公司等多种场所,为了工作、生活的安全,需要进行封闭式管理. 传统的方法是 由警卫人员对进出口进行验证或登记后才放行,这种方法效率低,而且占用人力 . 本文介绍一种智能门禁控制器的软件设计. 1  系统组成 门禁控制系统是在建筑物内的主要管理区的出入口、电梯厅、主要设备控制中心机房、贵重物品库房等重要部位的通道口安装门磁开门、电控锁、读卡器等控制装置,系统框图如图1 所示. 由中心控制室监控,系统采用计算机多重任务的处理,能够对各通道口的位置、通过对象及通过时间等进行实时控制,以适应小区、办公楼的公共安全管理. 2  控制器软件的设计 门禁
[嵌入式]
显示墙控制器的控制软件技术发展趋势
目前显示墙控制器专用软件具备如下几个发展趋势及特点:高度智能化、操作便利性与控制深度结合、客户个性化需求设置及良好的扩展性。SEAPRINE既开发自己的硬件,也开发自己专有技术的核心软件,应用软件包安装于SEAPRINE生产的SPC系列图形拼接处理器上,它综合软件应用程序、功能模块、硬件驱动、API开发接口及各种协议等功能于一体。该软件高度智能化的用户操作界面、无与伦比的操作便利性与控制深度、客户个性化需求设置及良好的扩展性的完美结合,完全满足用户轻松自如地控制显示墙的需要,具体特点如下: 1)客户端/服务器端程序技术 软件基于客户端/服务器端程序架构之上:服务器端安装在SPC系列产品上,提供操作介面直接与设备和操作系统交
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved