基于單片機(jī)和串行總線技術(shù)的熱量表設(shè)計(jì)
監(jiān)控電路
作為戶用熱量表,通常供電為電池,需要實(shí)時(shí)檢測(cè)電池電壓是否低于正常范圍,不在正常范圍,監(jiān)控電路及時(shí)檢測(cè)并給MCU發(fā)出信號(hào),提示更換電池。與此同時(shí),MCU立即保存有關(guān)數(shù)據(jù)。另外,對(duì)于磁干擾,監(jiān)控電路及時(shí)檢測(cè)給出指示。
微控制器
微控制器框圖如圖3。
圖3 微控制器原理框圖
微控制器以低功耗,電氣連接最少,各功能模快之間相互干擾小的原則進(jìn)行設(shè)計(jì)。眾所周知,串行總線技術(shù)如I2C,從早期大量應(yīng)用于視頻、音像系統(tǒng),現(xiàn)在已應(yīng)用于測(cè)控領(lǐng)域。其規(guī)范的完整性,結(jié)構(gòu)的獨(dú)立性和用戶使用的“傻瓜”化等顯著特點(diǎn),促使具有串行總線接口功能的MCU及其外圍器件不斷出現(xiàn)。用具有串行總線接口器件設(shè)計(jì)的電路,能夠?qū)崿F(xiàn)電氣連接簡(jiǎn)單,低功耗,模塊化。
為此,MCU選用Microchip 公司的PIC16F873,它具有I2C,SPI接口,2.7~5.5V的工作電壓。片內(nèi)FLASH、EEROM為程序和數(shù)據(jù)的保存提供方便,具有的休眠功能使其功耗更低。
A/D轉(zhuǎn)換選用AD7705,它有兩路差分輸入,滿足兩路溫度測(cè)量,差分輸入經(jīng)內(nèi)部可編程放大及16位A/D轉(zhuǎn)換器輸出數(shù)字量。AD7705與單片機(jī)之間通過(guò)SPI串行總線進(jìn)行控制字(放大倍數(shù)、轉(zhuǎn)換通道、采樣速率等設(shè)置)和數(shù)據(jù)(A/D轉(zhuǎn)換結(jié)果)的傳輸。
時(shí)鐘選用DS1337,為熱量表提供工作時(shí)間數(shù)據(jù),時(shí)鐘與單片之間通過(guò)I2C串行總線進(jìn)行時(shí)鐘和日歷數(shù)據(jù)的傳輸。按鍵設(shè)計(jì)為一鍵巡視,即單片機(jī)根據(jù)按鍵次數(shù)通過(guò)串行3總線在LCD顯示各測(cè)量參數(shù)。無(wú)按鍵時(shí)LCD處于關(guān)閉狀態(tài)。當(dāng)有按鍵按下或有流量脈沖信號(hào)時(shí)喚醒休眠中的單片機(jī),使其進(jìn)行相應(yīng)的工作,工作完成后自行進(jìn)入休眠。這樣可降低功耗。
軟件設(shè)計(jì)
軟件設(shè)計(jì)采用模塊化設(shè)計(jì),分為:主程序、中斷服務(wù)程序和若干子程序。其流程示于圖4。
圖4 流程圖
主程序完成單片機(jī)的初始化,以及通過(guò)串行總線完成A/D轉(zhuǎn)換和時(shí)鐘的初時(shí)化。完成這些工作后單片機(jī)進(jìn)入休眠,等待中斷。當(dāng)有中斷信號(hào)即刻進(jìn)入中斷服務(wù)程序,通過(guò)對(duì)中斷信號(hào)的判斷決定下一步執(zhí)行何種處理。若為流量則進(jìn)行熱量的計(jì)算,首先檢測(cè)進(jìn)出口溫度并對(duì)其進(jìn)行線性化處理,根據(jù)溫度查表或插值計(jì)算對(duì)應(yīng)焓值,最后根據(jù)公式計(jì)算熱交換系統(tǒng)所釋放的熱量,為一個(gè)流量脈沖所代表的質(zhì)量,累計(jì)熱量Q=SDQ。
若為按鍵,則根椐按鍵次數(shù)顯示相應(yīng)的參數(shù)。若為電池欠電壓,則轉(zhuǎn)向保存相關(guān)數(shù)據(jù)的處理程序,確保重要數(shù)據(jù)如累計(jì)熱量、累計(jì)工作時(shí)間等不被丟失,并及時(shí)提示更換電池。若為磁干擾則作出相應(yīng)的處理和給出指示。
結(jié)語(yǔ)
應(yīng)用單片機(jī)技術(shù)和串行總線技術(shù)所設(shè)計(jì)的熱量表,性能穩(wěn)定功耗低,能夠檢測(cè)顯示熱載體流過(guò)熱交換體的進(jìn)出口溫度,流體體積,并可顯示釋放的熱量。熱量表具有傳感器故障和磁干擾監(jiān)控功能。該熱量表經(jīng)計(jì)量部門檢定準(zhǔn)確度等級(jí)優(yōu)于3級(jí)??蓱?yīng)用于居住環(huán)境供暖的計(jì)量。為供熱合理收費(fèi)提供依據(jù)。
參考文獻(xiàn):
[1].Microchip datasheethttp://www.dzsc.com/datasheet/Microchip+_1097736.html.
[2].PIC16F873datasheethttp://www.dzsc.com/datasheet/PIC16F873_1.html.
[3].AD7705datasheethttp://www.dzsc.com/datasheet/AD7705_249855.html.
[4].DS1337datasheethttp://www.dzsc.com/datasheet/DS1337_1090248.html.
評(píng)論