IEC103通信流程详解.doc_第1页
IEC103通信流程详解.doc_第2页
IEC103通信流程详解.doc_第3页
IEC103通信流程详解.doc_第4页
IEC103通信流程详解.doc_第5页
免费预览已结束,剩余51页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

控制系统 保护设备一、首先进行初始化过程发送复位if 使用复位通信单元 then if 对全部设备进行复位 then beginManageGuDingZhen(var GuDingzh:TGuDingzh,0,$FF,$40)Else if 对单个设备进行复位 thenBeginGetAddr(设备地址);ManageGuDingZhen(var GuDingzh:TGuDingzh,0,$FF,$40);End;End else if 使用复位帧计数位进行复位 then if 对全部设备进行复位 then beginManageGuDingZhen(var GuDingzh:TGuDingzh,7,$FF,$47)Else if 对单个设备进行复位 thenBeginGetAddr(设备地址);ManageGuDingZhen(var GuDingzh:TGuDingzh,7,$FF,$47); 超时间不回答End;重发超过Twz引起发送复位通信单元或者复位帧计数位,过程如上确认 if 控制系统发送的ASDU0 thenbegin if ASDU0的地址为$FF then if 没有一级数据 then beginif 接受缓冲区已经满 then ManageGuDingZhen(var GuDingzh:TGuDingzh,0,$FF,$10)Else if 接受缓冲区仍然能接受数据ManageGuDingZhen(var GuDingzh:TGuDingzh,0,$FF,$00);endElse if 有一级数据then beginif 接受缓冲区已经满 then ManageGuDingZhen(var GuDingzh:TGuDingzh,0,$FF,$20)Else if 接受缓冲区仍然能接受数据ManageGuDingZhen(var GuDingzh:TGuDingzh,0,$FF,$30);End; If ASDU0的地址为某一个具体设备的地址A then if 没有一级数据 then beginif 接受缓冲区已经满 then ManageGuDingZhen(var GuDingzh:TGuDingzh,0,A,$10)Else if 接受缓冲区仍然能接受数据ManageGuDingZhen(var GuDingzh:TGuDingzh,0,A,$00);endElse if 有一级数据then beginif 接受缓冲区已经满 then ManageGuDingZhen(var GuDingzh:TGuDingzh,0,A,$20)Else if 接受缓冲区仍然能接受数据ManageGuDingZhen(var GuDingzh:TGuDingzh,0,A,$30);End;清空发送缓冲区;End else if控制系统发送的ASDU7 thenbegin if ASDU0的地址为$FF then if 没有一级数据 then beginif 接受缓冲区已经满 then ManageGuDingZhen(var GuDingzh:TGuDingzh,0,$FF,$10)Else if 接受缓冲区仍然能接受数据ManageGuDingZhen(var GuDingzh:TGuDingzh,0,$FF,$00);endElse if 有一级数据then beginif 接受缓冲区已经满 then ManageGuDingZhen(var GuDingzh:TGuDingzh,0,$FF,$20)Else if 接受缓冲区仍然能接受数据ManageGuDingZhen(var GuDingzh:TGuDingzh,0,$FF,$30);End; If ASDU0的地址为某一个具体设备的地址A then if 没有一级数据 then beginif 接受缓冲区已经满 then ManageGuDingZhen(var GuDingzh:TGuDingzh,0,A,$10)Else if 接受缓冲区仍然能接受数据ManageGuDingZhen(var GuDingzh:TGuDingzh,0,A,$00);endElse if 有一级数据then beginif 接受缓冲区已经满 then ManageGuDingZhen(var GuDingzh:TGuDingzh,0,A,$20)Else if 接受缓冲区仍然能接受数据ManageGuDingZhen(var GuDingzh:TGuDingzh,0,A,$30);End;请求1级或者2级数据End;If 保护设备发送过来的ASDU0的ACD位为0 then /表明没有一级数据BeginIf ASDU0的DFC位为0 thenbeginIf ASDU0的地址为$FF then 请求2级数据ManageGuDingZhen(var GuDingzh:TGuDingzh,11,$FF,$5B)else ASDU0的地址为某一个具体设备的地址A then 请求2级数据ManageGuDingZhen(var GuDingzh:TGuDingzh,11,A,$5B);endelse if ASDU0的DFC位为1 then begin发送复位通信单元,清空缓冲区,进行复位;过程如上end;end else if 保护设备发送的ASDU0的ACD位为1 then BeginIf ASDU0的DFC位为0 thenbeginIf ASDU0的地址为$FF then 请求1级数据ManageGuDingZhen(var GuDingzh:TGuDingzh,11,$FF,$5A)else ASDU0的地址为某一个具体设备的地址A then 请求1级数据ManageGuDingZhen(var GuDingzh:TGuDingzh,11,A,$5A);endelse if ASDU0的DFC位为1 then begin发送复位通信单元,清空缓冲区,进行复位;过程如上end;响应end 设备发送相应的复位帧响应,对于子站,直接发送ASDU5: xjtu对于特定的子站,分配地址A if 控制系统发送的C的FunCode为0表示发送的是复位通信单元ASD0 thenbeginif 接收缓冲区未满 then /定义专用范围的funtypebeginFactoryName:=($58 , $4A , $54 , $55 , $49 , $45 ,$20 , $20) /XJTUIE自定义一个功能类型funtype:=$00 /表示高崖变FunType描述0高崖变子站系统1新添变子站系统Funtype根据上表来取值ManageBianChangZhen0(var BianChangZh:TBianChangZh; 5, A,$00; $03, LTime:TLTime; STime:TSTime; NGD:TNGD; NDE:TNDE; Tongyongid:TTongyongid; TongYongData:TTongYongData; DEL:TDEL; GIN:TGIN; RaoDongDataId:TRaoDongDataid; RaoDongData:TRaoDongData; BeiCeZhi1:TBeiCeZhi1; TongDao:TTongDao; FactoryName:TFactoryName; StateChange:TStateChange; SDV:TSDV; $28, $04, FunType:byte);endElse if 接收缓冲区已经满 then begin把上面的ManageBianChangZhen0的C由$28改为$38发送即可;end; End Else if 控制系统发送的帧的C的funCode为7表示发送的是FCB通信单元ASDU7 thenBeginif 接收缓冲区未满 then /定义专用范围的funtypebeginFactoryName:=($58 , $4A , $54 , $55 , $49 , $45 ,$20 , $20) /XJTUIEFuntype根据上表来取值 ManageBianChangZhen0(var BianChangZh:TBianChangZh; 5, A,$00; 02, LTime:TLTime; STime:TSTime; NGD:TNGD;NDE:TNDE;Tongyongid:TTongyongid;TongYongData:TTongYongData; DEL:TDEL; GIN:TGIN; RaoDongDataId:TRaoDongDataid; RaoDongData:TRaoDongData; BeiCeZhi1:TBeiCeZhi1; TongDao:TTongDao; FactoryName:TFactoryName; StateChange:TStateChange; SDV:TSDV; $28, $03, FunType:byte;endElse if 接收缓冲区已经满 then begin把上面的ManageBianChangZhen0的C由$28改为$38发送即可;end;End; if 正常复位 then begin等待主站响应;end else If 设备合上电源 then BeginIf 保护设备无法正确区分电源合上的顺序 then 根据上帧得知控制系统发送的是ASDU0或者ASDU7发送相应的ASDU5,但是发送原因要改为$05 else 保护设备能争取区分电源合上的顺序 then 根据上帧得知控制系统发送的是ASDU0或者ASDU7发送相应的ASDU5,但是发送原因要改为$06 End; 保存发送过来帧的FCB位;时间同步过程 if 收到的帧不正确(例如校验不正确,再次受到上一帧响应等等)或者超过50100ms没有收到 then Begin 重传上一帧,FCB不变反;End elseIf 超过Twz仍然接受不正确或者没有收到 then Begin 进行复位;End else If 正确接受响应帧 then 发送复位通信单元,清空缓冲区,进行复位Else If 响应帧的DFV位为1 then Begin if 对所有的保护设备进行广播对时 then begin 发送ASDU6,地址为$FFManageBianChangZhen1(var BianChangZh:TBianChangZh; LTime:TLTime; NGD:TNGD; 6, $FF, $00, Tongyongid:TTongyongid; TongYongData:TTongYongData; RaoDongDataId: TRaoDongDataid);EndElse if 对某一个特定的保护设备进行时间同步 thenBegin 获取设备的地址A,发送ASDU6ManageBianChangZhen1(var BianChangZh:TBianChangZh; LTime:TLTime; NGD:TNGD; 6, A, $00, Tongyongid:TTongyongid; TongYongData:TTongYongData; RaoDongDataId: TRaoDongDataid; $53);End;End ;/注:如果在最后一次同步后超过23h没有同步或者是在保护设备内部检出了一个不允许的内部时间偏差就把之前的全部实时报文的IV位置1,标志这个相应的时间无效确认if 控制系统发送过来的帧的FCB位与保存的FCB相同 then 把上一响应或者确认帧重新发送else If 是广播报文 then 各自进行时间设置并等待控制系统的下一个命令Else 发送确认帧,有一级数据beginif 接受缓冲区仍然能接受数据 then ManageGuDingZhen(var GuDingzh:TGuDingzh,0,A,$20)Else if 接受缓冲区已经满 ManageGuDingZhen(var GuDingzh:TGuDingzh,0,A,$30);End; 保存发送过来帧的FCB位;/注:收到时间之后,要对发送过来的时间进行修正,具体的方法见P566 请求一级数据if 收到的帧不正确(例如校验不正确,再次受到上一帧响应等等)或者超过50100ms没有收到 then Begin 重传上一帧,FCB不变反为0;End elseIf 超过Twz仍然接受不正确或者没有收到 then Begin 进行复位;End else If 正确接受 then If ASDU0的DFC位为0 thenbegin请求1级数据,地址为某一个具体设备的地址A ManageGuDingZhen(var GuDingzh:TGuDingzh,11,A,$7A);endelse if ASDU0的DFC位为1 then begin发送复位通信单元,清空缓冲区,进行复位;end;响应if 控制系统发送过来的帧的FCB位与保存的FCB相同 then 把上一响应或者确认帧重新发送Else 发送ASDU6作为响应if 接收缓冲区未满then BeginLTime:=控制方向传输过去的时间加以修正的结果;ManageBianChangZhen0(var BianChangZh:TBianChangZh; 6 ,A, $00, $00; LTime:TLTime; STime:TSTime; NGD:TNGD; NDE:TNDE; Tongyongid:TTongyongid; TongYongData:TTongYongData; DEL:TDEL; GIN:TGIN; RaoDongDataId:TRaoDongDataid; RaoDongData:TRaoDongData; BeiCeZhi1:TBeiCeZhi1; TongDao:TTongDao; FactoryName:TFactoryName;StateChange:TStateChange; SDV:TSDV; $08 , $08 , $FF)End;保存发送过来帧的FCB位/注:监视方向的ASDU6的时间是时间设定命令的时间信息,并按传输时间和内部处理时间校正的结果,传送到发送缓冲区的报文都得按此正确的时间顺序,即所有的后续报文都得用新的同步时间总召唤开始if 收到的帧不正确(例如校验不正确,再次受到上一帧响应等等)或者超过50100ms没有收到 then Begin 重传上一帧,FCB不变反为1;End elseIf 超过Twz仍然接受不正确或者没有收到 then Begin 进行复位;End else If 正确接受 then If 响应帧的DFV位为1 then发送复位通信单元,清空缓冲区,进行复位else if响应帧的DFV位为1 then Begin 发送ASDU7SCN可以随意赋值,但不能重复;ManageBianChangZhen1(var BianChangZh:TBianChangZh; LTime:TLTime; NGD:TNGD; 7, A, $00; Tongyongid:TTongyongid; TongYongData:TTongYongData; RaoDongDataId: TRaoDongDataid ; $53, 0,$FF, SCN);End;确认if 控制系统发送过来的帧的FCB位与保存的FCB相同 then 把上一响应或者确认帧重新发送Else 发送确认帧,有一级数据if 接受缓冲区仍然能接受数据 then ManageGuDingZhen(var GuDingzh:TGuDingzh,0,A,$20)Else if 接受缓冲区已经满ManageGuDingZhen(var GuDingzh:TGuDingzh,0,A,$30);保存发过来帧的FCB位;召唤事件if 收到的帧不正确(例如校验不正确,再次受到上一帧响应等等)或者超过50100ms没有收到 then Begin 重传上一帧,FCB不变反为0;End elseIf 超过Twz仍然接受不正确或者没有收到 then Begin 进行复位;End else If 正确接受 then If 响应帧的DFV位为1 then发送复位通信单元,清空缓冲区,进行复位else if 响应帧的DFV位为0 thenbegin 请求1级数据,地址为某一个具体设备的地址A ManageGuDingZhen(var GuDingzh:TGuDingzh,11,A,$7A);End;If 控制系统发送过来的帧的FCB位与保存的FCB相同 then 把上一响应或者确认帧重新发送else 响应总查询报文注:保护设备有自己的总查询表,子站需要参考这些总查询表自己设计;保存发过来帧的FCB位判断DFC是否为1,如果为1,那就复位清空继续请求一级用户数据,同上,但是FCB位要随之取反If 控制系统发送过来的帧的FCB位与保存的FCB相同 then 把上一响应或者确认帧重新发送else响应总查询报文,保存发送过来帧的FCB位 判断DFC是否为1,如果为1,那就复位清空继续请求一级用户数据,同上,但是FCB为要随之取反在总查询周期内允许有自发报文ASDU1, 2, 4, 6If 控制系统发送过来的帧的FCB位与保存的FCB相同 then 把上一响应或者确认帧重新发送else begin发送ASDU1begin STime:=时标;Sin:=这次总查询命令ASDU7的SCN; If 缓冲区未满 then ManageBianChangZhen0(var BianChangZh:TBianChangZh; 1, A, $00, InfNum, LTime:TLTime; STime, NGD:TNGD; NDE:TNDE; Tongyongid:TTongyongid; TongYongData:TTongYongData; DEL:TDEL; GIN:TGIN; RaoDongDataId:TRaoDongDataid; RaoDongData:TRaoDongData; BeiCeZhi1:TBeiCeZhi1; TongDao:TTongDao; FactoryName:TFactoryName; StateChange:TStateChange; SDV:TSDV; $28; $01; FunType; FANL:byte=$00; FANH:byte=$00; TOV:byte=$00; SCN:byte=$00; ACC:byte=$00; NOEL:byte=$00; NOEH:byte=$00; NOC:byte=$00; INTL:byte=$00; INTH:Byte=$00; DPI; RETL:byte=$00; RETH:byte=$00;SIN) Else 缓冲区已满 then 将上面的帧的C由$28改为$38即可;End;发送ASDU2begin Stime:=时标;Sin:=这次总查询命令ASDU7的SCN; If 缓冲区未满 then ManageBianChangZhen0(var BianChangZh:TBianChangZh; 2, A,$00, InfNum; LTime:TLTime; STime, NGD:TNGD; NDE:TNDE; Tongyongid:TTongyongid; TongYongData:TTongYongData; DEL:TDEL; GIN:TGIN; RaoDongDataId:TRaoDongDataid; RaoDongData:TRaoDongData; BeiCeZhi1:TBeiCeZhi1; TongDao:TTongDao; FactoryName:TFactoryName; StateChange:TStateChange; SDV:TSDV; $28; $01, FunType; FANL:byte=$00; FANH:byte=$00; TOV:byte=$00; SCN:byte=$00; ACC:byte=$00; NOEL:byte=$00; NOEH:byte=$00; NOC:byte=$00; INTL:byte=$00; INTH:Byte=$00; DPI, RETL:byte=$00; RETH:byte=$00; Sin=SCN)else 缓冲区已满 then 把上面帧的C由$28改为$38即可;End;发送ASDU4beginStime:=时标;Fan:=Fan+1;SCL:=用相对一次值的故障电抗来表示,单位为欧姆;RET:=保护设备从启动/检出故障到现在的时间,用毫秒表示;If 缓冲区未满 then ManageBianChangZhen0(var BianChangZh:TBianChangZh;4, A, $00; $73, LTime:TLTime; STime; NGD:TNGD; NDE:TNDE; Tongyongid:TTongyongid; TongYongData:TTongYongData; DEL:TDEL; GIN:TGIN; RaoDongDataId:TRaoDongDataid; RaoDongData:TRaoDongData; BeiCeZhi1:TBeiCeZhi1; TongDao:TTongDao; FactoryName:TFactoryName; StateChange:TStateChange; SDV:TSDV; $28, $01, FunType, FANL, FANH, TOV:byte=$00; SCN:byte=$00; ACC:byte=$00; NOEL:byte=$00; NOEH:byte=$00; NOC:byte=$00; INTL:byte=$00; INTH:Byte=$00; DPI:byte=$00; RETL, RETH, Sin:byte=$00; Too:byte=$00; NOFL:byte=$00; NOFH:byte=$00 ;NumOT:byte=$00; TAPL:byte=$00; TAPH:byte=$00; NDV:byte=$00; NFEL:byte=$00; NFEH:byte=$00; SCL0;SCL1;SCL2;SCL3)Else if 缓冲区已满 then 把上面这帧的C由$28改为$38即可;End;发送ASDU6begin LTime:=控制方向传输过去的时间加以修正的结果;if 缓冲区未满 then ManageBianChangZhen0(var BianChangZh:TBianChangZh; 6 ,A, $00, $00; LTime:TLTime; STime:TSTime; NGD:TNGD; NDE:TNDE; Tongyongid:TTongyongid; TongYongData:TTongYongData; DEL:TDEL; GIN:TGIN; RaoDongDataId:TRaoDongDataid; RaoDongData:TRaoDongData; BeiCeZhi1:TBeiCeZhi1; TongDao:TTongDao; FactoryName:TFactoryName;StateChange:TStateChange; SDV:TSDV; $28 , $08 , $FF)Else if 缓冲区已满 then 把上一帧的C由$28改为$38;end;保存发过来帧的FCB;end;/注:保护设备的突发报文可以理解,但是对于子站而言,子站的突发报文是什么呢?它是直接把保护设备的突发报文进行分析,修改子站相关内容,然后在转发给主站吗?然而这里应该考虑到,如果子站上进行了报文的分析,更新子站内容之后,在转发给主站,由于子站和主站是利用103进行通信的,那么通知主站更新的内容要通过转发原报文,主站再进行分析的方法,那么子站和主站就都必须有报文分析模块,是否累赘?如果子站还有自己新定义的突发报文,那应该如何定义呢?召唤事件判断DFC是否为1,如果为1,那就复位清空继续请求一级用户数据,同上,但是FCB位要随之取反判断FCB是否与保存的FCB相同,如果相同则重发响应帧Else继续传送总召唤表,保存发过来帧的FCB;。直到总召唤报文传送完毕,其间可能会夹杂不少自发报文,过程同上,此时发送总查询结束帧ASDU8判断FCB是否与保存的FCB相同,如果相同则重发响应帧else 发送ASDU8 if 缓冲区未满 then SCN:=这一次总召唤命令帧的SCN;ManageBianChangZhen0(var BianChangZh:TBianChangZh,8, A, $00, $00, LTime:TLTime; STime:TSTime; NGD:TNGD; NDE:TNDE; Tongyongid:TTongyongid; TongYongData:TTongYongData; DEL:TDEL; GIN:TGIN; RaoDongDataId:TRaoDongDataid; RaoDongData:TRaoDongData; BeiCeZhi1:TBeiCeZhi1; TongDao:TTongDao; FactoryName:TFactoryName; StateChange:TStateChange; SDV:TSDV; $28, $0A, $FF, FANL:byte=$00; FANH:byte=$00; TOV:byte=$00; SCN)Else 把上一帧的C由$08改为$18发送即可;保存发过来帧的FCB位;请求或者召唤;命令传输的过程发送ASDU20A:=设备地址;R:=随意赋值,但是不可重复;InfNum:=见P542表17;FunType:=见P542表17;DCO:=见P542表17;ManageBianChangZhen1(var BianChangZh:TBianChangZh; LTime:TLTime; NGD:TNGD; 20, A, R, Tongyongid:TTongyongid; TongYongData:TTongYongData; RaoDongDataId:TRaoDongDataid; $53, InfNum, FunType, SCN:byte=$00; NOG:Byte=$00; DCO);确认发送确认帧或者发送单个字符$E5发送确认帧,有一级数据if 接受缓冲区仍然能接受数据 then ManageGuDingZhen(var GuDingzh:TGuDingzh,0,A,$20)Else if 接受缓冲区已经满ManageGuDingZhen(var GuDingzh:TGuDingzh,0,A,$30);保存发过来帧的FCB位;召唤事件if 收到的帧不正确(例如校验不正确,再次受到上一帧响应等等)或者超过50100ms没有收到 then Begin 重传上一帧,FCB不变反为0;End elseIf 超过Twz仍然接受不正确或者没有收到 then Begin 进行复位;End else If 正确接受 then If 响应帧的DFV位为1 then发送复位通信单元,清空缓冲区,进行复位else if 响应帧的DFV位为0 thenbegin 请求1级数据,地址为某一个具体设备的地址A ManageGuDingZhen(var GuDingzh:TGuDingzh,11,A,$7A);End; 响应判断FCB是否与保存的FCB相同,如果相同则重发响应帧else if FCB不相同 then begin 发送ASDU1STime:=时标;Sin:=这次命令ASDU20的RII; DPI无关;If 命令的肯定认可 then Cause:=$14Else if 命令的否定认可 then Cause:=$15; If 缓冲区未满 then ManageBianChangZhen0(var BianChangZh:TBianChangZh; 1, A, $00, InfNum, LTime:TLTime; STime, NGD:TNGD; NDE:TNDE; Tongyongid:TTongyongid; TongYongData:TTongYongData; DEL:TDEL; GIN:TGIN; RaoDongDataId:TRaoDongDataid; RaoDongData:TRaoDongData; BeiCeZhi1:TBeiCeZhi1; TongDao:TTongDao; FactoryName:TFactoryName; StateChange:TStateChange; SDV:TSDV; $28; Cause; FunType; FANL:byte=$00; FANH:byte=$00; TOV:byte=$00; SCN:byte=$00; ACC:byte=$00; NOEL:byte=$00; NOEH:byte=$00; NOC:byte=$00; INTL:byte=$00; INTH:Byte=$00; DPI; RETL:byte=$00; RETH:byte=$00;SIN) Else 缓冲区已满 then 将上面的帧的C由$28改为$38即可;end; 召唤事件if 收到的帧不正确(例如校验不正确,再次受到上一帧响应等等)或者超过50100ms没有收到 then Begin 重传上一帧,FCB不变反为1;End elseIf 超过Twz仍然接受不正确或者没有收到 then Begin 进行复位;End else If 正确接受 then If 响应帧的DFV位为1 then发送复位通信单元,清空缓冲区,进行复位else if 响应帧的DFV位为0 thenbegin 请求1级数据,地址为某一个具体设备的地址A ManageGuDingZhen(var GuDingzh:TGuDingzh,11,A,$5A);End; 响应,由命令引起的状态变位由ASDU1发送,传送原因为12(远方操作)判断FCB是否与保存的FCB相同,如果相同则重发响应帧else if FCB不相同 then begin 发送ASDU1STime:=时标;Sin:=这次命令ASDU20的RII; DPI无关; Cause:=$0C; If 缓冲区未满 then ManageBianChangZhen0(var BianChangZh:TBianChangZh; 1, A, $00, InfNum, LTime:TLTime; STime, NGD:TNGD; NDE:TNDE; Tongyongid:TTongyongid; TongYongData:TTongYongData; DEL:TDEL; GIN:TGIN; RaoDongDataId:TRaoDongDataid; RaoDongData:TRaoDongData; BeiCeZhi1:TBeiCeZhi1; TongDao:TTongDao; FactoryName:TFactoryName; StateChange:TStateChange; SDV:TSDV; $28; Cause; FunType; FANL:byte=$00; FANH:byte=$00; TOV:byte=$00; SCN:byte=$00; ACC:byte=$00; NOEL:byte=$00; NOEH:byte=$00; NOC:byte=$00; INTL:byte=$00; INTH:Byte=$00; DPI; RETL:byte=$00; RETH:byte=$00;SIN) Else 缓冲区已满 then 将上面的帧的C由$28改为$38即可;end; /注:如果在想控制系统作出对前一次的命令认可之前,继电保护设备又收到控制系统的命令 保温,继电保护设备将以否定认可帧加以拒绝;如果命令由于不同的原因不能被处理,将以原因为命令的否定认可加以拒绝;请求或者召唤监视方向的闭锁/由于它没有远方指令,只能本地开启,这种功能的完成是制造厂的事情,非强制性的!如果要激活闭锁,我们所需要的是来自控制设备的ASDU1指明监视方向的闭锁已激活。正常的传输过程发送ASDU1 STime:=时标; Sin无关; DPI无关; Cause:=$09 / $0B If 缓冲区未满 then ManageBianChangZhen0(var BianChangZh:TBianChangZh; 1, A, $00, $14, LTime:TLTime; STime, NGD:TNGD; NDE:TNDE; Tongyongid:TTongyongid; TongYongData:TTongYongData; DEL:TDEL; GIN:TGIN; RaoDongDataId:TRaoDongDataid; RaoDongData:TRaoDongData; BeiCeZhi1:TBeiCeZhi1; TongDao:TTongDao; FactoryName:TFactoryName; StateChange:TStateChange; SDV:TSDV; $28; Cause; FunType); Else 缓冲区已满 then 将上面的帧的C由$28改为$38即可;保存上一帧的FCB;如果控制设备不顾监视方向已经闭锁,而传送一般命令,继电保护设备将以“命令的否定认可”加以响应;如果是总查询,那么就以总查询结束帧加以响应;如果是扰动数据的传输,将以扰动数据的传输结束作为响应;如果是正在

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论