張 娜,袁訓鋒,韓洪利
(商洛學院 電子信息與電氣工程學院,商洛726000)
近年來,LED 的發展大大地推動著機器視覺光源的發展,LED 燈具有環保、使用壽命長、低功耗等特性,被稱為第四代新光源[1-2]。綠色照明理念已深入人心,因此被快速地應用于機器視覺領域。LED光源與其他的機器視覺光源相比,其優點如下[3]:①效率高,白熾燈的可見光轉換效率為10%~20%,而LED 的效率可達到80%~90%;②光色純,光線質量高:單色LED 的光譜窄,光譜線集中在可見光波段;③能耗小,單體LED 的功率一般在0.5 W~1 W;④壽命長,通常需要串聯限流電阻或電流源,其壽命可超過100000 h; ⑤響應快,LED 燈響應時間為納秒,而白熾燈的響應時間為毫秒;⑥控制靈活,控制電路可以很容易地調節亮度,實現各種動態變化。
針對目前機器視覺光源存在工作時間長、不能遠程控制、不能無級調光等問題,本文提出以STC89C52RC 單片機為控制核心,PWM方法用于通過改變流過LED 平均電流信號的脈沖寬度來調節LED 燈光開關與亮度,再通過HC-06 藍牙芯片將手機APP 發送的指令傳遞給單片機對LED 燈光調節進行遠程控制。
該設計旨在設計一個穩定的、 遠程控制的全數字LED 光源,以52 單片機作為控制核心,其外圍電路有復位時鐘電路、電源電路、HC-06 藍牙電路、PWM 控制電路、按鍵電路及LED 燈,通過手機APP 來實現遠程控制燈光亮度的8 級調節。總體設計結構框圖如圖1 所示。

圖1 系統總體結構框圖Fig.1 System overall structure block diagram
該系統由電源電路、復位、時鐘電路、藍牙模塊、按鍵電路、LED 燈及單片機組成,在Protel 中繪制各模塊與單片機之間的原理圖,如圖2 所示。

圖2 系統整體電路原理圖Fig.2 Schematic diagram of the overall circuit of the system
按鍵模塊在實際生活中是非常實用的,若手機、電腦等具有藍牙設備的器件在使用時無法起作用時,采用按鍵具有手動控制燈光的開關和亮度調節的功能,設計中采用4 個按鍵,從左到右依次為打開、關閉、亮度加、亮度減,分別與單片機的p2.1、p2.2、p2.3、p2.4 引腳相連,如圖2 下方所示。
藍牙模塊選用HC-06 型號的轉串口模塊,該芯片為藍牙V2.0 協議標準的CSR 主流藍牙芯片,數據傳輸速度在2 M/s 范圍內。波特率可設置為1200,2400,4800,9600,19200,38400,57600,115200(默認值為9600),串口模塊工作電壓為3.3 V、工作電流為40 mA,休眠電流<1 mA[4]。
該模塊在LED 燈光調節系統中的功能是接收手機發送的指令,并將其串行傳送到單片機。由于僅使用藍牙模塊的接收功能,因此無需連接藍牙模塊的TXD 引腳。藍牙模塊和MCU 的引腳連接圖如圖3 所示。

圖3 藍牙模塊與MCU 連接引腳圖Fig.3 Pin diagram of bluetooth module and MCU connection
LED 能將電能轉換為可見光的發光二極管,當正向電流通過時,二極管導通以發光。當LED 呈正參數時,其亮度隨著流過電流的增加而增加[5]。LED的發光強度與流過它的電流強度成比例,從而來實現LED 燈光開關與亮度的調節[6-8]。
脈沖寬度調制(PWM),這是一種調制格式,它使用信息來控制信號的時域脈沖寬度,以實現信息傳輸[9],PWM 在測量、通信、自動控制等領域被廣泛應用[10],通過對原始模擬信號電平進行數字編碼的方法,可以實現光通信中的亮度以及平均功率的控制與變換等。常見的控制方法是使用高分辨率計數器,該計數器調制方波的占空比以編碼特定模擬信號的電平。方波由高低電平兩個等級構成,在LED 燈光的亮度控制中,滿幅值的直流高電平表示信號的完全有(ON),反之,低電平表示信號的完全無(OFF)。
PWM 調光基本原理是驅動器根據高電平和低電平接通和關斷FET(場效應管)的柵極,并反復切換LED 驅動器。當開關頻率高于100 Hz 時,人眼不會看到LED 的關閉,對導通與關斷時間進行平均,僅看到由占空比確定的亮度,占空比越小,開關管關閉的時間越長,因此平均電流就越小,人眼會發現到LED 變暗了,就能調節電路平均電流[10-11]。這種調光的優點為LED 始終在恒定電流的條件下工作,調光的范圍較大,可實現無級調光。
圖4 是脈寬調制的波形,改變占空比D,就可以改變LED 的平均電流[12]。

