随着DCS系统的发展,迫切需要一种工具能够在软件开发的集成阶段、系统阶段等对DCS系统的软件进行实时在线的测试与分析,以保证系统的性能和可靠性。
DCS系统长期运行的稳定性、实时性等特点,使得厂家对其软件质量有着非常苛刻的要求,而DCS系统的分布式特点,又使得其集成测试、系统级测试非常困 难。本文介绍一种独特的DCS分布式系统的测试方案,对分布在一个网络中多台电脑上的各个系统模块(每台电脑运行多个系统模块)同时测试,监视其覆盖率、 内存泄漏、运行性能等重要测试指标。测试工具选用美国Metrowerks公司的CodeTest嵌入式测试工具。
1 DCS系统概述
DCS 系统一般是物理上分布的控制系统,有两种基本结构:总线网结构和星型网结构。有些DCS客户由于生产规模小,可能对系统要求不高,把服务器、工程师站、操 作员站集于一台机器上即可,但就其控制站和上机系统而言,整个系统在物理上、逻辑上仍然是分布式的。以总线结构为例,系统结构如图l所示。
系统结构
2 CodeTest嵌入式测试工具概述
CodeTest具有强大的测试分析功能。
由于CodeTest对软件打点技术和从总线捕获数据进行了改善和提升,正是这种原理上的优势,使得CodeTest具有强大的性能分析、内存分析、高级覆盖率分析和代码跟踪功能。
CodeTest工具主要有三个版本:一个是纯硬件版,由于它不能满足用户的需求,早已被淘汰;另外两个是纯软件版和硬件辅助软件版,其中以硬件辅助软件版最好。
纯软件测试工具的测试原理有两个必需的任务——插桩函数和预处理任务。由于插入插桩函数和预处理任务的存在,使系统的代码增大, 对系统的运行效率有一定的影响。但是,随着CPU速度和存储技术不断提高,纯软件版方案仍然可行。
3 DCS系统嵌入式测试方案设计
由于DCS系统比较复杂,服务器上有15个lib 文件、20个exe任务,操作员站有4个dll工程和6个exe任务,这些模块在管理网层构成一个实时运行的整体。测试一个程序或者一个测试用例,必将影 响其他任务,例如:在操作员站上写一个值到I/0控制站,改变一个阀门的开关状态,这个值会被传到实时数据库,完成操作历史记录,然后送到系统网驱动,由 与I/0站通信的gateway.exe和GatewayMonitor模块发到现场控制站。工程师站主要用于离线组态,其dll工程和exe工程一共有 十几个,在进行工程组态时,会出现多个模块同时运行。在下装时,下装任务模块和服务器操作员站程序会同时运行(至少与操作员站、服务器的守护程序同时运 行),此时,要想把覆盖率数据收集齐全,在以前是非常困难的。因为测试者的一个动作将会引起几台机器上的多个模块的代码执行。使用CodeTest测试工 具,运用其设计巧妙的测试方案,终于解决了这个难题。
REXROTH 0-608-750-104 NSFP 0608750104
Rexroth DREE20-52/315YG24K31M Valve Pressure Reducing
REXROTH 0360-400-00-0495.01.02.06.02 NSPP 0360400000495
REXROTH 0-608-820-099 USPP 0608820099
Rexroth/Indramat Eco Drive Typ: DKC04.3-040-7-FW used
Rexroth Indramat HMS01.1N-W0020 Indradrive servo drive
Rexroth Hydraulic Proportional Dir. Valve 4WRE6W08-12/2
REXROTH VT-HNC100-1-21/M-08-0-0 USPP VTHNC100121M0800
Rexroth Hydraulic Power Unit 10 Horse Power Good Used
Rexroth Indramat MTS-R01.2-M2-B1-FW FWA-MTSR0 NEW
Rexroth board CDB01.1C-SE-ENS-EN2-NNN-L1-S-NN-FW NEW
Rexroth VT5006S16 Amplifier
REXROTH 0-608-750-103 NSFP 0608750103
REXROTH 0-608-820-074 USPP 0608820074
REXROTH 0-608-820-075 USPP 0608820075
REXROTH 0-608-820-095 USPP 0608820095
联系人:刘锦燕
手机:13295922579
电话:0592-5580706
传真:0592-5361191
邮箱:LJY_05228@163.COM
QQ:2711934024
QQ:2574619415