性吧杏吧,手机色情直播破解版,杏杏吧在线

講一講HART協(xié)議命令格式

2019/12/26 20:40:10 人評(píng)論 次瀏覽 分類(lèi):電子技術(shù)  文章地址:http://m.prosperiteweb.com/tech/2850.html

昌暉儀表從介紹HART協(xié)議工作原理、協(xié)議物理層、數(shù)據(jù)鏈路層、應(yīng)用層、消息結(jié)構(gòu)等基礎(chǔ)知識(shí)入手,著重分享HART協(xié)議命令格式方面的專(zhuān)業(yè)知識(shí)。

HART協(xié)議最初是由美國(guó)Rosemount公司開(kāi)發(fā),使用FSK技術(shù),在4-20mA信號(hào)上疊加一個(gè)頻率信號(hào),成功實(shí)現(xiàn)了模擬信號(hào)和數(shù)字信號(hào)雙向通訊,而互相之間沒(méi)有干擾。HART協(xié)議使用OSI標(biāo)準(zhǔn)的第一層物理層、第二層數(shù)據(jù)鏈路層和第七層應(yīng)用層。HART協(xié)議是一種主從協(xié)議,規(guī)定了傳輸?shù)奈锢硇问健?消息結(jié)構(gòu)、數(shù)據(jù)格式包括一系列操作指令,HART協(xié)議支持雙主站,一對(duì)電纜線上最多可以連接15個(gè)從設(shè)備。

HART標(biāo)識(shí)

工作原理

HART協(xié)議物理層
1、物理層規(guī)定了信號(hào)的傳輸方法、傳輸介質(zhì)。采用Bell202標(biāo)準(zhǔn)的FSK頻移鍵控信號(hào),在低頻的4-20mA模擬信號(hào)上疊,加一個(gè)頻率數(shù)字信號(hào)進(jìn)行雙向數(shù)字通信。
2、數(shù)字信號(hào)的幅度為0.5mA,數(shù)據(jù)傳輸率為1200bps,1200Hz代表邏輯“1”,2200Hz代表邏輯“0”。數(shù)字信號(hào)波形如下圖所示:


HART數(shù)據(jù)鏈路層

1、數(shù)據(jù)鏈路層規(guī)定HART協(xié)議幀的格式,可尋址范圍0-15,“0”時(shí),處于4-20mA及數(shù)字信號(hào)點(diǎn)對(duì)點(diǎn)模式,現(xiàn)場(chǎng)儀表與兩個(gè)數(shù)字通信主設(shè)備(也稱(chēng)作通信設(shè)備或主設(shè)備)之間采用特定的串行通信,主設(shè)備包括PC機(jī)或控制室系統(tǒng)和手持通信器。單站操作中,主變量(過(guò)程變量)可以以模擬形式輸出,也可以以數(shù)字通信方式讀出,以數(shù)字方式讀出時(shí),輪詢(xún)地址始終為0。也就是說(shuō),單站模式時(shí)數(shù)字信號(hào)和4~20mA模擬信號(hào)同時(shí)有效。
2、“1-15”處于全數(shù)字通信狀態(tài),工作在點(diǎn)對(duì)多點(diǎn)模式,通信模式有“問(wèn)答”式、“突發(fā)”式(點(diǎn)對(duì)點(diǎn)、自動(dòng)連續(xù)地發(fā)送信息)。按問(wèn)答方式工作時(shí)的數(shù)據(jù)更新速率為2-3次/s,按突發(fā)方式工作時(shí)的數(shù)據(jù)更新速率為3-4次/s。
3、在本質(zhì)安全要求下,只使用一個(gè)電源,至多能連接15臺(tái)現(xiàn)場(chǎng)儀表,每個(gè)現(xiàn)場(chǎng)設(shè)備可有256個(gè)變量,每個(gè)信息最大可包含4個(gè)變量。這就是所謂的多點(diǎn)(多站)操作模式。這種工作方式尤其適用于遠(yuǎn)程監(jiān)控,如管道系統(tǒng)和油罐儲(chǔ)存場(chǎng)地。
4、采用多點(diǎn)模式,4-20mA的模擬輸出信號(hào)不再有效(輸出設(shè)在4mA使功耗最小,主要是為變送器供電,各個(gè)現(xiàn)場(chǎng)裝置并聯(lián)連接),系統(tǒng)以數(shù)字通信方式依次讀取并聯(lián)到一對(duì)傳輸線上的多臺(tái)現(xiàn)場(chǎng)儀表的測(cè)量值(或其它數(shù)據(jù))。如果以這種方式構(gòu)成控制系統(tǒng),可以顯著地降低現(xiàn)場(chǎng)布線的費(fèi)用和減少主設(shè)備輸入接口電路,這對(duì)于控制系統(tǒng)有重要價(jià)值。
5、HART協(xié)議根據(jù)冗余檢錯(cuò)碼信息,采用自動(dòng)重復(fù)請(qǐng)求發(fā)送機(jī)制,消除由于線路噪聲或其他干擾引起的數(shù)據(jù)誤碼,實(shí)現(xiàn)數(shù)據(jù)無(wú)差錯(cuò)傳送。
6、HART協(xié)議的幀格式以8位為一個(gè)字節(jié)進(jìn)行編碼,對(duì)每個(gè)字節(jié)加上一個(gè)起始位、一個(gè)奇偶校驗(yàn)位和一個(gè)停止位以串行方式進(jìn)行傳輸。通常采用UART(通用異步接收/發(fā)送器)來(lái)完成字節(jié)的傳輸。由于數(shù)據(jù)的有無(wú)和長(zhǎng)短不恒定,所以HART數(shù)據(jù)的長(zhǎng)度不能超過(guò)25個(gè)字節(jié)。

