基于HBS協議手持編址器的設計與開發 作者: 時間:2007-03-09 來源:網絡 加入技術交流群 掃碼加入和技術大咖面對面交流海量資料庫查詢 收藏 摘要:基于HBS協議的智能家居系統基礎上,提出了手持編址器的設計思想、方法,并給出系統的軟硬件實現,最后結合實例,簡要介紹手持編址器的操作。關鍵詞:HBS 智能 手持編址器 1 基于HBS協議的智能家居系統 家庭總線系統HBS(Home Bus System)是由日立、三菱、松下、東芝等公司聯合提出的,由日本電子機械工業協會與電波技術協會共同制定的。根據HBS標準,家庭總線由一條同軸電纜和四對雙絞線構成,前者用于傳輸圖像等視頻信號,后者用于傳輸語音、數據和控制信號[l]。家用電器經HBS互聯,組成一個完整的家庭網絡。本項目以HBS的子集為目標,用一對雙絞線實現分布式智能照明安防系統。 基于HBS的智能家居系統如圖1所示。 智能家居系統由四部分組成:主控模塊、傳感器、執行器和輔助模塊。主控模塊是智能家居系統的核心,每套設備必備,負責總線供電、信號仲裁和組態信息的存儲。手持編址器屬于主控模塊。通過手持編址器,用戶可以靈活地給傳感器、執行器設置地址;通過地址綁定,靈活組合出各種控制功能而無需變更系統布線。傳感器是系統的輸入通道,控制指令由傳感器發出,紅外/無線接收器提供系統的遙控接口。執行器是系統的輸出通道, 它根據控制指令驅動具體的對象。輔助模塊擴展系統的功能(電話模塊實現異地遙控功能;耦合器將系統的通信距離從600m擴到1200m)。 系統的主要功能:一對一控制(一個傳感器控制一個執行器)、一對多控制、多對一控制、場景控制(一處傳感器控制多處執行器到某一狀態)、狀態顯示、紅外遙控、安全監控(防盜、防煤氣泄漏、防火、報警,通過電話遠程監控)。 系統主要技術指標:網絡節點間通信距離最大600m、通信速度4800bps、網絡通信節點數最多256點、網絡節點可編程可記錄、具有軟件校驗錯誤功能、供電電壓24V直流[2]。圖12 手持編址器設計方案 手持編址器采用矩陣掃描電路產生鍵位碼,經識別后,進行編碼轉化,產生一組脈寬串行指令碼,經三極管放大后驅動紅外發射管發射出不同脈沖編碼的紅外線。 由于手持編址器不需要像遙控器那樣進行遠距離操作,所以信號沒有采用載波的方式進行通信,而是直接把發射和接收引腳接到了AT89C52的串口上,經三極管放大后,直接輸出。這樣可以簡化系統的軟/硬件設計,降低成本[3]。 2.1 硬件設計 手持編址器的硬件電路如圖2所示。 從圖2可以看出,手持編址器的硬件結構主要由電源調理模塊、MCU、人機界面、紅外收發模塊以及蜂鳴器模塊構成。下面主要介紹一下MCU和電源調理模塊。 2.1.1 MCU介紹 從性價比、開發環境等多方面考慮,系統以ATMEL公司的AT89C52作為主控模塊的MCU。AT89C52是當今最流行的MCU之一,與MCS-51系列微處理器兼容,是采用CMOS工藝制造的一款低功耗、高性能的8位微處理器,片內有8K字節可編程的Flash ROM(可擦寫1000次),256字節的RAM。AT89C52的特性如下: (1)一個8位算術邏輯單元; (2)32個可編程I/O口; (3)3個16位定時/計數器; (4)可編程的全雙工串行通信; (5)8個中斷源,2個中斷優先級; (6)可選高達24MHz的晶振; (7)IDLE和POWER DOWN兩種工作方式降低功耗; 2.1.2 電源調理模塊 因為編址器是手持設備,所以其4.5V供電電源由3節1.5V的干電池提供。手持編址器中采用的液晶是3.3V供電,所以需要將DC 4.5V變換成DC 3.3V。如圖2,當SHDN=1時,4.1V穩壓管起穩壓作用,Q1的基極(B)有4.1v的電壓,并且此時Q1處于飽和導通狀態,由于Q1的基極和發射極之間(B-E)有0.7V壓降,由4.1-0.7=3.4V,Q1的發射極就產生了大約3.3V的電壓。當SHDN=0時,該DC-DC變換電路停止工作。通過改變電阻R1的值,可以改變該轉換電路的供電電流。電路中電解電容C3、C4起儲能和低頻濾波作用,瓷片電容C5起高頻濾波作用。圖22.2 軟件設計 手持編址器的軟件設計采取事務處理方式。為了便于設計和理解,進行如下處理: (1)將事務的處理抽象為一個有限狀態機; (2)通信解析中得到的數據和用戶的操作抽象為消息; (3)將事務的所有活動抽象為一系列的狀態; (4)把事務在各種狀態之間的轉化抽象為一種規則。 所謂狀態機模型是一個描述狀態變遷的方法,它總是將一種狀態向另一種狀態的變遷視為由輸入消息激勵所產生的結果。對于HBS家庭網絡來說,各設備通信的建立過程就是一個典型的有限狀態數之間的狀態變遷過程。 這樣每當消息促使事務需要做出某種操作時,有限狀態機的當前狀態也隨之改變。這種改變是根據預先制定好的規則來實現的。最終設計出的有限狀態機如圖3所示。從圖3中可以看出,編址器所描述的事務有5個狀態,8種消息,13條轉換規則。其中轉換規則1~4負責具體的事務處理,5~8負責出錯處理,9~13主要是進入消息等待。 這個模塊運行機制如下: (1)初始化,接收消息并創建消息隊列; (2)從隊列中取出需要處理的消息; (3)根據狀態機的當前狀態和消息的類型,找到相應規則; (4)根據規則,轉入相應的處理程序,同時更新狀態機的狀態; (5)從消息隊列中獲取新的消息,重復上述過程。3 應用實例 現以二居室的家居為例(參見圖1),介紹手持編址器的操作。當用戶離開家居時,要關閉除保安系統外的所有電器,這是個煩瑣且容易遺忘的事情,利用手持編址器的場景功能,實現地址綁定,可以方便地實現上述功能。現以用戶要關閉圖1中大廳的開關執行器1、開關執行器2的所有電器,打開臥室1的保安接入為例,介紹如下: (1)首先設定執行器地址,不妨設開關執行器1、開關執行器2、保安接入的地址分別為001、002、003。 (2)其次設定對應傳感器的地址:在手持編址器的設置功能菜單的單獨子菜單下,分別設定大廳中開關1的地址為001(對應開關執行器1)、開關2的地址為002(對應開關執行器2)、開關3的地址為003(對應保安接入)。 (3)最后在場景菜單下,新建場景1;并分別設定開關傳感器1、2、3的狀態。 在設置完成后,當用戶要離開家居時,只要啟動場景1,那么家居中開關執行器1、2的所有電器將關閉,保安接入將開啟。當用戶回到家居時,關閉場景1,那么系統會回到用戶離開家居前的狀態。 linux操作系統文章專題:linux操作系統詳解(linux不再難懂)
評論