桂一元
1.硬件電路設計
(1)電源電路的設計。本系統設計了一個+5V的直流電源給單片機供電,該電路將市電220V交流電降壓為10V交流電,再經過二極管橋式整流、電容濾波、LM7805穩壓,最后輸出一個穩定的+5V直流電,輸出的電壓偏差不超過0.1V,整體性能達到預期要求。
(2)主控制器的電路設計。主控制器選用單片機(AT89S51),搭配鍵盤、數碼顯示、復位、晶振及通訊外圍接口。鍵盤主要是用來輸入信息,這些信息包括各種啟停信號、分控制器地址號、復位等。
(3)分控制器電路設計。分控制器實現的控制和數據處理任務相對簡單,采用單片機(AT89S2051),搭配晶振、實時時鐘芯片、可控硅控制電路、零點檢測電路、看門狗電路、通信接口電路。
照明亮度控制系統是將前面放大的硅光電池信號強度與設定的亮度信號進行比較,根據差值情況調整輸出電壓來控制照明燈的亮度。
(4)RS485通信電路的設計。根據任務,本系統設計由一個主機帶多個從機的通信系統。具體選用專用的485低功耗通信芯片(MAX485),用一對雙絞線將各個接口連接起來實現。將該芯片的RO和DI端連接到單片機的RXD和TXD,利用單片機控制芯片的和DE端,接收數據時令=0,發送數據時令DE=1。另外,采用光電耦合器提高系統的抗煩擾能力。
2.系統軟件設計
(1)程序總體結構設計。整個程序設計要完成照明啟停、照明亮度調節、人機交互、通信控制這四大部分的控制任務。
(2)照明啟停控制程序設計。全部啟停控制程序步驟:①數據初始化。②調用鍵盤掃描子程序,并判別是否有啟停控制信號輸入;如果沒有則返回上一步,如果有則進入下一步。③讀取輸入信號。④主控制器發送全部啟停信號到各個分控制器。⑤各分控制器反饋給主控制器地址信號。⑥判別主、分地址是否一致。如果一致,主控制器給分控制器發送確定信號后返回;如果不一致,顯示錯誤信息后返回。
單獨啟停控制程序步驟:①數據初始化。②主控制器發送給某分控制器地址信號。③分控制器系統判別地址是否與主控制器發送的一致。如果不一致,關閉該分控制器系統;如果一致,向主機匯報地址接收主機一致信息。④分控制器執行主控制器發送的啟停信號。⑤執行完成后返回。
(3)人機交互程序設計。鍵盤掃描程序設計:鍵盤掃描程序主要完成前面提到的啟停控制、分控制器控制、確認等任務,由于動作的特殊性,需要在程序中考慮防抖,引入延時程序,在延時一段時間后再次鍵盤掃描,如果3次檢測都有信號即可說明該按鍵確實動作。
顯示程序設計:本顯示系統主要是完成分控制器地址的顯示,具體的程序流程如下。①數據初始化。②查表讀取段碼。③將上面的碼送到驅動顯示。④送信息給譯碼器選通低電位數碼管。⑤判別顯示是否完整。如果是則結束返回;如果不是則將顯示的緩沖區左移并返回到第二步,繼續往下執行。
(4)RS485通信程序設計。主控制器通信程序設計:
主控制器通信部分主要是完成向分控制器下達指令、接收分控制器反饋的各種信息。具體程序設計流程包括:第一步,初始化。第二步,主控制器向各個分控制發送地址幀。第三步,判別是否為廣播模式。如果不是,將等待從機信息反饋;如果是,執行下一步。第四步,主控制器向分控制器發送數據。第五步,等待分控制器應答,發送成果結束并返回。
分控制器通信程序設計:第一步,數據初始化。第二步,判別主控制器發送的地址是否與本分控制器地址一致。如果一致,反饋給主控制器一致信息,然后到下一步;如果不一致,結束。第三步,執行主控制器發送的控制任務。第四步,反饋給主控制器執行成功信號。第五步,結束返回。
參考文獻:
[1]盛嘯濤,姜延昭.樓宇自動化[M].西安:西安電子科技大學出版社,2004.
[2]陳元麗.現代建筑電氣設計實用指南[M].北京:中國水利水電出版社,2000.