直流PTC熱敏電阻恒溫控制系統
3.4 單片機控制多路繼電器
單片機控制繼電器如圖1所示,圖中只給出一路繼電器的控制電路接法,它占用了單片機P3口的一位,多路繼電器可通過占用不同引腳實現,本系統使用P3口的3位控制3路繼電器。PTC熱敏電阻選用直流12V,電壓由開關電源提供。由于單片機P3口的驅動電流是20mA,而繼電器的驅動對于單片機來說相當于大功率器件的驅動,必須放大P3口的驅動電流,而PTC熱敏電阻是采用直流12V電壓供電,可能會對單片機的工作穩定性有影響,因此選用光電耦合器4N33提高P3口的驅動能力,同時因為光電耦合器4N33是應用電-光-電的轉換形式來放大驅動電流,這樣隔離了單片機和繼電器,消除了系統可能潛在的不穩定的因素。當單片機P3口接繼電器的引腳給一低電平,則4N33輸入端的發光二極管導通,輸出端輸出放大電流,驅動繼電器吸合,使PTC熱敏電阻環路導通,開始加熱[4-5]。
PTC熱敏電阻在開始工作的初期有一個沖擊電流,這從它的電流-時間特性(如圖2所示)中可以看出,在經過一段時間后電流降到穩定工作狀態,這時的電流很小,大概在0.8~1A,這樣在開始加熱的時候就不能同時打開三路繼電器進行加熱,因為PTC熱敏電阻的供電電源選擇的是直流12V,12A,如果同時打開三路繼電器,在PTC熱敏電阻的沖擊電流達到最大值(5.7~7A)時,開關電源所承受的電流就會超過其額定值,導致電源停止工作甚至毀壞,影響了系統工作的連續性和可靠性。鑒于這個因素,測定了單片PTC熱敏電阻的電流從其開始工作到達到最大值的時間S1和從最大值降到4A以下的時間S2,這樣就可以根據這兩個時間來決定繼電器的開啟。現設定三路繼電器分別為1、2、3路,在單片機上電后就打開第1路繼電器,在經過電流由最小值上升到最大值時間S1后再打開第2路繼電器(如果第1路PTC熱敏電阻提供的溫度沒有達到設定溫度范圍),第3路繼電器的開啟同樣要經過時間S1。每一路繼電器的開、關狀態是由數字溫度計DS18B20測定的實時溫度與設定溫度的上、下限進行比較來決定的,繼電器的開啟先后順序設定為1、2、3,關斷先后順序設定為3、2、1,這些設定由軟件來實現。
3.5 鍵盤、顯示
本系統外設鍵盤采用了HD7279A鍵盤顯示芯片,由于要顯示系統設定溫度的上、下限和實時加熱的溫度,因此只使用HD7279A的鍵盤功能,系統的顯示部分采用LT12864I液晶顯示模塊。系統開始工作的時候,通過鍵盤設定加熱溫度,數據傳遞給單片機,再由單片機將數據送顯示模塊顯示;系統工作的過程中,數字溫度計DS18B20測得的實時溫度值也傳遞給單片機,再由單片機轉換數據并送顯示模塊顯示 [6-7]。
4、系統軟件設計
系統軟件總體流程圖如圖3所示。系統上電后,首先進行初始化,對寄存器和I/O端口進行設置。當檢測到按鍵有效信號,讀取按鍵數據,傳遞給單片機并送顯示模塊顯示,鍵盤設定結束后置標志位,單片機檢測到此信號后,開啟第1路繼電器進行加熱。此時初始化數字溫度計DS18B20進行溫度測量,并將測得實時溫度數據送單片機處理,再由顯示模塊顯示。DS18B20每測完一次溫度后,就將實測溫度值與設定溫度值的上限和下限進行比較,如實測溫度高于設定溫度的上限,轉到繼電器關閉處理程序,檢測每一路繼電器的開、關狀態,按照第3路、第2路、第1路的順序關閉繼電器(每執行1次關閉1路繼電器);如實測溫度低于設定溫度的下限,轉到繼電器開啟處理程序,檢測每一路繼電器的開、關狀態,按照第1路、第2路、第3路的順序開啟繼電器(每執行1次開啟1路繼電器)。在之后的系統工作中始終循環測溫~溫度值比較~開啟或者關閉繼電器這樣的流程,以達到對加熱區域溫度恒溫控制的目的。
評論