摘 要:針對智能照明控制系統(tǒng)中照度檢測的問題,提出一種基于ISL29004的多路照度檢測方案。介紹一種采用該方案的智能照明控制設備,該設備以單片機P87LPC768為控制核心,采用具有I2C總線接口的ISL29004進行照度檢測,使用準雙向I2C總線緩沖器P82B96對I2C總線進行驅動擴展,在簡化系統(tǒng)設計的同時實現(xiàn)了多路照度檢測以及自動照明控制。
關鍵詞:照明控制;ISL29004;I2C總線;P82B96
中圖分類號:TP212.9;TN492 文獻標識碼:B 文章編號:1004 373X(2009)02 189 03
Application of Light Sensor ISL29004 in Intelligent Lighting Control System
BU Dengli
(Information Science and Medium College,Jinggangshan University,Ji′an,343009,China)
Abstract:Based on the question of illuminance detection in intelligent lighting controller,the paper introduces a multi-channels illuminance detection scheme based on ISL29004,and a kind of intelligent lighting controller which uses above scheme.The controller is based on P87LPC768,adopts programmable light-to-digital output sensor ISL29004 with I2C interface to detect illuminance,uses dual bidirectional bus buffer P82B96 to extend I2C bus,achieves multi-channel illuminance detection and automatically adjustable lighting control.
Keywords:lighting control;ISL29004;I2C bus;P82B96
隨著人們生活水平的提高,人們對照明控制的要求越來越高,如營造舒適的照明環(huán)境、節(jié)約電能、提高光源壽命等。為了提高工作環(huán)境的舒適性,照明控制系統(tǒng)采取光傳感器,根據(jù)當前環(huán)境的照度自動控制照明設備,從而使照度控制在舒適的范圍內(nèi)。
在傳統(tǒng)的照明控制系統(tǒng)中,往往采用普通光傳感器結合A/D轉換器(ADC)的方案。一方面由于光傳感器檢測到的光信號既包含可見光成分又有紅外光成分,在設計中要考慮濾除紅外光對光傳感器檢測結果的影響,并且由于采用了分離的器件,因此導致設計比較復雜;另一方面,對照度的檢測范圍比較局限,不利于實現(xiàn)多路照度檢測從而對同一場所內(nèi)多個照明設備實施分區(qū)域控制。在此提出了基于ISL29004的多路照度檢測方案,以簡化系統(tǒng)設計,并采
用單片機P87LPC768作為智能照明控制設備的控制核心,以實現(xiàn)對多個照明設備進行分區(qū)域控制,在節(jié)能的同時營造更舒適的照明環(huán)境。
1 I2C器件ISL29004
1.1 I2C總線概述
I2C 總線是Philips公司推出的芯片間串行傳輸總線,以二線傳輸,其總線上所有的節(jié)點,如主器件(單片機、微處理器) 、外圍器件、接口模塊等都連接到同名端的SDA和SCL上,實現(xiàn)了完善的半雙工同步數(shù)據(jù)傳送,可以方便地構成多機系統(tǒng)和外圍器件擴展系統(tǒng)。I2C總線采用器件地址的硬件設置方法,通過軟件尋址完全避免了器件的片選線尋址方法,從而使硬件系統(tǒng)具有簡單靈活的擴展方法。
I2C 總線傳輸數(shù)據(jù)必須遵循規(guī)定的數(shù)據(jù)傳輸格式,數(shù)據(jù)傳輸由主控器控制,主控器啟動數(shù)據(jù)的傳輸、發(fā)送起始信號、尋址信息以及傳送結束時發(fā)出停止信號,被控器進行必要的應答。
1.2 光傳感器ISL29004
ISL29004是新一代光-數(shù)字傳感器,集成了電流放大器、用于消除人為光閃爍的50 Hz/60 Hz抑制濾波器和16位adc,能將光照度轉化成簡便易用的16位、I2C標準數(shù)字輸出信號,為用戶提供了單芯片解決方案。
ISL29004內(nèi)部有2個光敏二極管,二極管1檢測環(huán)境中可見光和紅外光總的照度,二極管2 只檢測環(huán)境中紅外光照度,兩個二極管的光譜響應是互不依賴的。用戶可以通過編程控制adc的工作模式,既可以僅輸出光敏二極管1或2的檢測結果,在模式2下還可以輸出經(jīng)內(nèi)部減函數(shù)計算的濾除紅外光影響的結果。
ISL29004內(nèi)有8個8位的寄存器,1個命令寄存器,1個控制寄存器,2個中斷閾值寄存器,4個只讀數(shù)據(jù)寄存器。命令寄存器可以設定ADC的工作模式以及分辨率;控制寄存器可以調(diào)整增益從而選擇照度檢測范圍;只讀數(shù)據(jù)寄存器LSB_Sensor和MSB_Sensor可以讀取ADC最近的數(shù)字輸出;只讀數(shù)據(jù)寄存器LSB_timer和MSB_timer可以讀取ADC最近一次積分的周期數(shù)。8個寄存器的地址依次為00H~07H。
ISL29004有2個I2C接口地址選擇引腳A0,A1,可以在1條I2C總線線路上安裝4個ISL29004,并且可以和其他I2C外圍節(jié)點共存。
2 硬件結構以及工作原理
2.1 總體結構
系統(tǒng)構成框圖如圖1所示。單片機P87LPC768作為I2C總線的主控器,ISL29004作為被控器,4個ISL29004的設備地址依次為:44H~47H,通過ISL29004的地址引腳A1,A0進行設置。在系統(tǒng)中,使用了準雙向I2C總線緩沖器P82B96對I2C總線進行驅動擴展,實現(xiàn)I2C總線的遠距離傳輸,拓展了照度采集距離;P87LPC768的I2C總線經(jīng)P82B96緩沖器擴展后通過雙絞線和遠端的P82B96以及ISL29004連接。
圖1 系統(tǒng)構成框圖
與4組照度采集電路相對應,調(diào)光控制電路也有4組,與P87LPC768的4個PWM引腳相連。
2.2 調(diào)光控制電路
調(diào)光控制電路如圖2所示,用光電耦合器MOC3041作為晶閘管的驅動器,同時能實現(xiàn)強、弱電的隔離。MOC3041內(nèi)部有過零檢測電路,當P0.0為低電平時,輸出端6引腳、4 引腳之間的電壓稍過零時,MOC3041內(nèi)部雙向晶閘管導通,觸發(fā)外部晶閘管T1導通。當P0.0為高電平時,MOC3041內(nèi)部雙向晶閘管關斷,從而外部晶閘管T1也關斷。
通過P87LPC768的PWM輸出控制MOC3041的導通與關斷時間比值來調(diào)節(jié)照明設備的功率,從而實現(xiàn)照明設備的打開、關閉以及亮度調(diào)節(jié)。
2.3 工作原理
在程序中通過定時中斷讀取4路ISL29004的ADC輸出,并轉換為照度值;ISL29004內(nèi)部的ADC工作在模式2,分辨率為16,照度檢測范圍一般設為0~1 000 Lux即可滿足一般的照明場所的照度檢測要求。假設讀取ISL29004的ADC的輸出為DATA,則可以通過以下的公式轉換為照度值:
E=1 000×100/R璄XT216×DATA
然后根據(jù)計算所得到的照度值進行調(diào)光控制;由于P87LPC768的PWM輸出的占空比是根據(jù)計數(shù)映像寄存器CNSW的值和比較映像寄存器CPSW璶的值確定,PWM輸出保持高電平期間的MCU時鐘脈沖數(shù)為(CNSW-CPSW璶+1)。由此可見,CPSW璶越大,則高電平維持的時間越短,則調(diào)光控制電路的T1導通時間也就越長,照明設備的亮度就越高;反之照明設備的亮度就越低。
圖2 調(diào)光控制電路圖
在程序中通過比較得到的照度值E和標準照度值E璖來調(diào)整CPSW的值,實現(xiàn)自動調(diào)光控制。CPSW的初值設為0,并在0~CNSW之間分為若干檔,比如10檔,得到每次CPSW的調(diào)整值ΔP=(CNSW-1)/10,以實現(xiàn)較為平滑的調(diào)整。計算出照度值后和標準照度值E璖比較,如果小于標準照度值E璖,則在當前CPSW的基礎之上增加ΔP,直到達到CPSW的最大值(CNSW-1);如果大于標準照度值E璖,則在當前CPSW值的基礎上減少ΔP,直到CPSW的值為0,照明設備關閉。同時為了避免較小的照度變化導致自動調(diào)光,可以根據(jù)標準照度值確定一個調(diào)光允許的照度差值ΔE璖,如果當前得到的照度值和上次所得到的照度值差的絕對值ΔE不小于ΔE璖,才進行調(diào)光控制。
3 軟件設計
主要包括主程序、定時器0中斷服務子程序以及I2C總線數(shù)據(jù)傳輸程序模塊。主程序完成P87LPC768以及ISL29004的初始化,照度采集以及調(diào)光控制在定時器0中斷服務子程中完成。I2C總線數(shù)據(jù)傳輸程序模塊詳見
參考文獻[1],這里給出定時器0中斷服務子程序的流程圖,如圖3所示。
圖3 定時器0中斷服務子程序流程圖
圖3中只給出一組ISL29004的照度采集以及調(diào)光控制電路的控制程序,由于系統(tǒng)中有4組,因此在定時器0中斷服務子程序中,應該是按順序依次通過I2C總線讀取4組ISL29004的采集值并通過4個PWM通道進行相應的自動調(diào)光控制。
4 結 語
對智能照明控制系統(tǒng)中照度檢測的問題,提出一種基于ISL29004多路照度采集方案,并給出硬件結構、工作原理以及軟件流程圖。由于ISL29004內(nèi)部集成了ADC,直接輸出數(shù)字量,具有抗干擾能力強和低功耗的特點;并且可以編程靈活配置,又具備比較靈活的I2C總線接口,從而簡化了照明控制設備的設計;使用準雙向I2C總線緩沖器P82B96對I2C總線進行驅動擴展以后,拓展了I2C總線的傳輸距離,實現(xiàn)了照明場所內(nèi)的多路照度檢測,從而可以對多個照明設備實行分區(qū)域控制,并且通過P87LPC768的PWM輸出實現(xiàn)了自動調(diào)光控制,在節(jié)能的同時營造更舒適的照明環(huán)境。
參考文獻
[1]周航慈,周立功.PHILIPS 51LPC系列單片機原理及應用設計[M].北京:北京航空航天大學出版社,2001.
[2]Anon.P82B96 Dual Bidirectional Bus Buffer Product DataSheet Rev.05[EB/OL].http://www.nxp.com/.January27,2006.
[3]何立民.I2C總線應用系統(tǒng)設計[M].北京:北京航空航天大學出版社,1995.
[4]Anon.ISL29004 Data Sheet FN6221.0[EB/OL].http://www.intersil.com/.December 21,2006.
[5]李振峰,李海峽,李濟順.基于LPC2104的智能燈光控制器設計[J].國外電子元器件,2006(10):4-6.
[6]吳瑋,胡必春,張敏明.I2C總線驅動在嵌入式系統(tǒng)中的兩種實現(xiàn). 現(xiàn)代電子技術,2007,31(8):56-58.
[7]董湘敏,張寶樹,郭雷,等.基于I2C總線和RS485協(xié)議的集中通信系統(tǒng)設計.現(xiàn)代電子技術,2006,30(15):124-126.
作者簡介 卜登立 男,1975年出生,河北定州人,副教授,碩士。研究方向為嵌入式系統(tǒng)及應用。