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