姚強,孫勤良
(湖州職業(yè)技術(shù)學院 機電與汽車工程學院,浙江湖州,313000)
目前浙江湖州正在打造“全國綠色智造名城”,各行各業(yè)都在向綠色智造轉(zhuǎn)型升級,因此傳統(tǒng)智能型臺燈也將逐漸被綠色智能型臺燈所替代。例如張鈺琛等人[1]基于Arduino設計了一款智能語音控制臺燈,通過語音控制臺燈的開啟、關(guān)閉、閃爍和燈頭抬高功能;安章順等人[2]基于微信小程序開發(fā)了一款智能臺燈,實現(xiàn)利用手機無線操控室內(nèi)臺燈的亮滅,同時可以有效控制臺燈的各種顏色和亮滅的混合;陳雪嬌等人[3]基于樹莓派設計的智能臺燈,可通過觸摸屏控制LED臺燈包括開關(guān)、亮度及顏色變化。上述智能臺燈都是主要從用戶使用便捷角度出發(fā)設計了諸多功能,未貫徹綠色智造的理念。本文主要從照度穩(wěn)定和連續(xù)調(diào)光角度出發(fā)進行臺燈設計,該設計不僅具有節(jié)能環(huán)保的特點,而且對人的視力保護和身心健康也具有重要意義,符合智能制造的綠色評價指標體系[4],對環(huán)境和用戶的影響都是積極的。
在充分考慮節(jié)能的前提下,選用了由低功耗單片機STM32F103C8T6單片機、PWM控制模塊、OLED顯示模塊、BH1750照度傳感器、獨立按鍵和LED燈板組成的設計方案。應用STM32單片機定時器的比較模式生成PWM控制信號,該信號施加在PWM可控電流源模塊上,控制該模塊驅(qū)動LED臺燈,通過最小二乘直線擬合算法[5]粗調(diào)PWM的占空比,再經(jīng)過一個步距為2的占空比微調(diào),對光照度形成精確的閉環(huán)控制,實現(xiàn)對LED臺燈照度的連續(xù)穩(wěn)定調(diào)節(jié),系統(tǒng)方案如圖1所示。
圖1 系統(tǒng)設計框圖
該設計采用STM32F103C8T6單片機作為主控芯片,STM32F103C8T6是一款32位微控制器,該單片機采用ARM Cortex-M內(nèi)核,最高時鐘頻率可達72MHZ,封裝體積小,價格與家族其他芯片相比較低、相比8位單片機性能更優(yōu),所以考慮用此芯片作為主控芯片。主控芯片引腳功能分配如表1所示。
表1 主控芯片引腳功能分配表
LED臺燈顯示模塊通過一塊0.96寸OLED來實現(xiàn),OLED是利用多層有機隔膜結(jié)構(gòu)產(chǎn)生電致發(fā)光的器材,它性價比高,價格便宜。通過SPI總線和單片機進行信號傳輸,接口只需五個I/O即可驅(qū)動,速度更快,模塊本體輕薄,功耗低,發(fā)光效率高,滿足項目設計對顯示技術(shù)的需求[6],如圖2所示。
圖2 OLED引腳接線圖
該模塊采用德州儀器TPS92200D1作為恒流源控制芯片,它具有4~30V的寬電壓輸入范圍,連續(xù)工作電流為1.5A,開關(guān)頻率支持1MHz,最大占空比可達99%,支持數(shù)字輸入的PWM調(diào)光和模擬輸入的模擬調(diào)光。采用了多種保護措施,包括LED開路和短路保護,傳感電阻器開路負載和接地短路保護,為保護LED免受過流損壞,當檢測到過流時,驅(qū)動器將會被關(guān)閉并鎖存。STM32的定時器工作在輸出比較模式,通過在軟件中修改比較參數(shù)實現(xiàn)PWM占空比可調(diào)。PWM可控電流源模塊電路設計圖如圖3所示,其中PB5為單片機的PWM輸出引腳。
圖3 PWM可控電流源模塊設計
光照度傳感器采用BH1750,這是一款數(shù)字型照度傳感器集成芯片,BH1750引出了時鐘線和數(shù)據(jù)線,單片機通過IIC協(xié)議可以與BH1750模塊通訊,單片機的PB6連接IIC外設的時鐘線,PB7連接IIC外設的信號線[6],如圖4所示。
圖4 BH1750照度傳感器引腳接線圖
按鍵連接的單片機引腳采用上拉輸入模式,當按鍵斷開時,單片機引腳(PA0、PA1)處于高電平狀態(tài),按鍵按下時輸入低電平,按鍵可以設定LED臺燈的光照度,其中KEY1和KEY2分別為增加和減小光照度,如圖5所示。
圖5 獨立按鍵引腳接線圖
軟件設計包含初始化程序、OLED顯示程序、BH1750照度檢測程序、PWM控制程序、按鍵檢測程序和照度調(diào)節(jié)程序。初始化程序主要完成OLED驅(qū)動模塊、BH1750模塊、按鍵模塊、和定時器模塊的初始化工作;OLED顯示程序主要是完成STM32單片機通過SPI總線和OLED通信,定時刷新OLED,顯示當前照度值(Current_lx)和設定照度值(Set_lx);BH1750照度檢測程序完成STM32 單片機和BH1750傳感器通過IIC通信,獲取臺燈正下方的實際照度值;PWM控制程序的功能是完成生成占空比可調(diào)的PWM,利用STM32定時器的比較模式,通過TIM_SetCompare2函數(shù)更新PWM的占空比[7];按鍵模塊的功能是完成照度值的設定任務,按鍵狀態(tài)在主程序中采用查詢方式獲??;照度調(diào)節(jié)程序的功能是完成LED燈照度的控制功能。系統(tǒng)的軟件控制流程圖如圖6所示。
圖6 軟件控制流程圖
LED臺燈的光照度近似與控制信號PWM的占空比呈線性關(guān)系,PWM占空比越高,LED臺燈的光照度越高。如手動設定臺燈光照度值,根據(jù)線性關(guān)系可以求解得到占空比的值,利用STM32定時器的比較模式,通過TIM_SetCompare2函數(shù)更新PWM的占空比,從而實現(xiàn)臺燈照度的調(diào)節(jié),所以快速和準確調(diào)節(jié)PWM占空比成為照度控制的關(guān)鍵技術(shù)問題。STM32的定時器TIM3的PWM輸出模式可產(chǎn)生一個由TIM3_ARR確定頻率,TIM3_CCRx確定占空比的信號,PWM占空比和CCRx的關(guān)系如1式所示。
CCRx寄存器的值即為TIM_SetCompare2的參數(shù)Compare2的值,故可采用線性擬合的方法得到光照度與CCRx的函數(shù)關(guān)系。首先采集7組光照度ix和Compare2iy數(shù)據(jù),數(shù)據(jù)如表2所示;然后利用Python3和最小二乘法對x,y進行線性擬合[8]得到的函數(shù)圖像如圖7所示,最后求解出光照度x與Compare2值y的函數(shù)關(guān)系如(2)式所示。
表2 無干擾源下的臺燈實測光照度與TIM3參數(shù)Compare2的關(guān)系表
圖7 臺燈實測光照度與TIM3參數(shù)Compare2的函數(shù)關(guān)系圖
照度調(diào)節(jié)算法主要由粗調(diào)和微調(diào)兩部分完成。按照光照度和Compare2的值的線性關(guān)系可得到(3)式,其中Set_lx為設定光照度值,Current_lx為實測光照度值。
粗調(diào)部分根據(jù)(4)式來完成
利用粗調(diào)算法反推出參數(shù)Compare2的粗大值,實現(xiàn)快速讓光照度調(diào)整到設定光照度值附近,然后用步進的方式在主循環(huán)中進行微調(diào),最終實現(xiàn)光照度調(diào)節(jié)的目的,因為采用的是閉環(huán)控制,如若環(huán)境中有干擾光源存在,該系統(tǒng)依然可以實現(xiàn)較好的控制。該算法相對于單純使用微調(diào)算法,調(diào)整速度更快,滿足對實時性要求較高的場合。
為測試臺燈的設計效果,設計了相應的測試方案,LED臺燈樣機如圖8所示。分別從臺燈照度的連續(xù)性、穩(wěn)定性、抗干擾性和節(jié)能性四方面進行測試,測試結(jié)果如表3所示。
表3 LED臺燈測試結(jié)果
圖8 LED臺燈樣機
連續(xù)性:臺燈從亮度最高直至熄滅,整個過程中,臺燈有無頻閃。
穩(wěn)定性:將臺燈調(diào)整到固定的照度值,觀察10s內(nèi)臺燈照度值的波動范圍。
抗干擾性:將臺燈調(diào)整到最大照度值,加入環(huán)境干擾光源,干擾源的光照度與臺燈光照度相近。干擾源的擾動分為兩種情況:干擾源調(diào)至照度最大,10s之內(nèi)從臺燈上方逐漸靠近臺燈,直至臺燈熄滅,在此過程觀察臺燈照度值的波動;干擾源在2s之內(nèi)突然加入,觀察臺燈照度的波動。從上述測試結(jié)果可以看出,該臺燈的照度穩(wěn)定性已經(jīng)可以完全達到日常使用的需求。
節(jié)能性:臺燈供電電壓為12V 時,LED 燈板消耗功率與供電電源輸出功率之比。
本文基于STM32F103C8T6芯片設計了一款符合綠色智造性指標的LED臺燈,該臺燈主要分為硬件設計和軟件設計。首先硬件設計包含主控芯片、OLED照度顯示、BH1750照度檢測和PWM控制;然后軟件設計主要包含各個硬件模塊的驅(qū)動程序設計和LED臺燈照度調(diào)節(jié)算法設計及實現(xiàn),其中照度調(diào)節(jié)算法分為粗調(diào)和微調(diào)兩部分,粗調(diào)算法采用線性擬合的方法得到比例系數(shù),應用比例系數(shù)乘以設定照度和實測照度之間的差值就可以得到PWM占空比的調(diào)整值,微調(diào)算法采用步距為2進行調(diào)整PWM占空比,步距為2是綜合考慮LED臺燈性能的影響因素,經(jīng)過實驗最終確定的。微調(diào)算法步距過大,LED臺燈照度波動比較大,穩(wěn)定性差;微調(diào)算法步距過小,照度調(diào)整到穩(wěn)定的時間變長;最后通過設計的測試方案,從照度連續(xù)性、穩(wěn)定性、抗干擾性和節(jié)能性四個方面驗證了LED臺燈照度是穩(wěn)定且連續(xù)可調(diào)的,可以滿足用戶的日常使用需求,未來還將該臺燈的設計理念應用于《綠色智造技術(shù)應用》課程中的項目化教學中[9],有利于幫助學生樹立綠色智造意識。