一款自動太陽能熱水器溫控設(shè)計
溫度顯示系統(tǒng)及水位指示系統(tǒng)如圖2 ,顯示電路用兩個數(shù)碼管顯示溫度,采用動態(tài)顯示方案,兩個數(shù)碼管為共陽型,兩個三極管為PNP型,7個I/O端口輸出段碼,小數(shù)點(diǎn)不用,2個I/O端口輸出位控制信號低電平有效,顯示溫度設(shè)定值、實(shí)際溫度測量值。用六個發(fā)光二極管作為六檔水位指示(10%、30%、50%、70%、90%、100%),由89C51 直接驅(qū)動。
水位選擇電路、鍵盤電路及輸出控制電路的組成如圖3 。
CPU 根據(jù)數(shù)據(jù)采集系統(tǒng)采集的數(shù)據(jù),當(dāng)水位低于10 %時,自動報警并停止電加熱,當(dāng)水位高于90%時,自動報警并停止加水。根據(jù)水位傳感器的數(shù)據(jù),自動加水至水位設(shè)定的檔位。通常,用LED顯示器顯示實(shí)際水溫,當(dāng)水溫低于3 ℃時,為防凍自動電加熱,當(dāng)無手動加熱標(biāo)志時,加熱至25 ℃,當(dāng)有手動加熱標(biāo)志時,加熱至設(shè)定的溫度,設(shè)定溫度的范圍為25℃至65℃。
3 軟件設(shè)計
全部程序采用89C51匯編語言編寫,由主程序、鍵盤服務(wù)程序、水溫水位采樣計算程序、水位調(diào)節(jié)程序、顯示程序、報警程序等模塊組成。程序中加入了防死機(jī)及抗干擾措施。
水溫水位采樣計算程序?yàn)榭垢蓴_均采用了去極值平均濾波的數(shù)字濾波算法,分別連續(xù)10次采樣,將其累加求和,同時找出其中的最大值和最小值,再從累加和中減去最大值和最小值,按8個采樣值求平均值,在RAM中開辟出水溫水位各10個數(shù)據(jù)的暫存區(qū)。
鍵盤服務(wù)程序?qū)τ谌ザ秳?、連擊等情況都做了妥善處理。
4 結(jié)語
該系統(tǒng)投入實(shí)際應(yīng)用以來效果良好,深受用戶的歡迎,收到了良好的經(jīng)濟(jì)及社會效益。
評論