【摘要】介紹的智能金屬浮子流量變送器是以MSP430F449單片機為核心,實現瞬時流量、累積流量的測量和顯示,輸出構成兩線制的4~20mA變送器,用于信號的遠傳。
1 測量原理
金屬浮子流量計的流量檢測元件是由一根自下向上擴大的垂直錐形管和一個沿著錐管軸上下移動的浮子組所組成。被測流體從下向上經過錐管和浮子形成的環隙時,浮子上下端產生差壓形成浮子上升的力,當浮子所受上升力大于浸在流體中浮子重量時,浮子便上升,環隙面積隨之增大,環隙處流體流速立即下降,浮子上下端差壓降低,作用于浮子的上升力亦隨著減少,直到上升力等于浸在流體中浮子重量時,浮子便穩定在某一高度。環隙面積與浮子的上升高度成比例,即浮子的某一高度代表流量的大小。浮子上下移動時,以磁耦合的形式將位置傳遞到外部指示器,使指示器的指針跟隨浮子移動,并借助凸輪板使指針線性地指示流量值的大小。
電傳型流量計是現場用指針指示,同時通過角位移傳感器及變送電路,把流量信號轉換為4~20mA的信號。變送電路以MSP430F449為核心,實現非線性修正功能把流量值準確地轉換成4~20mA的標準信號。變送器的總體框圖如圖1所示。
2 MSP430F449芯片
MSP430F449是美國TI公司16位低功耗單片機,在2.2V電壓,1MHz時鐘的系統下,活動模式功耗為280μA,等待模式功耗僅為1.6μA。具有64KB的尋址范圍,片內資源豐富,有精密硬件乘法器、兩個16位定時器、一個8路的具有內部參考電平、采樣保持和自動掃描特性的12位的A/D模數轉換器、看門狗電路、48條I/O口線(一部分復用)、兩路串行通信端口(USART)、一個內部振蕩器(DCO)和兩個外部時鐘(支持非常高8M時鐘)。片內帶有LCD驅動功能,可直接驅動LCD顯示,驅動段數可達160段,液顯有4種工作方式(靜態、2MUX、3MUX、4MUX)。由于為FLASH型芯片,可以在線對單片機進行調試和下載程序,利用JTAG口直接和目標板相連,不需要另外的仿真工具,方便實用。并且可以保存在掉電時仍需存儲的數據信息,減少了E2PROM帶來的額外電流消耗。
3 硬件電路
3.1 通信接口
通過金屬浮子流量計的流量與磁阻傳感器輸出電壓之間不是線性關系,需要通過PC機輸入一組標定值給單片機。因為金屬浮子流量計通常以水為介質標定,如實際流體密度、粘度與之不同,流量值也隨之發生變化,因此需要進行流量修正。采用單片機的RS-232通信接口與計算機通信,把標定值傳送到MSP430F449芯片的FLASH中的信息段內,供實際流量修正。
3.2 信號檢測部件
信號檢測采用Honeywell公司的高分辨率、低功耗的磁阻傳感器(圖2所示U7),測量從磁鐵發出的磁場的方向角,分辨率可小于0.07。與測量磁場強度相比,測量磁場方向的優點包括:對于磁鐵的溫度系數不敏感,對于沖擊和振動不敏感,以及可以承受傳感器和磁鐵之間間隙的較大的變化。采用典型的惠斯通電橋,計算公式為:
V = VSSsin(2θ)
式中,VS是供電電壓;S是常數,取決于材質,典型值12mV/V,角度范圍是±45゜。
當流量發生變化時,金屬浮子上下移動,以磁耦合的形式將浮子位置變化信息傳遞到外部指示器,指示器指針跟隨浮子移動,借助凸輪板使指針線性地指示流量值的大小。信號檢測時通過θ角度的變化,引起傳感器輸出電壓的變化。由于輸出電壓的量值只有毫伏級,因此需外加放大電路,將信號值變換為MSP430單片機允許的A/D輸入幅值范圍0~3.6V內。
3.3 A/D轉換電路
由于MSP430F449芯片集成了12位A/D轉換,其中8路是外部的信號轉換,每一路轉換都有一個可控制的轉換存儲器,而且參考電平和時鐘源都是可選擇的,也可外部提供。這給使用上帶來了很大的靈活性。使用時只需將信號檢測部分的輸出電壓(如圖2信號SIGNAL)直接與A/D轉換的輸入端MSP430的P6.0口相連,由于浮子流量計是測量精度要求不高的儀表,在本設計中采用AVCC(電源電壓)作為正參考電壓,采用AVSS(電源地)作為負的參考電壓。輸出數字量NADC的計算公式為:
NADC = 4095×(VIN - AVSS)/(AVCC + AVSS)
由于MSP430F449是采用加載信號到電容上充電的采樣,因此,必須要給一定的采樣時間以能達到一定的精度,否則會出現時間的溢出。另外在采樣的結束和轉換的開始需要一個控制過程,就是將ADC12CTL0寄存器的ENC位和ADC12SC位同時置“1”,用于表明采樣結束和轉換開始。
3.4 數值輸出電路
經過單片機處理后的瞬時流量值需要輸出給外部D/A器件DAC7512,硬件電路如圖3所示。有兩種方法可以用來傳送數值,可以采用數字I/O口傳送,直接將數據移位送出,也可以利用MSP430F449提供的USART端口,MSP430F449具有兩個USART端口。在軟件中將其中一個端口設置為SPI模式。SPI模式允許7位或8位數據流以內部或外部確定的速率移入移出MSP430,SPI的優點是可以靈活地利用單片機的現有資源,擴充單片機的對外功能,但是這種方式同時也占用MCU的定時器和I/O口資源。由于DAC7512為12bit串行輸入D/A轉換器件,而用SPI模式一次只能發送8位數據,因此采用查詢發送標志位(U1IFG)方法發送數據。單片機與外部D/A器件DAC7512相連時,除了連接數據線和時鐘線外,還必須為其提供同步信號(SYNC),設計中使得P4.4端口輸出同步信號。在發送數據前將此信號拉高作為發送起始信號,發送數據時將此信號拉低,要使數據準確發送給DAC7512,必須在傳送數據期間使得此信號維持低電平,發送結束后再將其置高等待下一次的數據發送。調試時通過示波器觀察和調整SYNC同步信號。
3.5 液晶顯示電路
芯片內的LCD驅動器,可以直接驅動160段LCD顯示。對于液晶驅動端口,在不用于液晶驅動時,可以作為輸入輸出端口來用。設計中選用了七位LCD顯示器,采用4MUX驅動方式,將單片機上的公共端口(COM0-COM3)及驅動段(S0-S15)直接與LCD上的對應腳相連即可,簡化了液晶顯示器的顯示。液晶顯示電路如圖4所示。設計中只要求顯示累積流量,顯示非常大值為999999.9。
3.6 信號輸出電路
單片機對輸入信號進行線性化修正后得到了瞬時流量的數字量,為了對瞬時流量值實現4~20mA的遠傳,需要對信號進行D/A轉換。本設計中采用DAC7512實現D/A轉換,DAC7512為12bit串行輸入的D/A轉換器,輸出模擬量的大小為0~5V。然后經由集成V/I器件,得到4~20mA的電流信號,供遠程儀表顯示。
4 軟件設計
軟件采用結構化程序設計,主要由主程序、定時中斷采樣程序、通信中斷程序等幾部分組成。主程序是由初始化程序段、顯示程序段、數據處理程序段、數字量輸出程序段組成。軟件流程圖如圖5所示。
(1)通信中斷程序實現將計算機內設定好的標定值寫入FLASH中,寫入的標定值為浮點數格式,浮點數在C語言中是以IEEE格式存儲的,一個浮點數占用4個字節,在上位機發送數據的VB程序中需將浮點數轉化為字節格式發送出去。要將一個浮點數存人FLASH,實際上就是要存這4個數。浮點數在存儲時,是連續字節存儲的,只要設法找到存儲位置,就可以得到這些數了。可以定義一個void的指針,將此指針指向需要存儲的浮點數,然后將此指針強制轉化為char型。存入FLASH中的數,要將其取出合并恢復成浮點數,方法也是一樣。非常后將這些接收到的浮點數賦給自定義的數組變量BD_VALUE[]。在整個對FLASH進行操作期間,必須要關掉看門狗定時器和所有中斷。通信中斷子程序的程序框圖如圖6所示。
(2)A/D轉換程序中采用內部定時器(TimerB)設置1秒定時中斷將轉換結果保存在ADC12的內部存儲器中。A/D定時中斷采樣程序框圖如圖7所示。
(3)軟件的核心部分是對信號檢測電路送入單片機的電壓值進行非線性化修正。先由給出的一組體積數VOL[]得到一組默認電壓值MR_VALUE[],計算方法為:MR_VALUE[i]=VOL[i]/VOLmax×10。首先判斷信號檢測電路送來的電壓值V處于標定電壓值(BD_VALUE[])的哪一段范圍內,然后進行分段的線性化處理。
5 結論
金屬浮子流量計變送器以TI公司的MSP430F449芯片為核心,設計簡單可靠,外圍器件少,功耗特別低。將此變送器應用在浮子流量計中,經過試驗能達到以下技術指標:
(1)量程比:10:1;
(2)精確度等級:普通型2.5級,高精度型1.5級;
(3)指示器刻度:流量單位或百分比;
(4)11段非線性高精度修正;
(5)環境溫度:-25~+55℃;
(6)電遠傳信號4~20mA輸出;
(7)累計流量顯示。
由此可見,設計的金屬浮子流量計變送器具有良好的實際生產和使用價值,并將在以后的工業生產中加以推廣使用。
相關推薦:壓力變變送器、
注明,淮安三暢儀表文章均為原創,轉載請注明本文地址http://www.tclife.cn/