1
关注中国自动化产业发展的先行者!
2024
2024中国自动化产业年会
2023年工业安全大会
OICT公益讲堂
当前位置:首页 >> 资讯 >> 行业资讯

资讯频道

工业企业系统集成技术系统集成接口技术(三)
  • 点击数:47718     发布时间:2017-09-19 10:59:00
  • 分享到:
许多信息化集成系统执行重要业务功能,在客户的经济活动中起着关键作用,常需要7×24小时不间断运行,对这类系统可靠性要求特别高。但信息化集成系统不仅牵涉设备种类多、结构复杂,接口可靠性脆弱又没有通用标准、无法充分试验和鉴定,导致系统整体可靠性难以评价。接口可靠性可通过一系列可靠性方法来获得和提高,包括预防、诊断、容错、纠错等。在本节中,将首先分析接口的失效形式,然后逐一介绍这些接口可靠性方法。
关键词:

城市轨道交通标准技术委员会魏晓东

中国电子信息产业集团有限公司第六研究所赵云飞

5.3 接口可靠性

5.3.1 接口可靠性设计

许多信息化集成系统执行重要业务功能,在客户的经济活动中起着关键作用,常需要7×24小时不间断运行,对这类系统可靠性要求特别高。但信息化集成系统不仅牵涉设备种类多、结构复杂,接口可靠性脆弱又没有通用标准、无法充分试验和鉴定,导致系统整体可靠性难以评价。接口可靠性可通过一系列可靠性方法来获得和提高,包括预防、诊断、容错、纠错等。在本节中,将首先分析接口的失效形式,然后逐一介绍这些接口可靠性方法。

5.3.2 接口失效形式

接口是集成系统的薄弱环节,是由接口的物理形式和工作环境决定的。接口连接处接头多数被设计为可拆卸,以增加接口灵活性、方便安装和维护,但同时留下了接头处断开、虚接、电特性变化等可能性,成为失效隐患。另外,接口所用的长导线也会意外遭遇外力作用,造成断开或虚连通;长导线还会受到环境电磁影响,随时可能产生误码、干扰接口通信。接口失效可表现为连通性问题、功能完备性问题、传输稳定性问题等。

连通性问题:连通性问题,指无法连通、完全无法传输信息。通常是由设备不符合标准、接口驱动程序编写错误,或连接方式错误、接口参数设置不正确等原因造成的。由于互联互通是接口的基本功能,这类问题能在第一时间被发现、关注和解决。

功能完备性问题:功能完备性问题,指部分接口功能丧失,但另一部分功能依然可用的情况。比如双向通信的时候只剩下一个方向可以传输信息,或总线上某单个设备通信失效而其它设备依然通信正常,或仅某类信息停止传输而其它信息依然在传输等。处理时除了要排查硬件错误,还应特别注意接口软件的设计,看是否存在逻辑边界处理不当、或协议报文控制字填写错误等情况。

传输稳定性问题:传输稳定性问题,指传输中经常性出现丢包、乱序、错包情况,导致接口传输时通时断、或时快时慢,接口协议频繁遇到无会话、错误会话、会话迟缓等异常,使接口功能时好时坏。造成传输稳定性差的原因,通常主要来自硬件设施不规范、接口电气特性偏离标准,如接头连接方式错误、线缆过长、设备数量过多、线缆终端处理不当、设备接地不当等。当然,也可能确实是由于工作环境恶劣,电磁、振动等干扰超过了设计基准。

5.3.3 失效预防措施

采用高质量传输介质,提供电气隔离和通信隔离,控制接口软件缺陷和提高软件健壮性,提高可靠性。

高质量传输介质:采用高质量传输介质,能减少电信号的衰减、增强抗干扰能力。在要求传输距离长、接口线缆上需连接多套设备时,或现场电磁、温度环境比较复杂的时候,务必选用高质量的通信线缆,用这部分成本投入能换回接口可靠性的提高,可降低运维难度和工作量。

电气隔离和通信隔离:隔离,指接口各方在保持互联互通的同时,确保己方不受其它设备/子系统运行故障的影响。接口隔离措施有电气隔离和通信隔离。电气隔离常采用光电隔离,在接口连接处使用光电转换器件,将接口各方的通信口电气回路相互隔断,避免不同电路之间的相互干扰;通信隔离体现在接口通信协议中,各接口方的信息发送和接收各自使用单独链路、执行单向通信,发送者不用关注接收者的状态,发送者自身的行为不受对方限制或干扰。为可靠传输,实现通信隔离的接口协议需具备状态无关的特性,即接口方的行为完全取决于自身当前的状态,与历史状态和其它方的状态无关。

