104:是廠站與配網主站進行通訊的規約,以以太網為載體,服務模式是平衡模式。
用於遠動控制通信的,用於調度自動化系統,廠站之間的通訊;
104規約的報文幀分為三類,I幀,S幀,U幀;
I幀為信息幀,用於傳輸數據,長度大於6個字節,為長幀;
S幀為確認幀,用於確認接收的I幀,長度為6個字節,為短幀;
U幀為控制幀,用於控制啟動/停止/測試,長度為6個字節,為短幀;
長幀報文分為APCI和ASDU兩個部分,統稱為APDU,而短幀報文只有APCI部分;
APCI的6個字節的構成:起動字符68H,1個字節;后面的報文長度,1個字節(最大253);控制域位組,4個字節;區分I,S,U幀:
I幀的4字節控制域位組規定為:字節1和字節2位發送序號,字節3和字節4為接收序號;
注意:
1.由於字節1和字節3的最低位固定為0,不用於構成序號,所以在計算序號時,要先轉換成十進制數值,再除以2;
2.由於低位字節在前,高位字節在后,所以計算時要先做顛倒;
S幀的字節1固定為01H,字節2固定為00H,字節3和字節4位接收序號計算時仍要注意以上兩點;
U幀的字節2,3,4均固定為00H,字節1包含TESTFR,STARTDT,STOPDT三種功能,同時只能激活其中的一種功能;啟動(STARTDT)和停止(STOPDT)都是由主站(104的客戶端)發起的,先由主站發送生效報文,子站隨后確認。而主站和子站都可發送測試(TESTFR)報文,由另一方確認。
客戶端發起:(請求連接報文和確認連接報文)
STARTDT:68 04 07 00 00 00(啟動激活);68 04 0B 00 00 00(啟動確認)
07 = 00000111,最后兩個1表示信息傳輸格式為U格式,倒數第3個1
表示請求連接;
0B = 00001011,最后兩個1表示信息傳輸格式為U格式,倒數第4個1
表示連接確認;
客戶端發起:
STOPDT:68 04 13 00 00 00(停止激活);68 04 23 00 00 00(停止確認)
客戶端和服務器對發:
TESTFR:68 04 43 00 00 00 (測試激活); 68 04 83 00 00 00(測試確認)
104協議是101協議的網絡版,101協議每次只能發送一個鏈路幀,而
104協議可以連續發送多個鏈路幀,其傳輸效率明顯高於101協議,而
且具有TCP/IP的沖突檢測和錯誤重傳機制,具有比101協議更高的可靠
性和穩定性,另外對通信延時的限制更寬松。
心跳機制:
t0:TCP連接建立的超時時間,即RTU(服務器)端進入等待連接的狀態后,若超過了此時間,主站(客戶)端還沒有connect()過來就主動退出等待連接的狀態;規約推薦的缺省值為30秒;
t1:RTU端啟動U格式測試過程后等待U格式測試應答的超時時間,若超過了此時間還沒有收到主站端的U格式測試應答,就主動關閉TCP連接;規約推薦的缺省值為15秒;
t2:RTU端以突發的傳送原因向主站端上送了變化信息或以激活結束的傳送原因向主站端上送了總召喚/電度召喚結束后,等待主站端回S格式的超時時間,若超過了此時間還沒有收到,就主動關閉TCP連接;規約推薦的缺省值為10秒;
t3:當RTU端和主站端之間沒有實際的數據交換時,任何一端啟動U格式測試過程的最大間隔時間;推薦的缺省值為20秒;
舉例說明它的組成部分:
68 0E 00 00 00 00 64 01 07 00 01 00 00 00 00 14
68 0E 02 00 12 00 2D 01 06 00 01 00 02 60 00 81
啟動字符 + APDU長度 + 4個控制域8位位組 + 類型標識 + 可變結構限定詞(個數) + 傳輸原因 + 公共地址(ASDU地址)+ 信息體地址 + 召喚限定詞
常見的幾種報文:
站初始化:
TX: 68 04 07 00 00 00 U格式啟動幀
RX:68 04 0B 00 00 00 響應幀
鏈路測試:
TX:68 04 43 00 00 00 鏈路測試報文
RX:68 04 83 00 00 00 響應幀
對時:
TX:68 14 08 00 04 00 67 01 06 00 01 00 00 00 00 A4 92 06 0F EA 05 0F
RX:68 14 0A 00 04 00 67 01 07 00 01 00 00 00 00 A4 92 06 0F EA 05 0F
A4 92:即37540毫秒
06:6分
0F:15時
EA:111 01010 星期天 10號
05:5月
0F:2015年
常用的類型標識:
遙測:
09---帶品質描述的遙測量,每個遙測值占三個字節
0A---帶3個字節時標的且具有品質描述的遙測值,每個遙測值占6個字節
0B---不帶時標的標度化值,每個遙測值占3個字節
0C---帶3個字節時標的標度化值,每個遙測值占6個字節
0D---帶品質描述的浮點值,每個遙測值占5個字節
0E---帶3個字節時標且具有品質描述的浮點值,每個遙測值占8個字節
15---不帶品質描述的遙測值,每個遙測值占2個字節
遙信:
01---不帶時標的單點遙信,每個遙信占1個字節
03---不帶時標的雙點遙信,每個遙信占1個字節
14---具有狀態變位檢測的成組單點遙信,每個字節包括8個遙信
SOE:記錄即事件順序記錄
02---帶3個字節短時標的單點遙信
04---帶3個字節短時標的雙點遙信
1E---帶7個字節時標的單點遙信
1F---帶7個字節時標的雙點遙信
遙調:
0F---不帶時標的電度量,每個電度量占5個字節
10---帶3個字節短時標的電度量,每個電度量占8個字節
25---帶7個字節長時標的電度量,每個電度量占12個字節
其他:
2D---單點遙控
2E---雙點遙控
2F---雙點遙調
64---召喚全數據
65---召喚全電度
67---時鍾同步
常用的傳送原因列表:
1---周期,循環
2---背景掃描
3---突發,自發上傳
4---初始化
5---請求或被請求
6---激活
7---激活確認
8---停止激活
9---停止激活確認
0A---激活結束
14---響應總召喚
IEC104規約流程
IEC104 規約作為網絡通信規約,由客戶端和服務端組成,服務端口默認為2404 。它的基本流程如下:
1. 由客戶端向服務器建立連接,同時,發送鏈路啟動幀。
2.服務端在收到鏈路啟動幀后,向客戶端發送啟動確認幀。
3.客戶端收到啟動確認幀后,發送總召數據請求幀。
4.服務端收到總召數據請求后,發送總召數據響應幀,然后繼續發送總召數據。總召數據發送完成后,發送總召數據結束幀。
5.客戶端在收到總召數據結束幀后,發送對時請求幀。
6.服務器收到對時請求幀后,發送對時響應幀。
7.由服務器主動向客戶端發送變化數據幀。同時,收到客戶端發送的控制類命令,回復相應的操作結果。
8.客戶端等到下一個數據總召周期,重復第4步之后的流程。