船舶机舱自动化系统软件标准化

2016-10-12 03:25景国辉
中国航海 2016年2期
关键词:嵌入式软件人机界面机舱

景国辉

(海军驻上海七一一所军事代表室, 上海 201108)

JING Guohui

船舶机舱自动化系统软件标准化

景国辉

(海军驻上海七一一所军事代表室, 上海 201108)

我国在船舶机舱自动化领域系统设计和硬件研发生产方面已具有较高的水平,但在软件设计、开发和管理方面与国际同行相比仍存在较大差距。对此,从软件工程管理和软件开发技术2个方面出发,提出标准化解决方案。通过实施软件工程管理标准化认证,提高行业管理水平;针对工程周期短和需求变更频繁的行业特点,对监控系统软件及嵌入式软件分别提出开发专用组态软件和软PLC的解决方案,以实现软件开发技术的标准化。

船舶工程;船舶;自动化;软件标准化

JINGGuohui

Abstract: China has achieved a higher level in system design and hardware development in the field of marine engine automation. But for software design, development and management, there still is a large gap between China and the overseas counterparts. The standardizotin solutions, concerning the software development technology and the software engineering are proposed to fill the gap. The software engineering management certification is a way of improving the management level of the industry. In view of short engineering cycle and changing demands, the application of specialized configuration software and soft PLC technology is proposed to facilitate the standardization of alarm and monitoring software and embedded software.

Keywords: ship engineering; ship; automation; software standardization

2015年,我国从国家战略层面提出“中国制造2025”的发展战略。该战略是以信息技术与制造业高度融合为重要特征的科技革命和产业变革,大力发展海洋工程装备和高技术船舶是推动我国造船产业转型升级的重要举措。软件是船舶装备的技术核心,近年来船舶机舱自动化领域涌现出的高科技含量的机舱自动化系统都是以软件和相关算法为核心的,因此对船舶自动化软件的实时性、可靠性、智能化和运行效率均有着较高的要求。[1]

船舶机舱自动化软件分为监控软件(又称上位机软件)、分站软件(又称控制器软件)和IO模块软件等3个层次。

(1) 监控软件运行于集控室监控台,主要实现监测报警、辅助控制、数据存储、数据分析、管理决策及系统设计和管理等功能;

(2) 分站软件(或控制器软件)运行于现场显控设备或可编程逻辑控制器 (Programmable Logic Controller,PLC),主要实现现场控制、逻辑运算、协议转换和数据处理等功能;

(3) IO模块软件主要负责信号的采集和输出。

这里提出将软件标准化推广应用到船舶机舱自动化领域中,致力于提高船舶行业软件产品的质量和企业的生产效率,从而提升我国船舶装备制造业在软件方面的核心竞争力。论述的软件标准化包含软件工程管理标准化和软件开发技术标准化2个方面的内容。

1 国内外软件标准化现状

1.1软件工程管理现状

1) 国外方面,大部分知名的船舶自动化厂商都已通过软件能力成熟度模型集成(Capability Maturity Model Integration,CMMI)5级认证。CMMI共分为5级,其中第5级优化管理级是认证最高级别,可通过软件过程的量化反馈和新思想、新技术促使软件开发过程持续不断改进。

2) 国内方面,大部分船舶自动化厂商软件开发能力较弱,很多厂商都直接采用专业软件公司的组态软件开发平台进行软件开发。有些厂商即使具备一定的开发能力,也都没有做CMMI认证,且其水平仅处于第1级初始级,软件过程是无序的,有时甚至是混乱的,对过程几乎没有定义,软件开发的成功取决于个人努力,管理是反应式的。

专业的组态软件公司近些年已开始进行CMMI认证工作。例如,亚控科技通过CMMI 3级认证,实现了将软件管理和工程两方面的过程文档化、标准化,并综合成该组织的标准软件过程。

1.2软件开发技术现状

