基于單片機(jī)和CAN總線的智能家居控制系統(tǒng)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
為了滿足樓宇對(duì)講系統(tǒng)中各部分的功能要求,本系統(tǒng)使用三根I/O 口線和一個(gè)開鎖鍵。 三根I/O 口線中,一根做輸出,用于控制對(duì)講分機(jī)的振鈴;一根做輸入,用于檢測(cè)對(duì)講分機(jī)的摘機(jī)信號(hào);一根用于控制對(duì)講分機(jī)的模擬音頻信號(hào)通道的控制繼電器,使用戶可以在其接通后通過音頻模擬通道直接進(jìn)行對(duì)話。開鎖鍵設(shè)于鍵盤上,開鎖信號(hào)通過CAN總線傳到門口機(jī),門口機(jī)接到開鎖信號(hào)后控制開啟樓門鎖。 3.3 安防報(bào)警部分 安防報(bào)警部分的功能包括警情信號(hào)的輸入、本地報(bào)警、本地報(bào)警顯示、遠(yuǎn)程報(bào)警。 警情信號(hào)包括各種探測(cè)器,如窗磁開關(guān)、門磁開關(guān)、被動(dòng)紅外傳感器、煤氣探測(cè)器、火災(zāi)探測(cè)器等的信號(hào)。各種警情信號(hào)都接到8255 的PB 口。本地報(bào)警是單片機(jī)通過I/O口控制蜂鳴器進(jìn)行聲音報(bào)警,同時(shí)由八段數(shù)碼管顯示器顯示報(bào)警類別。遠(yuǎn)程報(bào)警包括遠(yuǎn)程電話報(bào)警和通過CAN 總線向集中控制室的管理人員進(jìn)行報(bào)警。 3.4 電話遠(yuǎn)程監(jiān)控部分 實(shí)現(xiàn)遠(yuǎn)程監(jiān)控的方案主要有基于Internet的遠(yuǎn)程控制、基于電力線的遠(yuǎn)程控制和基于電話網(wǎng)絡(luò)的遠(yuǎn)程控制三種。前兩種組網(wǎng)方案較為復(fù)雜,技術(shù)難度大,而且成本較高,對(duì)維護(hù)者技術(shù)水平的要求也較高。而電話網(wǎng)絡(luò)是一種技術(shù)成熟、應(yīng)用較廣、成本低的通信網(wǎng)絡(luò),本設(shè)計(jì)采用電話網(wǎng)絡(luò)實(shí)現(xiàn)遠(yuǎn)程監(jiān)控。當(dāng)家里有警情時(shí),用戶能通過電話實(shí)現(xiàn)遠(yuǎn)程報(bào)警。當(dāng)需要遠(yuǎn)程控制家用電器時(shí),用戶可通過電話將控制信號(hào)送入單片機(jī),單片機(jī)再通過8255 的PA 口輸出控制信號(hào),驅(qū)動(dòng)繼電器對(duì)家用電器進(jìn)行開關(guān)控制。電話遠(yuǎn)程監(jiān)控部分的電路主要包括三部分:信號(hào)檢測(cè)、模擬摘掛機(jī)電路,用HT9170 和HT9200A 實(shí)現(xiàn)的雙音多頻DTMF 信號(hào)收發(fā)電路,用ISD1420 作為錄放音元件的語(yǔ)音錄放電路。 3.5 與CAN 總線連接的節(jié)點(diǎn)部分 本設(shè)計(jì)利用CAN 總線對(duì)等式的通信網(wǎng)絡(luò)實(shí)現(xiàn)智能家居控制系統(tǒng)室內(nèi)各分機(jī)之間,以及分機(jī)與總機(jī)之間信息的互通,具有各節(jié)點(diǎn)地位均等,無主從節(jié)點(diǎn)的特點(diǎn)。 由于主控制器AT89C52 型單片機(jī)本身不帶CAN 總線控制器, 本設(shè)計(jì)采用SJA1000型CAN 總線通信控制器和AT82C250 型總線驅(qū)動(dòng)器來實(shí)現(xiàn)單片機(jī)與CAN 總線之間信息的互通。 3.6 鍵盤顯示部分 鍵盤采用4×4 矩陣鍵盤,共設(shè)16 個(gè)按鍵,其中有十個(gè)數(shù)字鍵,其余的為設(shè)防按鈕、住戶呼叫對(duì)講按鈕、開鎖按鈕、確定按鈕、清除報(bào)警撤防按鈕和家電控制按鈕,分別用于各種控制信號(hào)、呼叫/ 求救信號(hào)、開鎖信號(hào)、撤防/ 布防信號(hào)的輸入。顯示器采用串入并出的74LS164 移位寄存器來驅(qū)動(dòng)一位LED八段數(shù)碼管,進(jìn)行控制參數(shù)或報(bào)警類別的實(shí)時(shí)顯示。 4 智能家居控制系統(tǒng)軟件的設(shè)計(jì)與實(shí)現(xiàn) 為使程序清晰可讀且運(yùn)行速率高,本系統(tǒng)軟件采用模塊化結(jié)構(gòu)設(shè)計(jì),由主程序和相關(guān)子程序(如鍵盤掃描子程序、顯示子程序、語(yǔ)音提示子程序、撥號(hào)報(bào)警子程序、電器控制子程序等)組成。主程序流程如圖2 所示。
圖2 主程序流程圖 該程序主要包括安防報(bào)警、樓宇對(duì)講和電話遠(yuǎn)程控制三個(gè)模塊。 主程序工作過程為:系統(tǒng)上電復(fù)位后進(jìn)行初始化,待初始化完成,系統(tǒng)分別對(duì)警情信號(hào)、樓宇對(duì)講呼叫信號(hào)和電話呼入信號(hào)進(jìn)行檢測(cè),如有信號(hào)輸入,則進(jìn)入對(duì)應(yīng)的處理模塊。在安防報(bào)警模塊中,設(shè)置延時(shí)程序以消除抖動(dòng)和誤報(bào)警,延時(shí)程序主要通過調(diào)用鍵盤掃描子程序?qū)崿F(xiàn)。如果延時(shí)完成后仍有警情,則按順序進(jìn)行本地報(bào)警、通過CAN總線向中央控制室報(bào)警和撥號(hào)電話報(bào)警,從而實(shí)現(xiàn)多點(diǎn)報(bào)警的功能,將損失降到最低。 樓宇對(duì)講模塊中,門口機(jī)的呼叫信號(hào)經(jīng)CAN總線傳到分機(jī),分機(jī)檢測(cè)到此信號(hào)后,接通對(duì)講機(jī)振鈴,然后再判斷是否摘機(jī),如沒有摘機(jī)信號(hào),則延時(shí)再判斷。當(dāng)住戶摘機(jī)后,單片機(jī)輸出信號(hào)控制音頻通信線路的控制繼電器接通,使住戶與呼叫者得以進(jìn)行通話。 在通話期間,單片機(jī)判斷其是否掛機(jī),如掛機(jī)則返回,未掛機(jī)則調(diào)用鍵盤掃描子程序,判斷開鎖鍵是否按下,如按下則通過CAN總線和門口機(jī)進(jìn)行遠(yuǎn)程開鎖。電話遠(yuǎn)程控制程序模塊的工作過程是當(dāng)有電話呼入時(shí),先檢測(cè)是否振鈴4次,再模擬摘機(jī),摘機(jī)后放錄音提示輸入密碼。如密碼不正確,則模擬掛機(jī);如密碼正確,則放錄音提示輸入需控制電器的序號(hào),然后檢測(cè)其返回的控制信號(hào),并調(diào)用電器控制子程序,進(jìn)行家用電器的開關(guān)控制,完成后模擬掛機(jī)。 5 結(jié)束語(yǔ) 本文設(shè)計(jì)的智能家居控制系統(tǒng)充分利用單片機(jī)強(qiáng)大的控制功能和CAN總線靈活方便、可靠性高、通信速率高、價(jià)格低廉、組網(wǎng)容易等的突出特點(diǎn),并結(jié)合現(xiàn)有的公共電話網(wǎng)絡(luò), 對(duì)智能家居中各個(gè)相對(duì)獨(dú)立的系統(tǒng)進(jìn)行集成,實(shí)現(xiàn)樓宇對(duì)講、電話遠(yuǎn)程控制、多點(diǎn)報(bào)警等功能。CAN技術(shù)是一種新的控制網(wǎng)絡(luò)技術(shù), 與現(xiàn)有的成熟的公共電話網(wǎng)絡(luò)相結(jié)合, 必將在智能小區(qū)的應(yīng)用中逐漸顯示出其獨(dú)特的優(yōu)勢(shì)。
摘 要:本文針對(duì)智能家居系統(tǒng)集成度低,各系統(tǒng)間聯(lián)系不大的狀況,介紹了一種采用單片機(jī)為控制核心的,基于CAN 總線的組網(wǎng)技術(shù),并結(jié)合公用電話網(wǎng)絡(luò),設(shè)計(jì)了一種能夠?qū)崿F(xiàn)樓宇對(duì)講、電話遠(yuǎn)程監(jiān)控和多點(diǎn)報(bào)警等功能的智能家居控制系統(tǒng)。
1 引言
智能家居于20 世紀(jì)80 年代興起于日本和歐美,于90 年代末進(jìn)入中國(guó),伴隨著經(jīng)濟(jì)的發(fā)展和人們生活水平的提高逐漸為國(guó)人所了解和接受。目前國(guó)內(nèi)的各種智能化系統(tǒng)和產(chǎn)品較多,但各系統(tǒng)相互獨(dú)立,集成度較低,彼此聯(lián)系不大。比如樓宇對(duì)講系統(tǒng)、安防系統(tǒng)、家用電器自動(dòng)控制系統(tǒng)等,都各有自己的終端,沒有統(tǒng)一的智能控制平臺(tái)。對(duì)用戶而言,這種狀況增加了使用成本和操作的復(fù)雜性;對(duì)施工而言,則導(dǎo)致了重復(fù)布線。本文針對(duì)此種狀況,設(shè)計(jì)一種采用單片機(jī)AT89C52 為控制核心,利用原有的電話網(wǎng)絡(luò),將樓宇對(duì)講、安防報(bào)警和電話遠(yuǎn)程監(jiān)控系統(tǒng)集成起來,形成一個(gè)統(tǒng)一的智能控制平臺(tái),并通過CAN 總線組網(wǎng)與門口機(jī)和管理機(jī)相連,能實(shí)現(xiàn)樓宇對(duì)講、電話遠(yuǎn)程監(jiān)控和報(bào)警等功能的智能家居控制系統(tǒng)。此系統(tǒng)操作簡(jiǎn)單,無需重復(fù)布線,成本有所降低,是一種真正適用于智能家居的系統(tǒng)。
2 智能家居控制系統(tǒng)的主要構(gòu)成及功能
?。?)樓宇對(duì)講系統(tǒng)
樓宇對(duì)講采用小區(qū)聯(lián)網(wǎng)式系統(tǒng),在各住宅單元門口及住戶家中安裝對(duì)講系統(tǒng),以實(shí)現(xiàn)訪客身份驗(yàn)明和與住戶對(duì)講,以及住戶遠(yuǎn)程控制開鎖的功能,從而有效地防止非法人員進(jìn)入住宅樓。
(2)家居安防系統(tǒng)
家居安防系統(tǒng)具有防盜、防火、遠(yuǎn)程監(jiān)控及報(bào)警等功能。
?。?)家用電器自動(dòng)控制系統(tǒng)
家用電器自動(dòng)控制系統(tǒng)的主要功能是控制家用電器、照明等電氣設(shè)備。該系統(tǒng)能夠?qū)崿F(xiàn)本地集中控制家庭內(nèi)部照明或家用電器,也可以在需要時(shí)通過電話遠(yuǎn)程控制家庭內(nèi)部家電設(shè)備,節(jié)約能源。
3 智能家居控制系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn)
智能家居控制系統(tǒng)室內(nèi)分機(jī)系統(tǒng)構(gòu)成,如圖1 所示。該系統(tǒng)主要由單片機(jī)及其I /O 口擴(kuò)展部分、樓宇對(duì)講部分、安防報(bào)警部分、電話遠(yuǎn)程監(jiān)控部分、與CAN總線連接的節(jié)點(diǎn)部分,以及鍵盤、顯示部分組成。
圖1 智能家居控制系統(tǒng)室內(nèi)分機(jī)系統(tǒng)構(gòu)成圖
3.1 單片機(jī)及其I/O 口擴(kuò)展部分
單片機(jī)選用控制功能強(qiáng)大的AT89C52為主控制器,主要用于信號(hào)的采集、數(shù)據(jù)處理、控制信號(hào)的輸出等,是整個(gè)控制系統(tǒng)的核心。由于本系統(tǒng)所需的I/O 口較多,單片機(jī)本身提供的I/O 口不夠,故利用芯片8255對(duì)其I/O 口進(jìn)行擴(kuò)展。其中8255 的PA 口工作于輸出方式,用于對(duì)家用電器進(jìn)行開關(guān)控制;PB 口工作于輸入方式,用于各種報(bào)警探測(cè)器的警情信號(hào)的輸入;PC 口用于擴(kuò)展鍵盤。
3.2 樓宇對(duì)講部分