协议基础知识

1. 应用规约控制信息(APCI)的定义

传输接口(TCP到用户) 是一个面向流接口,它没有为IEC 60870-5-101中的ASDU定义任何启动或者停止机制。为了检出ASDU的启动和结束,每个APCI包括下列的定界元素:一个启动字符,ASDU的规定长度,以及控制域(见图4)。可以传送一个完整的APDU(或者,出于控制目的,仅仅是传送APCI域)(见图5)。

控制域定义了保护报文不至丢失和重复传送的控制信息、报文传输启动/停止、以及传输连接的监视等控制信息。控制域的计数器机制是根据ITU-T X.25 标准中推荐的2.3.2.2.1 至2.3.2.2.5来定义的。
图6,7,8为控制域的定义。
三种类型的控制域格式用于编号的信息传输(I格式),编号的监视功能(S格式)和未编号的控制功能(U格式)。
控制域第一个八位位组的第一位比特 = 0 定义了I 格式, I格式的APDU常常包含一个  ASDU.  I格式的控制信息如图6所示


控制域第一个八位位组的第一位比特 = 1 并且第二位比特 = 0 定义了S 格式. S格式的APDU只包括APCI. S格式的控制信息如图7所示。

控制域第一个八位位组的第一位比特 = 1 并且第二位比特 =1 定义了U格式. U格式的APDU只包括APCI. U格式的控制信息如图8所示。在同一时刻,TESTFR, STOPDT 或 STARTDT中只有一个功能是激活的。

2. 应用层报文格式——ASDU

IEC 60870-5-3描述了远动系统传输帧中的基本应用数据单元,此子条款是从基本标准中所选择的特定域元素,并定义了用于配套标准中的应用服务数据单元(ASDU)。
本配套标准规定每一个链路规约数据单元(一个报文)只有一个应用服务数据单元(ASDU)。
应用服务数据单元(ASDU见图9)由数据单元标识符和一个或多个信息对象所组成。
数据单元标识符在所有应用服务数据单元中常有相同的结构,一个应用服务数据单元中的信息对象常有相同的结构和类型,它们由类型标识域所定义。
数据单元标识符的结构如下:
一个八位位组 类型标识;
一个八位位组 可变结构限定词;
二个八位位组 传送原因;
二个八位位组 应用服务数据单元公共地址.
应用服务数据单元公共地址的八位位组数目是由系统参数所决定,公共地址是站地址。它可以去寻址整个站或者仅仅站的特定部分。
时标(如果出现的话)它属于单个信息对象。
信息对象由一个信息对象标识符(如果出现的话)、一组信息元素和一个信息对象时标(如果出现的话)所组成。
信息对象标识符仅由信息对象地址组成,在大多数情况下,在一个特定系统中,应用服务数据单元公共地址连同信息对象地址一起可以区分全部信息元素集,在每一个系统中这两个地址结合在一起将是明确的。类型标识不是公共地址也不是信息对象地址。
一组信息元素集可以是单个信息元素、一组综合元素或者一个顺序元素。
注:类型标识定义了信息对象的结构、类型和格式。一个应用服务数据单元内全部信息对象有相同的结构、类型和格式。

数据单元标识符:=CP16+8a+8b{TYPE IDENTIFICATION,VARIABLE STRUCTURE QUALIFIER,CAUSE OF TRANSMISSION,COMMON ADDRESS},
系统参数a :=公共地址的八位位组数目(2)
系统参数b :=传送原因的八位位组数目(2)
信息对象 := CP8c+8d+8t{INFORMATION OBJECT ADDRESS,SET OF INFORMATION ELEMENTS,TIME TAG(OPT)}
系统参数c :=信息对象地址数目(3)。
可变参数d := 信息元素集八位位组的数目
可变参数t := 3若信息对象时标出现,0 若信息对象时标不出现。

2.1类型标识

第一个八位位组为类型标识(图10),它定义了后续信息对象的结构、类型和格式。
类型标识定义如下:


信息对象带或不带时标由标识类型的不同序号来区分。
控制站将舍弃那些接收到的其类型标识未被定应用服务数据单元。
在IEC60870-5-101中以及本标准第8条中定义的ASDU是有效的.
5.2 类型标识域值的语义定义
类型标识值<0>未用,在配套标准中定义了1至127的值,128至255未定义。136至255可以由此标准的使用者彼此独立的进行定义,仅当使用具有类型标识号在1至127的范围的应用服务数据单元才能达到全部互换地工作。
类型标识=TYPE IDENTIFICATION:=UI8[1..8]<1..255>
<1..127> := 本配套标准的标准定义(兼容范围)
<128..135> := 为路由报文保留(专用范围)
<136..255> := 特殊应用(专用范围)*)