1) 国外方面,西门子、ABB等国际知名的船舶自动化厂商在陆用工业自动化和船舶自动化领域占据行业领导地位,拥有全产业链的解决方案和产品线,其成熟可靠的组态软件技术、软PLC技术可直接应用到船舶机舱自动化领域中。Kongsberg Maritime,Lyngso Marine及MTU等其他国际知名的船舶自动化厂商依赖其长期的技术积累和领先的系统设计能力,采用外包或收购等方式提升其自身的软硬件技术实力,其底层监控模块产品也都具有灵活的配置功能,能应对复杂多变的船舶自动化系统集成需求。

例如,Kongsberg公司的专用组态软件Mimic Editor(见图1)具有灵活的软件架构,可满足不同项目对人机界面变化和调整的需求;操作简便,易学易用,工程技术人员和船员都可掌握;支持所见即所得的界面设计,能根据系统需求快速组态。

图1 Kongsberg公司的专用组态软件

2) 国内方面,目前已有多家软件公司开发通用组态软件,如组态王Kingview,紫金桥Realinfo,三维力控等。但是,通用组态软件因过于强调通用性而使得其存在软件架构繁冗、软件运行效率不高及与硬件设备结合不密切等问题,不能适应船舶监控应用中硬件配置资源有限和软件实时性要求高的情况。

我国具备一定实力的自动化厂商已开始研制船舶机舱自动化监控组态软件,如中船重工七一一研究所自主开发的机舱自动化系统自生成工具及上海船舶运输科学研究所与紫金桥合作开发的船舶专用组态软件等。这些组态软件具有系统组态、硬件组态、数据库组态、界面组态和控制回路组态等功能特点,已在国内多个系统中成功应用。但是,国内自动化厂商开发的组态软件的标准化程度还不够,各项功能和性能与国外的软件产品相比还有较大差距。

在嵌入式软件开发方面,国外知名的船舶自动化厂商都已掌握成熟可靠的PLC软硬件技术,可将其直接应用到船舶机舱自动化领域中;其底层监控模块产品也都具有灵活的配置功能,能应对复杂多变的船舶自动化系统集成需求。国内的船舶自动化厂商大多被迫选用国外的PLC产品进行系统集成;有一定技术积累的科研院所虽然有自主研制所需的嵌入式硬件平台,但嵌入式软件的开发能力与国外厂商相比有较大差距。

2 国内软件管理和开发方面存在的问题

国内自动化厂商在软件管理和开发方面主要存在以下问题。

1) 缺乏工程化的软件管理,一直没有摆脱作坊式的生产模式;软件开发人员面对紧迫的工程周期,疲于应对实船设计中复杂多变的需求;软件产品的质量也得不到保障。

2) 监控软件开发技术落后,软件标准化程度较低;不同类型船舶的动力系统和电力系统的软件产品需针对不同船型进行量身定制;在面临规模更大、控制更复杂的系统时,由于软件复用程度低,原有的编程开发方式已不能满足自动化领域的需求,不能对用户提出的改进需求作出快速响应;人机界面软件开发的效率低;缺少标准通信协议库;调试人员无法在系统调试过程对软件进行快速修改和应用。

3) 嵌入式软件开发水平落后,没有研发能力的厂商被迫选用价格昂贵的PLC产品进行系统集成;有一定技术积累的科研院所虽然有自主研制的嵌入式硬件平台,但其嵌入式软件设计、开发和测试的能力有限,产品质量得不到保证。如何提高国内船舶机舱自动化领域嵌入式软件的标准化、模块化和可配置化程度,从而提高软件产品的质量和系统的可靠性,是亟待解决的问题。

提高软件标准化水平将是解决上述问题的重要途径,这里从软件工程管理和软件开发技术2个方面提出标准化解决方案。

3 软件标准化工作思路

3.1软件标准化总体思路

