(東華理工大學(xué) 機(jī)械與電子工程學(xué)院,南昌330013)
伴著社會(huì)的發(fā)展與城市化,城市道路交通安全、城市公共照明系統(tǒng)與燈飾美化系統(tǒng)越來(lái)越受到關(guān)注,這不僅關(guān)系到城市夜間景觀的亮化與美化,更關(guān)系到市民出行的安全性。目前,城市的智能化發(fā)展趨勢(shì)對(duì)道路照明系統(tǒng)提出了越來(lái)越高的要求,逐漸向著智能化管理、精細(xì)化控制等方向發(fā)展[1-3]。傳統(tǒng)的路燈控制方式單一,功能簡(jiǎn)單,監(jiān)控效率低下,無(wú)法滿足當(dāng)前的路燈照明管理的要求[4-6]。故在此設(shè)計(jì)了一種亮度自動(dòng)調(diào)節(jié)的智能路燈系統(tǒng),通過(guò)窗口濾波與Kalman 濾波器串聯(lián)實(shí)現(xiàn)數(shù)據(jù)平滑,由PID控制器實(shí)現(xiàn)亮度自動(dòng)調(diào)節(jié)。該系統(tǒng)具有環(huán)境亮度檢測(cè),LED 亮度控制以及遠(yuǎn)程通訊控制的功能。
所設(shè)計(jì)的基于PID控制算法的智能路燈亮度調(diào)節(jié)系統(tǒng),包括BH1750 亮度傳感器,PT4115 驅(qū)動(dòng)模塊,LED 燈,DS1338時(shí)鐘模塊,nRF24L01 無(wú)線通訊模塊,TFT 彩色屏幕,編碼器,按鍵輸入及MCU 控制器。其中,BH1750 亮度傳感器模塊檢測(cè)環(huán)境亮度,將采集到的亮度數(shù)據(jù)通過(guò)I2C 總線傳遞給MCU 控制器作為控制LED 亮度的依據(jù);PT4115 驅(qū)動(dòng)模塊為恒流驅(qū)動(dòng)器,接收PWM 信號(hào)進(jìn)行LED 亮度控制;DS1338時(shí)鐘模塊保存并計(jì)算時(shí)間,實(shí)現(xiàn)實(shí)時(shí)的時(shí)間更新;nRF24L01 無(wú)線通訊模塊將實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)的數(shù)據(jù)傳輸,在無(wú)線鏈路上傳遞控制數(shù)據(jù)與系統(tǒng)狀態(tài)數(shù)據(jù);TFT 彩色屏幕顯示路燈系統(tǒng)的當(dāng)前狀態(tài)數(shù)據(jù),實(shí)現(xiàn)智能的交互。系統(tǒng)組成及連接關(guān)系如圖1所示。
圖1 系統(tǒng)總體設(shè)計(jì)Fig.1 System overall design
亮度檢測(cè)單元采用BH1750 芯片,使用I2C 接口作為數(shù)字信號(hào)傳輸接口,內(nèi)部具有16 bit 的ADC轉(zhuǎn)換器,能將內(nèi)部的光電二極管采集到的亮度信號(hào)快速地轉(zhuǎn)化為對(duì)應(yīng)的數(shù)字信號(hào)并進(jìn)行傳輸,測(cè)量范圍為1~65535 lx,精度最小可達(dá)到0.5 lx,最快轉(zhuǎn)換速度為16 ms。BH1750 的內(nèi)部框圖如圖2所示,與MCU 接口如圖3所示。
圖2 BH1750 內(nèi)部框圖Fig.2 Internal block diagram of BH1750
圖3 BH1750 與MCU 接口Fig.3 Interface between BH1750 and MCU
LED 驅(qū)動(dòng)單元選擇PT4115為驅(qū)動(dòng)芯片。為實(shí)現(xiàn)LED 照明色溫穩(wěn)定,需要采用PWM 的方式來(lái)調(diào)光。其中,調(diào)光用PWM 的控制頻率必須遠(yuǎn)小于LED驅(qū)動(dòng)器電流環(huán)的控制頻率,否則會(huì)造成色溫與亮度的不穩(wěn)定。PT4115 在LED 陽(yáng)極放置采樣電阻,采用差分放大,實(shí)現(xiàn)電流的檢測(cè),采用Buck 拓?fù)鋵?shí)現(xiàn)降壓橫流功能,輸出電流連續(xù)輸出紋波小,通過(guò)調(diào)節(jié)陽(yáng)極采樣電阻來(lái)設(shè)定工作時(shí)的平均電流。同時(shí)
PT4115 支持在DIM 腳輸入PWM 信號(hào)進(jìn)行亮度調(diào)節(jié)。其電路如圖4所示。
圖4 PT4115 驅(qū)動(dòng)電路Fig.4 PT4115 driver circuit
通訊單元選用NR-01-S 2.4G 模組作為系統(tǒng)通訊模塊,模組采用DIP-8 封裝尺寸,以NORDIC 公司的nRF24L01+單片2.4 GHz 傳輸芯片作為通訊芯片。該芯片載波頻率為2.4 GHz 公共頻譜,在符合國(guó)家規(guī)定的發(fā)射功率情況下,任何組織或個(gè)人都可以免費(fèi)自由地使用;支持1.9~3.6 V 供電電壓范圍,支持帶自動(dòng)應(yīng)答的發(fā)送模式。nRF24L01 的內(nèi)部結(jié)構(gòu)框圖如圖5所示,與MCU 接口如圖6所示。
圖5 nRF24L01 內(nèi)部結(jié)構(gòu)框圖Fig.5 Internal structure block diagram of nRF24L01
圖6 nRF24L01 與MCU 接口Fig.6 Interface between nRF24L01 and MCU
MCU(microprogrammed control unit)控制單元選擇LQFP100 封裝的STM32F103VET6 單片機(jī)。該款單片機(jī)采用Cortex-M3 內(nèi)核,具有72 MHz 的內(nèi)核運(yùn)行時(shí)鐘頻率,接口豐富,能有效滿足系統(tǒng)設(shè)計(jì)需求。其最小系統(tǒng)電路如圖7所示。
系統(tǒng)上電后,先配置各項(xiàng)寄存器,初始化包括亮度傳感器在內(nèi)的外設(shè)芯片,為接下來(lái)循環(huán)的數(shù)據(jù)收發(fā)做好準(zhǔn)備;循環(huán)采集亮度數(shù)據(jù)、時(shí)間數(shù)據(jù),執(zhí)行無(wú)線數(shù)據(jù)通信,獲取其它節(jié)點(diǎn)的狀態(tài)信息及控制數(shù)據(jù);檢測(cè)按鍵是否按下,如按鍵按下則進(jìn)入手動(dòng)數(shù)據(jù)配置頁(yè)面,進(jìn)行手動(dòng)的參數(shù)調(diào)整與節(jié)點(diǎn)數(shù)據(jù)控制;根據(jù)設(shè)定的數(shù)據(jù)和采樣濾波獲取的亮度數(shù)據(jù)值,對(duì)LED燈進(jìn)行PID控制。系統(tǒng)主流程如圖8所示。
使用BH1750 采集亮度,對(duì)于采集的數(shù)據(jù)串聯(lián)使用窗口濾波和一維Kalman 濾波器。其中,Kalman濾波器迭代公式[7-8]為
圖7 最小系統(tǒng)原理Fig.7 Minimum system schematic
圖8 系統(tǒng)主流程Fig.8 Main flow chart of the system
式中:R為誤差協(xié)方差;K(k)為k時(shí)刻Kalman 增益;Z(k)為k時(shí)刻系統(tǒng)觀測(cè)值;X(k|k)為k時(shí)刻系統(tǒng)狀態(tài);P(k+1|k)為k時(shí)刻對(duì)k+1時(shí)刻的估計(jì)誤差協(xié)方差。
當(dāng)采集到亮度數(shù)據(jù),進(jìn)行濾波處理之后,將獲得的亮度數(shù)據(jù)與預(yù)期值進(jìn)行比較,然后采用離散化PID控制器進(jìn)行亮度控制。同時(shí),添加積分分離、抗積分飽和、梯形積分、微分先行這4種離散PID的改進(jìn)方法,去除由于離散化帶來(lái)的偏差。PID的增量表達(dá)式構(gòu)成的遞推公式[9-10]為
式中:KP為比例系數(shù);KI為積分系數(shù);KD為微分系數(shù);e(k)為k時(shí)刻偏差;y(k)為k時(shí)刻被控量;r(k)為k時(shí)刻系統(tǒng)給定。
采用的nRF24L01 芯片使用SPI 通訊接口,可以實(shí)現(xiàn)10 Mb/s 的通訊速率。利用其通訊能力,實(shí)現(xiàn)了一個(gè)快速輕量的通訊協(xié)議。通訊協(xié)議的數(shù)據(jù)包主要包括幀頭、狀態(tài)數(shù)據(jù)、控制數(shù)據(jù)、通信控制和數(shù)據(jù)校驗(yàn)等五部分。詳細(xì)的數(shù)據(jù)包結(jié)構(gòu)如圖9所示。
圖9 通訊數(shù)據(jù)包結(jié)構(gòu)Fig.9 Communication packet structure
亮度數(shù)據(jù)采用滑動(dòng)窗口濾波器與Kalman 濾波器對(duì)采集到的亮度數(shù)據(jù)進(jìn)行濾波,再將濾波后的亮度數(shù)據(jù)送至PID控制器進(jìn)行運(yùn)算后,返回控制值驅(qū)動(dòng)LED 實(shí)現(xiàn)照明亮度的穩(wěn)定。其中,窗口濾波器的滯后周期與窗口大小正相關(guān),即窗口大小近似等于濾波器的滯后周期。同時(shí)采取不同窗口大小的濾波器對(duì)采集到的數(shù)據(jù)進(jìn)行濾波,效果如10所示。故選擇2個(gè)窗口大小即可較好實(shí)現(xiàn)濾波效果。
圖10 窗口大小與濾波效果Fig.10 Window size and filter effect
對(duì)于Kalman 濾波器,采用一維條件下的近似處理,將狀態(tài)轉(zhuǎn)移矩陣參數(shù)設(shè)為1,過(guò)程噪聲協(xié)方差設(shè)定為1E-5,其在不同R值條件下系統(tǒng)的滯后周期和數(shù)據(jù)方差如圖11所示,最后選擇1E-4 作為濾波參數(shù)。
圖11 不同R值下響應(yīng)滯后和數(shù)據(jù)方差Fig.11 Response lag and data variance at different R values
在不同PID 參數(shù)下,系統(tǒng)的響應(yīng)時(shí)間與超調(diào)量不同。部分條件下給定亮度為900 lx時(shí),系統(tǒng)階躍響應(yīng)的比較如圖12所示。其中,
參數(shù)1 中P=2,I=0,D=0;
參數(shù)2 中P=1,I=0,D=0;
參數(shù)3 中P=0.5,I=0.25,D=0。
圖12 不同參數(shù)下的系統(tǒng)響應(yīng)Fig.12 System response under different parameters
選擇參數(shù)3時(shí),系統(tǒng)基本無(wú)超調(diào),且響應(yīng)周期為1,實(shí)現(xiàn)了響應(yīng)的快速性與穩(wěn)定性。
所設(shè)計(jì)的基于PID控制算法的智能路燈亮度調(diào)節(jié)系統(tǒng),以STM32 作為控制核心,采用BH1750亮度傳感器配合串口濾波器與Kalman 濾波算法實(shí)現(xiàn)亮度數(shù)據(jù)的穩(wěn)定采集,通過(guò)PT4115 驅(qū)動(dòng)LED 燈珠并結(jié)合PID控制器實(shí)現(xiàn)了快速的亮度控制,而且能夠?qū)崿F(xiàn)無(wú)線通訊功能。試驗(yàn)結(jié)果表明,整定后的參數(shù)能夠很好的滿足系統(tǒng)的性能需求,具有一定的實(shí)際應(yīng)用價(jià)值。