手機(jī)訪問更快捷
更多流量 更易傳播
隨時(shí)掌握行業(yè)動(dòng)態(tài)
網(wǎng)絡(luò)課堂 行業(yè)直播
產(chǎn)品推薦:水表|流量計(jì)|壓力變送器|熱電偶|液位計(jì)|冷熱沖擊試驗(yàn)箱|水質(zhì)分析|光譜儀|試驗(yàn)機(jī)|試驗(yàn)箱
電磁流量計(jì)模數(shù)轉(zhuǎn)換與數(shù)字信號處理
前面章節(jié)已經(jīng)詳細(xì)介紹了電磁流量計(jì)轉(zhuǎn)換器的原理、設(shè)計(jì)思想和硬件電路。而系統(tǒng)的軟件也是為要實(shí)現(xiàn)這一設(shè)計(jì)思想,完成電磁流量計(jì)功能服務(wù)的。所以數(shù)字部分要完成的主要功能是對經(jīng)過高低通濾波的信號進(jìn)行A/D 采樣,并濾波取其直流成分。信號中包含了與流速相關(guān)的直流分量,這個(gè)信號經(jīng)過濾波以后進(jìn)入了A/D 采樣通道,軟件要通過對A/D 采樣得到的數(shù)字量進(jìn)行濾波得到所包含的直流分量。同時(shí)軟件功能還包括鍵盤的輸入控制與液晶顯示器控制和輸出波形控制等。
系統(tǒng)軟件由主程序程序、鍵盤菜單處理、定時(shí)器中斷、A/D 采樣、顯示等部分組成。如圖4.8 所示分別為采樣處理主程序流程圖,定時(shí)器中斷服務(wù)程序流程圖。求更新后的100個(gè)點(diǎn)值作流量顯示求100個(gè)點(diǎn)平均值作流量顯示鍵盤設(shè)定是否測量累計(jì)流量并完成參數(shù)設(shè)定上電初始化是否采集完最開始100個(gè)點(diǎn)是否更新了其中50個(gè)點(diǎn)進(jìn)入定時(shí)中斷服務(wù)程序是否采集完最初的100個(gè)點(diǎn)數(shù)據(jù)A/D采樣并保存到相應(yīng)數(shù)組對采集到的所有數(shù)據(jù)求和A/D采樣并保存到相應(yīng)數(shù)組用逐點(diǎn)法求100個(gè)點(diǎn)數(shù)據(jù)之和并作一階濾波跳出中斷系統(tǒng)主程序系統(tǒng)中斷服務(wù)程序圖4.8 程序流程圖Fig.4.8 Frame of process flow
從流程圖中我們可以看出,系統(tǒng)軟件是通過對連續(xù)等間隔采集來的100 個(gè)點(diǎn)求平均值來達(dá)到濾波目的的,即得到直流分量。這100 個(gè)點(diǎn)采到的數(shù)據(jù)都保存在一個(gè)數(shù)組當(dāng)中,每采到一個(gè)新的點(diǎn),就在這個(gè)數(shù)組當(dāng)中對最老的點(diǎn)進(jìn)行替換,數(shù)組中保存的都是的采樣點(diǎn),而對于這些點(diǎn)的求和則采用逐點(diǎn)法求得,即除了最開始采集的100 個(gè)數(shù)據(jù)需要做一次求和以外,后面只要把這個(gè)和減去的點(diǎn)的數(shù)據(jù)再加上的點(diǎn)的數(shù)據(jù)就可得到當(dāng)前的的100 個(gè)數(shù)據(jù)之和(每采集一個(gè)新的點(diǎn),就得到一個(gè)新的和)。我們不僅對這100 個(gè)點(diǎn)求一下平均值來得到直流分量,還對每一次求得的和再作如下的平滑處理: Yn=A*Yn1+B*Xn (4.1) 其中,A+B=99%;Yn:當(dāng)前值;Yn1:上次值;Xn:當(dāng)前采集值;A, B 是系數(shù),保證A+B=1, A 越大, 響應(yīng)越慢但同時(shí)一會更穩(wěn)定。這樣進(jìn)行平滑處理的目的是為了使得到的數(shù)據(jù)更加穩(wěn)定,不會因?yàn)榕紶柕恼`差或者波動(dòng)出現(xiàn)顯示的跳變。對經(jīng)過平滑處理的和除以100 求得的平均值我們才認(rèn)為就是軟件濾波得到的直流分量。
這部分A/D 轉(zhuǎn)換所用的芯片是AD574。AD574 是美國Analog Device 公司生產(chǎn)的12 位逐次逼近式模數(shù)轉(zhuǎn)換器,其主要特點(diǎn)是: (1)有參考電壓基準(zhǔn)和時(shí)鐘電路,不需外部時(shí)鐘就可以工作; (2)轉(zhuǎn)換速率高,12 位轉(zhuǎn)換25 s,8 位轉(zhuǎn)換16 s; (3)8 位或16 位微處理器接口,自帶三態(tài)輸出緩沖電路,可直接掛在單片機(jī)的數(shù)據(jù)總線上而無需接口電路; (4)溫度適應(yīng)范圍大,在55~+125 C 范圍內(nèi)滿足線性要求。主要功能引腳介紹如下: AC:模擬地DC:數(shù)字地CS:片選信號,低電平有效CE:片使能,高電平有效R/C:讀/啟動(dòng)信號,高電平讀數(shù)據(jù),低轉(zhuǎn)換12/8:數(shù)據(jù)格式選擇,高電平12 位數(shù)據(jù)同時(shí)有效,低電平時(shí)次輸出高8 位,第二次輸出低四位有效,中四位為零。A0:內(nèi)部寄存器控制輸入端,在12/8 接地的情況下,高電平時(shí)高8 位數(shù)據(jù)有效,低電平時(shí)低4 位有效,中間4 位為零,高4 位為高阻態(tài);在R/C 為低的情況下,高電平啟動(dòng)12 位轉(zhuǎn)換,低電平啟動(dòng)8 為轉(zhuǎn)換。STS:工作狀態(tài)輸出端,高電平表示正在轉(zhuǎn)換,低電平表示轉(zhuǎn)換完畢。
利用AD574 的方法在原有的低頻矩形波勵(lì)磁方法中也有應(yīng)用,但由于使用分頻方法或整流方法產(chǎn)生勵(lì)磁信號,因此只能通過兩路采樣開關(guān)根據(jù)勵(lì)磁信號發(fā)生頻率來實(shí)現(xiàn)零點(diǎn)動(dòng)態(tài)補(bǔ)償之后送入單片機(jī), 但又由于感生電動(dòng)勢與勵(lì)磁信號存在一定的滯后性,因此會由于感生信號與勵(lì)磁信號的相位相關(guān)性下降而影響測量效果。在本系統(tǒng)中,由于采用了單片機(jī)控制勵(lì)磁信號產(chǎn)生的方式,可以直接通過單片機(jī)得到實(shí)時(shí)感應(yīng)信號之后進(jìn)行補(bǔ)償,很好的解決了相位相關(guān)性的限制,大大提高了零點(diǎn)動(dòng)態(tài)補(bǔ)償采樣方法的穩(wěn)定性。采樣電路圖如圖4.9: 圖4.9 采樣電路連接圖Fig.4.9 Sampling circuit
經(jīng)過濾波后得到的信號中存在著幅值較大的尖峰脈沖,因此直流信號仍然存在著波動(dòng),雖然這個(gè)波動(dòng)不是噪聲,但是對信號的真實(shí)值測量來說仍是一種干擾。在軟件中我們采用了低通濾波,公式為: Y=0.98y1+0.02x (4.1) 式中,y 是濾波后的值;y1 是上次濾波后的值;x 新的數(shù)據(jù)。因?yàn)殡姶帕髁坑?jì)信號與流速的線性關(guān)系在小流量范圍內(nèi)將發(fā)生大的偏差,所以在軟件中必須加以補(bǔ)償校正。在軟件的設(shè)計(jì)中,我們根據(jù)實(shí)測的流速曲線,對流速進(jìn)行了分段處理,采用的公式為: y=a+bx (4.2) a,b 均采用4 位有效小數(shù),以提高在微弱信號下的計(jì)算精度。實(shí)驗(yàn)數(shù)據(jù)表明,這樣的處理是簡單而有效的。
因?yàn)榫幾g器帶有浮點(diǎn)運(yùn)算庫,數(shù)據(jù)處理過程得以簡單化并能保持高精度以滿足小流量微弱信號的需要,體現(xiàn)了C51 編程的*性。A/D 采樣程序(C 語言): #Include<absacc.h> #Include<reg51.h> #define uint unsigned int #define ADCOM XBYTE[0xff7c] /*使A0=0,R /C . 0,CS . 0 #define ADLO XBYTE[0xff7f] /*使R /C . 1, A0 . 1,CS . 0 #define ADHI XBYTE[0xff7d] /* R /C . 1, A0 . 0,CS . 0 Sbit r=P3.7. Sbit w=P3.6. Sbit adbusy=P1.0. uint ad574(viod) /*AD574 轉(zhuǎn)換函數(shù)*/ { r=0. /*產(chǎn)生CE=1*/ w=0. ADCOM=0. /*啟動(dòng)轉(zhuǎn)換*/ While(adbusy==1). /*等待轉(zhuǎn)換結(jié)束*/ return((uint)ADHI<<4+ADLO&0x0f)) /*返回12 位采樣值*/ }main() { uint idata result. result=ad574()
如前所述,傳感器經(jīng)勵(lì)磁輸出微弱的感應(yīng)電動(dòng)勢將經(jīng)過濾波預(yù)處理、信號放大、高通濾波和低通濾波,最后由A/D 芯片進(jìn)行采樣轉(zhuǎn)換為數(shù)字量。濾波預(yù)處理單元主要通過高通濾波器來實(shí)現(xiàn)隔直,以防過大的信號放大使得精密儀用放大器AD620 處于飽和狀態(tài),同時(shí)利用運(yùn)放的跟隨作用提高輸入阻抗。由于濾波預(yù)處理單元對毫伏級的差分信號進(jìn)行處理,因此設(shè)計(jì)中采用精密的元器件,保證了兩個(gè)輸入通道的參數(shù)對稱,進(jìn)而減小了AD620 輸出的直流偏置。下面給輸入端輸入一個(gè)信號代替流量信號,
流量信號經(jīng)過精密儀用放大器AD620 放大1000 倍后的輸出信號如圖4.10 所示,圖中說明了流量信號存在著較強(qiáng)的微分干擾以及直流偏置。圖4.10 儀用放大器AD620 輸出信號Fig.4.10 Signal output by AD620 Amplifier 流量信號經(jīng)過二階巴特沃斯高通濾波器后,將消除AD620 輸出信號的直流偏置以方便后續(xù)的A/D 采樣。這里的信號圖是通過示波器分時(shí)依次采集的,因此信號波形的相位不同。經(jīng)過前面的信號處理,感應(yīng)電動(dòng)勢信號有可能仍然存在一定的高頻尖峰噪聲,這將對后續(xù)的A/D 采樣有一定的影響,并進(jìn)而影響測量精度。因此采用截止頻率為31. 9Hz 的一階有源低通濾波器來消除噪聲干擾。低通濾波器的輸出信號如圖4.11 所示。圖4.11 二階低通濾波器輸出信號Fig.4.11 Output signal of twosteps low pass filter 該信號經(jīng)過A/D 模塊轉(zhuǎn)換后通過單片機(jī)在LED 或LCD 上顯示出來,見圖4.12。ADIN 端為模擬信號輸入端,隨著模擬信號的變化,顯示不同的數(shù)值,這樣就把模擬電壓轉(zhuǎn)換成數(shù)字信號。顯示參考程序如下: #Include<reg51.h> #Include <intrins.h> #define uint unsigned int #define uchar unsigned char sbit P2_0=P2^0. //數(shù)碼管顯示位選sbit P2_1=P2^1. sbit P2_2=P2^2. sbit adrd=P2^3. //AD 讀sbit adwr=P2^4. //AD 寫sbit adint=P2^5. //AD 中斷sbit beep=P2^6. //蜂鳴器unsigned char j,k,adval,key. void delay(unsigned char i) //延時(shí){ for(j=i.j>0.j) for(k=125.k>0.k). }unsigned char code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82, //數(shù)字編碼0xf8,0x80,0x90}. void display(uchar tem) //display 顯示程序{ uchar j,A1,A2,A2t,A3; A1=table[tem/100]; //得到百位顯示碼A2t=tem%100; //得到十位數(shù)A2=table[A2t/10]; //得到十位顯示碼A3=table[A2t%10]; //個(gè)位顯示碼for(j=50;j>0;j) { P0=A1; //顯百位P2_0=0; P2_1=1; P2_2=1; delay(5); P0=A2; //顯十位P2_1=0; P2_0=1; P2_2=1; delay(5); P0=A3; //顯個(gè)位P2_2=0; P2_0=1; P2_1=1; delay(5); }
} void main() { float adval_f; while(1) { adwr=0; //隨便寫個(gè)數(shù),主要是啟動(dòng)AD 轉(zhuǎn)換_nop_(); adwr=1; adrd=0; //讀取AD 的數(shù)adval=P1; adrd=1; delay(10); //延時(shí)adval_f=(adval/256)*500; display(adval); //顯示}; } 圖4.12 數(shù)字信號的顯示Fig.4.12 Displaymengt of digital signal
本章針對信號處理的模擬模擬信號處理和數(shù)字信號處理部分進(jìn)行了詳細(xì)的設(shè)計(jì),以儀用放大器AD620 和CA3240 為中心組成放大濾波電路,又以AT89S53 單片機(jī)和AD574 芯片為中心組成了數(shù)模轉(zhuǎn)換電路,并給出了關(guān)鍵程序流程。然后對部分電路進(jìn)行測試并實(shí)現(xiàn)信號的顯示,做出了PCB 板圖并編制了相應(yīng)的程序。本章是整個(gè)電磁流量計(jì)了的關(guān)鍵環(huán)節(jié)。--擴(kuò)展閱讀:開封中儀流量儀表有限公司專業(yè)生產(chǎn)電磁流量計(jì)、孔板流量計(jì)、渦街流量計(jì)、文丘里流量計(jì)、v錐流量計(jì)、v型錐流量計(jì)、噴嘴流量計(jì)、插入式電磁流量計(jì)、智能電磁流量計(jì)、分體式電磁流量計(jì)、一體式電磁流量計(jì)、標(biāo)準(zhǔn)孔板流量計(jì)、標(biāo)準(zhǔn)孔板、一體化孔板流量計(jì)、標(biāo)準(zhǔn)噴嘴流量計(jì)、長徑噴嘴流量計(jì)、標(biāo)準(zhǔn)噴嘴、長徑噴嘴、插入式渦街流量計(jì)、智能渦街流量計(jì)、錐型流量計(jì)、v錐型流量計(jì)、節(jié)流裝置、節(jié)流孔板、限流孔板等流量產(chǎn)品,更多有關(guān)電磁流量計(jì)、孔板流量計(jì)、渦街流量計(jì)的信息請?jiān)L問開封中儀網(wǎng)站:
相關(guān)產(chǎn)品
免責(zé)聲明
客服熱線: 13199863987
加盟熱線: 13199863987
媒體合作: 0571-87759945
投訴熱線: 0571-87759942
下載儀表站APP
Ybzhan手機(jī)版
Ybzhan公眾號
Ybzhan小程序