为提高船舶行业软件产品的质量和企业的生产效率,为适应船舶机舱自动化领域的技术和工程特点,需寻求一种行之有效的船舶机舱自动化软件标准化方式。软件标准化应涵盖软件工程管理的标准化和软件开发技术的标准化两方面的内容。软件开发技术是软件实现的方式,而软件工程管理是为保障软件质量而对软件开发和维护过程进行的监控,两者相辅相成、缺一不可。软件标准化解决方案整体框架见图2。

图2 软件标准化解决方案整体框架

3.2软件工程管理标准化

软件工程管理标准化是现代软件工程的主要特征之一,在船舶机舱自动化领域推广和实施软件标准体系有利于提高软件产品的质量;有利于提高软件的生产效率,缩短软件开发周期(提高系统开发的技术水平和软件开发人员之间沟通的效率,减少差错和误解等);有利于软件管理(包括降低软件产品的生产成本和运行维护成本等)。[2]

美国卡内基-梅隆大学的软件工程研究所于1991年提出能力成熟度模型 (Capability Maturity Model for software,CMM),起初用于评价美国国防部的软件合同承包组织的能力,后因在软件企业应用CMM实施过程改进取得较大的成功而在全世界范围内被广泛使用。CMMI是2000年发布的CMM的新版本,不仅包括软件开发过程改进,还包含系统集成和软硬件采购等方面的过程改进内容,使其更加适用于企业的过程改进实施。CMMI认证是自动化厂商软件能力发展的指南,为企业软件能力不断走向成熟提供有效的步骤和框架。[3]

建议国内各船舶自动化厂商为提高软件工程管理水平, 从CMMI二级开始逐步开展认证工作(见图3),争取在10 a内达到CMMI认证的最高级别,通过软件过程的量化反馈和新技术促使软件开发过程持续不断改进。

图3 CMMI认证过程

3.3软件开发技术标准化

3.3.1监控系统软件开发标准化

组态软件是数据采集与过程控制的专用软件,是处于自动化监控系统监控层的软件平台和开发环境,通过灵活的组态方式为用户提供能快速实现工业自动化控制系统监控功能的、通用层次的软件工具。但是,国内自动化厂商开发的组态软件的标准化程度还不够,还需从软件顶层架构设计入手,进一步提高软件的灵活性、可靠性、实时性和多任务并发处理能力。

3.3.1.1 人机界面设计组态化

监控人机界面软件运行在上位机中,能以数字、图表及曲线等形式直观显示监控对象和系统自身的运行情况,能对异常测点自动触发声光报警,为操作人员提供友好的人机接口和操作体验。应用成熟的组态软件技术可开发出各种监控人机界面,通常不用编写代码就可进行监控功能和测点对应关系的修改,避免了人机界面软件实现过程中繁重的编码工作,非常适合于实船上软件的修改和完善;能对用户提出的改进需求进行快速响应,极大地提高了人机界面软件开发的效率。组态软件人机界面设计编辑器示意见图4。

3.3.1.2 系统设计组态化

系统组态化设计是指用户可根据船舶机舱自动化系统的实际需求,使用组态软件搭建系统的网络架构,配置系统设备的属性、数据接口、通信协议及系统的数据流图等,构建一套适用的应用系统;同时,可将各个设备的配置在线下载到各个设备,并进行调试。系统的调试过程也无需软件开发人员参与,系统调试人员只需进行组态软件修改和应用配置即可完成系统的调试。

图4 组态软件人机界面设计编辑器示意

3.3.2嵌入式软件开发技术标准化

3.3.2.1 嵌入式操作系统的标准化

嵌入式操作系统的出现为嵌入式软件的标准化提供了基础,其能屏蔽掉底层硬件平台的差异(处理器架构和接口扩展芯片),为嵌入式应用软件的开发提供与硬件无关的基础软件平台。软件标准化的最主要特征是接口标准化,常见的嵌入式操作系统都具有其自成体系的应用编程接口(Application Programming Interface,API)标准。由此可见,目前只有采用同一种操作系统,并将其移植到不同的硬件产品平台上,才能实现嵌入式软件开发的接口标准化。