表 1 在监视方向的过程信息
类型标识 :=UI8[1..8]<0..44>

描述 标志
<0> := 未定义
<1> := 单点信息 M_SP_NA_1
<3> := 双点信息 M_DP_NA_1
<5> := 步位置信息 M_ST_NA_1
<7> := 32比特串 M_BO_NA_1
<9> := 测量值,规一化值 M_ME_NA_1
<11> := 测量值,标度化值 M_ME_NB_1
<13> := 测量值,短浮点数 M_ME_NC_1
<15> := 累计量 M_IT_NA_1
<20> := 带状态检出的成组单点信息 M_PS_NA_1
<21> := 不带品质描述的规一化测量值 M_ME_ND_1
<22..29>:= 保留
*<30> := 带时标CP56Time2a的单点信息 M_DP_TB_1
*<32> := 带时标CP56Time2a的步位置信息 M_ST_TB_1
*<33> := 带时标CP56Time2a的32比特串 M_BO_TB_1
*<34> := 带时标CP56Time2a的测量值,规一化值 M_ME_TD_1
*<35> := 带时标CP56Time2a的测量值,标度化值 M_ME_TE_1
*<36> := 带时标CP56Time2a的测量值,短浮点数 M_SP_TB_1
*<37> := 带时标CP56Time2a的累计量 M_IT_TB_1
*<39> := 带时标CP56Time2a的继电保护装置成组启动事件 M_EP_TE_1
*<40> := 带时标CP56Time2a的继电保护装置成组出口信息 M_EP_TF_1
<41..44>:= 保留

表 2 在控制方向的过程信息
类型标识 := UI8[1..8]<45..69>

描述 标志
CON <45> := 单命令 C_SC_NA_1
CON <46> := 双命令 C_DC_NA_1
CON <47> := 升降命令 C_RC_NA_1
CON <48> := 设点命令,规一化值 C_SE_NA_1
CON <49> := 设点命令,标度化值 C_SE_NB_1
CON <50> := 设点命令,短浮点数 C_SE_NC_1
CON <51> := 32比特串 C_BO_NA_1
<52..57> := 保留
在控制方向的过程信息,带时标的ASDU
CON <58> := 带时标CP56Time2a的单命令 C_SC_NA_1
CON <59> := 带时标CP56Time2a的双命令 C_DC_NA_1
CON <60> := 带时标CP56Time2a的升降命令 C_RC_NA_1
CON <61> := 带时标CP56Time2a的设点命令,规一化值 C_SE_TA_1
CON <62> := 带时标CP56Time2a的设点命令,标度化值 C_SE_TB_1
CON <63> := 带时标CP56Time2a的设点命令,短浮点数 C_SE_TC_1
CON <64> := 带时标CP56Time2a的32比特串 C_BO_NA_1
<65..69> := 保留

在控制方向传送过程信息给指定站时,可以带或者不带时标,但二者不能混合发送.
浙江版规定
只使用不带时标的命令,即typeID:45~51。
注:在控制方向上具有CON标记的ASDU,在监视方向上可以传送同样的报文内容,只是传送原因会不相同,在监视方向上这些ASDU用作肯定或否定确认.
表 3 在监视方向的系统信息
类型标识 := UI8[1..8]<70..99>

描述 标志
<70> := 初始化结束 M_EI_NA_1
<71..99> := 为兼容定义保留

表 4 在控制方向的系统信息
类型标识 := UI8[1..8]<100..109>

描述 标志
CON <100> := 总召唤命令 C_IC_NA_1
CON <101> := 电能脉冲召唤命令 C_CI_NA_1
<102> := 读命令 C_RD_NA_1
CON <103> := 时钟同步命令 C_CS_NA_1
CON <105> := 复位进程命令 C_RP_NA_1
CON <107> := 带时标CP56Time2a的测试命令 C_TS_NA_1
<108..109> := 为兼容定义保留

表 5 在控制方向的参数
类型标识 := UI8[1..8]<110..119>

描述 标志
CON <110> := 测量值参数,规一化值 P_ME_NA_1
CON <111> := 测量值参数,标度化值 P_ME_NB_1
CON <112> := 测量值参数,短浮点数 P_ME_NC_1
CON <113> := 参数激活 P_AC_NA_1
<114..119> := 为兼容定义保留

