《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > CAN總線在酒店客房智能化系統(tǒng)中的應(yīng)用
CAN總線在酒店客房智能化系統(tǒng)中的應(yīng)用
來源:微型機(jī)與應(yīng)用2013年第21期
牛躍聽,薛明晰,高 飛
(總裝軍械技術(shù)研究所,河北 石家莊 050000)
摘要: 設(shè)計、研發(fā)了一套基于CAN總線的酒店客房智能化系統(tǒng),介紹了該系統(tǒng)實現(xiàn)的功能、網(wǎng)絡(luò)架構(gòu)、硬件和軟件設(shè)計方案,并對其硬件成本進(jìn)行可行性分析,研發(fā)的客戶終端在實際應(yīng)用中取得了良好的效果。
Abstract:
Key words :

摘  要: 設(shè)計、研發(fā)了一套基于CAN總線酒店客房智能化系統(tǒng),介紹了該系統(tǒng)實現(xiàn)的功能、網(wǎng)絡(luò)架構(gòu)、硬件和軟件設(shè)計方案,并對其硬件成本進(jìn)行可行性分析,研發(fā)的客戶終端在實際應(yīng)用中取得了良好的效果。
關(guān)鍵詞: CAN總線;酒店客房;智能化系統(tǒng)

 隨著社會的進(jìn)步和人們生活品質(zhì)的提高,酒店客房以及家居逐步實現(xiàn)智能化控制。房間的燈光控制(諸如臺燈、地?zé)?、廊燈、夜燈、頂燈、吧燈)、家電控制(諸如空調(diào)、電視、排風(fēng)扇)及服務(wù)控制(諸如呼叫、請勿打擾、清理衛(wèi)生)等都實現(xiàn)了在客人的床頭位置自動控制,也可以通過遙控器控制,并實時把房間里面的狀態(tài)通過總線上傳到酒店的服務(wù)臺。如果酒店或家庭配有藝術(shù)化色調(diào)的燈具,就可以達(dá)到更人性化的燈光效果,例如:讀書時一鍵選擇“閱讀燈光背景模式”;用餐時一鍵選擇“餐廳燈光背景模式”;睡覺前半小時一鍵選擇“暖色調(diào)燈光背景模式”等。
 酒店的服務(wù)臺也可以在計算機(jī)上面的“酒店客房管理系統(tǒng)軟件”上實時掌握客房內(nèi)狀態(tài),操作控制客房內(nèi)的家電、燈光、應(yīng)答客人服務(wù)。如果計算機(jī)連接互聯(lián)網(wǎng),進(jìn)而還可以實現(xiàn)遠(yuǎn)程控制,實現(xiàn)智能家居。
 相對于485總線,CAN總線以其具有“成本低廉、數(shù)據(jù)傳輸距離遠(yuǎn)(最遠(yuǎn)長達(dá)10 km)、數(shù)據(jù)傳輸速率高(最高達(dá)1 Mb/s)、無破壞性的基于優(yōu)先權(quán)的逐位仲裁、借助驗收濾波器的多地址幀傳遞、遠(yuǎn)程數(shù)據(jù)請求、可靠的錯誤檢測和出錯處理功能、發(fā)送的信息遭到破壞后自動重發(fā)、暫時錯誤和永久性故障節(jié)點的判別以及故障節(jié)點的自動脫離、脫離總線的節(jié)點不影響總線的正常工作”等優(yōu)點,將逐步取代基于485總線構(gòu)建的酒店客房智能化管理系統(tǒng)。
1 CAN總線酒店客房智能化系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)分析
 圖1是酒店客房智能化系統(tǒng)網(wǎng)絡(luò)連接結(jié)構(gòu)示意圖,系統(tǒng)主要包括酒店服務(wù)臺、CAN轉(zhuǎn)以太網(wǎng)、客房終端。