HART數(shù)據(jù)鏈路層-消息結(jié)構(gòu)

如下所示,一條消息包括源地址、目的地址和一個(gè)校驗(yàn)位。每一個(gè)應(yīng)答消息中包括現(xiàn)場(chǎng)設(shè)備狀態(tài),用于確保持續(xù)通訊的順暢進(jìn)行。數(shù)據(jù)位可有可無(wú),視具體情況而定。一般每秒種可以傳輸2-3條消息。
HART數(shù)據(jù)鏈路層-消息結(jié)構(gòu)

1、PREAMBLE
導(dǎo)言字節(jié),一般是5-20個(gè)FF十六進(jìn)制字節(jié)。他實(shí)際上是同步信號(hào),各通訊設(shè)備可以據(jù)此略做調(diào)整,保證信息的同步。在開(kāi)始通訊的時(shí)候,使用的是20個(gè)FF導(dǎo)言,從機(jī)應(yīng)答0信號(hào)時(shí)將告之主機(jī)他“希望”接收幾個(gè)字節(jié)的導(dǎo)言,另外主機(jī)也可以用59號(hào)命令告訴從機(jī)應(yīng)答時(shí)應(yīng)用幾位導(dǎo)言。
2、START
起始字節(jié),他將告之使用的結(jié)構(gòu)為“長(zhǎng)”還是“短”、消息源、是否是“突發(fā)”模式消息。主機(jī)到從機(jī)為短結(jié)構(gòu)時(shí),起始位為02,長(zhǎng)幀時(shí)為82。從機(jī)到主機(jī)的短結(jié)構(gòu)值為06,長(zhǎng)結(jié)構(gòu)值為86。而為“突發(fā)”模式的短結(jié)構(gòu)值為01,長(zhǎng)結(jié)構(gòu)為81。一般設(shè)備進(jìn)行通訊接收到2個(gè)FF字節(jié)后,就將偵聽(tīng)起始位。
3、ADDR
地址字節(jié),他包含了主機(jī)地址和從機(jī)地址,如前所述,短結(jié)構(gòu)中占1字節(jié),長(zhǎng)結(jié)構(gòu)中占5字節(jié)。無(wú)論長(zhǎng)結(jié)構(gòu)還是短結(jié)構(gòu),因?yàn)镠ART協(xié)議中允許2個(gè)主機(jī)存在,所以我們用首字節(jié)的最高位來(lái)進(jìn)行區(qū)分,值為1表示第一主機(jī)地址,第二主機(jī)用0表示?!巴话l(fā)”模式是特例,0,1值將交替出現(xiàn),也就是說(shuō),在該模式下,賦予2個(gè)主機(jī)的機(jī)會(huì)均等。次高位為1表示為“突發(fā)”模式,短結(jié)構(gòu)用首字節(jié)的0-4位表示值為0-15的從機(jī)地址,第5,6位賦0;而長(zhǎng)結(jié)構(gòu)用后6位表示從機(jī)的生產(chǎn)廠商的代碼,第2個(gè)字節(jié)表示從機(jī)設(shè)備型號(hào)代碼,后3-5個(gè)字節(jié)表示從機(jī)的設(shè)備序列號(hào),構(gòu)成“唯一”標(biāo)志碼。
4、COM
命令字節(jié),他的范圍為253個(gè),用HEX的0-FD表示。31,127,254,255為預(yù)留值。
5、BCNT
數(shù)據(jù)總長(zhǎng)度,他的值表示的是BCNT下一個(gè)字節(jié)到最后(不包括校驗(yàn)字節(jié))的字節(jié)數(shù)。接收設(shè)備用他可以鑒別出校驗(yàn)字節(jié),也可以知道消息的結(jié)束。因?yàn)橐?guī)定數(shù)據(jù)最多為25字節(jié),所以他的值是從0-27。
6、STATUS
狀態(tài)字節(jié),他也叫做“響應(yīng)碼”,顧名思義,他只存在于從機(jī)響應(yīng)主機(jī)消息的時(shí)候,用2字節(jié)表示。他將報(bào)告通訊中的錯(cuò)誤、接收命令的狀態(tài)(如:設(shè)備忙、無(wú)法識(shí)別命令等)和從機(jī)的操作狀態(tài)。

