一種海澤自動(dòng)氣象站數(shù)據(jù)采集控制器的設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
1氣象傳感器
目前,海洋自動(dòng)氣象站上的氣象傳感器有風(fēng)速風(fēng)向、相對(duì)濕度、氣溫、氣壓、雨量、長(zhǎng)波輻射和太陽(yáng)短波輻射傳感器,其中風(fēng)速風(fēng)向、相對(duì)濕度、氣壓、雨量、長(zhǎng)波輻射電壓值和太陽(yáng)短波輻射電壓值均為電壓輸出,具體輸出電壓如表1所示,而氣溫、長(zhǎng)波外殼溫度和長(zhǎng)波穹頂溫度為電阻輸出。
2高精度AD芯片
本系統(tǒng)采用了兩款高精度AD轉(zhuǎn)換芯片一AD7193和AD7793。它們均是由亞德諾公司推出的24位8-A型模數(shù)轉(zhuǎn)換芯片,廣泛應(yīng)用于數(shù)據(jù)采集和精密儀器儀表的制造中。
AD7193集合了過(guò)采樣、抽取濾波和量化噪聲整形三項(xiàng)技術(shù),具有更好的抗混疊性能和更高的分辨率。AD7193可使用外部晶振驅(qū)動(dòng),也可使用4.92MHz內(nèi)部晶振。若想得到更高的轉(zhuǎn)換精度,只能減小轉(zhuǎn)換速率。器件的數(shù)字部分與模擬部分相互隔離,兩部分的供電電壓范圍均為3~5.25V。
電阻類(lèi)傳感器的測(cè)量由AD7793芯片來(lái)完成。該芯片也內(nèi)置了24位的8-A型模數(shù)轉(zhuǎn)換器,并內(nèi)部集成了低噪聲可編程儀表放大器,可直接用于采集微弱信號(hào)。AD7793內(nèi)置了一個(gè)精密低噪聲、低漂移內(nèi)部帶隙基準(zhǔn)電壓源,可作為器件工作時(shí)的電壓基準(zhǔn)。芯片還提供兩個(gè)可編程激勵(lì)電流源,極大地方便了分壓法測(cè)量電阻。
3模擬電路設(shè)計(jì)
3.1電壓模擬信號(hào)采集電路
模擬電壓信號(hào)測(cè)量電路的原理圖如圖1所示,電路共包含三個(gè)AD7193芯片。片內(nèi)的多路復(fù)用器將每個(gè)芯片通道擴(kuò)展為四路差分通道,故系統(tǒng)共可以測(cè)量十二路差分模擬電壓輸入。
AD轉(zhuǎn)換芯片的模擬電源AVDD和數(shù)字電源DVDD是分開(kāi)供電的。為了將模擬部分受到的干擾降至最低,系統(tǒng)采用模塊化設(shè)計(jì)。將每個(gè)AD芯片及其外圍電路都單獨(dú)設(shè)計(jì)為一塊獨(dú)立電路板,每一塊AD采集板都以最簡(jiǎn)的電路設(shè)計(jì)和最少的元器件布局做到最大程度降低其受到數(shù)字電路干擾的可能性。
3.2電阻類(lèi)傳感器測(cè)量
待測(cè)量的電阻傳感器有Pt100和長(zhǎng)波輻射計(jì)的CaSe熱敏電阻、Dome熱敏電阻,它們都是用于測(cè)量溫度的,但用途卻不盡相同。Pt100用于測(cè)量大氣溫度,而CaSe熱敏電阻和Dome熱敏電阻用于測(cè)量長(zhǎng)波輻射計(jì)內(nèi)部溫度,且此溫度只用于長(zhǎng)波輻射強(qiáng)度的計(jì)算。
四線制Pt100測(cè)溫的原理圖如圖2所示,其中上、下兩部分分別為長(zhǎng)波輻射計(jì)熱敏電阻的測(cè)量電路和Pt100的測(cè)量電路。
Pt100鉑電阻阻值可由式(1)求得:
長(zhǎng)波輻射計(jì)內(nèi)熱敏電阻的測(cè)量原理與Pt100測(cè)量方法相同,也是采用了同樣的標(biāo)準(zhǔn)電阻與待測(cè)電阻串聯(lián),利用分壓法計(jì)算待測(cè)量電阻值。
4數(shù)據(jù)采集控制器硬件及軟件
4.1硬件
海洋自動(dòng)氣象站主控芯片用意法半導(dǎo)體的STM32F103系列單片機(jī),AD轉(zhuǎn)換芯片將轉(zhuǎn)換結(jié)果以SPI通信的方式傳輸給主控芯片,裝有文件系統(tǒng)的SD card可將傳感器原始數(shù)據(jù)完整保存。
4.1.1系統(tǒng)控制器
以ARM內(nèi)核的32位單片機(jī)作為海洋自動(dòng)氣象站數(shù)據(jù)采集系統(tǒng)的控制器和數(shù)據(jù)處理器。
STM32的單片機(jī)外設(shè)豐富、電路簡(jiǎn)單,故選用了其F103系列芯片,單片機(jī)外圍電路如圖3所示。
4.1.2AD779M芯片的通信過(guò)程
在通信過(guò)程中,單片機(jī)作為主機(jī),AD芯片作為從機(jī)。AD779M的片選信號(hào)低電平有效,故TCU與AD779M的通信以片選信號(hào)的下降沿開(kāi)始。AD779M操作寄存器的方式為:首先對(duì)芯片的通用寄存器進(jìn)行寫(xiě)操作,寫(xiě)入通用寄存器的數(shù)據(jù)決定了下一步是對(duì)芯片進(jìn)行寫(xiě)操作還是讀操作以及所要操作的寄存器地址。然后便是對(duì)所選中的寄存器進(jìn)行讀或?qū)?若是寫(xiě)操作,AD779M將會(huì)把后續(xù)收到的l6字節(jié)的配置數(shù)據(jù)直接寫(xiě)入到相應(yīng)寄存器中;若是讀指令,主機(jī)需要提供足夠的時(shí)鐘脈沖,AD779M會(huì)將指定寄存器的數(shù)據(jù)置于D0US/RDY引腳發(fā)送給主機(jī)。操作完成之后,接口就會(huì)返回到對(duì)通信寄存器執(zhí)行寫(xiě)操作的狀態(tài)。
AD779M最簡(jiǎn)單轉(zhuǎn)換模式,只需將相應(yīng)的配置信息寫(xiě)入模式寄存器,芯片便可自動(dòng)進(jìn)入單次轉(zhuǎn)換模式。轉(zhuǎn)換完成后,將D0UT/RDy引腳拉低,待控制器讀取數(shù)據(jù)寄存器數(shù)據(jù)后,芯片便進(jìn)入關(guān)斷模式,等待下一次指令喚醒。單次轉(zhuǎn)換的時(shí)序如圖4所示。
AD7193的通信過(guò)程與AD7793基本類(lèi)似,只是在數(shù)據(jù)讀取過(guò)程存在一些差異。
4.2軟件流程
STM32一般用C語(yǔ)言進(jìn)行編程。C語(yǔ)言是世界上應(yīng)用最為廣泛的計(jì)算機(jī)編程語(yǔ)言之一,它擁有代碼量小、運(yùn)行速度快、功能強(qiáng)大等優(yōu)點(diǎn)。在本系統(tǒng)中選用MDK作為開(kāi)發(fā)工具。
單片機(jī)與AD7193、AD7793的通信從片選信號(hào)CS引腳變?yōu)榈碗娖介_(kāi)始,以片選信號(hào)電平拉高結(jié)束。在進(jìn)行模擬量轉(zhuǎn)換之前,要先進(jìn)行校準(zhǔn)。AD7193和AD7793包含多種校準(zhǔn)模式,本系統(tǒng)中應(yīng)用了其內(nèi)部校準(zhǔn)模式。內(nèi)部零電平校準(zhǔn)用于消除芯片的零點(diǎn)漂移,內(nèi)部滿量程校準(zhǔn)則用于消除芯片的增益誤差。進(jìn)行內(nèi)部零電平校準(zhǔn)和滿量程校準(zhǔn)過(guò)程中,芯片內(nèi)部提供的零輸入或滿量程輸入會(huì)與芯片待校準(zhǔn)通道引腳自動(dòng)相連,從操作上看,相當(dāng)于進(jìn)行了一次模數(shù)轉(zhuǎn)換。校準(zhǔn)轉(zhuǎn)換完成后,芯片會(huì)自動(dòng)將在內(nèi)部零電平校準(zhǔn)中測(cè)得的失調(diào)系數(shù)寫(xiě)入失調(diào)寄存器,將在內(nèi)部滿量程校準(zhǔn)中測(cè)得的滿量程系數(shù)寫(xiě)入滿量程寄存器。后續(xù)的轉(zhuǎn)換過(guò)程中,各通道的轉(zhuǎn)換結(jié)果需要分別利用各自的校準(zhǔn)寄存器進(jìn)行修正,先減去失調(diào)系數(shù),再乘以滿量程系數(shù),才能寫(xiě)入數(shù)據(jù)寄存器。
單片機(jī)與AD7193的具體通信過(guò)程如圖5所示。
AD7793的通信過(guò)程與AD7193不同,原因主要在于AD7793無(wú)法同時(shí)使能多個(gè)模擬轉(zhuǎn)換通道,開(kāi)啟一次轉(zhuǎn)換只能測(cè)試一個(gè)通道。片選引腳拉低之后,便可設(shè)置模式寄存器和配置寄存器,設(shè)置激勵(lì)電流源大小,開(kāi)啟單次轉(zhuǎn)換模式,ADC便進(jìn)入相應(yīng)通道的轉(zhuǎn)換過(guò)程中。等待轉(zhuǎn)換完成并讀取轉(zhuǎn)換結(jié)果,完成后再次對(duì)配置寄存器進(jìn)行寫(xiě)操作,改變使能通道,而保持激勵(lì)電流源等設(shè)置不變,進(jìn)入下一通道的轉(zhuǎn)換,直至此芯片的每一個(gè)通道都執(zhí)行完成轉(zhuǎn)換操作,便進(jìn)入下一AD7793芯片的轉(zhuǎn)換過(guò)程。循環(huán)采集三十組電壓數(shù)據(jù),取平均值并用于計(jì)算待測(cè)電阻阻值。單片機(jī)與AD7793的具體通信過(guò)程如圖6所示。
5結(jié)語(yǔ)
該數(shù)據(jù)采集控制器主要由ARM芯片、AD7193、AD7793等組成,通過(guò)軟件編程實(shí)現(xiàn)對(duì)電壓、電阻信號(hào)的采集,特別是長(zhǎng)波輻射和短波輻射的微弱電壓信號(hào)的采集。應(yīng)用到實(shí)際的海洋自動(dòng)氣象站中,取得了不錯(cuò)的效果。