在跨不同安全级的接口上,特别是从高级别系统向低级别传输信息时,必须提供接口隔离,保护高级别系统和设备免受到低级别连接方的数据崩溃、信息错误、功能故障等的影响。

接口软件健壮性:健壮性是针对接口软件而言,即接口软件自身不产生错误,在硬件和数据异常情况下也能保持自身不故障。复用已成熟的接口软件、或基于成熟接口软件框架来开发接口软件,或在研发中严格过程控制,均可获得高质量的接口软件。接口软件要对各种异常安排好应对措施,准确识别和过滤非法操作。

5.3.4 失效诊断措施

集成系统运行时,一旦出现接口失效,应在第一时间启动自动处理,并设法通知操作人员,避免问题继续扩大,使接口尽快恢复正常。这就要求在线时能对接口状态进行诊断,这种能力被称为接口自诊断。接口自诊断内容通常包括设备诊断、链路诊断、会话诊断、数据诊断。

设备诊断:设备诊断,检查的是接口对端设备的在线、离线等状态,即运行期间,接口端设法检查与自己存在信息交互的其它连接端的在线或离线状态,并将此状态汇报给集成系统。设备在线或离线状态信息是集成系统的一类实时信息,是设备监视功能所必须的,因此这种检查通常需持续、周期性地快速执行。

设备诊断由接口软件实现,方法是由数据传输的接收方检查是否有来自指定对端设备通信数据,如果在规定时期内没有收到数据,就认为该设备离线,否则为在线。为避免误判,可在连续多次检查后再作出判断。判断在线与判断离线所需检查的次数通常不同,常见的判断逻辑是:连续多次收不到该设备的数据包才判它离线,而随时收到它的一包数据就可判在线。

在接口协议中对数据传输增加的确认应答,也能完成设备诊断,比如电力调度系统的遥控/遥调命令,在通信规约就规定有“选择-返校-执行”过程,其中的“选择-返校”就可用作发命令前对信息通道和执行设备状态的一个诊断。

接口协议中也可以规定设备诊断专用的测试帧,运行期间可定期插入测试帧和应答帧,来执行设备诊断,只有当向某一设备发送测试帧,后又接收到该测试帧的应答帧时,才认为该设备是在线的。

链路诊断:链路诊断,指在运行环境下对连接的物理或逻辑通路进行通断状态的检查。与设备诊断一样,链路状态也是集成系统重要的实时信息,需要进行持续、周期性快速诊断。

链路诊断通常由数据接收方执行,原理也是检查是否有通信数据。与设备诊断不同的是,链路诊断不关心数据来源,只要能收到正确数据包就判链路正常。

会话诊断:会话诊断,是检查传输过程中是否有丢包、乱序等异常。这种异常会导致接口行为与协议规定不一致,引发通信功能紊乱。

该异常影响的是协议,诊断它也是从协议入手。一种方式是在协议的信息格式中设置报文序号、反转标志、匹配标志等控制字节,控制字节随数据一同传输、并在接收端加以分析解析,识别出异常。也可以在协议中设置反馈校验(IRQ)机制,反馈校验也称为回程校验,信息接收方把收到的数据包反送给信息源发送端,信息源发送端比较发送数据与回送数据,从而检出是否发生错误。

数据诊断:数据诊断是针对通信过程中的错误数据包而言的,即数据包传输中发生的误码。常用的手段是附加各类校验码,如奇偶校验码、循环冗余校验码等。(1)奇偶校验码(Parity)是一种最基本的校验方法。奇偶校验码是简单地通过附加一个检验位来使得码字中"1"的个数保持为奇数或偶数的编码方法。(2)循环冗余校验码CRC(Cyclic Redundancy Code)是一种在计算机网络和数据通信中用得最广泛的检错码。

CRC具有良好的代数结构。采用CRC校验时,发送方和接收方用同一个生成多项式g(x),并且g(x)的首位和最后一位的系数必须为1。假设待发送的二进制数据多项式表示为t(x),CRC的处理方法是:发送方以g(x)去除t(x),得到余数作为CRC校验码。校验时,以计算的校正结果是否为0为据,判断数据帧是否出错。

