新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于AT89S52單片機(jī)的太陽能環(huán)境參數(shù)測試儀

基于AT89S52單片機(jī)的太陽能環(huán)境參數(shù)測試儀

作者: 時(shí)間:2009-11-23 來源:網(wǎng)絡(luò) 收藏

  引 言

  為了確保發(fā)電系統(tǒng)能夠正常的工作,需要對(duì)發(fā)電系統(tǒng)的各項(xiàng)進(jìn)行測量,從而有效地控制其運(yùn)行。本文介紹了一種基于單片機(jī)的參數(shù)測試儀,提供了3種參數(shù)的測量功能和通信接口,以及2種供電方式,既可作為手持設(shè)備使用,又能安裝在發(fā)電系統(tǒng)中,具有較高的實(shí)用價(jià)值。

  1 硬件電路設(shè)計(jì)

  1.1 總體結(jié)構(gòu)

  該測試儀以單片機(jī)為核心,外接溫濕度傳感器SHTll、照度傳感器、四位共陰數(shù)碼管、總線通信接口以及顯示切換按鍵。單片機(jī)上電工作后,對(duì)當(dāng)前溫度、濕度、光強(qiáng)度進(jìn)行實(shí)時(shí)測量,通過按鍵切換將測得的3種參數(shù)通過LED數(shù)碼管進(jìn)行輪流顯示;此外,還可以通過總線與PC機(jī)進(jìn)行通信,將參數(shù)值傳送到上位機(jī),以達(dá)到遠(yuǎn)程監(jiān)測的目的。該測試儀的結(jié)構(gòu)框圖如圖1所示。

測試儀的結(jié)構(gòu)框圖

  1.2 測量模塊

  溫度和濕度測量采用的是瑞士Sensirion公司生產(chǎn)的SHTll傳感器。該傳感器采用獨(dú)特的CMOsens TM技術(shù),將溫濕度傳感器、信號(hào)放大處理、A/D轉(zhuǎn)換、全部集成在一塊芯片上,可直接與單片機(jī)接口。該芯片采用數(shù)字式輸出,為編程提供了方便。

  光照度測量選用的是TAOS公司生產(chǎn)的光強(qiáng)度傳感器。它具有數(shù)字式輸出端口和標(biāo)準(zhǔn)接口,涵蓋1~70 000 lx的寬照度范圍,非常適合戶外環(huán)境下光照強(qiáng)度的測量,適用于太陽能發(fā)電系統(tǒng)。圖2為傳感器與單片機(jī)的接口電路設(shè)計(jì)。

傳感器與AT89S52單片機(jī)的接口電路設(shè)計(jì)

  1.3 電源模塊

  電源模塊提供了2種供電方式:

 ?、佼?dāng)測試儀作為手持設(shè)備使用時(shí),可直接使用3.6V鋰電池,經(jīng)過DC—DC電壓轉(zhuǎn)換芯片MAX756將電壓升至5 V后為單片機(jī)和外設(shè)供電。

 ?、诋?dāng)測試儀作為固定設(shè)備安裝在太陽能發(fā)電現(xiàn)場時(shí),可以采用太陽能供電。太陽能電池產(chǎn)生的12 V電壓通過穩(wěn)壓芯片LM7805后,得到穩(wěn)定的5 V電壓輸出,輸出電壓既可以為測試模塊供電還可以通過充電電路為鋰電池充電。圖3是電源模塊的硬件原理圖。

電源模塊的硬件原理圖

  1.4 充電電路

  充電電路的核心器件采用的是上海如韻公司生產(chǎn)的專用充電芯片CN3058,它可以對(duì)單節(jié)磷酸鐵鋰可充電電池進(jìn)行恒流/恒壓充電。該器件內(nèi)部集成有功率晶體管,使用時(shí)不需要設(shè)計(jì)外圍電流檢測和保護(hù)電路,適用于便攜式的應(yīng)用領(lǐng)域。

  圖4為鋰電池充電電路。其中LEDl和LED2分別作為充電中和充電飽和兩種狀態(tài)的指示燈,R1在充電時(shí)起限流保護(hù)的作用;電容C1和C2采用的是多層陶瓷電容器(MLCC),能保證充電電路穩(wěn)定工作。

鋰電池充電電路

  1.5 通信模塊

  測試儀通過工業(yè)總線與PC機(jī)進(jìn)行通信,其硬件接口電路如圖5所示。

硬件接口電路

  2 軟件設(shè)計(jì)

  2.1 總體設(shè)計(jì)

  測試儀的軟件開發(fā)環(huán)境采用的是Keil C,所有代碼采用C語言編寫。為了方便程序調(diào)試和提高可靠性,軟件采用模塊化結(jié)構(gòu)設(shè)計(jì),主要由初始化程序、主程序、子程序、中斷服務(wù)程序等組成。單片機(jī)上電后即開始循環(huán)執(zhí)行溫濕度、照度測量程序,并以設(shè)定的時(shí)間間隔在數(shù)碼管上輪流動(dòng)態(tài)顯示;按鍵切換和通信功能部分由于使用頻率相對(duì)較低,為降低設(shè)備功耗,其程序以中斷響應(yīng)的方式執(zhí)行。在此要注意中斷優(yōu)先級(jí)的設(shè)置:按鍵中斷優(yōu)先級(jí)應(yīng)高于串口中斷,否則將無法進(jìn)行顯示切換。主程序流程如圖6所示。

主程序流程

  2.2 傳感器驅(qū)動(dòng)程序

  本系統(tǒng)采用的傳感器均為集成數(shù)字芯片且都具有接口,故其驅(qū)動(dòng)程序的編寫要嚴(yán)格遵循I2C總線的時(shí)序。主程序?yàn)槊恳粋€(gè)參數(shù)開辟了一個(gè)8位的存儲(chǔ)空間,傳感器將采集到的數(shù)據(jù)經(jīng)SDA引腳串行輸出,驅(qū)動(dòng)程序?qū)DA線上輸出的數(shù)據(jù)進(jìn)行串并轉(zhuǎn)換,并存儲(chǔ)到相應(yīng)空間中,以方便其他功能程序調(diào)用。以下是照度傳感器數(shù)據(jù)采集程序的部分代碼。

  (1)初始化

程序

  2.3 RS485通信程序

  測試儀與上位機(jī)的通信采用RS485協(xié)議。串口參數(shù)為:波特率9600,數(shù)據(jù)位8位,1個(gè)校驗(yàn)位,1個(gè)停止位。其數(shù)據(jù)格式如圖7所示。

數(shù)據(jù)格式

  由于RS485總線協(xié)議與RS232串口協(xié)議只是接口電平上有區(qū)別,其軟件編程完全按照串口通信協(xié)議進(jìn)行,此處不再詳述。

  結(jié) 語

  經(jīng)實(shí)驗(yàn)測試,該測試儀溫度測量顯示精度可以達(dá)到0.1℃,濕度精確到O.1%,照度可以精確到11x。由于主要器件均為I2C數(shù)字接口,故本測試儀還有結(jié)構(gòu)簡單、易維護(hù)、可擴(kuò)展性強(qiáng)等特點(diǎn),具有很高的實(shí)用價(jià)值;另外,獨(dú)特的雙電源供電方式更擴(kuò)展了它的適用范圍。



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