基于PIC 單片機的熱水控制器設計
一 引言
本文引用地址:http://cqxgywz.com/article/20741.htm當前市場上的熱水控制器基本上采用雙金屬片溫控,控溫精度低、可靠性差、功能單一。隨著微電子技術的發展,單片微處理器功能日益增強,價格低廉,在各方面得到廣泛應用。在熱水控制器中應用單片機,具有設計簡單、可靠性高、功能易擴展等優點。熱水控制器主要實現對水溫的控制,并滿足不同用戶的個性需求。因此一個較完善的控制器應具有以下功能: 水溫的測量與顯示; 水量的測量與顯示; 用戶設定功能(如水溫設定,定時設定等); 對電加熱管的控制功能; 一些功能鍵(如定時自動加水,恒溫控制,手動加水,手動加熱等)。 安全措施(漏電檢測,安全失效保護,限溫保護等)。
二硬件電路設計
根據熱水控制器的功能要求,并結合對pic16c5x 系列單片機的資源分析,采用此系列中的主流型號pic16c57作為電路系統的控制核心。電熱水控制器的總體布局如圖1所示。 基本硬件電路圖如圖2(a)~(c)所示。在本系統中,ra0~ra3用于七段碼顯示,rb6 控制水閘開關,rb7控制電加熱管,rc3~rc5用于按鍵設計和讀取水量,rc0~rc2用于跟ds1820通信進行水溫測量,rb0~rb1對七段碼進行掃描,rb2~rb5 led指示燈顯示,rc6漏電檢測,rc7控制揚聲器用于報警和指示。
1、水溫測量電路測溫元件采用dallas的單線數字溫度傳感器ds1820。ds1820提供九位溫度讀數,測量范圍-55℃~125℃,采用獨特1-wire
總線協議,只需一根口線即實現與mcu 的雙向通訊,具有連接簡單,高精度,高可靠性等特點。在工作時,通過總線向其提供電源,單片機發出指令碼讀取溫度值。
鍵盤與水量測量電路由于在本系統中,只要求顯示四個檔位的水量值,因此水量傳感器采用的是開關式傳感器,當水量達到某一檔時會拉低該檔電平,接口電路與按鍵按下類似。因此在電路設計中,將水量檔位信號與按鍵通過一片74hc148優先編碼器連接到單片機的i/o
口上。按鍵的優先權高于水量信號,水量高檔位信號優先權高于低檔位信號,以保證能優先響應按鍵。
2、顯示電路溫度采用二位七段碼顯示,顯示范圍0℃~99℃。水量采用一位七段顯示,顯示1、2、3、4,四檔水位。對溫度和水量進行循環掃描顯示。四個led 用于當前按鍵功能設定。
3、水溫和水量控制電路 單片機通過光電耦合對繼電器進行控制,用來切斷或接通加熱管電源,關閉或打開水閥,從而達到對水溫和水量的控制。
4、漏電檢測及報警電路由于熱水器工作在潮濕的場合,因此需具備漏電檢測與報警功能。漏電檢測由漏電檢測線圈的輸出經整形后輸入到rc6 口,電路原理圖如圖3(a)所示。當漏電流超過一定閾值時,比較器輸出低電平,否則保持高電平,再通過一單穩態觸發器電路產生如圖3(b)所示波形,低電平保持時間t可由單穩態觸發器進行調整設定。在本系統中t 為10ms,由于pic16c57 沒有中斷功能,因此程序中必須每隔一定時間(小于10ms)對rc6 口進行查詢,以檢測是否漏電,一旦檢測到rc6 變低,經過確認后切斷加熱管電流,同時進行報警。報警電路還在傳感器出現故障、超溫時報警提示。 pic16c57 本身具有看門狗定時器,當系統出現異常時,能自動進行掉電保護和系統復位。
三系統軟件設計
系統軟件采用pic16c5x精簡指令編寫。由于pic16c57沒有中斷功能,因此本系統中鍵盤掃描、漏電檢測等子程序都通過查詢實現,并采用4mhz的時鐘頻率,對指令的運行時間進行了精確計算和設計,保證軟件的可靠性和穩定性。系統主程序框圖如圖4
所示,本文討論鍵盤顯示與水溫測量兩個模塊。 鍵盤和顯示 本系統中,有四個功能按鍵:定時加水、恒溫控制、手動加水和手動加熱;三個七段碼顯示與四個led
燈指示。
a) 按下定時加水按鈕時,定時led變亮,并以當前時間為定時時標,每24小時自動加水至設定水量;若長按此鈕超過5 秒,定時led 滅,并聽到“嘟”一聲進行水量設定,此后每按一下鈕,水量顯示加一檔,1~4
檔循環顯示,不按此鈕超過5 秒,再次聽到“嘟”一聲,水量設定完畢。系統的定時功能主要通過軟件完成。pic16c5x內帶一個8 位定時器/計數器rtcc,在進行24
小時定時加水時采用了該定時器,rtcc及其相關電路如圖5 所示。












評論