1、10104定义了三种类型的报文格式 编号的信息传输格式,I格式。用作信息报文的传送,附带发送序列号和接收序列号,作为接收方对已发送报文的确认。 编号的监视功能格式,S格式。当本站长期没有信息帧发送时,向对方报告已收到信息帧序列号,作接收方对发送方的确认。 不编号的控制功能格式,U格式。链路测试命令和确认,启动数据传送命令和确认,停止数据传送命令和确认。说明: 当报文接收方收到发送方的I格式报文后,如果没有I格式报文需要发送给对方,可以向对方发送S格式报文以对所接收的报文进行确认。为防止I格式报文在传送过程中丢失或重复传送,I格式报文的控制域定义了发送序号N和接收序号R,发送方每发送一个格式报文
2、,其发送序号应加1,接收方每接收到一个与其接收序号相等的I格式报文后,其接收序号应加1,需要注意的是,每次重新建立TCP连接后,调度主站和子站RTU的接收序号和发送序号都应清零,因此在双方开始数据传送后,接收方若收到一个I格式报文,应判断此I格式报文的发送序号是否等于自己的接收序号。若相等则应将自己的接收序号加1,若此I格式报文的发送序号大于自己的接收序号,这说明发送放发送的一些报文出现了丢失,若此I格式报文的发送序号小于自己的接收序号,这意味着发送方出现了重复传送。此外,I格式和S格式报文的接收序号表明了发送该报文的一方对已接收的I格式报文的确认,若发送方发送的某一I格式报文后长时间无法在对
3、方的接收序号中得到确认,这就意味着发生了报文丢失。当出现上述这些报文丢失,错序的情况是,通常意味着TCP连接出现了问题,发送方或接收方应关闭现在的TCP连接然后再重新建立新的TCP连接,并在新的TCP连接上重新开始会话过程。在主站端和子站RTU端进行通信时,接收方可以使用S格式报文(当有应用服务单元需要发送给对方时,可以使用I格式报文)对已接收的I格式报文进行确认,以免发送方超时收不到确认信息而重新建立TCP连接。这就存在一个接收方收到多少个I格式报文进行一次确认的问题,以及发送方应在多少个I格式报文未得到确认时停止发送数据,104规定了两个参数K和W取值为1到32767,其中看表示发送方在有
4、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规定了几个超时时间,t
5、0,t1,t2,t3它们的取值范围为1-255S,准确度为1S。T0规定了主站端和子站端建立一次TCP连接的最大允许时间,住主站端和子站端之间的tcp连接在实际运行中可能经常进行关闭和重建,这发生在4种情况下: 主站端和子站端之间的I格式报文传送出现丢失、错序或者发送U格式报文得不到应答时,双方均可主动关闭TCP连接,然后进行重连。 主站系统重新启动后将与各个子站重新建立tcp连接 子站RTU合上电源或由于自恢复而重新启动后,将重新连接 子站RTU收到主站端的RESET_PROCESS信号后,将关闭连接并重新初始化,然后重建连接。每次建立连接时RTU都调用SOCKET的LISTEN函数进行侦听
6、,主站调用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格式的AP
7、DU至少必须包含一个ASDU,用于传送遥测,遥信,遥控,遥调等信息。12应用服务数据单元(ASDU)应用服务数据单元(ASDU) 类型标识:定义了信息对象的结构、类型和格式。一个ASDU内全部信息对象用相同的结构、类型和格式。例如,单位遥信,双位遥信,归一化遥测等。 可变结构限定词:低七位表示本ASDU内包含的信息对象数量,也就是说一个ASDU最大能够包含的信息对象数量为127;最高位表示信息对象的排列方式,此位为0表示信息对象是离散排列的,为1表示信息是顺序排列的,只需要指明第一个信息对象地址,后续信息对象地址被隐去,默认为是前一个信息对象地址加1。注:在回答召唤或组召唤时,为了压缩信息传输
8、时间,提高信息传输效率,规定必须使用1,作为变化信息上送时,由于信息的变化顺序是随机的,一般使用0。 传送原因源发地址用来表明来自哪个主站的召唤,一般情况下不使用,规定源发地址不适用时置零,低6位是传送原因序号,104和101规约规定,任何一次信息传输必须具有明确的传送原因,而且必须给出肯定或者否定的认可。特别是传送原因44-47,对于通讯双方必须认真对待,这往往就是排除通讯中问题的有效手段。控制站将舍弃那些传送原因未定义的应用服务数据单元。 应用服务公共地址一般作为站地址一般高字节固定为0,1-254表示站地址,255表示全局地址(全局站的广播地址)。控制站将舍弃那些公共地址未定义的应用服务
9、数据单元。 信息体地址三个字节表示,最高字节一般置为零,最多能够表达65535个信息。同类信息对象地址必须连续。主站和对应的厂站两侧的地址分配必须一致。其他说明控制站将舍弃那些信息对象地址具有未定义值的应用服务数据单元。一个ASDU中的首个信息体必须具有信息地址。信息体元素必须出现,是否包含信息体时标由相应的报文类型确定。建议使用长时标以确保信息的完整性。报文举例:带长时标的单点遥信报文格式(I格式)报文6815120806241E010300010006000008061506120807解释报文头长度发送序号接收序号单点SOE信息数目突发公共地址信息地址合闸2007年8月18日6时21分1秒544毫秒带长时标的标度遥测报文格式(I格式)1723064000311400接收信号长时标度化遥测值信息地址遥测值品质描述词S格式报文041200固定标志U格式报文07000000开启命令I格式报文(正常)S格式报文正常I格式报文(受干扰)I格式报文(未确认)U格式报文(正常)U格式报文(超时未确认)TCP连接的建立和关闭控制站的初始化被控站的本地初始化被控站的远方初始化
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1