一般應(yīng)用中控制中心做為客戶端,分站做為服務(wù)器端,工作的過(guò)程是客戶端請(qǐng)求,服務(wù)器端響應(yīng)。但在有些報(bào)警系統(tǒng)中要求當(dāng)分站主動(dòng)向控制中心上報(bào)數(shù)據(jù)。下面的描述將這種通信方式稱為主動(dòng)上報(bào)。主動(dòng)上報(bào)時(shí)請(qǐng)求和響應(yīng)數(shù)據(jù)格式的對(duì)應(yīng)次序關(guān)系與客戶端請(qǐng)求的數(shù)據(jù)的過(guò)程正好相反。
也就是說(shuō),正常的輪訓(xùn)工作流程是中心站向分站做數(shù)據(jù)請(qǐng)求,分站做應(yīng)答,而主動(dòng)上傳是分站直接做應(yīng)答(相當(dāng)于收到了中心站的數(shù)據(jù)請(qǐng)求做應(yīng)答而已),中心站收主動(dòng)上傳的數(shù)據(jù)后發(fā)生一包數(shù)據(jù)請(qǐng)求做應(yīng)道(相當(dāng)于是需要向這個(gè)分站請(qǐng)求數(shù)據(jù),只是分站應(yīng)答提前到了而已)。
分站的主動(dòng)上傳 “請(qǐng)求與響應(yīng)內(nèi)容”與普通的輪詢中做的“應(yīng)答響應(yīng)”格式和內(nèi)容完全相同,只是需要將“捷麥標(biāo)示頭”變成主動(dòng)上傳標(biāo)示(4F 3F 2F 1F 5F 5F),將“通信頭的”包類型字段換成主動(dòng)上傳類型(0x84).
主站收到分站的主動(dòng)上傳數(shù)據(jù)后,需要做出響應(yīng),分站的主動(dòng)上傳響應(yīng)中的“請(qǐng)求與響應(yīng)內(nèi)容”與普通的輪詢中做的“請(qǐng)求數(shù)據(jù)”格式和內(nèi)容完全相同,只需要將“通信頭的”包類型字段換成主動(dòng)上傳類型(0x04),注意“捷麥標(biāo)示頭”還是普通的輪詢標(biāo)示(4F 3F 2F 1F 5F 6F).
下面舉一個(gè)例子是關(guān)于主動(dòng)上報(bào)離散輸入(20-38):
主動(dòng)上報(bào)(分站發(fā)起) | |
字段名稱 | (Hex) |
功能 起始地址低位 起始地址高位 離散數(shù)量低位 離散數(shù)量高位 27-20的輸出狀態(tài) 35-28的輸出狀態(tài) 38-36的輸出狀態(tài) | 01 |
13 | |
00 | |
13 | |
00 | |
CD | |
6B | |
05 |
主動(dòng)上報(bào)的響應(yīng)(主站響應(yīng)) | |
字段名稱 | (Hex) |
功能 起始地址低位 起始地址高位 離散數(shù)量低位 離散數(shù)量高位 | 01 |
13 | |
00 | |
13 | |
00 |
十六進(jìn)制數(shù)CD或二進(jìn)制數(shù)1100 1101包含了輸出位27的狀態(tài)“1”。輸出位27是這個(gè)字節(jié)的最高位,輸出位20為這個(gè)字節(jié)的最地位。
在通常的情況下,一個(gè)字節(jié)的左邊是最高有效位,右邊是最低有效位。這樣輸出的第一個(gè)字節(jié)從左邊到右邊依次是位27到20,下一個(gè)字節(jié)從左到右依次是位35到28。當(dāng)傳輸這些輸出狀態(tài)時(shí),從最低有效位到最高有效位:20…27,28…35依次類推。
在最后一個(gè)字節(jié),十六進(jìn)制數(shù)05或二進(jìn)制數(shù)0000 0101是輸出位38-36的狀態(tài)。輸出位38是從左邊開(kāi)始數(shù)的第六位,輸出位36是這個(gè)字節(jié)的最低位。剩余的五個(gè)高位用0補(bǔ)。
分站一包完整的主動(dòng)上傳的數(shù)據(jù)包為:
(假設(shè)分配的設(shè)備號(hào)為25 7D,包標(biāo)示為5,中心站的地址為0,自己為7)
4F 3F 2F 1F 5F 5F 25 7D 05 00 0C 00 84 EF FF F0 00 00 00 00 07 00 BF 7D 01 01 01 13 00 13 00 CD 6B 05 34 50
分站完整的主動(dòng)上傳響應(yīng)包為:
4F 3F 2F 1F 5F 6F 25 7D 05 00 09 00 04 EF FF F0 00 00 07 00 00 00 B7 DD 01 01 01 13 00 13 00 3E 65
北京捷麥部分RTU產(chǎn)品,有主動(dòng)上傳功能,可設(shè)置上傳通道、上傳周期、DI/DO/AI各自的上傳數(shù)量。如果是通過(guò)捷麥云通道上傳,還要設(shè)置主站地址。
北京捷麥RTU的主動(dòng)上傳功能,無(wú)需上位機(jī)做出響應(yīng)。
主動(dòng)上傳數(shù)據(jù)定時(shí)向上位機(jī)發(fā)送,一包數(shù)據(jù)里面包含了所以需要上傳的變量信息。解析如下:
指令頭 | 主動(dòng)上傳識(shí)別碼(無(wú)需關(guān)心) | 模塊地址 | CRC1 | ||
4F 3F 2F 1F 5F 5F | 10 01 03 00 23 00 84 00 00 00 00 00 04 00 | 01 00 | B2 19 | ||
有效數(shù)據(jù)段 | 段1 | 數(shù)據(jù)段1內(nèi)容 | 段2 | 段2內(nèi)容 | |
03 | 01 | 02 18 00 03 00 02 | 02 | 01 00 00 02 00 00 | |
段3 | 段3內(nèi)容 | CRC2 | |||
03 | 36 00 00 03 00 00 00 00 00 94 9A 26 41 00 00 00 00 | FE 61 |
CRC1為灰色字段的CRC。CRC2為橙色字段的CRC。
此上傳包完整包內(nèi)容如下:
4F 3F 2F 1F 5F 5F 10 01 03 00 23 00 84 00 00 00 00 00 04 00 01 00 B2 19 03 01 02 18 00 03 00 02 02 01 00 00 02 00 00 03 36 00 00 03 00 00 00 00 00 94 9A 26 41 00 00 00 00 FE 61
數(shù)據(jù)段內(nèi)容解析(起始地址無(wú)需關(guān)心,變量個(gè)數(shù)即在設(shè)置軟件中填寫(xiě)的上傳數(shù)量):
變量類型 | 功能碼 | 起始地址 | 變量個(gè)數(shù) | 內(nèi)容 | 說(shuō)明 |
離散輸入DI | 02 | 18 00 | 03 00 | 02 | DI1=1,其它為0 |
離散輸出DO | 01 | 00 00 | 02 00 | 00 | 都為0 |
模擬量輸入AI | 36 | 00 00 | 03 00 | 00 00 00 00 94 9A 26 41 00 00 00 00 | AI1=10.4,AI0和AI2為0 |