文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2015.07.005
中文引用格式: 張玉杰,楊小偉. 基于DALI協(xié)議的多傳感器控制設備設計[J].電子技術應用,2015,41(7):19-22.
英文引用格式: Zhang Yujie,Yang Xiaowei. Multi-sensor control device design based on DALI protocol[J].Application of Electronic Technique,2015,41(7):19-22.
0 引言
隨著人們生活水平的不斷提高,傳統(tǒng)的模擬照明控制系統(tǒng)已不能滿足用戶的需求,靈活的照明控制成為人們追求的目標,而功能豐實、結構簡單、使用方便的DALI照明系統(tǒng)既能夠營造溫馨和諧的家居氛圍[1],又能達到綠色節(jié)能的目的,正被各大照明設備廠商所使用,成為全球統(tǒng)一規(guī)范。但傳統(tǒng)的DALI控制設備產品帶有的傳感器種類單一,特別是國內的DALI產品,通常只采用觸摸面板或觸摸屏控制方式,對燈具的控制缺乏靈活性。在對系統(tǒng)的參數進行配置時,往往采用有線連接方式實現上位機與控制設備的通信,不利于系統(tǒng)安裝后的參數配置工作。
針對以上問題,本文提出了一種多傳感器集中連接在同一控制設備的設計方案。使系統(tǒng)可采用紅外遙控控制方式,對燈具進行亮度調節(jié)、場景喚醒、模式切換等,多功能遙控器的使用使得燈具控制更加靈活;亮度實時監(jiān)控,確保了燈具在恒亮度模式下的恒亮度輸出;人體移動探測的配合使用可實現燈具在節(jié)能模式下的自動控制;WiFi模塊使控制設備參數配置與環(huán)境信息查詢更方便。
1 DALI協(xié)議簡介
數字可尋址照明接口(Digital Addressable Lighting Interface,DALI)總線協(xié)議是一種專門用于照明控制的協(xié)議標準。其具有調光、場景選擇和燈具地址分配等功能。DALI系統(tǒng)中包含控制設備和控制裝置等設備??刂圃O備是指連接到接口上的設備,并用于發(fā)送指令控制其他連接到相同接口上的設備??刂蒲b置用于給燈具提供電源,接收控制指令并直接控制燈具的裝置。DALI系統(tǒng)工作在主從模式:一個接口上最多控制64臺獨立可尋址的控制裝置/控制設備[2]。該通信采用異步半雙工串行通信方式,雙線差分驅動,兩線壓差值在9.5 V~22.5 V之間為高電平,-4.5 V~+4.5 V之間為低電平,總線上的電流不能超過250 mA,每個從設備消耗的電流不超過2 mA。DALI信號采用曼徹斯特編碼方式,波特率為1 200 b/s[3]。
2 DALI系統(tǒng)結構
帶有多傳感器的DALI系統(tǒng)由控制設備和控制裝置組成,系統(tǒng)結構如圖1所示??刂圃O備通過紅外接收器接收遙控器下達的對燈具的控制命令(包括場景喚醒命令、亮度控制命令、模式切換命令等)并轉發(fā)給控制裝置。系統(tǒng)工作模式分為自動模式、恒亮度模式、節(jié)能模式和一般模式。各模式的描述如下:
(1)自動模式:系統(tǒng)根據存儲的參數自動調節(jié)燈具亮度,參數由上位機配置,參數格式為某時間段某燈具的亮度等級。
(2)恒亮度模式:為達到環(huán)境恒亮度目的,根據亮度傳感器采集到當前環(huán)境亮度,調節(jié)燈具亮度使環(huán)境亮度達到預設值,恒亮度模式下移動傳感器不起作用。
(3)節(jié)能模式:環(huán)境亮度小于閾值且探測到人員移動時,點亮燈具至設定的亮度,數分鐘(由上位機配置)后自動關閉燈具,以達到節(jié)能的目的。節(jié)能模式中移動傳感器和亮度傳感器協(xié)同工作。
(4)一般模式:燈具亮度通過紅外遙控器來控制,可以實現亮度調節(jié)和喚醒場景等功能,只有在一般模式下遙控器的亮度調節(jié)和喚醒場景功能才起作用。一般模式下移動傳感器和亮度傳感器不起作用。
控制設備通過WiFi模塊接收上位機下達的參數配置命令,并存儲在控制設備的存儲區(qū),上位機可以配置的參數包括:每天8個時間段的場景值、恒亮度模式下的預設亮度、節(jié)能模式中的亮度閾值、控制裝置地址、燈具最大/最小亮度、控制裝置組地址等。同時控制設備可上傳當前LED燈具的運行狀態(tài)和傳感器測量值,供查詢使用??刂蒲b置通過DALI接口接收控制設備發(fā)送的控制命令,并對控制命令進行解析,實現對LED燈具的控制。本文重點設計控制設備的設計。
3 控制設備硬件設計
控制設備以ARM Cortex-M0為內核的32位嵌入式微控制器SN32F248為核心,其包含64 KB Flash ROM程序內存、8 KB RAM程序內存、3個16位和3個32位通用定時器,共帶有6路捕獲輸入和21路PWM輸出。通信接口包括兩組I2C、一組USART、一組UART等,其低功耗、高性能的優(yōu)點符合本設計要求。
控制設備硬件電路包括WiFi通信電路、DALI接口電路、光照度測量電路、移動探測電路、紅外接收電路、電源電路等,其硬件電路總體框圖如圖2所示。
3.1 WiFi通信電路
考慮到控制設備需要安裝在天花板上,使用有線連接不利于安裝后的系統(tǒng)進行參數配置和查詢,在此通過無線WiFi實現上位機與控制設備之間的通信。用戶可根據要求對控制設備參數進行靈活配置[4]。WiFi通信電路以ESP8266為核心,該芯片是專門針對WiFi協(xié)議的SOC系統(tǒng)解決方案。無線通信電路主要由處理器、Flash芯片組成。ESP8266使用3.3 V電源供電,通過UART接口與微控制器SN32F248進行數據交換。
3.2 DALI接口電路
DALI接口電路主要用于將單片機的TTL電平與DALI協(xié)議規(guī)定的電平相互轉換。DALI 接口電路包括發(fā)射電路和接收電路,其中發(fā)射電路主要由光耦U1、三極管T1和整流器B1組成。U1用于單片機TTL電平和DALI電平的隔離;T1控制總線的導通與關斷;B1的使用可以使兩根總線的接法互換,避免接線錯誤。接收電路主要由光耦U2、恒流源U3和穩(wěn)壓管D4組成,其中恒流源U3用于驅動光耦。電路如圖3所示。
在發(fā)送電路中,單片機輸出高電平,U1截止,T1處于截止狀態(tài),總線為高電平;相反,單片機輸出低電平,U1導通,T1處于飽和導通狀態(tài),DALI總線經T1和整流橋形成回路,DALI總線電壓被拉至低電平。
接收電路中,當DALI總線為高電平時,電流經過整流橋,D4處于反向擊穿狀態(tài),U3的REXT端和VS端電壓被穩(wěn)定在3 V左右,U3工作,光耦U2導通,RX端為高電平。相反,當總線為低電平時,RX端為低電平。DALI數據的接收需要用到外部中斷,SN32F248的每個引腳都可以配置成外部中斷使用,在此,RX端接到微控制器的P0.5引腳。
3.3 光照度測量電路
光照度測量電路以ROHM公司推出的BH1750FVI為核心。BH1750FVI是一種用于兩線式串行總線接口的數字型光強度傳感器集成電路,能將光照度轉化成16位標準I2C數字量輸出信號,測量范圍1~65535lx。通過微控制器P0.6和P0.7兩個I2C總線引腳讀取相應寄存器的值就可以得到環(huán)境亮度。
恒亮度模式下,微控制器通過光照度測量電路獲得當前小區(qū)域內環(huán)境亮度,控制設備通過發(fā)送調亮/調暗指令調節(jié)燈具亮度,直到達到設定亮度為止,達到恒亮度控制的目的。
3.4 移動探測電路
為了在自動模式下通過對是否有人員移動的探測實現對燈具的自動化控制,系統(tǒng)采用被動式熱釋電紅外線傳感器探測人體移動。移動探測電路以BISS0001為核心,其是由運算放大器、狀態(tài)控制器、電壓比較器、定時器等構成的數?;旌蠈S眉呻娐贰.斎梭w進入傳感器報警區(qū)域,人體發(fā)射的紅外線穿過菲涅爾濾鏡照射在傳感器表面,傳感器內的熱釋電元件失去電荷平衡,向外釋放電荷,電荷經過OP1進行第一級放大,再由C3耦合給運算放大器OP2進行第二級放大,輸出到BIS0001的2OUT引腳,如BIS0001檢出有效觸發(fā)信號,則啟動延遲時間定時器,并從RC1端輸出報警信號。通過讀取引腳電平,即可判斷是否有人員流動,達到移動探測的目的。同時可以通過調節(jié)R12與C10的參數來調節(jié)輸出延遲時間。電路如圖4所示。
3.5 紅外遙控接收電路
紅外接收電路采用一體化紅外接收頭,內部電路包括紅外監(jiān)測二極管、放大器、限幅器、帶通濾波器、積分電路、比較器等[5]。紅外遙控信號通過紅外濾光片后作用于紅外光電二極管,將紅外光信號轉變?yōu)殡娦盘?。該電信號經放大器放大后再經過選頻電路選頻。然后經過檢波電路取出調制信號,再經過施密特電路整形后,還原成代碼波形,最后送給微處理器進行信息識別和處理。利用SN32F248 16 bit定時器的捕獲中斷功能實現數據解碼,可使軟件設計更加簡潔[6]。
4 控制設備的軟件設計
控制設備的軟件以μC/OS-II操作系統(tǒng)為平臺。在SN32F248上移植后,通過對系統(tǒng)的初始化、任務的創(chuàng)建與調度來實現功能要求。
4.1 μC/OS-II在SN32F248上的移植
μC/OS-II是一個搶占式實時多任務內核。μC/OS-II在SN32F248上的移植根據處理器的內部資源,將與處理器相關的μC/OS-II的3個文件(os_cpu_c.c、os_cpu_a.asm、os_cpu.h)進行必要的修改。主要是將文件中的匯編指令,改為Thumb的匯編指令,并根據SN32F248特點對文件中寄存器的初值進行改寫[7]。
4.2 軟件任務管理的設計
μC/OS-Ⅱ主要完成任務的創(chuàng)建、任務間的通信和任務調度與切換[8]。根據功能要求,將系統(tǒng)劃分為6個任務,根據任務的實時性和重要性,整個系統(tǒng)中的任務按優(yōu)先級由高到低分為:系統(tǒng)初始化任務、接收上位機指令任務、接收紅外遙控器指令任務、DALI總線通信任務、數據采集任務、數據處理與存儲任務。另外,μC/OS-II本身還帶有統(tǒng)計、任務創(chuàng)建、空閑3個任務[9]。
4.2.1 任務創(chuàng)建
μC/OS-Ⅱ任務的創(chuàng)建通過函數OSTaskCreate()完成。首先,進行任務的優(yōu)先級和堆棧分配,7個任務:start_task、OS_Stat_Init_task、Re_Computer_Cmd_task、Re_IR_Cmd_task、DALI_task、Data_col_task和Data_deal_task的優(yōu)先級從5開始依次增大,每個任務分配128 B大小的堆棧。在主函數中只創(chuàng)建start_task一個任務,隨后在start_task中再創(chuàng)建另外6個任務,在6個任務被創(chuàng)建后start_task任務被掛起。至此,完成所有任務的創(chuàng)建。
4.2.2 任務間的通信與同步
為了協(xié)調任務的運行,采用信號量方式實現任務間的通信與同步[10]。首先,利用函數OSSemCreate()創(chuàng)建信號量,信號量創(chuàng)建后任務可通過調用函數OSSemPend()請求信號量。任務獲得信號量,并在訪問共享資源結束以后,通過OSSemPost()函數釋放信號量[11]。各任務信號量的設置如表1所示。
4.2.3 任務調度與切換
任務調度就是將CPU分配給符合條件的任務使用。μC/OS-II采用基于優(yōu)先級和中斷級任務調度的方法實現任務的調度。在完成中斷服務函數后,根據各任務的優(yōu)先級先由任務調度函數OSSched()實現任務的調度,調用OS_SchedNew()函數進行任務的切換,切換到需要運行的任務并執(zhí)行。
5 結束語
DALI協(xié)議已成為燈光控制系統(tǒng)中的一種重要協(xié)議,采用DALI構成的調光控制系統(tǒng)具有安裝簡單、價格低廉、系統(tǒng)重構靈活、可以級聯等特點,被世界主要的鎮(zhèn)流器廠商采用。本文在研究DALI協(xié)議的基礎上設計了帶有多種傳感器的DALI系統(tǒng),大量試驗結果表明,該系統(tǒng)可靠性強,效率高,操作方便靈活,實時性好,具有良好的前景和較大的現實意義。
參考文獻
[1] 傅煒鋼,仲玉芳,吳明光,等.基于DALI的智能照明系統(tǒng)設計[J].科技通報,2008,24(2):241-245.
[2] DE-DIN.數字可尋址照明接口.第101部分:一般要求.系統(tǒng)(IEC 62386-101-2009).德文版本EN 62386-101-2009[S].2010.
[3] 丁小偉,萬光逵,王磊,等.基于DALI協(xié)議的智能照明系統(tǒng)設計[J].照明工程學報,2009,20(4):69-73.
[4] DOMINGO-PEREZ F,GIL-DE-CASTRO A,FLORESARIAS J M,et al.Low-rate wireless personal area networks applied to street lighting[J].Lighting Research &;Technology,2013,45(1):90-101.
[5] 陳飛鵬.基于STC89C52單片機智能小車設計[J].硅谷,2012(11):43-44.
[6] 王建躍,高守樂,張巖軍,等.紅外遙控器編碼方法[J].工礦自動化,2005(z1):239-241.
[7] 李淼浩.基于μC/OS Ⅱ的遠程數據采集系統(tǒng)[J].重慶工商大學學報(自然科學版),2006,23(4):357-359.
[8] 王靜霞,易定.遠程監(jiān)控器的設計與實現[J].電子工程師,2003,29(7):37-39.
[9] 鄭爭兵.面向有毒氣體監(jiān)測的無線傳感器網絡系統(tǒng)的實現[J].計算機與應用化學,2015,32(5):631-633.
[10] 鄭爭兵.基于nRF24L01和GSM的沼氣工程無線監(jiān)測系統(tǒng)設計[J]. 核電子學與探測技術,2013(8):995-999.
[11] 張春生,徐志軍.基于嵌入式實時操作系統(tǒng)uc/os-Ⅱ的數據采集系統(tǒng)的設計[J].艦船電子對抗,2005,28(2):36-39.
[12] 鄭爭兵.基于nRF401礦井溫濕度無線監(jiān)測系統(tǒng)的設計[J].煤炭技術,2013(1):108-109.