簡述HART協議命令和語言
介紹過HART協議物理層和HART數據鏈路層之后,我們還對HART的服務進行了闡述。通過這些一系列的講解,相信大家已經對軟件平臺中的HART協議應用有了一定的了解了。這里我們介紹***一部分內容,是HART應用層規范和相關語言和命令的介紹。
HART協議的應用層規范
1 HART命令
通用命令:所有設備都實現這些命令。命令號范圍是:0 ~ 30;
一般行為命令:多數設備支持這些命令的實現。命令號范圍:32 ~ 127;
變送器專用命令:只有一個或幾個設備支持這些命令。通過執行專用命令來完成一些獨有的特殊功能,和數據處理;命令號范圍:128 ~ 255;
2 數據格式
①. 無符號整數:用來表示原始數字(raw numbers),如“***安裝號”。
②. IEEE 754浮點格式:
通過協議傳遞的浮點值是基于IEEE 754單精度浮點標準的。
數據字節
#0 #1 #2 #3
S EEEEEEE E MMMMMMM MMMMMMMM MMMMMMMM
S-尾數的符號;1=負
E-指數;與十進制數127的差值以二進制補碼形式表示。
M-尾數;低23位,小數部分。
上述浮點數的值通過把2的無偏移指數次方與24位尾數相乘得到。24 位尾數由一個假設的***位1,后跟一個小數點,和尾數的23位組成。S1.M X
③.ASCII數據格式:
此格式可以參照任何一個ASCII代碼表。
④.壓縮ASCII(6位ASCII)數據格式:
這種數據格式是HART協議的一個獨特之處。壓縮的ASCII是ASCII的子集,它通過去掉每個ASCII字符的高2位而產生。這就允許4個壓縮的ASCII字符占用3個ASCII字符的空間。具體的格式安排情況如下:
壓縮的ASCII數據字節 #0 #1 #2 …
ASCII數據字節 #0 #1 #1 #2 #2 #3 …
ASCII數據位543210 54 3210 5432 10 543210 …
由HART字符集可以看出,HART協議不允許有小寫英文字母出現。
⑤.變量描述:
變送器提供了四個可以訪問的變量輸出通道。每個變送器變量都對應一個代碼,上位機通過給變送器的每個通道設定不同的變量代碼來得到相應的變量值。變量代碼表由變送器的生產廠商提供。
設備描述語言
隨著HART協議的發展,對主設備和現場設備開發者來說,又產生了新的障礙。主設備開發者必須為不斷涌現的新現場設備提供支持,同時,現場設備開發者必須為數量正迅速增加的主設備開發相應的接口。
設備描述語言(DDL)是用以描述HART現場設備的一種簡單結構化英語語言。DDL將主設備與現場設備操作所需的所有信息都集中到了一起,而目前這些信息卻是以不同的形式存在于不同的地方。HART文檔描述了其中一些信息(如普通命令、通用命令、通用表等)。變送器特有文檔說明了特殊設備信息(如來自于通用命令的偏差,同時又支持通用命令和特殊變送器命令)。CAD圖提供了手持終端的外觀和流程,甚至有些信息是由手持終端的應用來說明的。例如,整定D/A轉換器的過程就是按手持終端處理方法定義的。DDL語言組合了所有這些信息,為對現場設備提供了一種清晰的、不含糊的、一致的描述。
一種正在開發的手持終端將只基于設備描述與現場設備進行操作,而不能與沒有設備描述的現場設備進行操作。這具有十分誘人的優點。
新的現場設備可以不依賴于手持終端的版本而發布。一旦現場設備的設備描述存在,這種描述就能被載入手持終端,然后現場設備就能與之操作了。現場設備開發者將不再需要確認手持終端的操作,只需要檢驗設備描述語言。因此,當前存在于現場設備和手持終端版本間的互相依賴的緊密聯系將不復存在。
現場設備開發者在怎樣將其產品引入現場及怎樣為其用戶升級方面具有很大的靈活性。設備描述能駐留在現場設備中,所以合適的設備描述總是有效的。升級的設備描述能以模塊的形式提供,并且可以引入到手持終端。可以用軟盤來進行升級,也可以用PC軟件將其下裝到手持終端中。軟盤升級可以由用戶自己或服務中心來完成。
DDL語言將會代替特殊變送器文檔和CAD線圖,所以,這會消除以前存在的許多文檔問題。
由于目前DDL及其編譯器價格較貴,各廠家也沒有提供支持DDL的相應的設備,不建議采用和實現支持DDL的功能,而是采用將各類設備的專有屬性與通用屬性分開,專有屬性以不同的動態鏈接庫實現。