摘 要:在自動化辦公等領(lǐng)域,有時會要求某些電器的開關(guān)要受到計算機上某程序的控制。當(dāng)該程序運行時,電器打開;程序結(jié)束時,電器關(guān)閉。本文介紹一款根據(jù)以上需要設(shè)計的交流電源控制系統(tǒng)。
關(guān)鍵詞:軟件交流電源
中圖分類號:TM5文獻標識碼:A文章編號:1674-098X(2011)01(a)-0041-01
該系統(tǒng)分為兩部分:硬件部分包括核心處理器件單片機、與計算機連接的通訊接口、控制交流電源通斷的繼電器等,軟件部分包括單片機內(nèi)部程序和計算機上的監(jiān)控程序。
硬件部分電路原理:交流220V電源接入P1口的1、2腳,一路送給繼電器,另一路經(jīng)電源變壓器及整流濾波后,由7805穩(wěn)壓輸出5V的工作電壓。電路的核心部分為單片機STC12C2052,通過MAX232負責(zé)與計算機監(jiān)控軟件進行通訊,并控制繼電器的通斷。由于STC單片機程序的寫入可直接通過串口,因此程序的燒寫和修改非常方便。DS1作為單片機工作狀態(tài)的顯示,當(dāng)整個電路正常工作時,LED慢閃爍,在有串口數(shù)據(jù)交換時塊閃爍,如果常亮或常滅則表示電路出現(xiàn)故障。
元件的選擇上,除了D形接口、P1接口、變壓器、繼電器、電解電容、晶振和7805外,其他元件盡量使用貼片元件,R102的取值可根據(jù)使用的LED電流在50~100K之間選取,C101濾波電容在1000uF以上即可滿足需要。
硬件電路如圖1。
MCU的軟件部分需要實現(xiàn)以下功能:接收計算機端監(jiān)控軟件的命令實現(xiàn)繼電器的通斷;定時查詢計算機端監(jiān)控軟件的狀態(tài),一旦出現(xiàn)死機等故障則斷開繼電器;根據(jù)是否有通訊數(shù)據(jù)控制DS1的閃爍速度。整個程序比較簡單,編譯后再1.5K左右,下面只就幾個關(guān)鍵的部分做一下說明:在硬件通電初始化的這段時間內(nèi),要保證P3.7口為低電平,否則會引起電器的快速打開和關(guān)閉,這對于有些電器是不允許的。每隔一段時間,如果沒有監(jiān)控軟件發(fā)來的命令,則要查詢一下監(jiān)控軟件的狀態(tài),通過232接口發(fā)送給計算機一個查詢命令,如果監(jiān)控軟件沒有回應(yīng),則說明計算機端狀態(tài)異常,這時要關(guān)閉繼電器。DS1平時依賴定時器0每秒閃爍一次,當(dāng)有串口數(shù)據(jù)時,設(shè)置以一個標志位,將定時器0的定時時間變短,提高DS1的閃爍頻率,一定的時間后,清除標志位,恢復(fù)定時器0的定時時間。
計算機端的監(jiān)控軟件需要實現(xiàn)兩個功能,一是要監(jiān)控特定進程是否存在,二是與主機進行通信,在特定進程啟動后,通知硬件電路接通電源,特定進程結(jié)束后,關(guān)閉電源。程序運行后最小化在任務(wù)欄,雙擊后可調(diào)節(jié)參數(shù),為保障程序不被非法關(guān)閉,設(shè)置了密碼,只有當(dāng)密碼正確時關(guān)閉按鈕才能點擊。
程序界面如圖2、圖3。
該系統(tǒng)經(jīng)測試和使用,安全可靠,成品的照片如圖4。