精品亚洲福利一区二区-精品亚洲欧美高清不卡高清-精品亚洲视频在线-精品亚洲视频在线观看-精品亚洲午夜久久久久

首頁(yè) >常見問題 >測(cè)控組網(wǎng)系統(tǒng)
北京捷麥JMBUS協(xié)議說明

1通信協(xié)議范圍及規(guī)范

         此協(xié)議適用于無(wú)線測(cè)控系統(tǒng)中主站與分站之前的數(shù)據(jù)傳輸協(xié)議,如下圖所示的綠色部分的通信。


         協(xié)議規(guī)定

1.       當(dāng)分站收到主站的數(shù)據(jù)請(qǐng)求時(shí),必須要在1秒以內(nèi)作出響應(yīng)。

2.       該協(xié)議是通過包傳輸?shù)模谑且?/span>3.5T無(wú)數(shù)據(jù)為包結(jié)束條件,例如在串口波特率1200bp/s下,傳輸3.5個(gè)數(shù)據(jù)所需的時(shí)間大約為30ms(3.5T30ms),收到一個(gè)數(shù)據(jù)開始計(jì)時(shí),如果收到這個(gè)數(shù)據(jù)后30ms內(nèi)沒有再收到下一個(gè)數(shù)據(jù),則認(rèn)為此包結(jié)束,這個(gè)數(shù)據(jù)就是這個(gè)包的最后一個(gè)數(shù)據(jù),之前所收到的所有數(shù)據(jù)就是這包的內(nèi)容。

3.       協(xié)議采用CRC-16校驗(yàn)(生產(chǎn)多項(xiàng)式x16+x15+ x2+1,簡(jiǎn)記式為8005),校驗(yàn)失敗后這包丟棄不做協(xié)議解析。

4.       超時(shí)重發(fā)機(jī)制由主站完成,分站無(wú)此機(jī)制。

5.       傳輸?shù)淖止?jié)序采用“little endian”方式,即我們通常所說的小端朝前(Intelx86系列CPU結(jié)構(gòu)),意味著當(dāng)發(fā)個(gè)字節(jié)時(shí)首先發(fā)要發(fā)送一個(gè)整形數(shù)據(jù)(兩個(gè)字節(jié))內(nèi)容為0x1234,就先發(fā)的低字節(jié)0x34 然后再0x12,同理浮點(diǎn)型的四個(gè)數(shù)據(jù)也是如此發(fā)送。協(xié)議中所有的數(shù)據(jù)都是采用這種字節(jié)序。


 

2 協(xié)議整體組成

         每個(gè)通信的數(shù)據(jù)包都有捷麥標(biāo)示頭、通信頭和請(qǐng)求或響應(yīng)內(nèi)容三部分組成,如下圖所示:

2.1 捷麥標(biāo)示頭

捷麥標(biāo)示頭有兩種協(xié)議頭,普通采集與響應(yīng)類型和分站主動(dòng)上傳這兩種類型,無(wú)論哪種類型,捷麥標(biāo)示頭固定為6個(gè)字節(jié)。具體內(nèi)容如下:

         普通采集與響應(yīng)的標(biāo)示頭為:4F 3F 2F 1F 5F 6F

         分站主動(dòng)上傳標(biāo)示頭           4F 3F 2F 1F 5F 5F

 

2.2 通信頭

         通信頭的數(shù)據(jù)長(zhǎng)度是固定的,一共是18格字節(jié),包含的內(nèi)容如下圖所示:

 

2.2.1 設(shè)備/應(yīng)用號(hào)

         標(biāo)示此包數(shù)據(jù)是哪個(gè)設(shè)備或者應(yīng)用的,固定為兩個(gè)字節(jié)。

例如P5037設(shè)備的設(shè)備號(hào)為 10 01,站點(diǎn)測(cè)試應(yīng)用的應(yīng)用號(hào)為 00 05

2.2.2 包標(biāo)示

         包標(biāo)示從0開始,請(qǐng)求和響應(yīng)的包標(biāo)示相同。新包在原有包標(biāo)示的基礎(chǔ)上加1。重發(fā)時(shí)包標(biāo)示不變(主站對(duì)包標(biāo)示進(jìn)行加1操作,分站響應(yīng)時(shí),包標(biāo)示不做任何處理)。占兩個(gè)字節(jié)

2.2.3包長(zhǎng)度

包長(zhǎng)的實(shí)際數(shù)值是請(qǐng)求或響應(yīng)的數(shù)據(jù)的字節(jié)數(shù)量,也就是上面協(xié)議整體組成示意圖中的藍(lán)色部分的字節(jié)數(shù)量,占兩個(gè)字節(jié)(字節(jié)序低字節(jié)在前)。

 

2.2.4包類型

類型碼

定義

方向

備注

00H

請(qǐng)求 

主站分站

對(duì)分站點(diǎn)的CPU模塊

80H

應(yīng)答

分站主站


02H

請(qǐng)求 

主站分站

對(duì)分站點(diǎn)的通信管理模塊的存儲(chǔ)器

82H

有存儲(chǔ)內(nèi)容應(yīng)答

分站主站

當(dāng)無(wú)存儲(chǔ)內(nèi)容時(shí)包長(zhǎng)為0,無(wú)綠色部分

84H

主動(dòng)上傳

分站主站