如果我們?cè)谕ㄓ嵾^(guò)程中發(fā)現(xiàn)了錯(cuò)誤,首字節(jié)的最高位(第7位)將置1,其余的7位將匯報(bào)出錯(cuò)誤的細(xì)節(jié),而第2個(gè)字節(jié)全為0。否則,當(dāng)首字節(jié)的最高位為0時(shí),表示通訊正常,其余的7位表示命令響應(yīng)情況,第2個(gè)字節(jié)表示場(chǎng)設(shè)備狀態(tài)的信息。


UART發(fā)現(xiàn)的通訊錯(cuò)誤一般有:奇偶校驗(yàn)、溢出和結(jié)構(gòu)錯(cuò)誤等。命令響應(yīng)碼可以有128個(gè),表示錯(cuò)誤和警告,他們可以是單一的意義,也可以有多種意義,我們通過(guò)特殊命令進(jìn)行定義、規(guī)定?,F(xiàn)場(chǎng)設(shè)備狀態(tài)信息用來(lái)表示故障和非正常操作模式。

7、DATA
數(shù)據(jù)字節(jié),首先我想說(shuō)明的是并非所有的命令和響應(yīng)都包含數(shù)據(jù)字節(jié),他最多不超過(guò)25字節(jié)(隨著通訊速度的提高,正在要求放寬這一標(biāo)準(zhǔn))。數(shù)據(jù)的形式可以是無(wú)符號(hào)的整數(shù)(可以是8,16,24,32 b),浮點(diǎn)數(shù)(用IEEE754單精浮點(diǎn)格式)或ASCII字符串,還有預(yù)先制定的單位數(shù)據(jù)列表。具體的數(shù)據(jù)個(gè)數(shù)根據(jù)不同的命令而定。
8、CHK
奇偶校驗(yàn),方式是縱向奇偶校驗(yàn),從起始字節(jié)開(kāi)始到奇偶校驗(yàn)前一個(gè)字節(jié)為止。另外,每一個(gè)字節(jié)都有1位的校驗(yàn)位,這兩者的結(jié)合可以檢測(cè)出3位的突發(fā)錯(cuò)誤。

HART應(yīng)用層

HART操作命令處于應(yīng)用層,包括通用命令、普通命令和特殊命令。
通用命令的范圍從0-30:
0,11:設(shè)備識(shí)別(廠商、設(shè)備類(lèi)型、版本)
1,2,3:讀測(cè)量值
6:置隨選地址
12,13,17,18:讀、寫(xiě)用戶(hù)輸入文本信息
14,15:讀設(shè)備信息(傳感器序列號(hào),傳感限,報(bào)警操作,范圍,傳輸結(jié)構(gòu))
16,19:讀、寫(xiě)最終裝配號(hào)