客房終端把房間內(nèi)的各種燈具、家電、服務(wù)需求按鍵綜合到一塊控制板(客戶終端),各種燈具、家電、服務(wù)需求的控制信息通過CAN總線發(fā)送至CAN轉(zhuǎn)以太網(wǎng)轉(zhuǎn)換器CANET-200,實現(xiàn)開關(guān)、按鈕、傳感器、照明設(shè)備、其他執(zhí)行器和多控制系統(tǒng)之間的數(shù)據(jù)交換,以及各操作單元之間的協(xié)作,并對各單元不斷變化的狀態(tài)實時控制。

 如果酒店一個樓層內(nèi)房間較多(例如多于80個,小于110個),每一個樓層內(nèi)的所有房間通過CAN總線連接組網(wǎng),然后連接一臺CAN轉(zhuǎn)以太網(wǎng)轉(zhuǎn)換器。如果一個樓層內(nèi)房間較少,可以相鄰樓層內(nèi)的房間通過CAN總線組網(wǎng),再連接到CAN轉(zhuǎn)以太網(wǎng)轉(zhuǎn)換器。但是房間總數(shù)不要超過110個,因為一條CAN總線上最多接110個節(jié)點。
 不同樓層之間通過以太網(wǎng)和酒店服務(wù)臺的計算機(jī)連接組網(wǎng),服務(wù)臺處的計算機(jī)是可以直接控制客房終端,以及實時讀取客房終端狀態(tài)的前臺設(shè)備。
 CAN總線在較低的通信波特率下,例如5 kb/s,通信距離可以達(dá)到10 km。圖1中可以用CAN中繼器代替CAN轉(zhuǎn)以太網(wǎng)轉(zhuǎn)換器,以實現(xiàn)低成本組網(wǎng)連接。之所以選擇使用CAN轉(zhuǎn)以太網(wǎng)轉(zhuǎn)換器,是考慮到通過網(wǎng)絡(luò)遠(yuǎn)程控制客房終端,或者將來適用于網(wǎng)絡(luò)控制家庭用戶內(nèi)的設(shè)備,實現(xiàn)遠(yuǎn)程智能化家居控制。
2 酒店智能化系統(tǒng)通信協(xié)議及CAN地址分配
 Basiccan和Pelican都是CAN總線通信協(xié)議,CAN控制器SJA1000支持兩種協(xié)議的通信。Basiccan具有11位標(biāo)識符,占有2 B,支持標(biāo)準(zhǔn)幀格式;Pelican具有29位標(biāo)識符,占有4 B,支持標(biāo)準(zhǔn)幀和擴(kuò)展幀。
考慮到Pelican通信協(xié)議在組網(wǎng)的靈活方便和可擴(kuò)充性方面的優(yōu)勢,酒店客房智能化系統(tǒng)客戶終端的CAN總線通信協(xié)議選用Pelican。但是Pelican通信協(xié)議也有其弊端:其標(biāo)識符相對于標(biāo)準(zhǔn)幀格式下多占用兩個字節(jié),在通信時間上相對較長。酒店客房智能化系統(tǒng)客戶終端的CAN總線通信波特率為400 b/s。多占用的兩個字節(jié),16 bit,通信占用的時間僅有16 bit/(400 b/s*1 024 bit/K)=39 μs。因此,這對通信速率的影響微不足道。
 CAN總線酒店智能化系統(tǒng)地址分配表如表1所示。CAN地址分配在寄存器方面涉及到ACR和AMR;在地址識別方面涉及到Pelican模式下29位標(biāo)識符的分配使用問題。使用ID28~ID21高8位作為樓層ID識別,共可以識別256個樓層;使用ID20~ID0作為樓層內(nèi)的客房終端ID識別;CAN轉(zhuǎn)以太網(wǎng)轉(zhuǎn)換器CANET-200也可以設(shè)置不同的TCP/IP地址,用于一臺CAN轉(zhuǎn)以太網(wǎng)轉(zhuǎn)換器連接的多個客戶終端群的地址識別。分層式的CAN地址配置,以及CAN轉(zhuǎn)以太網(wǎng)轉(zhuǎn)換器的TCP/IP地址,可以實現(xiàn)故障終端的快速定位,方便售后的維護(hù)使用。
3 客戶終端硬件電路設(shè)計
3.1 客戶終端硬件電路

 酒店客房智能化系統(tǒng)客戶終端采用STC89C58單片機(jī)作為節(jié)點的微處理器,主要涉及到6大部分硬件電路:多控制按鍵、多繼電器驅(qū)動、CAN總線傳輸、燈具調(diào)光、多電源電路、ADC采集設(shè)計??蛻舳说挠布?gòu)成示意圖如圖2所示。

 多按鍵中斷設(shè)計采用兩片74LS48和一片74HC08搭建編碼電路,實現(xiàn)16路按鍵(SW0~SW15)輸入,4位BCD編碼(74HC08_A0~74HC08_A3)輸出和一個中斷(74HC08_INT)輸出,在中斷程序中識別具體按鍵狀態(tài)。
 多繼電器驅(qū)動電路設(shè)計通過串聯(lián)3片74HC595實現(xiàn)24路輸出,其中的16路輸出通過驅(qū)動芯片UN2003驅(qū)動16個繼電器;8路輸出用于控制服務(wù)狀態(tài)指示燈。
 CAN總線傳輸電路設(shè)計中采用PHILIPS公司的“獨立CAN總線通信控制器SJA1000”芯片、CAN總線收發(fā)器選用TJA1040芯片;為了增加抗干擾特性,采用6N137高速光耦及DC-DC隔離模塊構(gòu)成光電隔離電路。
客戶終端需要3種電源:直流5 V、直流9 V、CAN電路隔離直流5 V。為此,選用市電交流220 V輸入,兩路交流輸出8 V、9 V的電源模塊。8 V交流輸出經(jīng)過整流、濾波、穩(wěn)壓后,調(diào)理輸出5 V直流電源,用于單片機(jī)等芯片的供電;經(jīng)過DC-DC隔離模塊B0505_25W后,輸出的隔離5 V電源,用于CAN總線部分電路的供電;9 V交流輸出經(jīng)過調(diào)理后,用于驅(qū)動控制16路繼電器。
3.2 客戶終端硬件成本分析
 項目的開發(fā)一般分為需求分析、解決方案、項目的實現(xiàn)、項目的總結(jié)和改進(jìn)。其中在解決方案階段中的“開發(fā)成本分析”是影響企業(yè)利潤的關(guān)鍵。
 16路按鍵、16路繼電器、CAN總線芯片SJA1000數(shù)據(jù)/地址和控制總線占用13個I/O,另外還有主副開關(guān)、ADC0832芯片等占用多個I/O。如果選用引腳I/O豐富的MCU,諸如LPC2100、LPC2292等,則可以使硬件設(shè)計變得簡單。但是考慮到芯片的價格,以及與之對應(yīng)的利潤、售后換件維修成本因素等,決定選用STC89C58單片機(jī),其價格只有6~8元人民幣。
 STC89C58單片機(jī)只有40個引腳,怎樣解決I/O不夠用的問題呢?
 16路按鍵設(shè)計,采用74LS148和74HC08搭建“16轉(zhuǎn)4”帶有中斷的按鍵設(shè)計,配合中斷只需讀出4個I/O的編碼,即可識別出按鍵狀態(tài);
 16路繼電器和LED指示燈設(shè)計,采用8位串行輸入-移位輸出寄存器74HC595和驅(qū)動芯片UN2003設(shè)計,只需占用3個I/O即可實現(xiàn)要求的控制功能。選用74HC595的弊端是串行驅(qū)動繼電器速度相對較慢,但是足以滿足酒店客房智能化系統(tǒng)的需求。
STC89C58單片機(jī)的其他I/O資源供芯片SJA1000、主副開關(guān)、ADC0832芯片等使用。
4 CAN總線酒店客房智能化系統(tǒng)軟件設(shè)計

 


 系統(tǒng)的軟件設(shè)計包括“上位機(jī)管理軟件設(shè)計”、“CAN總線通信軟件設(shè)計”、“客戶終端數(shù)據(jù)的采集、控制與信息處理軟件設(shè)計”。CAN總線通信程序流程圖如圖3所示。

 上位機(jī)管理軟件設(shè)計采用C#編寫,主要完成酒店客房內(nèi)的門鎖、燈具、家電、溫度傳感器、服務(wù)需求等信息的管理,以及顯示實時的動態(tài)數(shù)據(jù);向客戶終端下發(fā)控制狀態(tài)字;存儲歷史數(shù)據(jù)和打印報表。
CAN總線通信軟件設(shè)計采用C語言編寫,主要實現(xiàn)CAN總線通信協(xié)議、與上位機(jī)的握手協(xié)議的制定。在CAN總線通信軟件設(shè)計中,SJA1000的初始化程序至關(guān)重要,其流程圖如圖4所示。

 客戶終端數(shù)據(jù)的采集、控制、信息處理軟件用C語言編寫,主要實現(xiàn)3種功能:一是采集客房內(nèi)的門鎖、燈具、家電、溫度傳感器、服務(wù)需求的實時狀態(tài);二是接收上位機(jī)的控制狀態(tài)字,控制客房內(nèi)的燈具、家電的開關(guān)狀態(tài);三是對采集的狀態(tài)信息進(jìn)行編碼信息處理,以及對接收到的控制狀態(tài)字進(jìn)行解碼信息處理。
CAN總線作為一種技術(shù)先進(jìn)、可靠性高、功能完善、成本較低的網(wǎng)絡(luò)通信控制方式,將在智能家居、樓宇自動化領(lǐng)域得到越來越廣泛應(yīng)用。本系統(tǒng)經(jīng)過研發(fā)、試驗、調(diào)試,已經(jīng)在酒店客房智能化系統(tǒng)中得到應(yīng)用,系統(tǒng)工作穩(wěn)定、高效,滿足實用要求。
參考文獻(xiàn)
[1] Philips Semiconductors. CAN Specification Version 2.0, Parts A and B. 1992.
[2] Philips Semiconductors. Data Sheet SJA1000, Stand-alone CAN Controller.
[3] Philips Semiconductors. Preliminary Data Sheet TJA1040, High speed CAN transceiver. 2001 Nov 12.
[4] 宏晶科技.STC89C51RC/RD+系列單片機(jī)器件手冊.2007.
[5] 廣州致遠(yuǎn)電子有限公司,群星系列CAN接口應(yīng)用.2009.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。