注:在控制方向上具有CON标记的ASDU,在监视方向上可以传送同样的报文内容,只是传送原因会不相同,在监视方向上这些ASDU用作肯定或否定确认.
5.3 可变结构限定词
在应用服务数据单元中,其数据单元标识符的第二个八位位组定义为可变结构限定词(图11),如下所述 :

可变结构限定词(VARIABLE STRUCTURE QUALIFIER) :=CP8{number、SQ}
其中 number =N=数目 := UI7[1..7]<0..127>
<0> :=应用服务数据单元不含信息元素
<1..127> :=应用服务数据单元信息元素的数目
SQ=单个或者顺序 := BS1[8]<0..1>
<0> :=同一种类型的许多信息对象中寻址一个个别的信息元素或者综合的信息元素
<1> :=在一个信息对象中寻址顺序的信息元素
SQ<0>和N<0..127>∶= 信息对象的数目i
SQ<1>和N<0..127>∶=每个应用服务数据单元中单个对象的信息元素的数目j
SQ位指明寻址后续信息对象或信息元素的方法。
SQ := 0 由信息对象地址寻址的单个信息元素或综合信息元素。应用服务数据单元可以由一个或者多个同类的信息对象所组成。数目N是一个二进制数,它定义了信息对象的数目。
SQ := 1 同类的信息元素序列(即同一种格式测量值)由信息对象地址来寻址(见IEC 60870-5-3中的5.1.5),信息对象地址是顺序信息元素的第一个信息元素的地址。后续信息元素的地址是从这个地址起顺序加1。数目N是一个二进制数,它定义了信息对象的数目。在顺序信息元素的情况下每个应用服务数据单元仅安排一种信息对象。
5.4 传送原因
在应用服务数据单元中,其数据单元标识符的第三个八位位组定义为传送原因(图13),如下所述 :

传送原因域值语义定义
传送原因=CAUSE OF TRANSMISSION := UI8[1..6]<0..63>
其中 Cause :=
<0> := 未定义
<1..63> :=传送原因序号
<1..47> :=本配套标准的标准定义(兼容范围)
<48..63> := 专用范围
T=test := BS1[8]<0..1>
<0> :=未试验
<1> :=试验
Originator address=源发地址 := UI8[9..16]<0..1>
<0> :=缺省值
<1..255> :=源发地址号
控制站将舍弃那些传送原因值没有被定义的应用服务数据单元。
将应用服务数据单元送给某个特定的应用任务(程序)时,应用任务(程序)根据传送原因的内容便于进行处理。
P/N位用以对由启动应用功能所请求的激活以肯定或者否定确认。
原因中测试-比特定义了应用服务数据单元是在测试条件下所产生的。它被用于去测试传输和设备,但不控制过程。
标上(CON) 的应用服务数据单元是被应用服务所确认,在监视方向形成镜像,但传送原因不同(见表10、11和13)。
源发地址指引这些镜像的应用服务数据单元和在镜像方向所召唤(即由站召唤所召唤)的应用服务数据单元送给激活这个进程的源地址。
如果没有使用源发地址,在系统中有多个源,在镜像方向的应用服务数据单元将被送给系统全部有关的源。在这种情况下,特定的受影响的源必需选择它自己的特定应用服务数据单元。
如果采用了源发地址,下述定义有效。
<0> :=缺省
0用来定义存储在网络镜像中的返回信息、事件等当作过程信息,它们必须传输到分布系统的所有部分。
<1..255>
此值域用于寻址系统的特定部分, 在镜像方向相应的信息将要返回到系统的这些特定部分。

传送原因的语义