04H

主動(dòng)上傳的響應(yīng)

主站分站


05H

主動(dòng)上傳的響應(yīng)并接下來有請(qǐng)求

主站分站


 

2.2.5 路徑

         路徑占三個(gè)字節(jié),表示這包數(shù)據(jù)的傳輸路徑,用于電臺(tái)在中繼時(shí)的協(xié)議支持。缺省值(不使用中繼)為 EF FF F0

24位(三個(gè)字節(jié))的路徑信息中前2個(gè)字節(jié)表示數(shù)據(jù)的路徑信息。每一級(jí)路徑用4位二進(jìn)制表示。這4位表示在這一級(jí)上中轉(zhuǎn)站的編號(hào)。如果這個(gè)站是中轉(zhuǎn)站其編號(hào)范圍是0D。共可表達(dá)4級(jí)樹形路徑。第三個(gè)字節(jié)的后4位表示數(shù)據(jù)傳遞的當(dāng)前路徑級(jí)數(shù)。用F表示對(duì)應(yīng)的字段無(wú)內(nèi)容。用E表示樹形結(jié)構(gòu)的終點(diǎn)。數(shù)據(jù)的結(jié)構(gòu)如下:

2.2.6 備用

         備用占兩個(gè)字節(jié),用于協(xié)議擴(kuò)展,缺省值為0x00 0x00

2.2.7 目的地址與源地址

         目的地址表示數(shù)據(jù)包的目的。源地址表示數(shù)據(jù)的來源。每個(gè)請(qǐng)求數(shù)據(jù)中的請(qǐng)求對(duì)應(yīng)著響應(yīng)數(shù)據(jù)中的一個(gè)響應(yīng)。請(qǐng)求和響應(yīng)是成對(duì)出現(xiàn)的。

         在一個(gè)系統(tǒng)中,每一個(gè)分站和主站都有唯一的地址。

地址用兩個(gè)字節(jié)表示,字節(jié)序采用低字節(jié)在前,比如一個(gè)分站的地址為12,那么地址表示為:0C 00

2.8 通信頭CRC

         通信頭部分的CRC校驗(yàn),也就是灰色部分的數(shù)據(jù)CRC,不包含“捷麥標(biāo)示頭”部分和“請(qǐng)求或響應(yīng)數(shù)據(jù)”部分。

 

2.3 請(qǐng)求與響應(yīng)內(nèi)容

         該協(xié)議一包可以獲取不同數(shù)據(jù)類型的數(shù)據(jù),獲取的這一小段稱為數(shù)據(jù)段,請(qǐng)求和響應(yīng)的協(xié)議格式如下圖所示:

 

         注意請(qǐng)求內(nèi)容或者響應(yīng)內(nèi)榮包中的“內(nèi)容”字段的長(zhǎng)度依據(jù)功能碼等,可能有些功能碼沒有“內(nèi)容”字段。

請(qǐng)求(響應(yīng))總個(gè)數(shù):表示數(shù)據(jù)段的總個(gè)數(shù),段數(shù)的最大值為20,請(qǐng)求和響應(yīng)是一一對(duì)應(yīng)。

數(shù)據(jù)段:每一個(gè)數(shù)據(jù)段都是由序號(hào)、功能碼、地址偏移、寄存器數(shù)和內(nèi)容構(gòu)成。序號(hào)是從1依次增加的,功能碼等參加下文。

內(nèi)容校驗(yàn):內(nèi)容CRC是指對(duì)包內(nèi)容(請(qǐng)求或者響應(yīng)內(nèi)容)做CRC處理,不包含“捷麥標(biāo)示頭”部分和“通信頭”部分。


 

功能碼定義匯總


數(shù)據(jù)類型

名稱

功能碼意義