式中:tON為脈沖寬度;tPWM為脈沖的周期。

圖4 脈寬調制的波形Fig.4 Pulse width modulation waveform
使用52 單片機,1 個機器周期=12 個時鐘周期;機器周期=12/f (f 指晶振頻率),假設你要定時的時間為T,那么定時的初值為T/機器周期=初值;TH0=(65536-初值)/256;TL0=(65536-初值)%256(求余運算);低位為TL0的值,高位為TH0的值。例如用12 M 晶振做1 ms 定時計算如下:

所以:TH0=(65536-1000)/256=252=11111100;(求模運算,即可求出高八位的值)
TL0=(65536-1000)%256=24=00011000(求余運算,因為低八位最大能裝255)
單片機自動把存在TH0中的值裝進TL0,繼續進行定時計數,這就完成了八位自動重裝,實現了燈光亮度的8 級調節。
系統的軟件設計是將手機APP 指令信息發送到單片機上實現LED 燈光開關與亮度調節,從而形成一個完整的系統。系統的主程序主要是完成整個系統的初始化,首先是IO 口初始化,然后是串口通信設備的初始化,最后是藍牙無線模塊的初始化。在手機端將藍牙串口打開,與藍牙設備進行相應的配對,如果配對不成功,檢查系統錯誤;配對成功后,數據通過串口傳送給藍牙,判斷接收數據。系統總流程如圖5 所示。

圖5 系統軟件流程Fig.5 System software flow chart
AT 命令集主要是由終端設備或數據終端設備發送到終端適配器或數據電路終端配偶器的指令[13]。此設計通過AT 命令調試藍牙模塊。常用的AT 指令如表1 所示。
實驗光源采用5 V/2.5 W、 歐司朗的小米LED便攜燈,硬件實物如圖6 所示。

表1 AT 指令Tab.1 AT instructions

圖6 硬件實物圖Fig.6 Physical hardware diagram
首先打開安卓手機的藍牙功能,然后打開藍牙串口助手,點擊搜索設備,搜索到名字為JDY-30 的設備名后點擊連接,這時硬件電路的藍牙模塊紅色指示燈由慢慢閃爍變為常亮。在聊天窗口進行輸入,對應關系為a=燈開,b=燈滅,c=亮度+,d=亮度-;按鍵操作從左到右依次為亮度加,亮度減,燈開,燈滅。演示如圖7 所示。

圖7 手機藍牙與設備實現連接Fig.7 Bluetooth connection between mobile phone and device
通過實驗的驗證,不同亮度等級的PWM 信號其脈寬信號如圖8 所示,由圖8 可以看出脈寬有明顯的變化,實現了脈寬的不同來控制LED 燈光的亮度等級,8 檔不同占空比LED 燈光效果圖如圖9 所示。

圖8 室內LED 燈光調節PWM 調制的實驗波形Fig.8 Experimental waveform of indoor LED light regulation PWM modulation

圖9 八檔不同占空比LED 燈效果圖Fig.9 8 LED lights with different duty ratios
該設計使用52 單片機為控制核心,并使用PWM 方法通過改變流過LED 燈的平均電流信號的占空來調節LED 燈開關和亮度,再通過手機藍牙將指令傳遞給單片機對LED 燈光調節實現遠程控制。通過實驗驗證,采用PWM 方法能實現燈光亮度的8級調節,采用手機APP 通過HC-06 藍牙能對LED燈光調節進行遠程控制,該電路的結構簡單、成本低、使用方便穩定,具有一定的工程應用前景。