5.3.5 冗余容错措施

容错技术在于用增加额外资源的方法来换取系统的可靠性,这些额外资源,相对于系统为完成其功能所必须的资源而言,称作冗余资源。

对重要的、失效概率高的接口应设置冗余,使系统具有一定的容错能力。接口冗余,指设置两套或多套的接口设备和连接线路,当一处发生故障时,备用部分能立即投入工作、接替原工作部进行信息传输。

冗余只用在适合的地方。对通信控制器和通信线路,通常要实施冗余;对智能设备和I/O设备,则多数时不用冗余。

冗余结构形式:在信息化集成系统总体设计中,为便于接口实施和管理,通常会设置一些专用作接口处理的设备,称为通信控制器或前端处理机。这些接口处理设备可支持多种接口形式,包括以太网、串行点对点、串行总线、现场总线等,可以管理与多套智能设备和子系统的接口。在被集成和互联的另一端,是大量的智能设备和一定数量的子系统,它们有的是待建的、有的是已建的,单个个体使用的接口形式比较单一,个体能提供的连接端口数量也有限。

根据上述特点,可列出经济合理的冗余方案原则:通信控制器可以冗余,被接入的设备和互联的子系统通常不冗余,根据可用端口数和应用需要可以确定链路是否冗余。

冗余功能模式:从功能角度看,接口冗余的模式可分为热备冗余和并行冗余。热备冗余是同时提供两套接口设施,为主的那套承担接口任务,另一套也启动起来随时备用,一旦为主的设施失效,系统立即将接口任务切换到备用设施。

除热备冗余外,集成系统也可能会用到并行冗余。并行冗余是指:两套接口设施同时工作,无主备之分,同一时刻两套设施均执行接口任务,将信息从源头分两路传输至目的地的端口。

在网络环节,并行冗余有如下优点:(1)双网工作期间,如果一网瞬间通信失效,不会影响接口通信;(2)如果一网长期失效,则接口网可经由另一网保持通信,其间不需等待故障检测、诊断时间,以及切换时间;(3)双网同时工作,仍可具备故障检测、诊断功能,一旦发生故障可及时将故障网络切除,同时通知维护人员,由于诊断结果不作为双网动态切换的依据,从而可避免故障检测失误造成错误切换,避免双网工作不稳定造成频繁互切换,进而提高接口可靠性。

并行冗余不单纯是硬件设施冗余,它会带来信息冗余,即在目标接口端会收到双份信息,这种冗余信息有时可用作检错和纠错,多数时候接收端要将冗余信息过滤掉,保持信息源单一,避免产生歧义和不一致。过滤冗余信息的方法很简单,可以像热备冗余一样选用其中一路,也可以用信息编号来捡出合用信息。

冗余实现技术:接口冗余技术,是在架构层面上解决接口可靠性问题,所以它不是个局部技术,而是一项全局性技术,会影响到接口的方方面面,甚至会影响到集成系统。要实现冗余,技术涉及到系统集成的计算机、通信、软件设计、可靠性等多门类技术,是一项高复杂度的工作。实现接口冗余特别需要软件进行大量事务处理,如:(1)信息同步:数据同步、状态同步、通信隔离;(2)链路访问冲突:备用静默、交叉分时、主借备路;(3)数据一致性处理:冗余信息过滤、一致性核查;(4)故障诊断:对端设备故障诊断、链路故障诊断、本地设备自诊断、心跳监测;(5)故障隔离:故障标识、故障通报;(6)主备仲裁:整机切换、单链路切换、单设备切换、陷阱逃脱原则;(7)系统状态机:主备“初始化、工作、故障”叠加“身份切换”;(8)主备切换:操作权交接、数据扰动、切换效率。

这部分软件设计的关键是接口故障检测、主备仲裁和主备切换,主要设计约束是切换效率。

不同系统集成商采用不同的集成平台,设计目标和各个技术环节采用的手段也不尽相同。以主备仲裁中的“选择主”为例,有的采用故障点数比较策略,有的采用故障点加权比较策略,还有的采用局部活动局部待机策略,等等,这些策略都能保证单故障情形下接口功能不丧丢,同时还或多或少提供了交叉故障适应能力,进一步提高了系统可用性。

5.4 接口软件开发

5.4.1 接口软件结构

接口软件需求的特性要求接口软件结构与具体设备无关。开发接口软件时,应首先搭建一个与设备无关的接口软件框架,然后再基于此开发接口通信驱动程序。

