基于HART協議的通用型多通道智能變送器的設計與實現
HART協議通信模塊主要由現場儀表內的A5191HRT和AD421型DAC組成。其中,AD421接收MCU傳送的數字信號并轉換成4 mA~20 mA電流輸出,傳輸測量結果:A5191HART[1]接收疊加在4 mA-20 mA環路上的FSK信號。解調后傳輸給MCU,或將MCU產生的應答幀信息調制成FSK信號經波形后由AD421疊加在4 mA~20 mA環路上進行傳輸,如圖6所示。

A5191HRT內部包括發送數據調制器與波形整形電路、載波檢測電路、接收濾波器與解調電路、控制邏輯和時鐘振蕩器電路。調制器接收不歸零碼并調制為FSK信號。1 200 Hz代表邏輯“l”, 2200 Hz代表邏輯“0”,數據率為1 200 b/s,之后由波形整形電路將FSK信號整形為兼容HART協議要求的信號發送出去。
2 系統軟件設計
HART通用型智能變送器的軟件按其功能分為四個部分:監測程序、測控程序、HART通信程序和輔助程序。監測程序是整個系統軟件的中心環節,又稱為主程序。它接收和分析各種命令,管理和協調全部程序的執行,其包括系統初始化、系統自檢等部分;測控程序主要包括數據采集、數據處理、輸出控制和自我診斷等部分。其中數據采集通過采樣中斷子程序實現,數據處理、輸出控制和自我診斷等部分則在主程序中調用。HART通信程序也就是HART協議數據鏈路層和應用層的軟件實現,是整個智能變送器軟件設計的關鍵,儀表的可互操作性也在這里得到體現。數據鏈路層軟件主要是串行口接收/發送中斷子程序,屬于中斷處理(服務)程序;應用層的軟件是對收到的命令幀進行翻譯和處理,在主程序中被調用。
2.1 HART通信程序的設計
HART通信程序是HART協議數據鏈路層和應用層的軟件實現,采用串口中斷實現通信的接收和發送服務,符合HART協議的通信工作都在此程序中完成,如圖7所示。

進入串口中斷服務程序后,要先判斷是發送請求還是接收請求。若發送請求標志為l則轉向發送服務程序,若接收請求標志為l則轉向接收服務程序。HART應用層的軟件對收到的命令幀進行翻譯和處理,如:字節流和浮點數、整數、字符串之間的相互轉換,然后根據各自的命令號進行相應的命令處理,如:改量程、改單位、改阻尼時間等,最后,把應答幀按照一定的格式放入發送緩沖區,由串行口中斷發回。如果有通信錯誤或命令錯誤時,則發回報告錯誤的應答幀。發送服務程序是在程序運行過程中向上位機發送信息,要設置發送請求標志,將要發送的數據信息存入串口發送緩沖區, 并計算垂直校驗, 在此要發送的數據信息的格式為: 前導碼2 B,定界符1 B,地址碼l或5 B,命令號1 B,字節長度1 B,響應碼2個字節,數據0~25 B,校驗和1 B。發送時,先要啟動發送載波,初始化物理層,建立通信鏈路和另一對等通信實體通信,發送應答幀,發送結束后停止發送載波,初始化物理層,終止物理層鏈路通信。發送服務首先發送前導碼,每發送一個前導碼計數器就減1,然后發送HART協議的應答幀,發送結束后停止發送載波。
目前HART型智能儀表的市場占有量已經接近50%,但仍有約40%的儀表采用模擬量或非標準數字協議進行輸出,這些儀表將逐步被HART協議或其他數字總線協議所替代。為使這些特種規格產品升級為HART型智能儀表,一般需要定制與之相配套的電子部件或HART轉換模塊。這些復合型多參數傳感器,也是由普通的壓力、差壓、溫度等傳感器構成。為了實現將這些特殊規格的儀表或傳感器升級為HART型智能變送器,需要設計通用型電子部件,提供多個測量通道,不僅能與市場上通用的傳感器相配套,還能與復合型多參數傳感器相配套。本文正是基于目前工業上的現實要求,設計出一種基于HART協議的多通道數據測量的智能變送器,以滿足多參數測量。在電路設計上,為了減小硬件電路功耗,提出一種雙層電源網路結構,滿足電路設計要求。
評論