描述 标志
<0> := 未用
<1> := 周期、循环 per/cyc
<2> := 背景扫描 back
<3> :=突发(自发) spont
<4> := 初始化 init
<5> :=请求或者被请求 req
<6> :=激活 act
<7> :=激活确认 actcon
<8> :=仃止激活 deact
<9> :=仃止激活确认 deactcon
<10> :=激活终止 actterm
<11> := 远方命令引起的返送信息 retrem
<12> := 当地命令引起的返送信息 retloc
<13> :=文件传输 file
<14..19> :=保留
<20> :=响应站召唤 introgen
<21> :=响应第1组召唤 inro1
<22> :=响应第2组召唤 inro2
<23> :=响应第3组召唤 inro3
<24> :=响应第4组召唤 inro4
<25> :=响应第5组召唤 inro5
<26> :=响应第6组召唤 inro6
<27> :=响应第7组召唤 inro7
<28> :=响应第8组召唤 inro8
<29> :=响应第9组召唤 inro9
<30> :=响应第10组召唤 inro10
<31> :=响应第11组召唤 inro11
<32> :=响应第12组召唤 inro12
<33> :=响应第13组召唤 inro13
<34> :=响应第14组召唤 inro14
<35> :=响应第15组召唤 inro15
<36> :=响应第16组召唤 inro16
<37> :=响应计数量站召唤 reqcogen
<38> :=响应笫1组计数量召唤 reqco1
<39> :=响应笫2组计数量召唤 reqco2
<40> :=响应笫3组计数量召唤 reqco3
<41> :=响应笫4组计数量召唤 reqco4
<42..43> :=为配套标准保留(兼容范围)
<44> :=未知的类型标识
<45> :=未知的传送原因
<46> :=未知的应用服务数据单元公共地址
<47> :=未知的信息对象地址

在控制方向的应用服务数据单元 其数据单元标识符以及信息对象地址为未定义的值(可变结构限定词除外) 、被控站以“P/N=<1>否定确认”以及下述传送原因回答∶
传送原因
未知类型标识 44
未知传送原因 45
未知应用服务数据单元公共地址 46
未知信息对象地址 47
控制站每次接收到下述应用服务数据单元,监视和保持通信差错记录报告∶
-在监视方向上的应用服务数据单元,其数据单元标识符(可变结构队限定词除外) 值未定义;
-在监视方向上的应用服务数据单元,其信息对象地址值未定义;
-镜像的应用服务数据单元,在控制方向由于未知(类型标识符44至51和70)的序号,
接收这些应用服务数据单元不会影响后续报文的处理。

5.5 应用服务数据单元公共地址
应用服务数据单元中数据单元标识符的第四个和第五个(任选)八位位组定义为应用服务数据单元公共地址,公共地址的长度(两个八位位组) 是一个系统参数,每一个系统此参数为固定值(图16、17)。

应用服务数据单元公共地址 :=UI16[1..16]<0..65535>
其中 <0> :=未用
<1..65534> :=站地址
<65535> :=全局地址
控制站将舍弃那些公共地址具有未定义值的应用服务数据单元。
公共地址是和一个应用服务数据单元内的全部对象联系在一起(见IEC60870-5-3表 1
)。全局地址是向一个系统全部站的广播地址。在控制方向带广播地址的应用服务数据单元,必须在监视方向以包含特定定义的地址(站地址)的应用服务数据单元回答。
在公共地址为FF或者FFFF(广播地址,请求全体) 的情况下,以被控站的特定公共地址返回ACTCON、ACTTERM和被召唤的信息对象(如果有的话),如同它们是由向某个特定站发送命令后响应一样。
FF和FFFF的公共地址严格限定用于在控制方向上的下述应用服务数据单元:
类型标识<100>:= 召唤命令 C_IC_NA_1
类型标识<101>:= 计数量召唤命令 C_CI_NA_1
类型标识<103>:= 时钟同步命令 C_CS_NA_1
类型标识<105>:= 复位进程命令 C_RP_NA_1
FF和FFFF的公共地址可用于一个特定系统中在所有站在同一时刻同时启动同一个应用功能,即用时钟同步命令去同步当地时钟或者由计数量召唤命令去冻结电能累计量。
5.6 信息对象地址
下面定义三个信息对象地址(图20),信息对象地址长度(三个八位位组)是一个系统参数,每一个系统是固定的。
信息对象地址在控制方向作为目的地址,在监视方向作为源地址。