3.3.2.2 软PLC技术

软PLC技术为解决嵌入式软件标准化提供了另外一种思路。软PLC技术就是在遵循IEC 61131-3标准的前提下使用嵌入式硬件支撑平台,利用软件实现传统PLC的基本功能,将PLC的控制功能封装在嵌入式软件内,运行于嵌入式硬件环境中。软PLC嵌入式设备提供更高层次的软件标准化解决方案,同时兼具嵌入式硬件平台的灵活性、可扩展性和高性价比等优势。软PLC内核既可构建在各种主流嵌入式操作系统上,也可直接运行于无操作系统的环境中,从而支持种类繁多、架构各异的嵌入式处理器。这样船舶机舱自动化厂商即可在无需更改已有成熟产品的硬件设计的情况下,将软PLC产品移植到自有硬件平台上。软PLC产品系统模型见图5。

目前国内各高校和科研院所对软PLC规范及其技术实现方面的研究大多还处于起步阶段。因此,我国需加强对软PLC技术和相关标准的研究,分析其在船舶机舱自动化领域中应用的适用性,进一步推进嵌入式软件开发技术标准化工作。

图5 软PLC产品系统模型

3.3.3通信协议库开发技术标准化

船舶机舱自动化系统中涉及到的通信方式较多,包括CAN通信、以太网通信及串口通信等,每种通信方式都包含多种通信协议,一些小的自动化厂商在软件开发过程中大多没有严格遵循标准通信协议(如Modbus RTU串口通信协议),同一个通信协议包含多个实现的版本,这给各厂商间的系统调试造成了非常大的工作量。

建议国内各自动化厂商遵循同一标准,编制或购买标准的通信协议库,使软件产品的通信接口更加标准化。

4 结束语

结合船舶机舱自动化领域的行业特点,分析船舶自动化软件目前存在的问题和不足,提出实施软件工程管理标准化的作用和意义。在软件工程管理标准化方面,可借鉴常规软件行业的成功经验进行软件的认证;在软件开发技术标准化方面,针对工程周期短和需求变更频繁的行业特点,分别对监控人机界面软件和嵌入式软件提出合理可行的解决方案。

船舶机舱自动化系统软件不仅是实现系统功能的手段,更是系统的核心所在。系统控制策略和控制算法都是由软件实现的,软件产品的质量直接关系到系统的稳定、可靠运行,软件产品的易用性直接影响客户的使用体验,软件产品的如期交付维护了厂商的信誉。为进一步提高我国船舶机舱自动化领域的水平,必须充分重视船舶行业的软件设计、开发和管理水平。

[1] 松冰. 我国软件标准化工作现状[J]. 电子标准化与质量, 2001(4): 14-15.

[2] 王成海, 段莹. 做好军用软件标准化工作, 提高软件的质量与可靠性[C]. 电子信息系统质量与可靠性学术研讨会, 2003.

[3] 李新. 基于标准化的软件工程学研究[J]. 计算机应用, 2006,26(S2): 228-231.

SoftwareStandardizationinShipEngineAutomation

(Navy Representative Office in Shanghai 711 Institute, Shanghai 201108, China)

U664.821

B

2016-05-04

景国辉(1971—),男,江苏丹阳人,高级工程师,主要研究方向为轮机工程。E-mail: jing_guohui@sina.com

1000-4653(2016)02-0027-04

猜你喜欢
嵌入式软件人机界面机舱
船舶机舱火灾的原因分析及预防
船用柴油机的选型和动力系统机舱布置优化
船舶机舱通风相关要求及常见关闭装置分析
浅谈无锡地铁信号系统人机界面的应用与研究
船舶机舱常见消防隐患及防控
嵌入式软件测试数据传输稳定性检测方式分析
基于安全性分析的嵌入式软件测试
现代汽车人机界面(HMI)设计趋势
全景相机遥控器嵌入式软件V1.0 相关操作分析
基于VPRS方法的汽车嵌入式软件品质评估