基于串行總線的熱量表設(shè)計(jì)
2004年A版
摘 要:用帶有串行總線接口的MCU及器件設(shè)計(jì)熱量表電路,達(dá)到電路簡(jiǎn)單和穩(wěn)定可靠的熱量測(cè)量。
關(guān)鍵詞:熱量表;串行總線
我國(guó)居民取暖計(jì)量收費(fèi)已是大勢(shì)所趨,但也是一個(gè)熱點(diǎn)、難點(diǎn)問題。計(jì)量準(zhǔn)確與否直接關(guān)系到熱量的合理收費(fèi)和用戶的切身利益,也關(guān)系到供熱事業(yè)的生存和發(fā)展。熱量表是用于測(cè)量熱交換系統(tǒng)中載熱流體釋放熱量多少的計(jì)量器具,用法定計(jì)量單位顯示熱量。
熱量表
將經(jīng)過嚴(yán)格配對(duì)的溫度傳感器,分別安裝于熱交換回路的入口和出口的管道上;流量傳感器安裝于出口或入口管道上。配對(duì)溫度傳感器檢測(cè)熱交換系統(tǒng)進(jìn)口和出口流體的溫度,流量傳感器檢測(cè)流經(jīng)熱交換系統(tǒng)的流量。微控制器將采集到的溫度、流量數(shù)據(jù)進(jìn)行處理,計(jì)算出熱交換系統(tǒng)所釋放的熱量,并進(jìn)行存儲(chǔ)或顯示。熱量表主要由溫度檢測(cè)、流量檢測(cè)和微控制器組成。
熱量的計(jì)算公式為:
=
式中Q載熱液體釋放的熱量(KJ),qm流經(jīng)熱量表載熱液體的質(zhì)量流量(Kg/s),hi,h0熱交換系統(tǒng)入口溫度和出口溫度對(duì)應(yīng)的載熱液體的焓值(KJ/Kg),t時(shí)間(s)。
從上式可以看出,要計(jì)算熱量,必須首先檢測(cè)進(jìn)出口溫度,然后根據(jù)溫度查表計(jì)算對(duì)應(yīng)的熱焓值。熱焓值在不同溫度下其值不同,既是溫差相同,但進(jìn)出口溫度不同,所釋放的熱量也不相同。
熱量表電路設(shè)計(jì)
溫度檢測(cè)電路
溫度傳感器選鉑電阻PT1000,鉑電阻溫度傳感器化學(xué)性質(zhì)穩(wěn)定,準(zhǔn)確度高,使用方便,不需冷端補(bǔ)償。熱量表測(cè)溫范圍不大(0~95℃),能夠滿足要求。溫度-電壓轉(zhuǎn)換采用橋路方式實(shí)現(xiàn),電路如圖2。
橋路電源Vref由MAX6192-2.5V 基準(zhǔn)電壓源提供,溫漂5ppm/℃。橋臂電阻R1、R2、R4選用同溫度系數(shù)的精密電阻,減少環(huán)境溫度變化引起橋路輸出的漂移。另外,為減少鉑電阻自熱溫升,R1、R2阻值選用49K,橋臂電流為0.05mA ,這樣因自熱溫升而產(chǎn)生的測(cè)量誤差可忽略不計(jì)。鉑電阻的非線性通過軟件的方式進(jìn)行線性處理。
流量檢測(cè)
流量傳感器選用遠(yuǎn)傳熱水流量計(jì),工作溫度0~95℃ ,傳感器為磁敏感器件。當(dāng)熱水流過并達(dá)到1升或10升時(shí)發(fā)出脈沖,該脈沖經(jīng)過濾波處理送給微控制器,作為流量質(zhì)量累計(jì)和熱量計(jì)算的基本質(zhì)量體積單位,即1升/每脈沖或10升/每脈沖。
監(jiān)控電路
作為戶用熱量表,通常供電為電池,需要實(shí)時(shí)檢測(cè)電池電壓是否低于正常范圍,不在正常范圍,監(jiān)控電路及時(shí)檢測(cè)并給MCU發(fā)出信號(hào),提示更換電池。與此同時(shí),MCU立即保存有關(guān)數(shù)據(jù)。另外,對(duì)于磁干擾,監(jiān)控電路及時(shí)檢測(cè)給出指示。
微控制器
微控制器以低功耗,電氣連接最少,各功能??熘g相互干擾小的原則進(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ī)之間通過SPI串行總線進(jìn)行控制字(放大倍數(shù)、轉(zhuǎn)換通道、采樣速率等設(shè)置)和數(shù)據(jù)(A/D轉(zhuǎn)換結(jié)果)的傳輸。
時(shí)鐘選用DS1337,為熱量表提供工作時(shí)間數(shù)據(jù),時(shí)鐘與單片之間通過I2C串行總線進(jìn)行時(shí)鐘和日歷數(shù)據(jù)的傳輸。按鍵設(shè)計(jì)為一鍵巡視,即單片機(jī)根據(jù)按鍵次數(shù)通過串行3總線在LCD顯示各測(cè)量參數(shù)。無按鍵時(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ù)程序和若干子程序。
主程序完成單片機(jī)的初始化,以及通過串行總線完成A/D轉(zhuǎn)換和時(shí)鐘的初時(shí)化。完成這些工作后單片機(jī)進(jìn)入休眠,等待中斷。當(dāng)有中斷信號(hào)即刻進(jìn)入中斷服務(wù)程序,通過對(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īng)用單片機(jī)技術(shù)和串行總線技術(shù)所設(shè)計(jì)的熱量表,性能穩(wěn)定功耗低,能夠檢測(cè)顯示熱載體流過熱交換體的進(jìn)出口溫度,流體體積,并可顯示釋放的熱量。熱量表具有傳感器故障和磁干擾監(jiān)控功能。該熱量表經(jīng)計(jì)量部門檢定準(zhǔn)確度等級(jí)優(yōu)于3級(jí)??蓱?yīng)用于居住環(huán)境供暖的計(jì)量。為供熱合理收費(fèi)提供依據(jù)?!?
評(píng)論