智能電流變送器中HART調(diào)制解調(diào)器的實現(xiàn)方法
3 HART調(diào)制解調(diào)器的實現(xiàn)
本文引用地址:http://www.biyoush.com/article/85943.htm3.1 HART調(diào)制解調(diào)器的基本組成
以MAXQ2000微處理器為核心的增強型智能4~20mA變送器的HART調(diào)制解調(diào)器如圖3所示。在MAXQ2000中,實現(xiàn)軟件濾波和頻率編碼/解碼等功能;低功耗的MAX1407實現(xiàn)A/D轉換,低功耗的MAX1102實現(xiàn)D/A轉換。
如果系統(tǒng)包含1 200 Hz和2 200 Hz(分別代表1和0)頻率編碼器,同時要對這些頻率進行檢測,可以采用MAXQμC內(nèi)部的MAC實現(xiàn)HART調(diào)制解調(diào)器要求的這些功能。
3.2 頻率編碼器的實現(xiàn)
要產(chǎn)生所需的正弦波形,可以利用下述差分方程描述的兩極點濾波器形式實現(xiàn)遞歸數(shù)字式諧振器:
式中,常數(shù)k等于2 cos(2π×頻率/采樣率)。可以預先計算k的兩個值,并存在ROM中。例如,要用8 kHz采樣率產(chǎn)生1 200 Hz頻率,該值k=2 cos(2π×1 200/8 000)。必須計算能使振蕩器開始振蕩的初始激勵。如果Xn-1和Xn-2都為0,接下來的每個Xn也都將為0。要啟動振蕩器,將Xn-1設為0,Xn-2設置為:
為進一步簡化編碼,首先,初始化兩個中間變量(X1,X2)。X1初始化為0,X2為初始激勵值(上面的計算結果),以啟動振蕩器。這樣,要產(chǎn)生一個正弦波的采樣,可進行下列運算:
每個新的正弦值都需要一次乘法運算和一次減法運算。利用MAXQμC的單周期硬件MAC,可以采用如下操作產(chǎn)生正弦波:
因為只需要檢測兩種頻率,所以采用改進的Goertzel算法。這種算法可以用簡單的二階濾波器實現(xiàn),如圖4所示。
要使用Goertzel算法檢測特定頻率,編譯時要首先使用下式計算出常數(shù):
隨后,將中間變量D0、D1和D2初始化為0,并對每個收到的采樣X進行下列計算:
得到足夠多的采樣值以后(采用8 kHz的采樣頻率時,通常為205個采樣值),用最新計算出的D1和D2值進行下列計算:
這時,P包含了輸入信號中測試頻率的平方。要對兩種頻率解碼,用兩個濾波器處理每個采樣。每個濾波器都有自己的k值和自己的一組中間變量,每個變量都是16位長,所以,整個算法需要48字節(jié)的中間存儲器空間。
3.3 HART中斷程序
HART通信程序是HART協(xié)議數(shù)據(jù)鏈路層和應用層的軟件實現(xiàn)。由于HART通信采取的是主從方式,而像變送器這類的現(xiàn)場設備都是從機,因此在初始化中和每次回答完主機命令后,都要把接收中斷打開,一直等候主機命令。HART通信采用水平和垂直校驗的方法,當檢測到接收數(shù)據(jù)有差錯時,要等到主設備命令幀發(fā)完后,通知主設備數(shù)據(jù)接收有誤,主設備則重新發(fā)命令幀,從而保證通信的準確可靠。HART中斷子程序流程如圖5所示。由于HART通信為主從方式,HART幀中每個字節(jié)在物理層傳輸需要9 ms左右,為了保證通信的實時性,通信程序采用串行口終端接收/發(fā)送。該中斷所要完成的通信中的主要任務是,接收和發(fā)送幀、幀的拆分和打包。
結 語
HART協(xié)議作為一個開放性的協(xié)議,現(xiàn)已成為智能儀表事實上的標準,其特點是在現(xiàn)有的模擬信號傳輸上實現(xiàn)數(shù)字信號通信;嵌入式系統(tǒng)技術是目前電子產(chǎn)品設計領域最為熱門的技術之一。本文介紹了以MAXQ2000嵌入式處理器為核心的HART智能電流變送器,對HART協(xié)議的實現(xiàn)進行了較詳細的敘述。采用嵌入式技術的HART智能變送器,不僅能解決現(xiàn)場總線兼容原有的DCS(Distribute Control System)問題,而且使系統(tǒng)整體的實時性、穩(wěn)定性、抗干擾性及低功耗等性能有了極大的提高。
電流變送器相關文章:電流變送器原理
評論