如果不需要考虑集成系统接口数量众多的特性,只要求将一两个外围设备接入到系统中,那么针对性地开发一项接口软件,其难度本身并不大;然而,集成系统的主要特点恰恰就是接口设备数量多、类别杂,设备特性、接口形式、接口协议、接口信息多种多样,系统集成商必须要面对这些难题,如果对此提不出有效解决办法,就会陷入变更、性能、版本、工作量、人手等多方面问题的困境。

解决该问题的有效方法是将接口软件分出层次:有的层次处理通用的、共性的问题,有的层次处理专用的、个性化的问题。通过通用层,提供计算机硬件资源和接口配置访问的管理,提供对接口运行的调度管理,提供接口数据统一处理的机制,包装接口要面对的多数处理过程,如冗余、数据服务访问接口等,由此形成平台化接口的完整框架;在专用层,只需对具体协议进行编码,形成特定接口驱动,就能轻松接入特殊设备和子系统。

基于上述思路搭建起来的通信控制器接口软件接口如图3所示。

1.JPG

图3 通信控制器接口软件结构示意

接口软件共分数据服务层、接口管理层、接口协议层、通用硬件层四个层次。其中,数据服务层为应用系统提供数据服务,接口管理层提供接口调度管理,这两层是所有接口驱动共用的;通用硬件层提供可复用的硬件驱动,如串口驱动、以太网驱动等,任何接口驱动都可以直接使用这些资源;位于接口协议层的接口驱动才真正实现通信协议,控制报文收发和解析。为进一步提高接口实施的效率和质量,系统集成商逐步积累出一些标准接口的接口驱动,搭建出一个标准接口驱动库。标准接口驱动与接口框架和接口驱动的关系如图4所示。

2.JPG

图4 接口软件逻辑结构

接口框架加接口驱动的软件结构具有以下优点:它能综合平衡接口实施成本和软件研制技术困难,能提高接口软件的重用度,并保证集成系统的开放性;它能以一致的方式处理通信接口,能支持接口开发模式的统一,支持工程过程有序开展和工程过程的标准化。

接口驱动程序:接口驱动的功能,是按接口协议规定,使用规定的物理端口与外部设备/子系统进行信息交换。归结起来有两项任务:端口通信、协议处理。

(1)端口通信:通常借助平台提供的通信硬件驱动库来完成。通信硬件驱动库中存有可复用的标准通信板卡驱动,如串口驱动、TCP/IP协议栈、现场总线板块驱动等。为方便接口驱动程序使用,通信硬件驱动的访问方式一致,仅通过配置就可切换要用的通信硬件。接口驱动基本与硬件形式无关。

按通信硬件与接口驱动之间的数据传输特点,通信硬件驱动可分为两类,串行类型驱动和板卡型驱动。串行类型驱动,指与接口协议层之间以串行数据流进行交互的通信硬件驱动,串行数据流可以是类似RS485/USB等的无边界数据流,也可以是类似TCP的有边界数据流。这类驱动通常有统一定义的编程接口和访问接口。板卡类型驱动,指与接口协议层之间以内存映射、双口RAM、特殊寄存器等形式进行交互的通信硬件驱动,它通常针对特殊的硬件板卡。使用板卡类型驱动时,需依据专用通信卡的使用要求,执行一些专用的初始化、中断设置、寄存器读写等操作,或调用专用的API函数来获取采集数据和发送命令。

(2)协议处理:协议处理是接口驱动最主要的任务,以完成最核心的接口传输功能。协议处理也是集成系统应对设备差异的主要环节。

对主动传送型协议,设备有主动上传数据的能力,这是许多简单接口常用的工作方式,接口驱动程序无需进行会话调度,只要及时接收和解析数据就可以了。

对请求应答型和混合型协议,从接口驱动发出请求,经硬件通信端口传递给另一端的设备和子系统,到设备和子系统响应回来、经通信端口提交给接口驱动程序,这种方式也不太复杂。接口驱动需要调度会话和发出请求,及时接收和解析应答数据,同时还要管理应答的超时状态。

实际应用中,来自不同厂家的设备和系统性能会有所不同,不论使用主动传送还是用请求应答,都会有响应快慢的差别。任何设备都可能随时要传输信息,为避免响应性差的设备对总体数据访问造成影响,接口驱动应为通信协议处理和应用数据服务提供适度隔离。隔离时,可采用基于数据交换区的前后分两端结构:后端程序负责与接口管理的配合,支持数据访问服务;前端程序负责按协议与设备通信,根据设备特性调整交互性能。

