




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、前段時間做了一部分有線HART的解析,整理了一下基本的幀結構,在此做個筆記HART幀結構:cpp view plain copy1. |-| 2. | PREAMBLE5.20 | START | ADDR | COM | BCNT | STATUS | DATA | CHK | 3. |-| 4. 5.
2、;6. FF FF FF FF FF 82 A6 06 B2 BF 01 0F 00 21 1. PREAMBLE引導碼, 一般是5.20個0xFF, 他是一組同步傳輸的同步信號, 用以保證信息的同步. 在開始通訊的時候,使用的是20個FF引導碼, 從機應答0信號時將告之主機他“希望”接收幾個字節的引導碼, 另外主機也可以用59號命令告訴從機應答時應用幾位引導碼.
3、2. START(1Byte)起始字節, 說明結構為“長”還是“短”, 消息源, 是否是“突發”模式消息.cpp view plain copy1. 0x02: 主機到從機的短幀 2. 0x82: 主機到從機的長幀 3. 0x06: 從機到主機的短幀 4. 0x86: 從機到主機的長幀 5. 0x01: 突發
4、模式的短幀 6. 0x81: 突發模式的長幀 一般設備進行通訊接收到2個FF字節后, 就表示數據位的接收已經同步, 就將偵聽起始位.3. ADDR(1/5Bytes)地址字節, 他包含了主機地址和從機地址, 短結構中占1字節, 長結構中占5字節.不論長短幀結構, HART協議中允許2個主機存在, 所以我們用首字節的最高位來進行區分, 值為1表示第一主機地址, 第二主機用0表示.“突發”模式是特例, 0,1值將交替出現, 也就是說, 在該模式下, 賦予2個主機的機會均等. 次高位為1表示為“突發”模式, 短結構用首字
5、節的04位表示值為015的從機地址, 第5,6位賦0.長結構用后6位表示從機的生產廠商的代碼, 第2個字節表示從機設備型號代碼,后35個字節表示從機的設備序列號, 構成“唯一”標志碼.MA: 主機地址BM: 突發模式0 0SA 從 SA機SA 地 SA 址短 幀 地 址 結 構 另外,長結構的低38位如果都是0的話表示的是廣播地址,即消息發送給所有的設備。4. COM(1Byte)命令字節, 范圍為253個, 用HEX的0FD表示. 31,127,254,255為預留值。5. BCNT(1Byte)數據總長度,他的值表示的是BCNT下一個字節到最后(不包括校驗字節)的字節數.接收設備用他可以鑒
6、別出校驗字節, 也可以知道消息的結束.因為規定數據最多為25字節, 所以他的值是從027。6. STATUS(2Bytes)狀態字節, 他也叫做“響應碼”,顧名思義, 他只存在于從機響應主機消息的時候, 用2字節表示.他將報告通訊中的錯誤接收命令的狀態(如:設備忙、無法識別命令等)和從機的操作狀態。如果我們在通訊過程中發現了錯誤, 首字節的最高位(第7位)將置1,其余的7位將匯報出錯誤的細節,而第2個字節全為0. 否則,當首字節的最高位為0時,表示通訊正常,其余的7位表示命令響應情況,第2個字節表示場設備狀態的信息。UART發現的通訊錯誤一般有:奇偶校驗、溢出和結構錯誤等。命令響應碼
7、可以有128個, 表示錯誤和警告, 他們可以是單一的意義, 也可以有多種意義,我們通過特殊命令進行定義、規定.現場設備狀態信息用來表示故障和非正常操作模式。7. DATA(BCNT-2)數據字節,首先我想說明的是并非所有的命令和響應都包含數據字節,他最多不超過25字節(隨著通訊速度的提高,正在要求放寬這一標準)。數據的形式可以是無符號的整數(可以是8,16,24,32 b),浮點數(用IEEE754單精浮點格式)或ASCII字符串,還有預先制定的單位數據列表。具體的數據個數根據不同的命令而定。8. CHK(1Byte)奇偶校驗,方式是縱向奇偶校驗,從起始字節開始到奇偶校驗前一個字節為止。另外,
8、每一個字節都有1位的校驗位,這兩者的結合可以檢測出3位的突發錯誤。下面是幾組實際通訊中抓包的示例: FF FF FF FF FF 02 80 / addr00 00 82 FF FF FF FF FF FF 06 80 00 0E 00 40 FE 26 19 06 05 05 02 A0 00 91 F4 A5 FE 26 19 06 05 05 02 A0 00 91 F4 A5 6D 看實例了解HART協議消息結構例1:主機到從機FFFFF
9、FFFFF82A606BC614E0100B0上面是主機到從機發送的一條消息。前5個字節值都為FF,顯然他是導言字節。接著的82起始字節,表示主機到從機發出的長結構的消息。后5個字節 “A6,06,BC,61,4E”是地址字節化為二進制表示如下:A606BC614E1010 01100000 01101011 11000110 00010100 1110可見首字節A6的最高位為1表示主機,次高位為0表示非突發模式,后面的38 b表示設備的惟一標號:“100110”是生產廠家代碼,值為38,是Rosemount公司的代碼;后一字節06是設備型號代碼,06代表的型號是3051C;后面的3個字節是設
10、備識別號,本例中的值為12345678;再接下來的01是命令字節,表示1號命令,即讀取PV值后面的00是表示數據的長度;本例中無數據,值為0;最后是校驗字節B0。例2:從機到主機FF FF FF FF FF86A6 06 BC 61 4E010700 0006 40 B0 00 0045HART協議的從機到主機的例子,表示的是從機到主機的一條消息。本例大部分與例1相似,不同的是數據字節不再為0,其中的06表示單位PSI;后面的4個字節是用浮點數表示的值, 為55。并
11、且由于本例是由從機到主機的應答消息,所以存在著狀態位,即本例中的00 00表示OK。例3:突發模式FF FF FF FF FF8153 03 04 E6 D7031A00 6041 3F A0 002741 3F A0 003942 47 60 0006BF 06 60 003941 95 0000D4上面是突發模式HART協議發出的一條消息。第1個字節81表示突發的長結構模式,與前例中相似的地方我們不再介紹。注意到狀態字節“00 60”后的字節“41 3FA000”,他表示的是當前的電流值,計算后是11976 6;后面的27表示單位mA,像后面的39表示“”一樣。數據字節中的“42 47 6
12、0 00”,“BF06 60 00”,“41 95 0000”分別表示“SV”,“TV”,“FV”表示方法與PV相同。經過解釋后的消息可以表示為:“LBTXSRdAllPv0260060119766mA119766498438psi052490218625D4”。-華麗的分割線-FF FF FF FF FF FF 02 80 00 00 82以上就是一段單片機首先要跟設備發送的命令,接下來我們來解析一下 FF FF FF FF FF 02 80 00 00 82 先導碼 短指令 地址0 命令0 0個數據 異或校驗位第一條指令是所有支持hart協議的設備都要懂得 先
13、導碼:就是一段命令的開始,一般都是5個FF 指令碼:此處02表示的是告訴設備我現在發送過去的是一條短指令 當然還有其他的指令結構: 主機到從機為短結構時,起始位為02,長幀時為82。 從機到主機的短結構值為06,長結構值為86 “突發”模式的短結構值為01,長結構為81 · 1· 2· 3· 4地址碼:包含了主機地址和從機地址 短指令時:地址碼由一個字節表示(如80),其結構為 一般我們不用到突發模式,這里的80表示的就是(主機1-設備地址(0) 長指令時:地址碼由5個字節表示,其結構為 命令碼
14、:如00表示的是命令0,這里的命令設備能夠識別從而做出相應的響應 數據個數碼:表示的是再次之后的第一個數最后一個(不包括校驗位)的個數,這一位很重要,在編程的時候,我們經常用這個來調用數值 響應嗎:只存在于從機主機的過程中(從機對主機的響應) 校驗碼:此碼主要是用來確保傳輸沒有問題用的,采用的是異或校驗(自己可以去百度一下異或校驗的意思)(這一位都是根據前面的數值鎖確定的) 各種碼都講了一遍,現在我貼上幾張自己試驗獲得的碼,大家可以對著分析一下: FF FF FF FF FF 82 A6 06 63 56 BA 01 00 AC FF
15、 FF FF FF FF 82 A6 06 63 56 BA 02 00 AF HART協議1.1 簡介現代工業生產中存在著多種不同的主機和現場設備,要想很好地使用他們,完善的通訊協議是必須的。HART協議最初是由美國Rosemount公司開發,已應用了多年。HART協議使用FSK技術,在420mA信號過程量上疊加一個頻率信號,成功地把模擬信號和數字信號雙向同時通訊,而不互相干擾。HART協議參照了國際標準化組織的開放性互連模型,使用OSI標準的物理層、數據鏈路層、應用層。HART協議規定了傳輸的物理形式、消息結構
16、、數據格式和一系列操作命令,是一種主從協議。當通訊模式為“問答式”的時候,一個現場設備只做出被要求的應答。HART協議允許系統中存在2個主機(比如說,一個用于系統控制,另一個用于HART通信的手操儀),如果不需要模擬信號,多點系統中的一對電纜線上最多可以連接15個從設備。 1.2 物理層物理層規定了信號的傳輸方法、傳輸介質。采用Bell202標準的FSK頻移鍵控信號,在低頻的420mA模擬信號上疊加一個頻率數字信號進行雙向數字通信。數字信號的幅度為0.5mA,數據傳輸率為1200bps,1200Hz代表邏輯“1”,
17、2200Hz代表邏輯“0”。數字信號波形如下圖所示: 1.3 數據鏈路層數據鏈路層規定HART協議幀的格式,可尋址范圍015,“0”時,處于420mA及數字信號點對點模式,現場儀表與兩個數字通信主設備(也稱作通信設備或主設備)之間采用特定的串行通信,主設備包括PC機或控制室系統和手持通信器。單站操作中,主變量(過程變量)可以以模擬形式輸出,也可以以數字通信方式讀出,以數字方式讀出時,輪詢地址始終為0。也就是說,單站模式時數字信號和420mA模擬信號同時有效。“115”處于全數字通信狀態,工作在點對多點模式,通信模式
18、有“問答”式、“突發”式(點對點、自動連續地發送信息)。按問答方式工作時的數據更新速率為23次s,按突發方式工作時的數據更新速率為34次s。在本質安全要求下,只使用一個電源,至多能連接15臺現場儀表,每個現場設備可有256個變量,每個信息最大可包含4個變量。這就是所謂的多點(多站)操作模式。這種工作方式尤其適用于遠程監控,如管道系統和油罐儲存場地。采用多點模式,420mA的模擬輸出信號不再有效(輸出設在4mA使功耗最小,主要是為變送器供電,各個現場裝置并聯連接),系統以數字通信方式依次讀取并聯到一對傳輸線上的多臺現場儀表的測量值(或其它數據)。如果以這種方式構成控制系統,可以顯著地降低現場布線
19、的費用和減少主設備輸入接口電路,這對于控制系統有重要價值。HART協議根據冗余檢錯碼信息,采用自動重復請求發送機制,消除由于線路噪聲或其他干擾引起的數據誤碼,實現數據無差錯傳送。能利用總線供電,可滿足本質安全防爆要求。HART協議信息幀的格式見1.4節分析。HART協議的幀格式以8位為一個字節進行編碼,對每個字節加上一個起始位、一個奇偶校驗位和一個停止位以串行方式進行傳輸。通常采用UART(通用異步接收/發送器)來完成字節的傳輸。由于數據的有無和長短不恒定,所以HART數據的長度不能超過25個字節。 1.4 消息結
20、構HART50以前版本的設備一般采用“短結構”,單一的現場設備如果只利用420 mA電流信號進行測量時,從設備的地址都是0;否則,對于多設備而言,從設備的地址是從115,這種短結構的地址采用“隨選”的方法,隨機分配115中的一個。HART50版本推出了“長結構”,這種格式的從設備地址具有獨一無二性,如同每個網卡中物理地址一樣,全世界范圍內都沒有重復,一般占5個地址字節中的38位。這38位地址信息包含了生產廠家的代碼、設備型號碼和設備識別碼。這種格式減少了誤傳輸和誤接收的可能性。現在大多數主機設備既能支持長結構又兼容短結構,當從機的應答信號中沒有“唯一”標識碼時,HART50及其以上的版本提供的
21、0號命令,就可以用于短幀中的設備地址識別。也就是說,主機將根據應答信號中是否具有“惟一”標識碼來決定結構格式為“長”還是“短”。一般消息幀的組成,其中:(1)PREAMBLE:導言字節,一般是520個FF十六進制字節。他實際上是同步信號,各通訊設備可以據此略做調整,保證信息的同步。在開始通訊的時候,使用的是20個FF導言,從機應答0信號時將告之主機他“希望”接收幾個字節的導言,另外主機也可以用59號命令告訴從機應答時應用幾位導言。(2)DELIMITER:起始字節,他將告之使用的結構為“長”還是“短”、消息源、是否是“突發”模式消息。主機到從機為短結構時,起始位為02,長幀時為82。從機到主機
22、的短結構值為06,長結構值為86。而為“突發”模式的短結構值為01,長結構為81。一般設備進行通訊接收到2個FF字節后,就將偵聽起始位。(3)ADDR:地址字節,他包含了主機地址和從機地址,如前所述,短結構中占1字節,長結構中占5字節。無論長結構還是短結構,因為HART協議中允許2個主機存在,所以我們用首字節的最高位來進行區分,值為1表示第一主機地址,第二主機用0表示。“突發”模式是特例,0,1值將交替出現,也就是說,在該模式下,賦予2個主機的機會均等。次高位為1表示為“突發”模式,短結構用首字節的04位表示值為015的從機地址,第5,6位賦0;而長結構用后6位表示從機的生產廠商的代碼,第2個
23、字節表示從機設備型號代碼,后35個字節表示從機的設備序列號,構成“唯一”標志碼。 長幀地址結構 短幀地址結構 另外,長結構的低38位如果都是0的話表示的是廣播地址,即消息發送給所有的設備。(4)COM:命令字節,他的范圍為253個,用HEX的0FD表示。31,127,254,255為預留值。(5)BCNT:數據總長度,他的值表示的是BCNT下一個字節到最后(不包括校驗字節)的字節數。接收設備用他可以鑒別出校驗字節,也可以知道消息的結束。因為規定數據最多為25字節,所以他的值是從027。(6)RES:狀態字節,他也叫做“響應碼”,顧名思義,他只存在于從機響應主機消息
24、的時候,用2字節表示。他將報告通訊中的錯誤、接收命令的狀態(如:設備忙、無法識別命令等)和從機的操作狀態。如果我們在通訊過程中發現了錯誤,首字節的最高位(第7位)將置1,其余的7位將匯報出錯誤的細節,而第2個字節全為0。否則,當首字節的最高位為0時,表示通訊正常,其余的7位表示命令響應情況,第2個字節表示場設備狀態的信息。UART發現的通訊錯誤一般有:奇偶校驗、溢出和結構錯誤等。命令響應碼可以有128個,表示錯誤和警告,他們可以是單一的意義,也可以有多種意義,我們通過特殊命令進行定義、規定。現場設備狀態信息用來表示故障和非正常操作模式。(7)DATA:數據字節,首先我想說明的是并非所有的命令和
25、響應都包含數據字節,他最多不超過25字節(隨著通訊速度的提高,正在要求放寬這一標準)。數據的形式可以是無符號的整數(可以是8,16,24,32bit),浮點數(用IEEE754單精浮點格式)或ASCII字符串,還有預先制定的單位數據列表。具體的數據個數根據不同的命令而定。(8)CHK:奇偶校驗,方式是縱向奇偶校驗,從起始字節開始到奇偶校驗前一個字節為止。另外,每一個字節都有1位的校驗位,這兩者的結合可以檢測出3位的突發錯誤。 1.5 應用層操作命令處于應用層,包括通用命令、普通命令和特殊命令。通用命令的范圍從030
26、,普通命令是從32到126,特殊命令的范圍是從128253。通用命令是所有現場裝置都配備的,主要包括:1)讀制造商碼和設備類型;2)讀一次變量PV和單位;3)讀當前輸出和百分量程;4)讀取多達4個預先定義的動態變量;5)讀或寫8字符標簽16字符描述符日期;6)讀或寫32字符信息;7)讀變送器量程單位阻尼時間常數;8)讀傳感器編號和極限;9)讀或寫最終安裝數;10)寫登錄地址。 常用命令提供的功能是大部分裝置但不是全部現場裝置都配備的,主要包括:1)讀4個動態變量之一;2)寫阻尼時間常數;3)寫變送器量程;4)校準置零置間隔;5)設置固定的輸出電流;6)執行自檢;7)執行主站復位;8)
27、調整PV零點;9)寫PV單位;10)調整DAC零點于增益;11)寫變換函數平方根/線性;12)寫傳感器編號;13)讀或寫動態變量用途。 專用命令提供對特殊的現場裝置適用的功能,包括:1)讀或寫低流量截止值;2)起動停止或取消累積器;3)讀或寫密度校準系數;4)選擇一次變量;5)讀或寫結構材料信息;6)調整傳感器校準值。 1.6 實例分析例1:主機到從機FFFFFFFFFF82A606BC614E0100B0 上面是主機到從機發送的一條消息。前5個字節值都為FF,顯然他是導言字節。接著的82起始字
28、節,表示主機到從機發出的長結構的STX幀消息。后5個字節 “A6,06,BC,61,4E”是地址字節化為二進制表示如下: A6 06 BC 61
29、 4E1010 0110 0000 0110 1011 1100 0110 0001 0100 1110 可見首字節A6的最高位為1表示主機,次高位為0表示非突發模式,后面的38bit表示設備的惟一標號:“100110”是生產廠家代碼,值為38,是Rosemount公司的代碼;后一字節06是設備型號代碼,06代表的型號是3051C;后面的3個字節是
30、設備識別號,本例中的值為12345678;再接下來的01是命令字節,表示1號命令,即讀取PV值后面的00是表示數據的長度;本例中無數據,值為0;最后是校驗字節B0; 例2:從機到主機 FF FF FF FF FF86A6 06 BC 61 4E010700 0006 40 B0 00 0045上面表示的是從機到主機的一條消息。本例大部分與例1相似,不同的是數據字節不再為0,其中的06表示單位PSI,后面的4個字節是用浮點數表示的值,為5.5。并且由于本例是由從機到主機的應答消息,所以存在著RES位,即本例中的“00 00”,表示“OK”。例3:突發模式FF FF
31、FF FF FF8153 03 04 E6 D7031A00 6041 3F A0 002741 3F A0 003942 47 60 0006BF 06 60 003941 95 0000D4 上面是突發模式發出的一條消息。第1個字節81表示突發的長結構模式,與前例中相似的地方不再介紹。注意到狀態字節“0060”后的字節“413FA000”,他表示的是當前的電流值,計算后是11.9766;后面的“27”表示單位mA,后面的“39”表示“%”。數據字節中的“42 47 60 00”,“BF 06 60 00”,“41 95 00 00”分別表示“SV”,“TV”,“FV”,表示方法與
32、PV相同。 1.7 特點和優勢從HART技術轉向具有先進功能的基金會現場總線,過程既簡單成本又低,顯露出當今快速發展的儀表市場中新的商機。1、滿足諸如壓力和溫度變送器等現場設備用的標準轉換塊的要求,這使多個廠商平臺之間的一致性提高了,使設備更為簡化了,使未來的現場校準裝置工作時不需要設備描述(DDs)。2、支持分調度,允許總線上的某些回路的執行速度比其它回路得快。同樣也支持雙調度,所以新的控制策略能被下載下來而且變換能立即出現。3、支持無擾動替換的固件下載,因而用戶能輕松地使設備固件升級,通過最新的診斷和控制增強功
33、能受益。4、支持H1設備的快速鏈接定位。標準鏈接為48ms,但是如果更快的鏈接定位速度(例如插槽時間、最小的交互PDU延遲,最大的響應延遲)都能得到支持,每次鏈接所需的時間是能縮短的。這導致總線的循環時間比老式設備所需的時間短得多。5、支持輸出設備,例如閥門定位器和執行機構內的多變量控制器(MVC)發布,因而同時發布所有總線用的輸出值的中央控制器能使通信和控制設備得到優化。同樣,多通道輸入設備應支持MVC。6、重新查看現場總線模式和狀態機制時要仔細。謹慎地使用數字輸入DI塊顯示諸如就地超馳,手動操作,故障保護連鎖等設備狀態。相反,設備的內部狀態應通過模式參數讓操作人員一目了然,而且應通過狀態標
34、簽在控制策略中發揮作用。7、HART協議保證功能塊的執行盡可能快些,以便縮短總線總的循環時間,這可能需要對代碼進行優化并采用微控制器,因為在大多數情況下采取這兩個措施能使執行時間足以快些。算法共處理器或許有用。 2 Hart-IP協議2.1 概要為了滿足體量增長快速的工業數據傳輸,通過以太網來訪問數據,HART通信基金會的HART協議規范增添了這個新的功能。Hart-IP為訪問一些智能設備和過程信息提供了新的選項。 Hart-IP技術能夠使:l 滿足標準化廠房部署;l 從世界的任何角落遠程訪問設備層;l 通過以太網或者WiFi管理智能設備;l 更加容易集成入自動化系統。 Hart-IP是一個額外的連接選項,設備主機系統和資產管理應用程序使用工廠現有的網絡基礎設施,訪問和收集來自現場設備的測量和診斷信息。通過下圖可以看出,Hart-IP能將有線和無線設備采集到的信息提供給更高級別的應用程序(SCADA,DCS,ERP和其他系統)。Hart-IP的誕生是為了適應全球互聯網技術的發展,讓Hart協議運行
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年企業可持續發展目標(SDGs)與公共衛生體系建設報告
- 2025年農業信息化政策優化策略報告:農業信息化政策優化策略研究
- 2025年農業生物技術推動種業創新的農業科技人才培養報告
- 上海海事大學工程熱力學英文課件Chapter3 TheFirstLawof
- 面向智慧校園的教育機器人項目成本效益分析報告
- 西安汽車職業大學《諾貝爾生理學或醫學獎漫談》2023-2024學年第二學期期末試卷
- 汕頭職業技術學院《中國古代史史料學》2023-2024學年第二學期期末試卷
- 游戲化學習在商業培訓中的成功案例
- 西安思源學院《專門用途英語(自動化專業英語)》2023-2024學年第二學期期末試卷
- 石河子工程職業技術學院《數學分析3》2023-2024學年第二學期期末試卷
- 早期阿爾茨海默病疾病修飾治療專家共識(2025年版)解讀
- 2025-2030年即熱式電熱水器行業市場發展分析及政策建議與策略研究報告
- 2024北京朝陽區六年級畢業考英語試題及答案
- PHPstorm激活碼2025年5月13日親測有效
- 膽石癥中西醫結合診療專家共識(2025年)解讀課件
- 建筑工程標準課件
- 《橋梁下部結構》課件
- 《靜脈通道建立與維護:留置針穿刺及護理》課件
- 成人機械通氣患者俯臥位護理課件
- 四川省內江市市中區2025年小數畢業模擬試卷(含答案)
- 《中國傳統節慶文化》課件
評論
0/150
提交評論