基于OPC技术的飞行器测试与控制系统设计
2014-12-11卢逸斌王楠朱智超吴睫唐亮
卢逸斌 王楠 朱智超 吴睫 唐亮
(1.上海宇航系统工程研究所,上海 201109;2.上海航天电子技术研究所,上海 201109)
基于OPC技术的飞行器测试与控制系统设计
卢逸斌1王楠1朱智超1吴睫2唐亮1
(1.上海宇航系统工程研究所,上海 201109;2.上海航天电子技术研究所,上海 201109)
为满足飞行器地面测试与控制的需求,提高测试效率及测试设备的通用化程度,提出了一种基于OPC技术的飞行器测试与控制系统设计,并成功应用于现役飞行器测试与控制系统,高效地完成了数据采集与处理、参数监测与控制、数据存储等功能。
OPC 测试与控制 通用化
飞行器测试与控制系统在飞行器的整个研制流程中起到综合检验飞行器的作用。通过测试与控制系统对飞行器的功能和性能进行全面的测试,对飞行器的接口和电磁兼容性进行全面检测,是确保飞行器成功完成飞行任务的重要环节。
飞行器测试与控制系统有着规模大、专业广、难度大、兼容性差的特点。目前常规飞行器测试与控制系统设备数量一般超过50台专用测试设备,40台通用测试设备,200个以上测试接口,100根以上测试电缆,5000个以上各类型的测试数据。近年来随着测试技术的不断进步,测试与控制系统从VXI、PCI技术逐步向PXI、PLC技术转变,为了提高综合测试的效率,提高各类设备间的兼容性,提高设备的安全及故障预警能力,选择应用OPC技术,整合不同监控设备间,工作站与工作站、工作站与服务器之间的通信方式。
1 OPC技术
1.1 技术简介
为了实施监控系统通信网络的统一化、标准化,与传统监控系统不同,工作站与设备、工作站与工作站、工作站与监控中心之间通信采用的是OPC技术。
OPC是OLE for Process Control的缩写,OPC技术是由世界上多个软硬件供应商、自动化公司与微软合作开发的一套数据交换接口标准,它能够为现场设备、自动控制应用、企业管理应用软件之间提供开放、一致的接口规范,为来自不同供应商的软硬件提供“即插即用”的连接。
图1 OPC结构图
基于微软的COM(组件对象模型)/DCOM(分布式组件对象模型)技术的OPC采用客户/服务器结构,厂商为设备提供符合OPC规范接口的服务器,应用程序通过OPC接口对OPC服务器进行访问,实现现场设备、监控系统以及管理系统之间的数据交换,如图1所示。
图2 飞行器测试与控制系统网络组成图
图3 OPC客户端数据设置界面
图4 监控软件界面
1.2 OPC对象模型
OPC对象模型分为不同层次的三类对象组成。
1.2.1 OPC服务器对象
它提供了一种访问数据的方法,拥有服务器的所有信息,同时也是下层对象-OPC组对象的容器,主要功能为。
(1)创建和管理OPC组对象。
(2)管理服务器内部的状态信息。
(3)将服务器的错误代码翻译成描述性语句。(4)浏览OPC服务器内部的数据组织结构。
1.2.2 OPC组对象
它提供了客户组织数据的一种方法,每个组中都可以定义或多个OPC组件对象。OPC组对象的主要功能为:(1)管理组对象的内部状态信息。(2)创建和管理组件对象。
(3)服务器内部的实时数据存取服务。
组对象是应用程序组织数据的一个单位,客户可对之进行读写,还可设置客户端的数据刷新率。
1.2.3 OPC组件对象
它是读写数据的最小逻辑单位,一个组件对象与一个具体的过程之相连,每个组件虽然代表了与服务器中的某个数据的连接,但它并不是数据源,而是仅仅是与数据源的连接。OPC组件对象并不提供对外接口,客户不能直接对之进行操作,所有操作都是通过组对象进行的。
2 飞行器测试与控制系统
2.1 系统组成及构架
飞行器测试与控制系统是一个分布式局域网络系统,如图2所示。主要包括以下子系统:总线测试系统、测控测试系统、GNC测试系统、供配电系统、测试等效系统、总控测试系统,其中测控测试系统设备为射频信号处理设备,暂不支持OPC协议。
系统设备分为三个层次,分别为现场设备层、数据服务层和监控管理层。现场设备层位于底层,由各个子系统下的单元测试设备组成,主要有PLC单元、PXI单元、1553b总线、RS422总线、信道处理单元、供电单元组成。数据服务层由总控服务器、数据库服务器和多个安装OPC服务器的终端组成,OPC服务器中封存了不同设备的各种驱动程序,能够将采集的数据转换为统一的OPC数据格式,通过总线技术和网络技术发送到监控管理层,利用ODBC将数据保存在数据库中。监控管理层主要是OPC客户端和应用程序,通过图形、表格、曲线、虚拟操作面板等方式显示处理飞行器测试数据。
2.2 OPC技术的必要性及重要性
飞行器测试与控制系统的主要设备来自各大厂商,主要有西门子、National Instrument、AB等厂商,不同的厂商的设备之间缺少统一的数据交互平台,各设备需使用专用的驱动程序,与目前的设备统一集中管理的设计理念存在较大差距。
采用OPC服务器技术,由OPC驱动程序读取OPC服务器中的变量,从而实现对不同厂商、不同区域的设备进行集成监控,使得工业控制具有更简单的系统结构、更长的寿命、更低的价格,同时现场设备与系统的连接也更加简单、灵活、方便,主要应用的内容如下。
(1)采用OPC接口实现了应用程序和工业控制设备之间高效、灵活的数据读写,可以编制符合标准OPC接口的客户端应用软件完成数据的采集任务。
(2)OPC提供了读取存储在过程数据存档文件、数据库或远程终端设备中的历史数据以及对其操作、编辑的方法。
(3)OPC提供了OPC服务器发生异常以及OPC服务器设定事件到来时向OPC客户发送通知的一种机制,通过使用OPC技术,能够更好的捕捉控制过程中的各种报警和事件,并给予相应的处理。
(4)工控软件开发中冗余技术是一种非常重要的技术,它是系统长期稳定工作的保障。OPC技术的使用可以更加方便的实现软件冗余,而且具有较好的开放性和操作性。
(5)借助微软的DCOM技术,OPC实现了高性能的远程数据访问,从而使得工业控制软件之间的数据交换更加方便。
3 OPC技术的实现
3.1 OPC服务器
OPC服务器开发是基于使用面向对象的技术,可以使用适用于VC++编程环境快速开发包KOSRDK,将OPC规范所定义的COM接口实现封装动态链接,通过调用KOSRDK.DLL的接口函数将数据传输到数据缓冲区,形成本地列表,并经过OPC服务器的驱动将数据进行传递,生成OPC服务器列表,供客户层使用。开发者通过类的派生以及重载函数,实现数据的访问和提交,简化OPC服务器的开发过程。
利用KOSRDK在VC++环境下开发OPC服务器的流程如下。
(1)调用KOS_Init进行初始化。
(2)初始化成功后注册回调函数。
(3)利用KOS_AddItem添加OPC点到OPC Server DLL中,通过客户端检索和使用OPC点。
(4)通过KOS_UpdataItem更新地址空间内的OPC点数据信息,将设备的实时信息和状态反馈给客户端。
(5)运行结束时需要删除OPC点和反初始化,分别通过KOS_Re moveItem和KOS_UnInit两个函数实现。
3.2 OPC客户端的开发
OPC客户端开发需根据OPC逻辑对象模型包含OPCserver对象、OPCgroup对象和OPCitem对象,每类对象都包括一系列接口。
(1)OPCserver对象主要功能为创建和管理server内部状态信息及OPCgroup对象。
(2)OPCgroup对象主要功能为管理OPCgroup对象内部状态信息及OPCitem对象,同时对OPC服务器内部的实时数据进行存取。OPCgroup主要属性包括组名(group name)、组激活状态标识(ActiveStatus)、服务器提供客户程序提交数据刷新速率(Update Rate)等。
(3)OPCitem是非COM对象,在OPC标准中用来描述实时数据,代表了与服务器中的数据连接。每个i t e m主要属性包括ActiveStatus、Value、Type等等。
OPC客户端开发使用VC6.0工具,界面设置如图3所示,其中Property为Item的类型选择,可选择Value(数据值)或Switch(开关状态),Computer为OPCServer在网络上的计算机名,OPCServer为选择的服务器名,Item为数据,Update Rate为刷新频率默认50ms,Auto Connect为与自动连接开关。通过Add和Remove添加Item的数据项。
3.3 上位机软件的开发及应用
飞行器测试与控制系统的上位机监控软件需含指令发送、数据采集、加电时间统计、数据存储、故障报警等功能。
上位机监控软件界面如图4所示。表头型显示控件与按钮型控制控件的OPCItem类型为Value型,指示灯显示控件的OPCItem类型为Switch型,主从切换用于控制界面为主机或从机,避免误操作,网络可以设置OPC的各个参数值与类型。
测试结果表明,基于OPC技术的飞行器测试与控制平台各项功能正常、稳定,大幅缩减了系统内部协议的复杂度,提高了系统的通用化程度和测试效率。
4 结语
OPC技术为现场设备、控制系统应用、管理应用软件之间提供了开放、统一的标准接口,很好地解决了网络异构数据集成问题。而且OPC技术使设备生产厂商和应用程序开发的工作分离,应用程序开发人员无需重复开发设备驱动程序,只需开发一套接口就可以和不同设备相连。利用OPC技术开发集成监控系统能缩短开发周期,提高互连互操作性可扩展性、可维护性、适应性和经济性。本文遵循OPC标准设计开发了服务器和客户端,实现了集成监控系统的数据采集与处理、参数的监测与控制以及数据存储的功能。
[1]靳臣,陈红卫.基于OPC的半潜式钻井平台监控系统的开发[J].电子设计工程,2013,21(8):87-90.Jin Chen,Chen hongWei. Development of semi-submersible drilling platform monitoring system based on OPC[J]. Electronic Design Engineering,2013,21(8):87-90.
[2]周磊,刘大成,周传福,等.OPC规范下数据访问服务器的设计与实现[J].微计算机信息,2007,23(1):264-266.Zhou Lei,Liu Dacheng,Zhou Chuanfu.Design andrealization of data access server based on OPC specification[J].Control&Auyom ation,2007,23(1):264-266.
In order to meet the demands of spacecraft testing and control, improve the level of the testing efficiency and testing equipment currency,proposed a design of spacecraft testing and control system based on OPC technology, and successfully applied to the current spacecraft testing and control system,efficiently completed the data acquisition and processing, parameter monitoring and control ,data storage functions.
OPC;testing and control;currency
卢逸斌,男,学士,上海宇航系统工程研究所,工程师,从事飞行器综合测试。