信息对象地址 :=UI24[1..24]<0..16777215>
其中 <0> :=无关的信息对象地址
<1..16777215> :=信息对象地址
控制站将舍弃那些信息对象地址具有未定义值的应用服务数据单元。
笫三个八位位组仅用于结构化信息对象地址在一个特定系统中定义唯一的地址。在所有情况下不同信息对象地址的最大数目限制为65536(二个八位位组)。如果某些应用服务数据单元中信息对象地址是无关的,它就设置为零。
信息对象是一组定义好的信息片,它需要一个名字(信息对象地址) 以便在通信时去识别它的使用(见ISO/IEC8824 3.31和IEC60870-5-3 3.3)。如定义,信息对象携带信息元素,信息元素识别单个信息点,单个信息点可以由信息对象地址唯一地寻址。例如传输返回信息的信息对象必需和传送命令的信息对象有不同的信息对象地址。
读命令C_RD_NA_1是例外, 因为它的信息对象地址用来寻址在监视方向返回有用的信息对象。
信息对象地址可以和应用服务数据单元(类型标识)独立地规定, 应用服务数据单元传送特定的信息对象。信息对象可以用同一个信息对象地址采用不同的应用服务数据单元,即带时标或者不带时标的单点信息。
在监视方向或者(和)控制方向上没有特定公共地址的应用服务数据单元的其他组合可以携带同样的信息对象地址。特别地,命令(应用服务数据单元类型45至69) 和参数(应用服务数据单元类型110至119)不能使用和监视的数据(应用服务数据单元类型1至44)相同的信息对象地址值。
在信息点的单个状态改变的情况下,具有同样信息对象地址的信息对象可以传输两次,一次不带时标,一次带时标。不带时标的信息对象通常尽可能地优先传输,对于控制站能尽快地反映过程控制是非常有用的。带时标的信息对象传输优先级较低,事后用以对事件系列校核。所有信息对象以传送原因3(突发)传送两次。这种模式称为“双传输” 必须由固定的站-特定参数加以定义。
对于没有指明支持双传输的所有应用服务数据单元类型,单个状态改变将仅引起单个信息对象的传输。

5.7 CP56Time2a - 7字节时标

3. 通讯流程

下面以公共地址字节=2/传送原因字节=2/信息体地址字节=3,97版基地址为例.
报文中字符均为16进制表示,报文中长度指除启动符与长度字节外的所有字节.
注意长帧报文中的”发送序号”与”接收序号”具有抗报文丢失功能.

第一步:首次握手(U帧)
发送―>激活传输启动 : 68(启动符)04(长度)07(控制域) 00 00 00
接收―>确认激活传输启动: 68(启动符)04(长度)0B(控制域) 00 00 00

第二步:总召唤,召唤YC,YX(可变长I帧)初始化后定时发送总召唤( DF8900系统通过设置RTU参数表中的”全数据扫描间隔”单位是分钟.DF1800/DF8002系统在程序中写定,一般15分钟召唤一次)
发送―>总召唤 :
68(启动符)0E(长度) 00 00(发送序号,2个字节)00 00(接收序号,2个字节)64(类型标识)01(可变结构限定词)06 00(传送原因,2个字节)01 00(公共地址,即RTU站址,2个字节)0000 00(信息体地址,3个字节)14(QOI,区分是总召唤还是分组召唤,如果是2002版基地址的没有分组召唤)
接收―>S帧:(记录接收到的长帧,双方都可以按频率发送,文本规定最多接收8帧I帧回答一S帧,但我们要求接收一帧I帧就应答一S帧)
68 04 01 00 02 00:
接收―>总召唤确认(发送帧的镜像,除传送原因不同):
68(启动符)0E(长度)00 00(发送序号,2个字节) 00 00(接收序号,2个字节) 64 (类型标识)01(可变结构限定词) 07 00(传送原因,2个字节) 01 00(公共地址,即RTU站址,2个字节)00 00 00(信息体地址,3个字节) 14 (QOI)
发送―>S帧:(记录接收到的长帧,双方都可以按频率发送,文本规定最多接收8帧I帧回答一S帧,但我们要求接收一帧I帧就应答一S帧)
68 04 01 00 02 00
接收―>YX帧:(以类型标识1为例)
68(启动符) 1A(长度) 02 00 (发送序号,2个字节)02 00(接收序号,2个字节) 01(类型标识,单点遥信) 04(可变结构限定词,有4个遥信上送) 14 00 (传送原因,2个字节,响应总召唤)01 00 (公共地址,即RTU站址,2个字节)03 00 00(信息体地址,3个字节,第3号遥信) 00(遥信分) 05 00 00 (信息体地址,3个字节,第5号遥信)00(遥信分) 08 00 00(信息体地址,3个字节,第8号遥信)01 (遥信合)09 00 00 (信息体地址,3个字节,9号遥信)00(遥信分)
发送―>S帧:
68 04 01 00 04 00
接收―>YX帧:(以类型标识3为例)
68(启动符) 1E(长度) 04 00(发送序号,2个字节) 02 00(接收序号,2个字节)03(类型标识,双点遥信) 05 (可变结构限定词,有5个遥信上送)14 00(传送原因,2个字节,响应总召唤) 01 00 (公共地址,即RTU站址,2个字节)01 00 00 (信息体地址,3个字节,第1号遥信)02(遥信合) 06 00 00 (信息体地址,3个字节,第6号遥信)02(遥信合) 0A 00 00 (信息体地址,3个字节,第10号遥信)01(遥信分) 0B 00 00(信息体地址,3个字节,第11号遥信) 02 (遥信合)0C 00 00 (信息体地址,3个字节,第12号遥信)01 (遥信分)
发送―>S帧:
68 04 01 00 06 00
接收―>YC帧:(以类型标识9为例)
68(启动符) 13(长度) 06 00 (发送序号,2个字节)02 00 (接收序号,2个字节)09 (类型标识,带品质描述的遥测)82(可变结构限定词,有2个连续的遥测) 14 00 (传送原因,2个字节,响应总召唤)01 00(公共地址,即RTU站址,2个字节) 01 07 00(信息体地址,3个字节,从第0x701即0号遥测开始)A1 10(遥测值0x10A1) 00(品质描述) 89 15(遥测值0x1589) 00(品质描述)
发送―>S帧:
68 04 01 00 08 00
接收―>结束总召唤帧:
68(启动符) 0E(长度)08 00 (发送序号,2个字节)02 00(接收序号,2个字节) 64 (类型标识)01(可变结构限定词)0A 00 (传送原因,2个字节)01 00 (公共地址,即RTU站址,2个字节)00 00 00(信息体地址,3个字节) 14(QOI)
发送―>S帧:
68 04 01 00 0A 00

第三步:电度总召唤(如果没有电度此步骤可以省略且该步骤可以在对时之前发送,DF8900系统通过设置RTU参数表中的”全数据扫描间隔”单位是分钟.DF1800/DF8002系统在程序中写定,一般15分钟召唤一次,如果不需要召唤电度一定在RTU参数表中电度个数设置为0)
发送―>召唤电度 :
68(启动符)0E(长度) 04 00(发送序号,2个字节)0E 00(接收序号,2个字节)65(类型标识)01(可变结构限定词)06 00(传送原因,2个字节)01 00(公共地址,2个字节)0000 00(信息体地址,3个字节)45(QCC)
接收―>召唤确认(发送帧的镜像,除传送原因不同):
68(启动符)0E(长度)10 00(发送序号,2个字节) 06 00(接收序号,2个字节) 65 (类型标识)01(可变结构限定词) 07 00(传送原因,2个字节) 01 00(公共地址,2个字节)00 00 00(信息体地址,3个字节) 05 (QCC)
发送―>S帧:
68 04 01 00 12 00
接收―>电度数据:68(启动符) 1A(长度) 12 00(发送序号,2个字节) 06 00(接收序号,2个字节) 0F (类型标识)02(可变结构限定词,2个电度值) 05 00 (传送原因,2个字节)01 00(公共地址,2个字节)01 0C 00 (信息体地址,3个字节,0xc01,0号电度)00 00 00 00(电度值)00(描述信息)02 0C 00(信息体地址,3个字节,0xc01,1号电度)00 00 00 00 (电度值)01(描述信息)
发送―>S帧:
68 04 01 00 14 00
接收―>结束总召唤帧:
68(启动符) 0E(长度)14 00 (发送序号,2个字节)06 00(接收序号,2个字节) 65 (类型标识)01(可变结构限定词)0A 00 (传送原因,2个字节)01 00 (公共地址,2个字节)00 00 00(信息体地址,3个字节) 45(QCC)
发送―>S帧:
04 01 00 16 00

**第四步:如果RTU有变化数据主动上送
主动上送变位遥信,类型标识为1或3**
接收―>变位遥信:
68(启动符) 0E(长度) 16 00 (发送序号,2个字节)06 00 (接收序号,2个字节)01(类型标识,单点遥信) 01(可变结构限定词,1个变位发生) 03 00 (传送原因,2个字节,表突发事件)01 00(公共地址,2个字节) 03 00 00(信息体地址,3个字节,3号遥信)00(分)
发送―>S帧:
04 01 00 18 00
接收―>变位遥信:
68(启动符)0E(长度) 18 00 (发送序号,2个字节)06 00(接收序号,2个字节) 03(类型标识,双点遥信)01(可变结构限定词,1个变位发生) 03 00(传送原因,2个字节,表突发事件) 01 00 (公共地址,2个字节)06 00 00(信息体地址,3个字节,6号遥信) 01(分)
发送―>S帧:
04 01 00 1a 00
68(启动符) 15(长度)1c 00(发送序号,2个字节) 06 00(接收序号,2个字节)1F(类型标识,双点)01(可变结构限定词,1个SOE) 03 00(传送原因,2个字节,表突发事件)01 00 (公共地址,即RTU站址,2个字节)0A 00 00 (信息体地址,3个字节,10号遥信)01(分) 2F 40 (毫秒,2个字节)1C(分) 10 (时)7A(日与星期) 0B(月) 05(年)