普通命令是從32到126,提供了大多數(shù)設(shè)備的功能命令。

普通命令中的123和126號(hào)命令并非“公共”的,他們專(zhuān)用于生產(chǎn)廠家在生產(chǎn)設(shè)備時(shí)輸入設(shè)備的特殊信息,一般用戶(hù)是不會(huì)改動(dòng)的,像設(shè)備識(shí)別號(hào)之類(lèi)。也可以用于直接讀、寫(xiě)存儲(chǔ)器。
33,61,110:讀測(cè)量值
34-37,44,47:設(shè)置操作變量(范圍、時(shí)限、PV值、傳輸功能)
38:復(fù)位“結(jié)構(gòu)變化”標(biāo)志
39:EPROM控制
40-42:對(duì)話功能(固定電流模式、自測(cè)、復(fù)位)
43,45,46:模擬輸入、輸出整流
48:讀附設(shè)備的狀態(tài)
49:寫(xiě)傳感器序列號(hào)
50-56:用傳輸變量
57,58:?jiǎn)卧畔?標(biāo)志、描述、數(shù)據(jù))
59:寫(xiě)所需導(dǎo)言號(hào)
60,62-70:使用復(fù)合模擬輸出
107-109:突發(fā)模式控制

常用重要HART協(xié)議命令介紹

0,11:用于識(shí)別現(xiàn)場(chǎng)設(shè)備。我們知道無(wú)論采用長(zhǎng)結(jié)構(gòu)還是短結(jié)構(gòu)都可以標(biāo)識(shí)現(xiàn)場(chǎng)設(shè)備,應(yīng)答0號(hào)命令的信息中就包含了對(duì)不同設(shè)備的標(biāo)識(shí);然后,主機(jī)建立不同的標(biāo)志,為隨后的長(zhǎng)結(jié)構(gòu)命令做準(zhǔn)備。在HART4.0版本及以前,傳輸類(lèi)型碼分為2字節(jié):一個(gè)是生產(chǎn)廠商代碼,另一個(gè)是設(shè)備類(lèi)型代碼。而兩個(gè)字節(jié)還可以節(jié)略。到了HART5.0版本就必須使用擴(kuò)充的代碼表示設(shè)備信息,還用ID號(hào)代替了最終流水線號(hào)。

一個(gè)主機(jī)通常以0號(hào)命令開(kāi)始通訊,賦予隨選地址0,然后掃描1-15地址,看誰(shuí)期待操作,顯然由于HART5.0版本后的設(shè)備,主機(jī)可以使用11號(hào)命令,再帶一個(gè)全0的廣播地址,外加命令中的標(biāo)志作為數(shù)據(jù),等待著具有相同標(biāo)志的從機(jī)響應(yīng),而應(yīng)答的11號(hào)命令等同于0號(hào)命令。


HART命令分析

例1:主機(jī)到從機(jī)
主機(jī)到從機(jī)消息
上面是主機(jī)到從機(jī)發(fā)送的一條消息。前5個(gè)字節(jié)值都為FF,顯然他是導(dǎo)言字節(jié)。接著的82起始字節(jié),表示主機(jī)到從機(jī)發(fā)出的長(zhǎng)結(jié)構(gòu)的消息。
后5個(gè)字節(jié) “A6,06,BC,61,4E”是地址字節(jié)化為二進(jìn)制表示如下:
主機(jī)到從機(jī)注解
①可見(jiàn)首字節(jié)A6的最高位為1表示主機(jī),次高位為0表示非突發(fā)模式,后面的38 b表示設(shè)備的惟一標(biāo)號(hào);

②“100110”是生產(chǎn)廠家代碼,值為38,是Rosemount公司的代碼;
③后一字節(jié)06是設(shè)備型號(hào)代碼,06代表的型號(hào)是3051C;
④后面的3個(gè)字節(jié)是設(shè)備識(shí)別號(hào),本例中的值為12345678;
⑤再接下來(lái)的01是命令字節(jié),表示1號(hào)命令,即讀取PV值后面的00是表示數(shù)據(jù)的長(zhǎng)度;
⑥本例中無(wú)數(shù)據(jù),值為0;
⑦最后是校驗(yàn)字節(jié)B0。

