您好,欢迎访问三七文档
1.104规约用于网络传输的协议,端口号固定使用2404。2.TCP/IP通讯中接收服务的一方为客户端,104规约中主站一般是召唤数据的一方,因此主站端定义为客户端。TCP/IP通讯中提供服务的一方为服务端,104规约中厂站端是提供数据的一方,因此厂站端定义为服务器端。3.104规约采用的是平衡方式通讯(双方都可以发起信息传输,一旦链路建立成功,变化信息除了响应召唤应答还可以主动发送而无需等待查询)。4.使用与101相同的应用层(ASDU)。5.报文不使用帧校验字节。6.通过I格式报文的计数及确认来保证信息传输的安全性。7.104规约的报文结构8.在APDU中,启动字符68H定义了数据流内的起始点,应用规约数据单元的长度定义了APDU主体的长度;需要注意的是,IEC60870-5-104规定一个APDU报文(包括启动字符和长度标识)不能超过255个字节,因此APDU最大长度为253(等于255减去启动和长度标识共两个8位位组),ASDU的最大长度为249,这个要求限制了一个APDU报文最多能发送121个不带品质描述的归一化测量值或243个不带时标的单点遥信信息,若RTU采集的信息量超过此数目,则必须分成多个APDU进行发送。9.控制域,定义了保护报文不至于丢失和重复传送的控制信息,报文传输启动、停止,以及传输连接的监视等。10.104定义了三种类型的报文格式编号的信息传输格式,I格式。用作信息报文的传送,附带发送序列号和接收序列号,作为接收方对已发送报文的确认。编号的监视功能格式,S格式。当本站长期没有信息帧发送时,向对方报告已收到信息帧序列号,作接收方对发送方的确认。不编号的控制功能格式,U格式。链路测试命令和确认,启动数据传送命令和确认,停止数据传送命令和确认。说明:当报文接收方收到发送方的I格式报文后,如果没有I格式报文需要发送给对方,可以向对方发送S格式报文以对所接收的报文进行确认。为防止I格式报文在传送过程中丢失或重复传送,I格式报文的控制域定义了发送序号N和接收序号R,发送方每发送一个格式报文,其发送序号应加1,接收方每接收到一个与其接收序号相等的I格式报文后,其接收序号应加1,需要注意的是,每次重新建立TCP连接后,调度主站和子站RTU的接收序号和发送序号都应清零,因此在双方开始数据传送后,接收方若收到一个I格式报文,应判断此I格式报文的发送序号是否等于自己的接收序号。若相等则应将自己的接收序号加1,若此I格式报文的发送序号大于自己的接收序号,这说明发送放发送的一些报文出现了丢失,若此I格式报文的发送序号小于自己的接收序号,这意味着发送方出现了重复传送。此外,I格式和S格式报文的接收序号表明了发送该报文的一方对已接收的I格式报文的确认,若发送方发送的某一I格式报文后长时间无法在对方的接收序号中得到确认,这就意味着发生了报文丢失。当出现上述这些报文丢失,错序的情况是,通常意味着TCP连接出现了问题,发送方或接收方应关闭现在的TCP连接然后再重新建立新的TCP连接,并在新的TCP连接上重新开始会话过程。在主站端和子站RTU端进行通信时,接收方可以使用S格式报文(当有应用服务单元需要发送给对方时,可以使用I格式报文)对已接收的I格式报文进行确认,以免发送方超时收不到确认信息而重新建立TCP连接。这就存在一个接收方收到多少个I格式报文进行一次确认的问题,以及发送方应在多少个I格式报文未得到确认时停止发送数据,104规定了两个参数K和W取值为1到32767,其中看表示发送方在有K个I格式报文未得到对方的确认时,将定制数据发送,W表示接收方最迟在接收W个格式报文后应发出认可;104规定K和W的默认值分别为12个APDU和8个APDU。在实际中,K和W的具体取值可以根据TCP连接双方的数据通信量加以确定,对于子站RTU端来说,每收到一个调度端的I格式报文都应立即进行响应,其W的取值实际上为1,由于RTU端可以循环向调度端发送遥信、遥测等信息,因此K的取值与其循环发送的定时周期有关,通常12到20个APDU就足够了;对于主站端,由于不停接收到RTU的数据,因此应及时地给以确认,通常W取小于8个APDU的值。为了能对TCP连接进行检查和维护,104规定了几个超时时间,t0,t1,t2,t3它们的取值范围为1-255S,准确度为1S。T0规定了主站端和子站端建立一次TCP连接的最大允许时间,住主站端和子站端之间的tcp连接在实际运行中可能经常进行关闭和重建,这发生在4种情况下:主站端和子站端之间的I格式报文传送出现丢失、错序或者发送U格式报文得不到应答时,双方均可主动关闭TCP连接,然后进行重连。主站系统重新启动后将与各个子站重新建立tcp连接子站RTU合上电源或由于自恢复而重新启动后,将重新连接子站RTU收到主站端的RESET_PROCESS信号后,将关闭连接并重新初始化,然后重建连接。每次建立连接时RTU都调用SOCKET的LISTEN函数进行侦听,主站调用SOCKET的CONNECT函数进行连接,如果在T0时间内未能成功建立连接,可能网络发生了故障,主站端应该向运行人员给出警告信息。T1规定发送方发送一个I格式报文或U格式报文后,必须在T1的时间内得到接收方的认可,否则发送方认为TCP连接出现问题并应重新建立连接。T2规定接收方在接收到I格式报文后,若经过T2时间未再发送新的I格式报文,则必须向发送方发送S格式帧对已经收到的I格式报文进行认可,显然T2必须小于T1。T3规定调度端或子站端每接收一个I,S,U报文将重新触发计时器t3,若在t3内未能接收到任何报文,将向对方发送测试链路报文。11.只有I格式才能用于传送ASDU,I格式的APDU至少必须包含一个ASDU,用于传送遥测,遥信,遥控,遥调等信息。12.应用服务数据单元(ASDU)类型标识:定义了信息对象的结构、类型和格式。一个ASDU内全部信息对象用相同的结构、类型和格式。例如,单位遥信,双位遥信,归一化遥测等。可变结构限定词:低七位表示本ASDU内包含的信息对象数量,也就是说一个ASDU最大能够包含的信息对象数量为127;最高位表示信息对象的排列方式,此位为0表示信息对象是离散排列的,为1表示信息是顺序排列的,只需要指明第一个信息对象地址,后续信息对象地址被隐去,默认为是前一个信息对象地址加1。注:在回答召唤或组召唤时,为了压缩信息传输时间,提高信息传输效率,规定必须使用1,作为变化信息上送时,由于信息的变化顺序是随机的,一般使用0。传送原因类型标识可变结构限定词传送原因(2字节)应用服务数据单元公共地址(2字节)信息对象标识数据单元标识符信息对象地址信息对象地址信息对象地址信息元素集时标7个八位位组毫秒至年信息对象时标信息体1信息对象n数据单元标识应用服务数据单元(ASDU)源发地址用来表明来自哪个主站的召唤,一般情况下不使用,规定源发地址不适用时置零,低6位是传送原因序号,104和101规约规定,任何一次信息传输必须具有明确的传送原因,而且必须给出肯定或者否定的认可。特别是传送原因44-47,对于通讯双方必须认真对待,这往往就是排除通讯中问题的有效手段。控制站将舍弃那些传送原因未定义的应用服务数据单元。应用服务公共地址一般作为站地址一般高字节固定为0,1-254表示站地址,255表示全局地址(全局站的广播地址)。控制站将舍弃那些公共地址未定义的应用服务数据单元。信息体地址三个字节表示,最高字节一般置为零,最多能够表达65535个信息。同类信息对象地址必须连续。主站和对应的厂站两侧的地址分配必须一致。其他说明控制站将舍弃那些信息对象地址具有未定义值的应用服务数据单元。一个ASDU中的首个信息体必须具有信息地址。信息体元素必须出现,是否包含信息体时标由相应的报文类型确定。建议使用长时标以确保信息的完整性。报文举例:带长时标的单点遥信报文格式(I格式)带长时标的标度遥测报文格式(I格式)报文68171208062423010300010006400031140008061506120807解释报文头长度发送序号接收信号长时标度化遥信息数目突发公共地址信息地址遥测值品质描述词2007年8月18日6时21分1秒544毫秒报文6815120806241E01030001000600000108061506120807解释报文头长度发送序号接收序号单点SOE信息数目突发公共地址信息地址合闸2007年8月18日6时21分1秒544毫秒试验标志确认标志原因源发地址测值S格式报文报文680401001200解释报文头长度固定标志接收序号U格式报文报文680407000000解释报文头长度开启命令固定标志I格式报文(正常)S格式报文正常I格式报文(受干扰)I格式报文(未确认)U格式报文(正常)U格式报文(超时未确认)TCP连接的建立和关闭控制站的初始化被控站的本地初始化被控站的远方初始化
本文标题:104规约总结
链接地址:https://www.777doc.com/doc-3056054 .html