第五步:如果主站超过5s没有收到从站响应的任何数据需要从新发起总召唤或者召唤电量指令
68(启动符)0E(长度) 00 00(发送序号,2个字节)00 00(接收序号,2个字节)64(类型标识)01(可变结构限定词)06 00(传送原因,2个字节)01 00(公共地址,即RTU站址,2个字节)0000 00(信息体地址,3个字节)14(QOI,区分是总召唤还是分组召唤,如果是2002版基地址的没有分组召唤)

第六步:遥控
发送―>遥控预置:68(启动符) 0E(长度)* (发送序号,2个字节) *(接收序号,2个字节) 2E (类型标识)01(可变结构限定词) 06 00(传送原因,2个字节) 01 00(公共地址,2个字节) 05 0B 00(信息体地址,3个字节,遥控号=0xb05-0xb01= 4) 82(控合)
接收―>遥控反校:68(启动符) 0E(长度) 0E 00(发送序号,2个字节) 06 00(接收序号,2个字节)2E(类型标识)01(可变结构限定词) 07 00 (传送原因,2个字节)01 00(公共地址,2个字节) 05 0B 00(信息体地址,3个字节,遥控号=0xb05-0xb01= 4) 82(控合)

发送―>遥控执行:68(启动符) 0E(长度) 04 00(发送序号,2个字节) 18 00(接收序号,2个字节)2E(类型标识)01(可变结构限定词)06 00(传送原因,2个字节)01 00(公共地址,即RTU站址,2个字节) 05 0B 00(信息体地址,3个字节,遥控号=0xb05-0xb01= 4) 02(控合)
接收―>执行确认:68(启动符) 0E(长度) 12 00(发送序号,2个字节)08 00(接收序号,2个字节)2E(类型标识)01(可变结构限定词) 07 00(传送原因,2个字节)01 00(公共地址,即RTU站址,2个字节)05 0B 00(信息体地址,3个字节,遥控号=0xb05-0xb01= 4)02(控合)

发送―>遥控撤销:68(启动符) 0E(长度) 04 00(发送序号,2个字节) 18 00(接收序号,2个字节)2E(类型标识)01(可变结构限定词)08(传送原因,2个字节)01 00(公共地址,即RTU站址,2个字节) 05 0B 00(信息体地址,3个字节,遥控号=0xb05-0xb01= 4)02(控合)
接收―>撤销确认:68(启动符) 0E(长度) 12 00 (发送序号,2个字节)08 00(接收序号,2个字节)2E(类型标识)01(可变结构限定词) 09 00(传送原因,2个字节,,停止激活确认)01 00(公共地址,即RTU站址,2个字节)05 0B 00(信息体地址,3个字节,遥控号=0xb05-0xb01= 4)02(控合)

4. 通讯平台上查看数据通讯状态

在通讯平台配置与监控管理软件中的实时数据上查看实时数据和通讯元数据

切换到详细面板可以观察到每个参数点的更新时间,可以判断设备中某个参数是否正常通讯更新,如果采集时间已经改变数据还是为0表示设备采集到的真实数据就是0。