接口软件配置(如图5所示):针对具体接口的需求,实现接口软件并非完全依赖接口驱动程序。事实上,接口的许多个性化是通过软件配置实现的。

3.JPG

图5 接口软件配置

(1)调整接口的参数和形式:通过配置可以改变接口参数。通常接口的端口号、传输速率、校验方式等需要灵活配置,使工程设计实施中可随时优化和调整接口方案,以充分利用接口设备的资源。通过配置甚至可以改变接口形式。之所以能做到这一点,是因为接口驱动以一致的方式使用通信硬件驱动,由配置指定具体使用何种通信硬件驱动。由于有这个能力,同一个协议就既能工作在RS232串口上,也能工作在TCP网络上,极大提高了协议的利用率。(2)调整协议的参数和模式:通过配置可调整协议的参数和工作模式。可以通过配置改变接口框架对驱动程序的调度,如调高或降低该驱动的处理优先级,改变它在冗余主从仲裁中的权重,启用或终止某类硬件中断等;通过配置还可以改变接口协议的交互过程,如禁用对某些类型信息的传输,拉长或缩短链路故障诊断周期,改变模拟量数据和数字量数据采集频数的比率,等等。通过这些调整,可以改变接口性能,使之与对端设备和子系统获得最佳配合。(3)信息含义和点表:完整的接口协议包括信息格式、信息含义和交互过程,其中交互过程和信息格式是在接口驱动程序用编码方式实现的,但信息含义通常不用编码来实现。比如说要传输哪些模拟量点,这些点的量程限制等,接口驱动程序不把这些信息编到程序代码中。之所以这样,也是为了将专用性强的具体信息含义从接口驱动程序中剥离出来,增强接口驱动程序的灵活性,以便适用到更多场合中。

5.4.2 信息集成模式

在企业信息集成时,不同应用系统有不同的结构和规范,这对信息集成有非常大影响。为了能够既解决业务数据异构性问题、实现信息共享和协同,又不增加集成复杂度,并具备进一步扩展能力,最实用的、也是最常用的做法是基于通用数据库和数据源级别上进行集成。基于通用数据库和数据源级别上的集成有三种常用模式:数据复制、数据联邦和基于接口的数据集成,它们分别表达了对多个异构数据源透明、一致访问的三种实现方法。三种常用的数据集成模式如图6所示。

4.JPG

图6 三种常用的数据集成模式

数据联邦,是指不同应用共同访问一个全局虚拟数据库,通过全局虚拟数据库管理系统为不同应用提供全局信息服务,实现不同应用和数据源之间的信息共享和数据交换。

数据复制,指通过底层应用数据源之间的一致性复制,实现对基于不同数据的各类应用之间的信息共享和互操作。

基于接口的信息集成,指不同应用系统间利用适配器或接口代理,实现相互调用。适配器或接口代理提供应用编程接口,通过这些开放接口可提取业务信息,供应用系统共享和交换。接口调用方式可以采用同步调用方式,也可以采用基于消息中间件的异步方法来实现。

作者简介:

魏晓东,1967年毕业于天津大学精仪系。1984~1991年任安徽工业大学自动化系副教授。1991年出版《分散型控制系统》( 上海科技文献出版社) 。2000~2012年任北京和利时系统工程公司副总工、事业部总设计师,北京地铁13号线、深圳地铁一期工程、广州地铁3号线综合监控系统工程技术总负责人。2006、2010年出版《城市轨道交通自动化系统与技术》初版与第二版(电子工业出版社);2010年主编国家标准《城市轨道交通综合监控系统工程设计规范》(GB50636-2010)《城市轨道交通综合监控系统施工与质量验收规范》(GB/T50732-2011);2010年主编关于两化融合的国家标准《工业企业信息化集成系统规范》(GB/T26335-2010)。2013年至今任清华同方数字城市工程中心技术专家,住建部城市轨道交通标注技术网Eu委员会委员,全国自动化系统与集成标准技术委员会委员。

摘自《自动化博览》2017年9月刊

热点新闻

推荐产品

x
  • 在线反馈
1.我有以下需求:



2.详细的需求:
姓名:
单位:
电话:
邮件: