CN102664719A - 适用于dcs的分布式安全传输方法 - Google Patents
适用于dcs的分布式安全传输方法 Download PDFInfo
- Publication number
- CN102664719A CN102664719A CN2012101341201A CN201210134120A CN102664719A CN 102664719 A CN102664719 A CN 102664719A CN 2012101341201 A CN2012101341201 A CN 2012101341201A CN 201210134120 A CN201210134120 A CN 201210134120A CN 102664719 A CN102664719 A CN 102664719A
- Authority
- CN
- China
- Prior art keywords
- data
- message
- template
- macid
- frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种适用于DCS的分布式安全传输方法。本发明中控制系统上电,主站和从站做上电重复MACID检测。其次主站和从站间建立连接,主站通过安全报文向各从站发送配置信息。然后各从站根据从主站接收到配置信息中的数据采集周期,定周期通过安全报文向主站发送采集到的数据。最后主站将从从站接收到的数据处理后,通过安全报文向各从站发送相应的控制信息。本发明以CAN总线为基本网络,只使用CAN总线协议的数据位部分,允许访问不同的网络。
Description
技术领域
本发明属于工业控制领域,涉及一种适用于DCS的分布式安全传输方法。
背景技术
近年来多家国际自动化领域的大公司都提出了符合国际功能安全标准的现场总线功能安全技术,如西门子公司的PROFIsafe、罗克韦尔的CIPsafety、三菱的cc-link safety等。PROFIsafe技术将安全系统作为一种功能融入到控制系统之中,提高了安全性,降低了成本。CIP safety、和DeviceNet safety技术通过冗余CRC、数据校验后加时间戳及每个网络提供一个特定的识别号等方法确保安全,在网络总线上同时集成标准控制系统和安全控制系统,在同一网络上传输标准和安全信息。cc-link safety是在协议上位层中开辟一个安全层,不仅能保持与cc-link的互换性、使用原有的电缆等资源、连接兼容产品,而且在安全通信方面也能实现和cc-link同样的高速通信和高速响应性,还具有检测安全系统的不正当修改和设定错误及能迅速分析问题原因的功能。而国内安全控制总线则鲜有成功应用。
发明内容
本发明的目的是为了解决一种分布式控制系统(DCS)通信协议的具体内容还没有充分考虑故障安全传输的特殊要求的问题,而提出一种适用于DCS的分布式安全传输方法。
本发明的具体步骤如下:
步骤a.控制系统上电,主站和从站做上电重复MACID检测。
步骤b.主站和从站间建立连接。
步骤c.主站通过安全报文向各从站发送配置信息。
步骤d.各从站根据从主站接收到配置信息中的数据采集周期,定周期通过安全报文向主站发送采集到的数据。
步骤e.主站将从从站接收到的数据处理后,通过安全报文向各从站发送相应的控制信息。
上述过程中,安全报文的接收方接收到报文后对其进行解包校验,若校验错误则请求发送方重新发送,当校验错误达到设定次数或报文的传输时间超过设定阈值时,报警并使连接进入安全状态。
本发明的有益效果:以CAN总线为基本网络,只使用CAN总线协议的数据位部分,允许访问不同的网络;不依赖于数据链路层的完整性,完整性由终端设备确保;报文传输具有完整性、实时性、可测性,保证了总线安全。
附图说明
图1是适用于DCS的分布式安全传输方法的通信层示意图。
图2是适用于DCS的分布式安全传输方法的多主结构示意图。
图3是适用于DCS的分布式安全传输方法的多主结构数据连接示意图。
图4是适用于DCS的分布式安全传输方法的时间戳生成示意图。
图中:101.应用层,102.数据链路层,103.物理层,104.分布式安全传输方法的应用层(信息路由,连接管理),105.CAN(ISO11898),106.CANPL,107.PROFIBUS(FDL),108.RS-485/光线,109.其它现场总线。
201.操作站,202.控制站,203.控制模板,204.I/O模板,205.路由器,206.I/O模块,207.现场总线CAN,208.现场总线PROFIBUS。
401.I/O模板(MACID=3),402.主控模板,403.I/O模板(MACID=6),404.时间协同请求报文,405.时间协同响应报文,406.I/O数据报文,407.时刻0,408.时刻1,409.时刻2,410.时刻3,411.时刻4,412.时刻5,413.时刻6,414.时刻7,415.时刻8,416.时刻9。
具体实施方式
以下结合附图对本发明做进一步说明。
本发明针对自主开发的某DCS控制系统,结合国内外化工安全控制相关的安全标准,提出了一种适用于现场仪表非智能的DCS控制系统的分布式安全传输方法。
在图1中,该分布式安全传输方法的通信的总体结构依据开放互联的OSI-RM国际标准的三层结构:物理层103、数据链路层102和应用层101。几种底层网络采用的协议是不同的,DCS控制系统以CAN总线105、106为基本网络,可以在各种底层网络107、108、109之间通过标准路由来路由安全数据,协议可以作为多种总线的应用层104,从而根据实际情况增加系统的灵活性。在图2所示实施例中,采用了两种总线的网络,分别是现场总线CAN 207和现场总线PROFIBUS 208,路由器205为CAN转PROFIBUS类型的路由器。在实际应用过程中,CAN总线105还可以与DeviveNet总线、ControlNet总线等多种工业现场总线相连接。因为该分布式安全传输方法与媒体和数据连接无关,所以物理层和数据链路层允许对未来网络进行扩展。同时该分布式安全传输方法不依赖于数据链路层的完整性,完整性由终端设备确保。
本发明中,控制系统上电时主站和从站做了上电重复MACID检测,保证了各节点的地址唯一,使建立连接时各通道连接ID得以确定,由此确定了不同安全报文的不同发送路径。
本发明中所用的通信模式为多播(I/O数据传送)和点对点(控制信息和配置信息传送)方式。在图2所示实施例中,控制站202包括三块控制模板203,控制模板203到I/O模板204的数据传送基于源/目的地模型(点对点),I/O模板204到控制模板203的数据传送基于生产者/消费者模型(多播)。在传统方式下,I/O模板到控制模板203的数据传送需要通过主控制模板先存储该输入后,再转发给其他控制模板,而采用生产者/消费者模型后,来自I/O模板的I/O数据能同时送到多个控制模板203,从而有效地提高了数据的传输效率。
本发明中由于安全报文带有连接ID(CID)、通道号(Channel ID)、原始数据、时间戳(Time Stamp)、安全CRC、反转安全CRC、冗余数据和帧ID(Frame ID),因此可以克服主站和从站之间通信过程中报文丢失、重复、添加、顺序错、损坏、延迟等通信错误。安全报文不能阻止通信错误的发生,但它能够通过发现错误,允许设备执行适当的动作来确保传输完整性。
本发明中所用的传输技术由具体网络决定,如CAN总线的传输介质可以是双绞线、同轴电缆或光导纤维,通信速率可达1Mbps;PROFIBUS的传输介质可以为RS485双绞线双线电缆或光缆,波特率从9.6kbps-12Mbps。对于总线信息安全传输时所要具有的完整性、实时性、可测性等特征,该分布式安全传输方法具相应的以下几个特性:
实时性:数据传输所花的时间少。
确定性:数据传输所花费的时间可预测性强。
可重复性:增加或减少网络节点,对数据传输所花费的时间影响较小。
可靠性:数据传输的正确率高。
本发明中,系统结构分为单主系统和多主系统两种,主站和从站用统一编址方式,具体节点个数由具体网络决定,如CAN总线支持110个节点,PROFIBUS最多支持126个节点。两种系统结构除了控制模板数量不同外,其它部分基本是相同的,下面以多主系统为例对其工作原理作简单介绍。
一、上电重复MACID检测
整个控制系统中的每个节点通过人工配置MACID实现节点之间的通信。控制模板203和I/O模板204均通过拨码开关确定各自的MACID,各节点的MACID必须不同。为检测MACID是否有配置重复,每个节点上电时必须进行重复MACID检测。检测步骤如下:
(1)上电的节点往总线上发送一条重复MACID检测请求报文,等待一秒,如果没有收到对本MACID的回复,则再发送一遍重复MACID检测请求报文,同样等待一秒,如果还无回复,则表示此MACID的值是空的,总线上没有使用此MACID的节点,该MACID可以使用。
(2)如果在两次等待时间内收到重复MACID检测请求/响应报文,即收到总线上别的节点也在请求使用该MACID或正在使用该MACID的回复,则表示此MACID已经被使用,检测失败,不能上线,并广播重复MACID报警报文,通过控制模板203告知上位机,发出警报,以采取措施;若接收到的是非重复MACID检测请求/响应报文,则忽略掉该信息。
(3)若本节点已经在线,则仍要接收并处理MACID检测信息,如果请求的MACID与自己的MACID相同,则立即发出重复MACID正在使用响应报文,以告知其他请求节点此MACID已被使用。
其中I/O模板204只接收重复MACID请求报文和重复MACID正在使用响应报文,而控制模板203除了这两种报文以外还接收重复MACID报警报文。
二、建立连接
建立连接的过程发生在所有节点上电重复MACID检测成功之后,此时所有节点的MACID均不同。
在图3所示实施例中,每个控制站内有三块控制模板203,这三块控制模板203实现三模冗余结构形式。三块控制模板203对从I/O模板204发来的外部输入数据(可以是模拟量、数字量、脉冲量等)进行同步采集,三块控制模板203采集的数据经数据交互模块进行数据交换,最后通过硬件表决模块表决输出。现假设硬件表决模块集成在主控模板402(MACID=0)上。则每次某个I/O模板204发出的数据由三块控制模板203同时接收并处理,经过处理后需发送到I/O模板204的数据、配置信息或其它数据,均由带硬件表决模块的主控模板402发出。
建立连接过程:
(1)所有节点上电重复MACID检测成功之后,由主控模板402广播建立连接请求报文。
(2)I/O模板204收到建立连接请求报文后,广播建立连接响应报文,该报文内包含两个CID(Connection ID):第一个CID为从主控模板402到该I/O模板204的通道连接ID,值为该I/O模板204的MACID*2;第二个CID为从I/O模板204到(三个)控制模板203的通道连接ID,值为该I/O模板204的MACID*2+1。I/O模板204记录这两个CID。
(3)各控制模板203接收到建立连接响应报文后,记录这两个CID。接收时间到后,三块控制模板203将各自记录的CID经数据交互模块进行数据交换,经过冗余判断,最终确定所有控制模板203与I/O模板204之间都已建立连接(记录过CID的节点为建立连接的节点)。
(4)I/O模板204上电一段时间后(该时间比系统正常建立连接所需时间要长),若发现自己并未记录任何CID,则广播请求建立连接请求报文,直到接收到建立连接请求报文,再重复上述步骤的(2)、(3)。其中主控模板402收到请求建立连接请求报文后,广播建立连接请求报文,已建立连接的I/O模板204将不再重新建立连接。
上述过程(4)针对两种情况:一是主控模板402广播建立连接请求报文时,该I/O模板204未收到该信息;二是该I/O模板204是在系统建立连接完成后才上电的。若为情况二,则在该I/O模板204广播请求建立连接请求报文前,应先进行上电重复MACID检测。
本发明中的报文信息分为两种:一种为连接报文,一种为非连接报文(广播信息)。每种类型对应的具体报文如表1所示。由于CID是单向的,因此连接报文只要包含一个CID即可从源节点发送到目的节点。其中I/O模板204只接收建立连接请求报文,而控制模板203只接收建立连接响应报文和请求建立连接请求报文。
表1报文类型
三、数据采集
当系统内各节点建立连接完成以后,主控模板402通过点对点方式将各I/O模块206的数据采集周期等初始配置参数发送到各I/O模板204,系统开始运行工作。
I/O模板204不停采集本模板下各I/O模块206的数据,当某个I/O模块206的数据采集周期到后,该I/O模块206所在的I/O模板204通过多播方式主动向各控制模板203发送该I/O模块206的I/O数据。各模块206的采集周期可根据实际需求情况确定。控制模板203和I/O模板204均支持自诊断,当I/O模板204自诊断发现网络故障后,向控制模板203发送相应报警信息,当控制模板203自诊断发现网络故障或收到I/O模板的网络故障后,向操作站201发送相应报警信息
四、控制信息输出
在图3所示实施例中,每个控制站内的三块控制模板203实现三模冗余结构。三块控制模板203同步采集从I/O模板204发来的外部输入数据(可以是模拟量、数字量、脉冲量等)后,分别对该数据进行分析处理,处理结果经数据交互模块进行交换,最后通过集成在主控模板402上的硬件表决模块表决输出控制信息,并且将控制信息通过点对点方式发送给该I/O模块206所在的I/O模板204。
五、实现安全
在复杂的网络拓扑结构中,发送报文会引发一系列的错误,如报文丢失、重复、添加、顺序错、损坏、延迟等等。本发明中的分布式安全传输方法不能阻止通信错误的发生,但它能够通过及时发现错误,允许设备执行适当的动作来确保传输的完整性。表2中列举了必须检测到的11种通信错误和检测这些错误所使用的5种方法。
表2通信错误及检测方法
安全数据的产生:I/O模板204采集到数据(或控制模板203需要输出数据)后,将这些数据打包成带有CID、通道号、原始数据、时间戳、安全CRC、反转安全CRC的安全报文,若为长数据帧则还带有冗余数据,且将长数据帧拆分成短数据帧传送时每个子报文还将带有帧ID。
安全报文的接收方接收到报文后,对该报文进行解包校验,若校验错误则由主控模板203发送自检测请求重传报文来要求报文发送方重新发送,当校验错误达到设定次数、或收到该报文时该报文的传输时间超过设定阈值后,应报警并使连接进入安全状态。安全状态是指控制系统出现异常情况时,从站以预定义认为能使系统安全运行的控制参数进行工作。
下面分别介绍时间戳、连接ID(CID)、帧ID、周期冗余码(Safety CRC)和数据冗余。
1.时间戳
该分布式安全传输方法中所有的I/O报文信息(从I/O模板204到控制模板203的数据)都带有时间戳,这使得报文接收端可以准确判断所接收报文的数据年龄。这一检测方法允许检测到传输、媒体访问/仲裁、排序、重试和路由延迟。
在图3所示实施例中,三块控制模板203之间通过时钟同步模块使各控制模板203的内部时钟同步。I/O模板204和控制模板203的内部时钟均从0开始计数,直到255后又从0开始,如此循环往复。与硬件表决模块相同,时钟同步模块同样集成在主控模板402(MACID=0)上。由于三块控制模板203的内部时钟同步,各I/O模板204发出的时间协同请求报文只由主控模板402接收并返回时间协同响应报文。
在图4中,当建立连接以后,I/O模板204将定周期发送时间协同请求报文404,主控模板402收到该报文时给予时间协同响应报文405,响应报文里面带有主控模板402当前时刻的内部时钟计数。I/O模板204将标识时间协同响应报文产生时刻和自身接收时刻之间的时间差异,并将其储存作为偏移量。I/O模板204将在所有后来的数据报文中增加这个偏移量与当前该I/O模板204的内部时钟计数之和,该值即为时间戳。主控模板402接收到一个数据报文时,它从时间戳中减去内部时钟来计算数据年龄。如果数据年龄小于最大的允许年龄,则使用该数据,否则连接进入安全状态。
在图4中,I/O模板401(MACID=3)在内部时钟为1时向主控模板402发送时间协同请求报文404,主控模板402接收到该请求后返回时间协同响应报文405,响应中的时间为116,I/O模板401(MACID=3)在时刻0(407)即内部时钟为5时接收该响应,因此偏移量=116-5=111。I/O模板401(MACID=3)在时刻1(408)发送I/O数据报文(406)时先计算时间戳=111+9=120,主控模板402在时刻3(410)接收到I/O数据报文406时计算出该报文的数据年龄=122-120=2。同理由I/O模板401(MACID=3)在时刻2(409)发出I/O数据报文406,主控模板402在时刻4(411)接收到该报文后计算出该报文的数据年龄=127-124=3。每个I/O模板的内部时钟计数不一定同步,I/O模板403(MACID=6)也通过上述方法在时刻5(412),时刻6(413)时刻8(415)和时刻7(414),时刻9(416)分别计算出每次报文传输的数据年龄。计算过程中为防止计算时出现负数,假设主控模板402的内部时钟计数比I/O模板204的内部时钟计数要大,如果不是则将主控模板402的内部时钟计数加上256后计算。
其中,I/O模板204定周期发送时间协同请求报文404有两个方面作用:一是为了校正该I/O模板204与主控模板402之间的晶体漂移;二是作为I/O模板204的心跳计数,保证通路正常连接。当主控模板402长时间没有接收到某个I/O模板204的时间协同请求报文404和其他I/O数据报文后,可以判断该连接通路已断开,此时主控模板402应该马上报警。
2.连接ID(CID)
每块I/O模板204与各控制模板203之间分别要建立两个连接,一个是从I/O模板204到控制模板203,另一个从控制模板203到I/O模板204。连接是单向的,在一个系统内所有的CID都是独一无二的。
连接ID(ConnectionID)的计算方式为:从主控模板402到某个I/O模板204的CID值为该I/O模板204的MACID*2,从该I/O模板204到三个控制模板203的CID值为该I/O模板204的MACID*2+1。
当I/O模板204发送I/O数据到控制模板203时,三个控制模板203只接收(同时接收)CID为奇数的数据报文;反之,当控制模板203发送数据报文到某个I/O模板204时,所有I/O模板204只接收包含本CID(本MACID*2)的报文。这种机制保证了各控制模板203能够(且只能)同时接收到I/O模板204生产的数据,同时各I/O模板204只能接收到发送给自己的数据报文
3.帧ID(FrameID)
若数据报文采用长数据帧格式,则报文传送前,先需根据总线协议类型将长数据帧拆分成短数据帧,如CAN总线每帧报文内数据长度不超过8个字节。此时每个子报文还将带有帧ID,帧ID表示当前发送的数据帧的编号,接收方必须判断它的连续性,一旦不连续就认为有帧丢失,停止接收并放弃所有此次已接收到的数据帧,并通过发送自检测请求重传报文要求数据发送方重新发送。数据发送方接收到自检测请求重传报文后,终止当前发送(若未完成发送),并按帧ID重新发送此次需要发送的所有子报文。
4.周期冗余码(Safety CRC)
该分布式安全传输方法中所有包含数据的连接报文都使用安全CRC来确保报文传输的完整性。安全CRC是检测报文内数据是否损坏的重要方法。通过安全CRC,可以检测到报文内数据丢失、插入、顺序错误、损坏等多种错误。
安全CRC在报文生产者(I/O模板204/控制模板203)中产生,在报文消费者(控制模板203/I/O模板204)中校验。在跨网络传输时,中间路由器并不检查安全CRC,由此确保了报文独立于网络技术,可在多网络间进行传输。
5.数据冗余
该分布式安全传输方法支持两种数据帧格式:短数据帧格式和长数据帧格式。短数据段格式为多达2字节的安全数据提供高完整性传输,这是大多数安全数据报文的主要格式,此时并不要求数据冗余,若传输的报文中数据超过2个字节,则需采用包含冗余数据的长数据帧格式。此时报文中既包含原始数据,又包含冗余数据即原始数据的反转数据,同时还包含对原始数据的安全CRC和对冗余数据的安全CRC。
此种方法最大允许一次传输长度为255个字节的数据,两种安全CRC确保了报文传输的高完整性。同时,当报文接收方将短数据帧合并为长数据帧且发现校验不正确时,由于冗余数据的存在,可对原始数据和冗余数据分别计算安全CRC,若有一种与收到的两个安全CRC都匹配,则可将该数据作为要接收的完整数据。这样就节省了数据重新传送的时间。
六、安全报文协议说明
该分布式安全传输方法中:
1.I/O数据报文传输的是从某个I/O模板204发往各控制模板203的实时采样数据,当数据长度在2个字节以内时,采用短数据帧报文格式,这是大多数安全数据报文的主要格式,I/O数据报文的短数据帧报文格式为:
表3短数据帧类型的I/O数据报文
Byte0 | Byte1 | Byte2 | Byte3 | Byte4 | Byte5 | Byte6 | Byte7 |
Type | CID | Channel ID | Data 0 | Data 1 | Time Stamp | CRC | CRC* |
其中各字节含义如下:
表4字节Type中各位的含义
Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |
“Type”中Bit7:长数据帧时为1,短数据帧为0;
Bit6:非连接报文(广播报文)时为1,连接报文为0;
Bit5-Bit3:报文类型。Bit6为1时:0即二进制000为建立连接请求报文、1即二进制001为建立连接响应报文、2即二进制010为请求建立连接请求报文、3即二进制011为重复MACID请求报文、4即二进制100为重复MACID正在使用响应报文、5即二进制101为重复MACID报警报文;Bit6为0时:0即二进制000为时间协同请求报文、1即二进制001为时间协同响应报文、2即二进制010为自检测请求重传报文、3即二进制011为自检测报警报文、4即二进制100为I/O数据报文、5即二进制101为配置处理数据报文;
Bit2-Bit0:本报文的总字节数减1。
如带2个字节数据的I/O数据报文Type=00011111。
“CID”:连接ID(Connection ID);
“Channel ID”:I/O模板204的通道号,一块I/O模板204包含很多个I/O通道,每个I/O通道连接一个I/O模块;
“Time Stamp”:时间戳。
“CRC”:对“Data 0”、“Data 1”和“Time Stamp”的8位安全CRC;
“CRC*”:对“Data 0”、“Data 1”和“Time Stamp”的反转数据的8位安全CRC。
当数据长度大于2个字节时,采用长数据帧报文格式,最大允许一次传输长度为255个字节的数据,I/O数据报文的长数据帧报文格式为:
表5长数据帧的I/O数据报文
Byte0 | Byte1 | Byte2 | Byte3 | Byte4 | Byte5 | Byte6 | Byte7 |
Type | CID | Channel ID | Frame ID | Data 0 | Data 1 | Data 2 | Data 3 |
Type | CID | Channel ID | Frame ID | Data 4 | Data 5 | Data 6 | Data 7 |
Type | CID | Channel ID | Frame ID | ... | ... | ... | ... |
其中Data 0、Data 1、Data 2…Data n是将data拆分后的单个字节:
data=Data+CRC+Data*+CRC*=Data 0+Data 1+Data 2+…+Data n。
其中“Data”:Data=数据长度(1Byte)+数据(3-255Byte)+时间戳;
“CRC”:对“Data”的16位安全CRC;
“Data*”:对“Data”的反转数据;
“CRC*”:对“Data*”的16位安全CRC。
其中“Frame ID”:帧ID,每个子报文还将带有帧ID,帧ID表示当前发送的数据帧的编号,接收方必须判断它的连续性。
2.配置处理数据报文是从主控模板402发往某个I/O模板204的配置、处理结果等数据信息,与I/O数据报文相同,配置处理数据报文也分为短数据帧报文和长数据帧报文,当数据长度在2个字节以内时,其短数据帧报文格式为:
表6短数据帧类型的配置处理数据报文
Byte0 | Byte1 | Byte2 | Byte3 | Byte4 | Byte5 | Byte6 |
Type | CID | Channel ID | Data 0 | Data 1 | CRC | CRC* |
当数据长度大于2个字节时,配置处理数据报文的长数据帧报文格式为:
表7长数据帧类型的配置处理数据报文
Byte0 | Byte1 | Byte2 | Byte3 | Byte4 | Byte5 | Byte6 | Byte7 |
Type | CID | Channel ID | Frame ID | Data 0 | Data 1 | Data 2 | Data 3 |
Type | CID | Channel ID | Frame ID | Data 4 | Data 5 | Data 6 | Data 7 |
Type | CID | Channel ID | Frame ID | ... | ... | ... | ... |
与I/O数据报文报文的长数据帧报文格式不同的是,此时的“Data”中Data=数据长度(1Byte)+数据(3-255Byte),不再带有时间戳信息。
3.时间协同请求报文和时间协同响应报文用于获得时间戳,时间协同请求报文由I/O模板定周期发送,其格式为:
表8时间协同请求报文
Byte0 | Byte1 |
Type | CID |
时间协同响应报文由主控模板收到时间协同请求时给予,响应里面带有主控模板当前时刻的内部时钟计数,时间协同响应报文格式为:
表9时间协同响应报文
Byte0 | Byte1 | Byte2 | Byte3 |
Type | CID | Time | CRC |
其中“Time”:主控模板402当前时刻的内部时钟计数;“CRC”:对“Time”的8位安全CRC。
4.自检测请求重传报文、自检测报警报文,当I/O模板204或控制模板203接收到的报文校验错误时发送自检测请求重传报文到错误报文发送方请求重传,当I/O模板204接收到的报文校验错误达到设定次数或报文的传输时间超过设定阈值时,I/O模板204向主控模板402发送自检测报警报文。自检测请求重传报文、自检测报警报文格式为:
表10自检测请求重传报文、自检测报警报文
Byte0 | Byte1 | Byte2 | Byte3 |
Type | CID | Type* | CRC |
其中“Type*”:引起此次报警的报警类型,定义同“Type”;“CRC”:对“Type*”的8位安全CRC。
5.建立连接请求报文、请求建立连接请求报文和建立连接响应报文用于建立连接,其中建立连接请求报文、请求建立连接请求报文格式为:
表11建立连接请求报文、请求建立连接请求报文
Byte0 |
Type |
建立连接响应报文格式为:
表12建立连接响应报文
Byte0 | Byte1 | Byte2 |
Type | CID 1 | CID 2 |
其中“CID 1”:为从主控模板402到该I/O模板204的通道连接ID,值为该I/O模板204的MACID*2;“CID 2”为从I/O模板204到(三个)控制模板203的通道连接ID,值为该I/O模板204的MACID*2+1。
6.重复MACID请求报文、重复MACID正在使用响应报文和重复MACID报警报文用于上电重复MACID检测,其格式为:
Byte0 | Byte1 |
Type | MACID |
Claims (10)
1.适用于DCS的分布式安全传输方法,其特征在于该方法的步骤包括:
步骤a. 控制系统上电,主站和从站做上电重复MACID检测;
步骤b. 主站和从站间建立连接;
步骤c. 主站通过安全报文向各从站发送配置信息;
步骤d. 各从站根据从主站接收到配置信息中的数据采集周期,定周期通过安全报文向主站发送采集到的数据;
步骤e. 主站将从从站接收到的数据处理后,通过安全报文向各从站发送相应的控制信息;
上述过程中,安全报文的接收方接收到报文后对其进行解包校验,若校验错误则请求发送方重新发送,当校验错误达到设定次数或报文的传输时间超过设定阈值时,报警并使连接进入安全状态。
2.根据权利要求1所述的分布式安全传输方法,其特征在于:步骤a中的控制系统满足如下要求:
A. 支持单主或多主系统,主站和从站统一编址;
B. 以CAN总线为基本网络,同时允许访问不同的网络,可以作为多种总线的应用层;
C. 各种底层网络之间通过标准路由来路由安全数据;
D. 通信模式采用多播方式和点对点方式,其中多播基于生产者/消费者模型,点对点基于源/目的地模型,其中I/O数据传送采用多播方式,控制信息和配置信息传送采用点对点方式。
3.根据权利要求1所述的分布式安全传输方法,其特征在于:所述主站是指控制模板,从站是指I/O模板。
4.根据权利要求2所述的分布式安全传输方法,其特征在于:所述控制系统中的单主系统是指整个系统只有1个控制模板,多主系统是指整个系统有多个控制模板,多个控制模板中有一个为主控模板。
5.根据权利要求2所述的分布式安全传输方法,其特征在于:所述控制系统中的各种底层网络是指CAN总线、PROFIBUS总线、DeviveNet总线或ControlNet总线。
6.根据权利要求1所述的分布式安全传输方法,其特征在于:所述MACID是指设定的各主站和从站的地址,均通过拨码开关确定,主站和从站通过上电重复MACID检测方法保证各节点的MACID唯一。
7.根据权利要求1所述的分布式安全传输方法,其特征在于:所述主站和从站通过建立连接方法确定主站和从站之间各通道连接ID,确定安全报文的发送路径。
8.根据权利要求1所述的分布式安全传输方法,其特征在于:所述安全报文是指带有连接ID、通道号、原始数据、时间戳、安全CRC、反转安全CRC、冗余数据和帧ID的报文,通过及时地发现报文丢失、重复、添加、顺序错、损坏、延迟的通信错误,实现报文安全传输。
9.根据权利要求1所述的分布式安全传输方法,其特征在于:所述安全状态是指控制系统出现异常情况时,从站以预定义认为能使系统安全运行的控制参数进行工作。
10.根据权利要求1所述的分布式安全传输方法,其特征在于:所述安全报文包括连接报文和非连接报文两类,每种类型对应的具体报文如表1所示:
表1 报文类型
I/O数据报文传输的是从某个I/O模板发往各控制模板的实时采样数据,当数据长度在2个字节以内时,采用短数据帧报文格式,这是大多数安全数据报文的主要格式,I/O数据报文的短数据帧报文格式为:
表2 短数据帧类型的I/O数据报文
当数据长度大于2个字节时,采用长数据帧报文格式, I/O数据报文的长数据帧报文格式为:
表3 长数据帧的I/O数据报文
配置处理数据报文是从主控模板发往某个I/O模板的控制信息和配置信息, 与I/O数据报文相同,配置处理数据报文也分为短数据帧报文和长数据帧报文,当数据长度在2个字节以内时,其短数据帧报文格式为:
表4 短数据帧类型的配置处理数据报文
当数据长度大于2个字节时,配置处理数据报文的长数据帧报文格式为:
表5 长数据帧类型的配置处理数据报文
时间协同请求报文和时间协同响应报文用于获得时间戳,时间协同请求报文由I/O模板定周期发送,其格式为:
表6 时间协同请求报文
时间协同响应报文由主控模板收到时间协同请求时给予,响应里面带有主控模板当前时刻的内部时钟计数,时间协同响应报文格式为:
表7 时间协同响应报文
当I/O模板或控制模板接收到的报文校验错误时发送自检测请求重传报文到错误报文发送方请求重传,当I/O模板接收到的报文校验错误达到设定次数或报文的传输时间超过设定阈值时,向主控模板发送自检测报警报文;自检测请求重传报文、自检测报警报文格式为:
表8 自检测请求重传报文、自检测报警报文
建立连接请求报文、请求建立连接请求报文和建立连接响应报文用于建立连接,其中建立连接请求报文、请求建立连接请求报文格式为:
表9 建立连接请求报文、请求建立连接请求报文
建立连接响应报文格式为:
表10 建立连接响应报文
重复MACID请求报文、重复MACID正在使用响应报文和重复MACID报警报文用于上电重复MACID检测,其格式为:
表11 重复MACID请求报文、重复MACID正在使用响应报文、重复MACID报警报文
。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210134120.1A CN102664719B (zh) | 2012-05-03 | 2012-05-03 | 适用于dcs的分布式安全传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210134120.1A CN102664719B (zh) | 2012-05-03 | 2012-05-03 | 适用于dcs的分布式安全传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102664719A true CN102664719A (zh) | 2012-09-12 |
CN102664719B CN102664719B (zh) | 2014-11-26 |
Family
ID=46774142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210134120.1A Active CN102664719B (zh) | 2012-05-03 | 2012-05-03 | 适用于dcs的分布式安全传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102664719B (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103188122A (zh) * | 2013-03-19 | 2013-07-03 | 深圳市汇川控制技术有限公司 | 基于can网络的通讯系统及方法 |
CN103716420A (zh) * | 2014-01-03 | 2014-04-09 | 西南大学 | Modbus ASCII从站自动获取站地址方法及从站 |
CN103856578A (zh) * | 2014-01-03 | 2014-06-11 | 西南大学 | Modbus RTU从站自动获取站地址方法及从站 |
CN104283867A (zh) * | 2014-09-11 | 2015-01-14 | 江苏集群软创信息科技有限公司 | 一种分布式数据库安全访问的方法 |
CN106448110A (zh) * | 2016-10-26 | 2017-02-22 | 南方电网科学研究院有限责任公司 | 基于北斗卫星的计量自动化数据采集系统及方法 |
CN106788894A (zh) * | 2016-12-20 | 2017-05-31 | 中核控制系统工程有限公司 | 分段独立传输校验方法 |
CN107888408A (zh) * | 2017-09-29 | 2018-04-06 | 广东核电合营有限公司 | 一种提高网络测量设备连接可靠性的系统及其方法 |
CN109756463A (zh) * | 2017-11-07 | 2019-05-14 | 北京长城华冠汽车科技股份有限公司 | 车辆can网络的通信方法、通信系统及车辆 |
CN110545257A (zh) * | 2019-07-22 | 2019-12-06 | 北京航盛新能科技有限公司 | 一种汽车can总线加密方法 |
CN110989333A (zh) * | 2019-10-29 | 2020-04-10 | 北京星际荣耀空间科技有限公司 | 基于多计算核的冗余控制方法、计算核及冗余控制系统 |
CN111240294A (zh) * | 2020-03-23 | 2020-06-05 | 扬州市宝路机电科技有限公司 | 一种用于工业自动化的仪表控制系统 |
CN112637011A (zh) * | 2020-12-17 | 2021-04-09 | 杭州和利时自动化有限公司 | 数据传输方法、数据传输装置、数据传输设备及存储介质 |
CN116319155A (zh) * | 2022-09-20 | 2023-06-23 | 深圳市同芯智控技术有限公司 | 一种基于EtherCAT总线协议的分布式控制系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050274417A1 (en) * | 2004-06-14 | 2005-12-15 | Rosemount Inc. | Process equipment validation |
US20090107745A1 (en) * | 2007-10-25 | 2009-04-30 | Gm Global Technology Operations, Inc. | Method and system for monitoring signal integrity in a distributed controls system |
CN201717594U (zh) * | 2010-07-13 | 2011-01-19 | 北京国电智深控制技术有限公司 | 一种被控系统的安全保护装置和系统 |
CN102436250A (zh) * | 2012-01-31 | 2012-05-02 | 中国科学院上海应用物理研究所 | 一种远程监控系统 |
-
2012
- 2012-05-03 CN CN201210134120.1A patent/CN102664719B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050274417A1 (en) * | 2004-06-14 | 2005-12-15 | Rosemount Inc. | Process equipment validation |
US20090107745A1 (en) * | 2007-10-25 | 2009-04-30 | Gm Global Technology Operations, Inc. | Method and system for monitoring signal integrity in a distributed controls system |
CN201717594U (zh) * | 2010-07-13 | 2011-01-19 | 北京国电智深控制技术有限公司 | 一种被控系统的安全保护装置和系统 |
CN102436250A (zh) * | 2012-01-31 | 2012-05-02 | 中国科学院上海应用物理研究所 | 一种远程监控系统 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103188122A (zh) * | 2013-03-19 | 2013-07-03 | 深圳市汇川控制技术有限公司 | 基于can网络的通讯系统及方法 |
CN103188122B (zh) * | 2013-03-19 | 2017-05-03 | 深圳市汇川控制技术有限公司 | 基于can网络的通讯系统及方法 |
CN103716420A (zh) * | 2014-01-03 | 2014-04-09 | 西南大学 | Modbus ASCII从站自动获取站地址方法及从站 |
CN103856578A (zh) * | 2014-01-03 | 2014-06-11 | 西南大学 | Modbus RTU从站自动获取站地址方法及从站 |
CN103856578B (zh) * | 2014-01-03 | 2017-10-13 | 西南大学 | Modbus RTU从站自动获取站地址方法及从站 |
CN104283867A (zh) * | 2014-09-11 | 2015-01-14 | 江苏集群软创信息科技有限公司 | 一种分布式数据库安全访问的方法 |
CN106448110A (zh) * | 2016-10-26 | 2017-02-22 | 南方电网科学研究院有限责任公司 | 基于北斗卫星的计量自动化数据采集系统及方法 |
CN106788894A (zh) * | 2016-12-20 | 2017-05-31 | 中核控制系统工程有限公司 | 分段独立传输校验方法 |
CN107888408A (zh) * | 2017-09-29 | 2018-04-06 | 广东核电合营有限公司 | 一种提高网络测量设备连接可靠性的系统及其方法 |
CN109756463A (zh) * | 2017-11-07 | 2019-05-14 | 北京长城华冠汽车科技股份有限公司 | 车辆can网络的通信方法、通信系统及车辆 |
CN110545257A (zh) * | 2019-07-22 | 2019-12-06 | 北京航盛新能科技有限公司 | 一种汽车can总线加密方法 |
CN110545257B (zh) * | 2019-07-22 | 2022-02-25 | 北京航盛新能科技有限公司 | 一种汽车can总线加密方法 |
CN110989333A (zh) * | 2019-10-29 | 2020-04-10 | 北京星际荣耀空间科技有限公司 | 基于多计算核的冗余控制方法、计算核及冗余控制系统 |
CN111240294A (zh) * | 2020-03-23 | 2020-06-05 | 扬州市宝路机电科技有限公司 | 一种用于工业自动化的仪表控制系统 |
CN112637011A (zh) * | 2020-12-17 | 2021-04-09 | 杭州和利时自动化有限公司 | 数据传输方法、数据传输装置、数据传输设备及存储介质 |
CN116319155A (zh) * | 2022-09-20 | 2023-06-23 | 深圳市同芯智控技术有限公司 | 一种基于EtherCAT总线协议的分布式控制系统 |
CN116319155B (zh) * | 2022-09-20 | 2024-01-30 | 深圳市同芯智控技术有限公司 | 一种基于EtherCAT总线协议的分布式控制系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102664719B (zh) | 2014-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102664719B (zh) | 适用于dcs的分布式安全传输方法 | |
CN103826252B (zh) | 主从设备之间获取及发送序列号的方法和系统 | |
CN110177013B (zh) | 一种基于FPGA的EtherCAT主从站设计与实现方法 | |
CN102087132B (zh) | 一种水表的无线通讯处理方法 | |
CN102332971B (zh) | 数控系统现场总线全双工可靠通信方法 | |
CN101056194B (zh) | 一种简单网络管理协议消息传送方法及装置 | |
CN111817940B (zh) | 工业控制环网系统及其实现方法 | |
CN103716420A (zh) | Modbus ASCII从站自动获取站地址方法及从站 | |
CN101695171A (zh) | 通过流控制传输协议测量网络传输质量的方法和装置 | |
CN103856578B (zh) | Modbus RTU从站自动获取站地址方法及从站 | |
CN100550757C (zh) | 组播通信网络中联合注册的方法及装置 | |
WO2018171641A1 (zh) | 网络管理信息的收发方法、装置、发送设备和接收设备 | |
CN103166800B (zh) | 一种双网冗余消息总线交叉故障下的消息传输方法 | |
CN105183687A (zh) | 一种分时串口通信方法及系统 | |
CN114584274A (zh) | 一种提高用电信息采集成功率的方法 | |
CN206470580U (zh) | 安全可编程逻辑控制器通信系统 | |
CN102624620B (zh) | 一种基于令牌帧的以太网传输方法的传输系统 | |
CN102685009A (zh) | 一种组播传输路径的探测方法及装置 | |
JP2017046250A (ja) | マスタ装置、スレーブ装置及び通信システム | |
CN105634894B (zh) | 一种增强型can总线数据重发方法和装置 | |
US8667116B2 (en) | Method and system for providing reliable communication with redundancy for energy constrained wireless systems | |
CN102711163A (zh) | 一种ip-ran设备快速检测告警链路故障的方法 | |
Ab Ghani et al. | A Review of Communication Protocols for Intelligent Remote Terminal Unit Development | |
CN105721296A (zh) | 一种提高链状结构的ZigBee网络稳定性的方法 | |
CN110099001A (zh) | 双向转发检测时间参数协商方法、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
EE01 | Entry into force of recordation of patent licensing contract | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20120912 Assignee: Zhejiang Yixin Technology Co., Ltd Assignor: HANGZHOU DIANZI University Contract record no.: X2020330000043 Denomination of invention: Distributed secure transmission method applied to distributed control system (DCS) Granted publication date: 20141126 License type: Common License Record date: 20200608 |