例2:從機(jī)到主機(jī)

從機(jī)到主機(jī)的消息
①上面表示的是從機(jī)到主機(jī)的一條消息。本例大部分與例1相似,不同的是數(shù)據(jù)字節(jié)不再為0,其中的06表示單位PSI;

②后面的4個(gè)字節(jié)是用浮點(diǎn)數(shù)表示的值,為5.5。
③并且由于本例是由從機(jī)到主機(jī)的應(yīng)答消息,所以存在著狀態(tài)位,即本例中的“00 00”,表示“OK”。

例3:突發(fā)模式

突發(fā)模式消息
上面是突發(fā)模式發(fā)出的一條消息。

①第1個(gè)字節(jié)81表示突發(fā)的長(zhǎng)結(jié)構(gòu)模式,與前例中相似的地方我們不再介紹。
②注意到狀態(tài)字節(jié)“00 60”后的字節(jié)“41 3FA000”,他表示的是當(dāng)前的電流值,計(jì)算后是11.9766;
③后面的27表示單位mA,像后面的39表示“%”一樣。
④數(shù)據(jù)字節(jié)中的“42 47 60 00”,“BF 06 60 00”,“41 95 0000”分別表示“SV”,“TV”,“FV”表示方法與PV相同。
⑤經(jīng)過(guò)解釋后的消息可以表示為:“LBTXS/RdAllPv/026/0060/11.9766/mA/11.9766/%/49.8438/psi/-0.524902/%/18.625/D4”。

標(biāo)準(zhǔn)的HART協(xié)議命令格式

讀設(shè)備序號(hào)命令格式說(shuō)明如下:
讀設(shè)備序號(hào)命令格式
由于要確保待發(fā)的命令完整的發(fā)送,我們特意在標(biāo)準(zhǔn)命令格式序文前加了一個(gè)起始位“23”和在校驗(yàn)位后加了一個(gè)結(jié)束符“40”。

例如:發(fā)送讀取設(shè)備序號(hào)命令 23 FF FF FF FF FF 02 80 00 00 82 40
命令注解如下表所示:
發(fā)送讀取設(shè)備序號(hào)命令注解

返回的命令格式如下表所示:

返回的命令格式
返回的數(shù)據(jù)為:FF FF FF FF FF 06 80 00 0E 00 40 FE 50 7F 06 05 01 01 08 00 6B 73 3A 30

返回?cái)?shù)據(jù)命令注解如下表所示:
返回?cái)?shù)據(jù)命令注解

返回?cái)?shù)據(jù)6B 73 3A就是這臺(tái)設(shè)備的序號(hào)。
起始位和結(jié)束符只在發(fā)送命令時(shí)做確定命令的完整發(fā)送,它不改變命令本身,更不會(huì)影響數(shù)據(jù)的轉(zhuǎn)換。

發(fā)送讀取液位計(jì)動(dòng)態(tài)變量命令

命令格式說(shuō)明如下表所示:
發(fā)送讀取液位計(jì)動(dòng)態(tài)變量命令格式
返回的數(shù)據(jù)為:FF FF FF FF FF 86 90 7F 6B 73 3A 03 15 00 40 40 D4 E0 00 2D 3E 09 1C 2D 2D 3E 92 E3 9E 20 41 D4 B2 B8 01

返回?cái)?shù)據(jù)命令注解如下表所示:
返回?cái)?shù)據(jù)命令注解
關(guān)于HART協(xié)議命令格式的知識(shí)昌暉儀表就分享到這里,學(xué)習(xí)更多自動(dòng)化儀表知識(shí)記得關(guān)注昌暉儀表網(wǎng)。

HART協(xié)議相關(guān)閱讀
HART協(xié)議傳輸原理和特點(diǎn)
HART手持通訊器和智能HART變送器通訊不上
無(wú)線WirelessHART系統(tǒng)構(gòu)成及WirelessHART技術(shù)應(yīng)用實(shí)例

共有訪客發(fā)表了評(píng)論 網(wǎng)友評(píng)論

  客戶(hù)姓名:
郵箱或QQ:
驗(yàn)證碼: 看不清楚?