1
規約簡介
IEC104規約是一個廣泛應用于電力、城市軌道交通等行業的國際標準。
2
專業術語解釋
遙脈(電度量): 是指對現場某裝置所發出的脈沖信號進行周期累計的一種遠程計數操作。其實,遙脈也可以看成是被具體規定了采用脈沖計數作為測量方法的一種遙測手段,它是遙測中的一種。而傳統意義上的四遙中是沒有提及遙脈一詞的。
四遙指的是:遙信、遙測、遙控和遙調(設點);分別對應數字輸入DI、模擬輸入AI、數字輸出DO和模擬輸出AO
單點與雙點的區別 ,以遙信為例,單點就是用一位標識一個遙信量,比如開關位置,只采集一個常開的輔助接點,值為1表示合位,0表示分位;而雙點需要采集常開合常閉兩個輔助接點位置,,當常開點值為1并且常閉點值為0,即10,則認為開關在合位;當常開點值=0并且常閉點值為1,即01,認為開關在分位;當兩個位置值都為1,或兩個值都為0,則認為開關位置不能確定。遙控也是一樣的道理,SPI為遙信狀態值。單點遙信,0分1合;雙點遙信,1開2合,0和3為中間狀態。
遙測的上送方式主要有定時主動上送(01H),響應總召喚上送(14H),越限上送(03H),而遙測值又分為歸一化值、標度化值、短浮點數。
各遙測報文。其報文主體結構未變,改變是傳送原因及類型標識。
歸一化值(NVA)
值的范圍為[-1,1]。歸一化,即是將大于1的數映射到1以內的空間,通常就是用實際值除以額定值,即得到歸一化的小數。具體表示法可以有F13或F16位的。占2個字節。
標度化值(SVA),值的范圍為[-32768,~32767],即帶符號整數。占2個字節。它的真實值就是標度值*小數點的位數,量程和小數點位置是固定的參數。(相當于16位有符號整數)
注意:歸一化值與標度化值都是兩個字節。高字節的最高位為符號位, 0表示正數,1表示負數。15位數據位,正數是原碼,負數是補碼。
短浮點數 (R32-IEEE
STD 754) 即計算機內浮點數的表示法,占4字節
雙傳輸 ,信息體元素可以用同一個信息對象地址來構成不同的ASDU,即帶時標或者不帶時標的單點信息。
遙測最多可配16384個,遙測最多可配4096個,遙控最多可配256個,遙脈最多可配512個。
3
104主站和從站之間的通信過程
104通訊過程:
a,建鏈、啟動傳輸
b,是否啟動確認 (未確認等待啟動幀返回a)
c,站召喚
d,回答全數據
e,回答結束否 (等待d結束,未結束返回d)
f,有無定時任務
g,遙控遙調
h,對時測試
i,超時處理
j,接收變化數據
k,S-FORMAT確認 (確認完畢,返回f)
4
IEC104協議結構
第一個字節:啟動字符固定16進制數68H,十進制為104(正好代表104規約吧),二進制為:0110 1000。
第二個字節:APDU長度,注意APDU長度并不包括1字節的啟動字符和1字節的APDU長度本身,而由于只有1字節代表數據長度,其最大值為255(2^8 - 1),所以最大值為255 - 2 = 253,又由于APCI除了這兩個字節外還包括了4個字節的控制域(1~4),那么剩下的ASDU(可選的應用服務數據單元)長度為253 - 4 = 249字節。
5
104報文幀分類
IEC104協議的幀格式有三種(I幀、U幀、S幀)
I幀為信息幀,用于傳輸數據,長度大于6個字節,為長幀;
S幀為確認幀,用于確認接收的I幀,長度為6個字節,為短幀;
U幀為控制幀,用于控制啟動/停止/測試,長度為6個字節,為短幀;
5.1
U格式:
不計數的控制功能類型,用于傳輸控制命令的報文。(U格式的APDU只包含APCI,幀長6字節。)
格式
類型
5.2
S格式:
計數的監視功能類型,用于傳輸對站端的確認的報文。(S格式的APDU只包含APCI,幀長6字節。)
格式
S格式的APDU的幀內容為如下6個字節:68 04 01 00 98 53 前四個字節固定,后兩個字節表示接收序號。
S幀和I幀結合使用,用于信息確認,主站和子站可以按頻率發送,比如接收8幀I幀回答一幀S幀,也可以要求接收一幀I幀就應答一幀S幀。
5.3
I 格式:
信息傳輸格式類型,用于傳輸含有信息體的報文和確認對方I格式的信息報文。(I格式的APDU包含APCI和ASDU)
I幀是104的核心,I幀包含ASDU,數據傳輸都屬于I幀,如總召喚幀、發送對時報文、電度總召喚、遙控等下發指令,接收的數據幀如遙信、遙測、遙脈、SOE幀都屬于I幀。
6
遙控流程
遙控分為直控和選控,直控實際上就是去掉選擇命令,直接發執行命令。一般來說保護壓板、保護復歸為直控;測控壓板、刀閘開關、分接頭的升降停為選控。
?
選控的一般流程如下: 主站下發選擇命令→裝置回選擇確認報文→主站下發執行命令→裝置回執行確認報文→完成結束報文。
?
直控的一般流程如下: 主站下發執行命令→裝置回執行確認報文→完成結束報文。
?
在整個遙控過程中,直到裝置回執行確認前都可進行
?
而遙控命令的格式如下所示:
S/E為選擇/執行位,0代表執行,1代表選擇;QU代表遙控命令品質,0代表被控站內部確定遙控輸出方式,不由控制站選擇,1代表短脈沖方式輸出,持續時間由被控站的系統參數決定,2代表長脈沖方式輸出,持續時間由被控站的系統參數決定,3代表持續脈沖方式,其他值沒有定義;
SCS代表單點遙控命令狀態,0代表分/開,1代表合/關;DCS代表雙點遙控命令狀態,1代表分/開,2代表合關,0、3代表不允許。
QU一般為0,那么單點遙控——遙控選擇分:0x80;遙控執行或遙控撤銷分:0x00;遙控選擇合:0x81;遙控選擇或遙控撤銷合:0x01;雙點遙控——遙控選擇分:0x81;遙控執行或遙控撤銷分:0x01;遙控選擇合:0x82;遙控選擇或遙控撤銷合:0x02
7
交互流程
7.1
第一步:首次握手(U幀)
發送―>激活傳輸啟動 :
68(啟動符)04(長度)07(控制域)
00 00 00
接收―>確認激活傳輸啟動:
68(啟動符)04(長度)0B(控制域)
00 00 00
7.2
第二步:總召喚,召喚YC,YX(可變長I幀)初始化后定時發送總召喚
發送―>總召喚 :
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
7.3
第二步:發送對時報文**(通過設置RTU參數表中的”對時間隔”單位是分鐘,默認是20分鐘左右.)**
發送―>對時命令:
68(啟動符)14(長度)
02 00(發送序號,2個字節)0A
00(接收序號,2個字節)67(類型標識)01(可變結構限定詞)06
00(傳送原因,2個字節)01 00(公共地址,即RTU站址,2個字節)0000
00(信息體地址,3個字節)01 (毫秒低位)
02(毫秒高位) 03(分鐘)
04(時) 81 (日與星期)
09(月) 05(年)
接收―>對時確認:
68(啟動符)14(長度)
0C 00(發送序號,2個字節)04
00(接收序號,2個字節)67(類型標識)01(可變結構限定詞)07
00(傳送原因,2個字節)01 00(公共地址,即RTU站址,2個字節)0000
00(信息體地址,3個字節)**
(毫秒低位) (毫秒高位)
(分鐘) 04(時)
81 (日與星期) 09(月)
05(年)
發送―>S幀:
68 04 01 00 0E 00
7.4
第三步:電度總召喚(如果沒有電度此步驟可以省略且該步驟可以在對時之前發送,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個字節)
45 (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
7.5
第四步**:如果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
SOE****主動上送,類型標識為0x1e或0x1f
接收―>SOE:
68(啟動符)
15(長度)
1a 00(發送序號,2個字節)
06 00(接收序號,2個字節)
1E(類型標識,單點)01(可變結構限定詞,1個SOE)
03 00 (傳送原因,2個字節,表突發事件)01
00 (公共地址,2個字節)08 00
00(信息體地址,3個字節,8號遙信)
00(分)AD 39
(毫秒,2個字節)1C(分)
10(時)7A(日與星期)
0B(月)
05(年)
發送―>S幀:
04 01 00 1c 00
接收―>SOE:
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(年)
7.6
第五步如果主站超過一定時間沒有下發報文或RTU也沒有上送任何報文則雙方都可以按頻率發送U幀,測試幀
發送―>U幀:
68 04 43 00 00 00
接收―>應答:
68 04 83 00 00 00
7.7
第六步遙控
發送―>遙控預置: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(控合)
8
104協議和其他協議的轉換
在實際的工程項目中,經常會遇到需要把IEC104的協議轉換成其他協議,比如modbus,profinet等。有時也需要把modbus轉成104接入到電力104系統,這時候就需要使用協議轉換網關進行轉換。如下圖所示,使用vfbox網關,把modbus協議轉換成IEC104協議。
審核編輯 黃宇
-
電力
+關注
關注
7文章
2067瀏覽量
49918 -
網關
+關注
關注
9文章
4083瀏覽量
50562
發布評論請先 登錄
相關推薦
評論