四方通讯主机IEC104通讯相关推荐

  1. 虚拟机Ubuntu设置固定IP与主机相互通讯

    虚拟机Ubuntu设置固定IP与主机相互通讯 1. 写在最前 1.1 最好了解的预备知识 1.2 虚拟机与主机三种连接方式 1.3 写在最前 2. VMware 虚拟机Ubuntu系统与主机共享IP ...

  2. 【内网安全-通讯上线】通讯上线基础知识

    前言: 介绍: 博主:网络安全领域狂热爱好者(承诺在CSDN永久无偿分享文章). 殊荣:CSDN网络安全领域优质创作者,2022年双十一业务安全保卫战-某厂第一名,某厂特邀数字业务安全研究员,edus ...

  3. 威纶和s7200通讯线_PLC通讯,西门子plc通讯知识汇总学习

    (一)西门子 200 plc 使用 MPI 协议与组态王进行通讯时需要哪些设置? 1)在运行组态王的机器上需要安装西门子公司提供的 STEP7 Microwin 3.2 的编程软件,我们的驱动需要调用 ...

  4. php 三方即时通讯_php即时通讯解决方案-请问PHP能否实现即时通讯?

    最简单的说,它可以定期刷新,比如10秒的间隔.新数据,反馈到前台,没有新数据等待下次刷新. 但实际上在应用中需要考虑消息的及时性.服务器压力等.php即时通讯. 可以用comet来设计 节点.js.s ...

  5. 安川伺服总线通讯方式_plc通讯方式有哪三种?plc常见的三种通讯方式

    原标题:plc通讯方式有哪三种?plc常见的三种通讯方式 PLC = Programmable Logic Controller,可编程逻辑控制器,一种数字运算操作的电子系统,专为在工业环境应用而设计 ...

  6. php网页怎么和PLC通讯,plc网络通讯方式和协议

    plc网络是由几级子网复合而成,各级子网的通讯过程是由通讯协议决定的,而通讯方式是通讯协议最核心的内容.通讯方式包括存取控制方式和数据传送方式.所谓存取控制(也称访问控制)方式是指如何获得共享通讯介质 ...

  7. Labview Ethernetip TCP网口通讯欧姆龙PLC OmronNX1P2NJ501NJ301PLC标签通讯 CIP通讯比Fins通讯更完美

    Labview Ethernetip TCP网口通讯欧姆龙PLC OmronNX1P2NJ501NJ301PLC标签通讯 CIP通讯比Fins通讯更完美. 1.自定义变量读写 2.支持 Bool单点或 ...

  8. 上位机与PLC 通讯源码 上位机与三菱PLC,西门子PLC通讯 同时一起通讯,单独控制,三菱采用官方MX 通讯,支持三菱FX系列,

    上位机与PLC 通讯源码 上位机与三菱PLC,西门子PLC通讯 同时一起通讯,单独控制,三菱采用官方MX 通讯,支持三菱FX系列,A系列,Q系列,L系列,R系列,全系系列,各种串口和各种网口通讯,, ...

  9. 西门子PLC伺服大型20轴程序modbus通讯RS232通讯MES通讯气缸,通讯

    西门子PLC伺服大型20轴程序modbus通讯RS232通讯MES通讯气缸,通讯,机械手,模拟量等,各种FB块 PTO控制20多个轴,100多个气缸,控制2台机器人. 5台PLC智能IO通讯,Modb ...

最新文章

  1. redis value is not an integer or out of range
  2. 智邦国际怎么样?企业管理软件好不好?
  3. 【Git】搭建Git 服务器
  4. 【壹刊】Azure AD 保护的 ASP.NET Core Web API (下)
  5. 基于JAX-WS的webService开发实例
  6. K8S+Docker理论与实践深度集成
  7. VUE 解决:Method “xxx“ has already been defined as a data property.
  8. Oracle SQL篇(四)group by 分组与分组的加强 rollup
  9. An internal error occurred during: Launching MVC on Tomcat 7.x.
  10. 众达两化融合贯标日记06~贯标启动会PPT
  11. js获取粘贴的html,JS读取粘贴板内容
  12. python创建sqlite3 gbk错误_请问django python用sqlite3模拟创建一个服务器时出现错误?...
  13. eclipse vail_屏幕快照:Windows Home Server Beta“ Vail”安装过程
  14. 揭开 BAT 的人工智能版图
  15. 基于CANOpen协议驱动直流无刷减速电机
  16. python自动获取邮件数据_Python 提取数据库(Postgresql)并邮件发送
  17. sprintf用法(很强大啊)
  18. HTC Desire HD(DHD G10) 刷机时MIUI卡在htc开机画面的解决方法
  19. AFNetworking用法
  20. 书法拓片matlab,如何轻松快速制作出书法作品的拓片效果?

热门文章

  1. Linux下activeMQ的启动和停止命令
  2. 华硕R510LD,win7显卡独显硬件驱动问题解决
  3. linux最大文件名,Linux路径名和文件名最大长度限制
  4. MySQL学习笔记-基础篇2
  5. 盖国强:数据驱动传统行业与互联网融合
  6. 手把手教你用python来预测天猫双11数据是否存在造假
  7. 金蝶s-HR V8.2、EAS与云之家同步常见问题集锦(一)
  8. RICO学习,innerhtml
  9. 北大本科转行计算机,北京教委公布本科跨省转学名单,两学霸为学计算机转出北大...
  10. gomonkey总结