功能碼(HEX

->

數(shù)據(jù)訪問

1位訪問

物理離散輸入

讀離散輸入

02

42/82

物理繼電器

讀離散輸出

01

41/81

寫離散輸出

0F

4F/8F

8位訪問

單字節(jié)寄存器

讀字節(jié)輸入寄存器

33

73/B3

讀字節(jié)輸出寄存器

34

74/B4

寫字節(jié)輸出寄存器

35

75/B5

16位訪問

整形寄存器

讀整形輸入寄存器

04

44/84

讀整形輸出寄存器

03

43/83

寫整形輸出寄存器

10

50/90

32位訪問

實(shí)數(shù)寄存器

讀實(shí)數(shù)輸入寄存器

36

76/B6

讀實(shí)數(shù)輸出寄存器

37

77/B7

寫實(shí)數(shù)輸出寄存器

38

78/B8

        

 

2.3.1讀離散輸出(0x01

    01功能代碼是遠(yuǎn)程設(shè)備用來讀取離散輸出的1~2000鄰近狀態(tài)。請(qǐng)求協(xié)議數(shù)據(jù)單元詳細(xì)說明了離散輸出的起始地址和離散輸出的個(gè)數(shù)。離散輸出的地址從0開始。

    響應(yīng)信息中的離散輸出被按字節(jié)打包,數(shù)據(jù)字節(jié)的每一位都有一個(gè)離散輸出與之相對(duì)應(yīng)。狀態(tài)1=ON0=OFF。起始地址的內(nèi)容被放入數(shù)據(jù)第一字節(jié)的最低有效位,依次類推。

    如果返回輸出的位數(shù)不是8的倍數(shù),剩余高位用0補(bǔ)。計(jì)數(shù)字節(jié)詳細(xì)記錄了完整數(shù)據(jù)字節(jié)的數(shù)量。

 

請(qǐng)求協(xié)議數(shù)據(jù)單元

功能代碼

1字節(jié)

0x01

起始地址

2字節(jié)

0x00000xFFFF

感應(yīng)器數(shù)量

2字節(jié)

120000x7D0

 

響應(yīng)協(xié)議數(shù)據(jù)單元

  功能代碼

1字節(jié)

0x01

起始地址

2字節(jié)

0x00000xFFFF

感應(yīng)器數(shù)量

2字節(jié)

120000x7D0

  感應(yīng)器狀態(tài)

n字節(jié)

n=N或者N+1

N*=輸出量/8,如果剩余量不為0,則N=N+1

 

下面舉一個(gè)例子是關(guān)于請(qǐng)求讀離散輸出(20-38):

請(qǐng)求

響應(yīng)

字段名稱

Hex

字段名稱

Hex

功能

起始地址低位

起始地址高位

輸出位數(shù)的低位

輸出位數(shù)的高位

 

01

功能

起始地址低位

起始地址高位

輸出位數(shù)的低位

輸出位數(shù)的高位

27-20的輸出狀態(tài)

35-28的輸出狀態(tài)

38-36的輸出狀態(tài)

01

13

13

00

00

13

13

00

00


CD

6B

05

 

    十六進(jìn)制數(shù)CD或二進(jìn)制數(shù)1100 1101包含了輸出位27的狀態(tài)“1”。輸出位27是這個(gè)字節(jié)的最高位,輸出位20為這個(gè)字節(jié)的最地位。

    在通常的情況下,一個(gè)字節(jié)的左邊是最高有效位,右邊是最低有效位。這樣輸出的第一個(gè)字節(jié)從左邊到右邊依次是位2720,下一個(gè)字節(jié)從左到右依次是位3528。當(dāng)傳輸這些輸出狀態(tài)時(shí),從最低有效位到最高有效位:20…2728…35依次類推。

    在最后一個(gè)字節(jié),十六進(jìn)制數(shù)05或二進(jìn)制數(shù)0000 0101是輸出位38-36的狀態(tài)。輸出位38是從左邊開始數(shù)的第六位,輸出位36是這個(gè)字節(jié)的最低位。剩余的五個(gè)高位用0補(bǔ)。

注意:剩余的五個(gè)位(高位)用0補(bǔ)。

 

2.3.2讀離散輸入(0x02)

    功能代碼是遠(yuǎn)程安裝設(shè)備驅(qū)動(dòng)程序用來讀取離散輸入的12000個(gè)鄰近狀態(tài)。請(qǐng)求PDU詳細(xì)說明了離散輸入的起始地址,第一個(gè)離散輸入的地址域和離散輸入的個(gè)數(shù)。離散輸入的地址從0開始,因此,離散輸入感應(yīng)器1-16的地址為0-15

    響應(yīng)信息中的離散輸入被按字節(jié)打包,數(shù)據(jù)字節(jié)的每一位都有一個(gè)離散輸入與之相對(duì)應(yīng)。狀態(tài)1=ON0=OFF。起始地址的內(nèi)容被放入數(shù)據(jù)第一字節(jié)的最低有效位,依次類推。

    如果返回輸出的位數(shù)不是8的倍數(shù),剩余高位用0補(bǔ)。計(jì)數(shù)字節(jié)詳細(xì)記錄了完整數(shù)據(jù)字節(jié)的數(shù)量。

 

請(qǐng)求協(xié)議數(shù)據(jù)單元

功能代碼

1字節(jié)

0x02

起始地址

2字節(jié)

0x00000xFFFF

輸入量

2字節(jié)

120000x7D0

 

響應(yīng)協(xié)議數(shù)據(jù)單元

  功能代碼

1字節(jié)

0x02

起始地址

2字節(jié)

0x00000xFFFF

輸入量

2字節(jié)

120000x7D0

  感應(yīng)器狀態(tài)

N*×1字節(jié)


N*=輸出量/8,如果剩余量不為0,則N=N+1

 

下面舉一個(gè)例子是關(guān)于請(qǐng)求讀離散輸入(197-218):

請(qǐng)求

響應(yīng)

字段名稱

Hex

字段名稱

Hex

功能

起始地址低位

起始地址高位

輸入位數(shù)的低位

輸入位數(shù)的高位

 

02

功能

起始地址高位

起始地址低位

輸入位數(shù)的高位

輸入位數(shù)的低位204-197的輸入狀態(tài)

212-205的輸入狀態(tài)

218-213的輸入狀態(tài)

02

C4

C4

00

00

16

16

00

00


AC

DB

35

 

    從十六進(jìn)制數(shù)AC或二進(jìn)制數(shù)1010 1100中可以讀出離散輸入204-197的狀態(tài),輸入位204是這個(gè)字節(jié)最高位,197是這個(gè)字節(jié)的最低位。

    從十六進(jìn)制數(shù)35或二進(jìn)制數(shù)0011 0101中可以讀出離散輸入204-197的狀態(tài),輸入位218是字節(jié)從左邊數(shù)的第三位,輸入位213是這個(gè)字節(jié)的最低位

注意:剩余的兩位(高位)用0補(bǔ)

 

2.3.3寫離散輸出0x0f

這個(gè)功能代碼是遠(yuǎn)程設(shè)備用來確定離散輸出序列中的離散輸出的ONOFF狀態(tài)。請(qǐng)求協(xié)議數(shù)據(jù)單元詳細(xì)說明了離散輸出的起始地址和輸出數(shù)量。離散輸出的地址是從0開始的,因此離散輸出1的地址為0

在請(qǐng)求協(xié)議數(shù)據(jù)單元詳細(xì)說明了請(qǐng)求狀態(tài)ONOFF。這個(gè)區(qū)域的相應(yīng)位為邏輯“1”時(shí),對(duì)應(yīng)的輸出為ON,邏輯“0”對(duì)應(yīng)OFF

正常的響應(yīng)返回功能代碼,起始地址和對(duì)應(yīng)離散輸出的數(shù)量。

請(qǐng)求協(xié)議數(shù)據(jù)單元

功能代碼

1字節(jié)

0FH

起始地址

2字節(jié)

0000H007FH

輸出數(shù)量

2字節(jié)

0001H0080H

  輸出值

N*×1字節(jié)


 

N*=輸出量/8,如果剩余量不為0,則N=N+1

 

響應(yīng)協(xié)議數(shù)據(jù)單元

  功能代碼

1字節(jié)

0FH

  起始地址

2字節(jié)

0000H007FH

輸出數(shù)量

2字節(jié)

0001H0080H

 

下面舉一個(gè)例子,寫一連串的10個(gè)離散輸出,從離散輸出20開始

 被傳輸?shù)臄?shù)據(jù)的第一字節(jié)CD是存儲(chǔ)器碼為27-20的狀態(tài),最低位表達(dá)的是離散輸出20的狀態(tài),下一字節(jié)存儲(chǔ)器碼為29-28的狀態(tài),最低位表達(dá)的是離散輸出28的狀態(tài)。在最后一字節(jié)沒有用到的位用0補(bǔ)。

