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