张 娜,袁训锋,韩洪利
(商洛学院 电子信息与电气工程学院,商洛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灯光调节进行远程控制,该电路的结构简单、成本低、使用方便稳定,具有一定的工程应用前景。