請(qǐng)求       

響應(yīng)

字段名稱

Hex

字段名稱

Hex

功能

起始地址低位

起始地址高位

輸出數(shù)量低位

輸出數(shù)量高位

27-20的狀態(tài)

29-28的狀態(tài)

0F

功能

起始地址低位

起始地址高位

輸出數(shù)量低位

輸出數(shù)量高位

 

0F

13

13

00

00

0A

0A

00

00

CD


01

 

 

2.3.5讀字節(jié)輸入寄存器(0x33

這個(gè)功能代碼是用來讀遠(yuǎn)程設(shè)備相鄰的字節(jié)輸入寄存器塊。請(qǐng)求協(xié)議數(shù)據(jù)單元詳細(xì)說明了寄存器的起始地址和讀出數(shù)量。每個(gè)寄存器為一個(gè)字節(jié)。正常的的響應(yīng)會(huì)返回功能代碼,起始地址和讀出的寄存器的數(shù)量及內(nèi)容。

 

請(qǐng)求協(xié)議數(shù)據(jù)單元          

功能代碼

1字節(jié)

33H

起始地址

2字節(jié)

0000H到13FFH

數(shù)據(jù)字節(jié)個(gè)數(shù)

2字節(jié)

14000001-190H




 

響應(yīng)協(xié)議數(shù)據(jù)單元

  功能代碼

1字節(jié)

33H

  起始地址

2字節(jié)

0000H到13FFH

  數(shù)據(jù)字節(jié)個(gè)數(shù)

2字節(jié)

14000001-190H

  數(shù)據(jù)

N*字節(jié)


 

N*=數(shù)據(jù)字節(jié)個(gè)數(shù)

 

下面這個(gè)例子是讀從字節(jié)寄存器2開始讀內(nèi)容為00 0A 01 02到寄存器,:

 

請(qǐng)求       

響應(yīng)

字段名稱

Hex

字段名稱

Hex

功能

33

功能

33

起始地址低位

01

起始地址低位

01

起始地址高位

00

起始地址高位

00

數(shù)據(jù)字節(jié)低位

04

數(shù)據(jù)字節(jié)低位

04

數(shù)據(jù)字節(jié)高位

00

數(shù)據(jù)字節(jié)高位

00



數(shù)據(jù)值VB00001

數(shù)據(jù)值VB00002

數(shù)據(jù)值VB00003

數(shù)據(jù)值VB00004

00

0A

01

02

 

2.3.5讀字節(jié)輸出寄存器(0x34

這個(gè)功能代碼是用來讀遠(yuǎn)程設(shè)備相鄰的字節(jié)輸出寄存器塊。請(qǐng)求協(xié)議數(shù)據(jù)單元詳細(xì)說明了寄存器的起始地址和讀出數(shù)量。每個(gè)寄存器為一個(gè)字節(jié)。正常的的響應(yīng)會(huì)返回功能代碼,起始地址和讀出的寄存器的數(shù)量及內(nèi)容。

 

請(qǐng)求協(xié)議數(shù)據(jù)單元          

功能代碼

1字節(jié)

34H

起始地址

2字節(jié)

0000H到13FFH

數(shù)據(jù)字節(jié)個(gè)數(shù)

2字節(jié)

14000001-190H




 

響應(yīng)協(xié)議數(shù)據(jù)單元

  功能代碼

1字節(jié)

34H

  起始地址

2字節(jié)

0000H到13FFH

  數(shù)據(jù)字節(jié)個(gè)數(shù)

2字節(jié)

14000001-190H

  數(shù)據(jù)

N*字節(jié)


 

N*=數(shù)據(jù)字節(jié)個(gè)數(shù)

 

下面這個(gè)例子是讀從字節(jié)寄存器2開始讀內(nèi)容為00 0A 01 02到寄存器,:

 

請(qǐng)求       

響應(yīng)

字段名稱

Hex

字段名稱

Hex

功能

34

功能

34

起始地址低位

01

起始地址低位

01

起始地址高位

00

起始地址高位

00

數(shù)據(jù)字節(jié)低位

04

數(shù)據(jù)字節(jié)低位

04

數(shù)據(jù)字節(jié)高位

00

數(shù)據(jù)字節(jié)高位

00



數(shù)據(jù)值VB00001

數(shù)據(jù)值VB00002

數(shù)據(jù)值VB00003

數(shù)據(jù)值VB00004

00

0A

01

02

 

2.3.4寫字節(jié)輸出寄存器(0x35

這個(gè)功能代碼是遠(yuǎn)程設(shè)備用來寫相鄰的字節(jié)輸出寄存器塊。請(qǐng)求協(xié)議數(shù)據(jù)單元詳細(xì)說明了寄存器的起始地址和輸出數(shù)量。每個(gè)寄存器為一個(gè)字節(jié)。正常的的響應(yīng)會(huì)返回功能代碼,起始地址和寫入的寄存器的數(shù)量。

 

請(qǐng)求協(xié)議數(shù)據(jù)單元          

功能代碼

1字節(jié)

35H

起始地址

2字節(jié)

0000H到13FFH

數(shù)據(jù)字節(jié)個(gè)數(shù)

2字節(jié)

14000001-190H

  數(shù)據(jù)

N*字節(jié)


 

N*=數(shù)據(jù)字節(jié)個(gè)數(shù)

響應(yīng)協(xié)議數(shù)據(jù)單元

  功能代碼

1字節(jié)

35H

  起始地址

2字節(jié)

0000H到13FFH

  數(shù)據(jù)字節(jié)個(gè)數(shù)

2字節(jié)

14000001-190H

 

下面這個(gè)例子是寫00 0A 01 02到寄存器,從字節(jié)寄存器2開始:

 

請(qǐng)求       

響應(yīng)

字段名稱

Hex

字段名稱

Hex

功能

35

功能

35

起始地址低位

01

起始地址低位

01

起始地址高位

00

起始地址高位

00

數(shù)據(jù)字節(jié)低位

04

數(shù)據(jù)字節(jié)低位

04

數(shù)據(jù)字節(jié)高位

00

數(shù)據(jù)字節(jié)高位

00

數(shù)據(jù)值VB00001

00



數(shù)據(jù)值VB00002

0A

數(shù)據(jù)值VB00003

01

數(shù)據(jù)值VB00004

02

 

 

2.3.6讀整形輸入寄存器(0x04

這個(gè)功能代碼是用來讀遠(yuǎn)程設(shè)備相鄰的整形(int雙字節(jié))輸入寄存器塊。請(qǐng)求協(xié)議數(shù)據(jù)單元詳細(xì)說明了寄存器的起始地址和讀出數(shù)量。每個(gè)寄存器為兩個(gè)字節(jié)。正常的的響應(yīng)會(huì)返回功能代碼,起始地址和讀出的寄存器的數(shù)量及內(nèi)容。

 

請(qǐng)求協(xié)議數(shù)據(jù)單元          

功能代碼

1字節(jié)

04H

起始地址

2字節(jié)

0000H到13FFH

寄存器個(gè)數(shù)

2字節(jié)

14000001-190H




 

響應(yīng)協(xié)議數(shù)據(jù)單元

  功能代碼

1字節(jié)

04H

  起始地址

2字節(jié)

0000H到13FFH

  寄存器個(gè)數(shù)

2字節(jié)

14000001-190H

  數(shù)據(jù)

N*字節(jié)


 

N*=數(shù)據(jù)字節(jié)個(gè)數(shù)*2

 

下面這個(gè)例子是讀從整形寄存器2開始讀內(nèi)容為00 0A01 02到寄存器,:

 

請(qǐng)求       

響應(yīng)

字段名稱

Hex

字段名稱

Hex

功能

04

功能

04

起始地址低位

01

起始地址低位

01

起始地址高位

00

起始地址高位

00

寄存器個(gè)數(shù)低位

02

寄存器個(gè)數(shù)低位

02

寄存器個(gè)數(shù)高位

00

寄存器個(gè)數(shù)高位

00



數(shù)據(jù)值ViD2低字節(jié)

數(shù)據(jù)值VID2高字節(jié)

數(shù)據(jù)值VID3低字節(jié)

數(shù)據(jù)值VID3高字節(jié)

00

0A

01

02

 

2.3.7讀整形輸出寄存器(0x03

這個(gè)功能代碼是用來讀遠(yuǎn)程設(shè)備相鄰的整形(int雙字節(jié))輸出寄存器塊。請(qǐng)求協(xié)議數(shù)據(jù)單元詳細(xì)說明了寄存器的起始地址和讀出數(shù)量。每個(gè)寄存器為兩個(gè)字節(jié)。正常的的響應(yīng)會(huì)返回功能代碼,起始地址和讀出的寄存器的數(shù)量及內(nèi)容。

 

請(qǐng)求協(xié)議數(shù)據(jù)單元          

功能代碼

1字節(jié)

03H

起始地址

2字節(jié)

0000H到13FFH

寄存器個(gè)數(shù)

2字節(jié)

14000001-190H




 

響應(yīng)協(xié)議數(shù)據(jù)單元

  功能代碼

1字節(jié)

03H

  起始地址

2字節(jié)

0000H到13FFH

  寄存器個(gè)數(shù)

2字節(jié)

14000001-190H

  數(shù)據(jù)

N*字節(jié)


 

N*=數(shù)據(jù)字節(jié)個(gè)數(shù)*2

 

下面這個(gè)例子是讀從整形輸出寄存器2開始讀內(nèi)容為00 0A01 02到寄存器,:

 

請(qǐng)求       

響應(yīng)

字段名稱

Hex

字段名稱

Hex

功能

03

功能

03

起始地址低位

01

起始地址低位

01

起始地址高位

00

起始地址高位

00

寄存器個(gè)數(shù)低位

02

寄存器個(gè)數(shù)低位

02

寄存器個(gè)數(shù)高位

00

寄存器個(gè)數(shù)高位

00



數(shù)據(jù)值VOD2低字節(jié)

數(shù)據(jù)值VOD2高字節(jié)

數(shù)據(jù)值VOD3低字節(jié)

數(shù)據(jù)值VOD3高字節(jié)

00

0A

01

02

 

 

2.3.8寫整形輸出寄存器(0x10

這個(gè)功能代碼是用來寫遠(yuǎn)程設(shè)備相鄰的整形(int雙字節(jié))輸出寄存器塊。請(qǐng)求協(xié)議數(shù)據(jù)單元詳細(xì)說明了寄存器的起始地址和讀出數(shù)量。每個(gè)寄存器為兩個(gè)字節(jié)。正常的的響應(yīng)會(huì)返回功能代碼,起始地址和讀出的寄存器的數(shù)量及內(nèi)容。

 

請(qǐng)求協(xié)議數(shù)據(jù)單元          

功能代碼

1字節(jié)

10H

起始地址

2字節(jié)

0000H到13FFH

寄存器個(gè)數(shù)

2字節(jié)

14000001-190H

  數(shù)據(jù)

N*字節(jié)


 

N*=數(shù)據(jù)字節(jié)個(gè)數(shù)*2

 

響應(yīng)協(xié)議數(shù)據(jù)單元

  功能代碼

1字節(jié)

10H

  起始地址

2字節(jié)

0000H到13FFH

寄存器個(gè)數(shù)

2字節(jié)

14000001-190H




 

下面這個(gè)例子是讀從整形輸出寄存器2開始讀內(nèi)容為00 0A01 02到寄存器:

 

請(qǐng)求       

響應(yīng)

字段名稱

Hex

字段名稱

Hex

功能

10

功能

10

起始地址低位

01

起始地址低位

01

起始地址高位

00

起始地址高位

00

寄存器個(gè)數(shù)低位

02

寄存器個(gè)數(shù)低位

02

寄存器個(gè)數(shù)高位

00

寄存器個(gè)數(shù)高位

00

數(shù)據(jù)值VOD2低字節(jié)

數(shù)據(jù)值VOD2高字節(jié)

數(shù)據(jù)值VOD3低字節(jié)

數(shù)據(jù)值VOD3高字節(jié)

00

0A

01

02



 

2.3.9讀實(shí)數(shù)輸入寄存器(0x36

這個(gè)功能代碼是用來讀遠(yuǎn)程設(shè)備相鄰實(shí)數(shù)(float,四字節(jié),IEE754標(biāo)準(zhǔn))輸入寄存器塊。請(qǐng)求協(xié)議數(shù)據(jù)單元詳細(xì)說明了寄存器的起始地址和讀出數(shù)量。每個(gè)寄存器為四個(gè)字節(jié)。正常的的響應(yīng)會(huì)返回功能代碼,起始地址和讀出的寄存器的數(shù)量及內(nèi)容。

 

請(qǐng)求協(xié)議數(shù)據(jù)單元          

功能代碼

1字節(jié)

36H

起始地址

2字節(jié)

0000H到13FFH

數(shù)據(jù)字節(jié)個(gè)數(shù)

2字節(jié)

14000001-190H




 

響應(yīng)協(xié)議數(shù)據(jù)單元

  功能代碼

1字節(jié)

36H

  起始地址

2字節(jié)

0000H到13FFH

  數(shù)據(jù)字節(jié)個(gè)數(shù)

2字節(jié)

14000001-190H

  數(shù)據(jù)

N*字節(jié)


 

N*=數(shù)據(jù)字節(jié)個(gè)數(shù)*4

 

下面這個(gè)例子是讀從整形寄存器2開始讀內(nèi)容為3.143.15到寄存器,:

請(qǐng)求       

響應(yīng)

字段名稱

Hex

字段名稱

Hex

功能

36

功能

36

起始地址低位

01

起始地址低位

01

起始地址高位

00

起始地址高位

00

寄存器個(gè)數(shù)低位

02

寄存器個(gè)數(shù)低位

02

寄存器個(gè)數(shù)高位

00

寄存器個(gè)數(shù)高位

00



數(shù)據(jù)值ViF2字節(jié)1

數(shù)據(jù)值ViF2字節(jié)2

數(shù)據(jù)值ViF2字節(jié)3

數(shù)據(jù)值ViF2字節(jié)4

數(shù)據(jù)值ViF3字節(jié)1

數(shù)據(jù)值ViF3字節(jié)2

數(shù)據(jù)值ViF3字節(jié)3

數(shù)據(jù)值ViF3字節(jié)4

C3

F5

48

40

9A

99

49

40

 

2.3.10讀實(shí)數(shù)輸出寄存器(0x37

這個(gè)功能代碼是用來讀遠(yuǎn)程設(shè)備相鄰實(shí)數(shù)(float,四字節(jié),IEE754標(biāo)準(zhǔn))輸出寄存器塊。請(qǐng)求協(xié)議數(shù)據(jù)單元詳細(xì)說明了寄存器的起始地址和讀出數(shù)量。每個(gè)寄存器為四個(gè)字節(jié)。正常的的響應(yīng)會(huì)返回功能代碼,起始地址和讀出的寄存器的數(shù)量及內(nèi)容。

 

請(qǐng)求協(xié)議數(shù)據(jù)單元          

功能代碼

1字節(jié)

37H

起始地址

2字節(jié)

0000H到13FFH

數(shù)據(jù)字節(jié)個(gè)數(shù)

2字節(jié)

14000001-190H




 

響應(yīng)協(xié)議數(shù)據(jù)單元

  功能代碼

1字節(jié)

37H

  起始地址

2字節(jié)

0000H到13FFH

  數(shù)據(jù)字節(jié)個(gè)數(shù)

2字節(jié)

14000001-190H

  數(shù)據(jù)

N*字節(jié)


 

N*=數(shù)據(jù)字節(jié)個(gè)數(shù)*4

 

下面這個(gè)例子是讀從整形寄存器2開始讀內(nèi)容為3.143.15到寄存器,:

請(qǐng)求       

響應(yīng)

字段名稱

Hex

字段名稱

Hex

功能

37

功能

37

起始地址低位

01

起始地址低位

01

起始地址高位

00

起始地址高位

00

寄存器個(gè)數(shù)低位

02

寄存器個(gè)數(shù)低位

02

寄存器個(gè)數(shù)高位

00

寄存器個(gè)數(shù)高位

00



數(shù)據(jù)值VOF2字節(jié)1

數(shù)據(jù)值VOF2字節(jié)2

數(shù)據(jù)值VOF2字節(jié)3

數(shù)據(jù)值VOF2字節(jié)4

數(shù)據(jù)值VOF3字節(jié)1

數(shù)據(jù)值VOF3字節(jié)2

數(shù)據(jù)值VOF3字節(jié)3

數(shù)據(jù)值VOF3字節(jié)4

C3

F5

48

40

9A

99

49

40

 

2.3.11寫實(shí)數(shù)輸出寄存器(0x38

這個(gè)功能代碼是用來寫遠(yuǎn)程設(shè)備相鄰實(shí)數(shù)(float,四字節(jié),IEE754標(biāo)準(zhǔn))輸出寄存器塊。請(qǐng)求協(xié)議數(shù)據(jù)單元詳細(xì)說明了寄存器的起始地址和寫的數(shù)量和內(nèi)容。每個(gè)寄存器為四個(gè)字節(jié)。正常的的響應(yīng)會(huì)返回功能代碼,起始地址和讀出的寄存器的數(shù)量及內(nèi)容。

 

請(qǐng)求協(xié)議數(shù)據(jù)單元          

功能代碼

1字節(jié)

38H

起始地址

2字節(jié)

0000H到13FFH

數(shù)據(jù)字節(jié)個(gè)數(shù)

2字節(jié)

14000001-190H

  數(shù)據(jù)

N*字節(jié)


N*=數(shù)據(jù)字節(jié)個(gè)數(shù)*4

 

響應(yīng)協(xié)議數(shù)據(jù)單元

  功能代碼

1字節(jié)

38H

  起始地址

2字節(jié)

0000H到13FFH

  數(shù)據(jù)字節(jié)個(gè)數(shù)

2字節(jié)

14000001-190H




 

N*=數(shù)據(jù)字節(jié)個(gè)數(shù)*4

 

下面這個(gè)例子是寫從整形寄存器2開始內(nèi)容為3.143.15到寄存器上,:

請(qǐng)求       

響應(yīng)

字段名稱

Hex

字段名稱

Hex

功能

38

功能

38

起始地址低位

01

起始地址低位

01

起始地址高位

00

起始地址高位

00

寄存器個(gè)數(shù)低位

02

寄存器個(gè)數(shù)低位

02

寄存器個(gè)數(shù)高位

00

寄存器個(gè)數(shù)高位

00

數(shù)據(jù)值VOF2字節(jié)1

數(shù)據(jù)值VOF2字節(jié)2

數(shù)據(jù)值VOF2字節(jié)3

數(shù)據(jù)值VOF2字節(jié)4

數(shù)據(jù)值VOF3字節(jié)1

數(shù)據(jù)值VOF3字節(jié)2

數(shù)據(jù)值VOF3字節(jié)3

數(shù)據(jù)值VOF3字節(jié)4

C3

F5

48

40

9A

99

49

40



 

2.3.12 主動(dòng)請(qǐng)求與響應(yīng)(0x40+*

         各種類型碼還有兩個(gè)碼+0x400x80的類型碼(例如0x01碼變成0x410x810x0F變成0x4F0x8F),他們的語(yǔ)法是一樣處理的。只有一下不同:

         當(dāng)發(fā)送出去的數(shù)據(jù)包是0x40碼類型時(shí),捷麥標(biāo)示頭自動(dòng)變成4F 3F 2F 1F 5F 5F的主動(dòng)上傳標(biāo)示頭,包類型字段變成84的主動(dòng)上傳字段。(其他的處理邏輯跟普通的下至數(shù)據(jù)一樣處理)。

         當(dāng)收到的數(shù)據(jù)包類型是這種0x40碼類型時(shí),將數(shù)據(jù)內(nèi)容解析出來,然后將內(nèi)容更新到自身對(duì)應(yīng)的0x80碼類型的變量上,然后進(jìn)行相應(yīng)的響應(yīng),(標(biāo)示頭自動(dòng)變成主動(dòng)上傳頭,包類型字段變成04的主動(dòng)上傳響應(yīng)字段)(其他的處理邏輯跟普通的采集數(shù)據(jù)包響應(yīng)一樣處理)。

         0x80碼是采集變量(只讀變量),采集周期為0

2.3.13 示例獲取一個(gè)數(shù)據(jù)段

(假設(shè)分配的設(shè)備號(hào)為25 7D,包標(biāo)示為5,中心站的地址為0,請(qǐng)求的分站為7,獲得整形輸入的數(shù)據(jù))

主站完整的數(shù)據(jù)請(qǐng)求包為:

4F 3F 2F 1F 5F 6F 25 7D 05 00 09 00 00 EF FF F0 00 00 07 00 00 00 F6 08 01 01 04 00 00 02 00 FA B1

從站完整的數(shù)據(jù)響應(yīng)包為:

4F 3F 2F 1F 5F 6F 25 7D 05 00 0D 00 80 EF FF F0 00 00 00 00 07 00 03 6B 01 01 04 13 00 02 00 12 34 56 78 1B CB

 

2.3.14 示例獲取多個(gè)個(gè)數(shù)據(jù)段

(假設(shè)分配的設(shè)備號(hào)為25 7D,包標(biāo)示為5,中心站的地址為0,分站為7,獲得整形輸入的數(shù)據(jù)和讀離散輸出)

主站完整的數(shù)據(jù)請(qǐng)求包為:

4F 3F 2F 1F 5F 6F 25 7D 05 00 0F 00 00 EF FF F0 00 00 07 00 00 00 FE 00 02 01 04 00 00 02 00 02 01 00 00 09 00 57 F1

從站完整的數(shù)據(jù)響應(yīng)包為:

4F 3F 2F 1F 5F 6F 25 7D 05 00 15 00 80 EF FF F0 00 00 00 00 07 00 21 7B 02 01 04 00 00 02 00 12 34 56 78 02 01 00 00 09 00 D7 01 72 82  

 

?

  • 4G-PLC

  • 電臺(tái)PLC

  • wiFi-PLC

  • 網(wǎng)口PLC
  • 點(diǎn)擊這里直接在線溝通

    點(diǎn)擊這里給我發(fā)QQ消息

    點(diǎn)擊這里獲得我的聯(lián)系方式

    技術(shù)支持專線

    010-63331036

    聯(lián)系我們

    網(wǎng)站地圖 | 聯(lián)系我們



    工業(yè)和信息化部備案管理系統(tǒng)網(wǎng)站 京ICP備10034286號(hào)-1

    Copyright ?北京捷麥順馳科技有限公司,Inc.All rights reserved.

    主站蜘蛛池模板: 久久综合九九亚洲一区| 综合久久99久久99播放| 亚洲精选在线| 欧美国产视频| 99v视频国产在线观看免费| 亚洲香蕉久久综合网| 手机视频在线观看| 色狠狠一区二区三区香蕉蜜桃| 愉拍自拍| 欧美成人午夜影院| 亚洲欧美日韩国产精品第不页| 一级毛片日韩a欧美最爱| 日韩精品一级a毛片| 国产99精品在线观看| 精品一区二区三区四区乱码90 | 亚洲最新| 国产成人手机视频| 看一级黄色大片| 国产精品一区久久| 久久久久琪琪免费影院| 日韩字幕无线乱码| jizz大全日本护士喷奶水| 成人看免费一级毛片| 国产精品你懂的在线播放| 国产精品美女久久久久网站| 玖玖草在线观看| 欧美视频一区二区| 日韩欧美亚州| 午夜淫片| 亚洲国产精品嫩草影院久久 | 国产免费黄| 国产精选在线观看| 美国一级黄色大片| 黄色网在线看| 黄色的视频免费观看| 激情综合网址| 久久亚洲一区二区| 免费在线观看网址| 亚洲国产美女精品久久久久| 在线播放国产真实女同事| 777久久成人影院|