手机蓝牙收发模块的无线LED调光技术
扫描二维码
随时随地手机看文章
摘要:为适应LED照明个性化需求的不断变化,设计了基于手机蓝牙的无线LED调光器。系统采用低成本的8位PIC单片机作为主控制器,以蓝牙模块作为无线收发模块,通过串口通信连接手机蓝牙模块和单片机。调光器中的蓝牙模块与手机蓝牙配对后,应用手机终端的APP调光软件来实时调节LED灯具的亮度、颜色或色温。
引言
LED光源作为一种新型的固体照明光源,具有发光效率高、能耗低、坚固耐用、寿命长、安全性好、环保性绿色光源等优点,是当前照明行业的一个研究热点。而对LED进行调光控制能进一步有效地节能,大幅减少能源浪费。基于有线的LED调光控制系统,具有布线麻烦、增减设备需要重新布线、系统可扩展性差、系统安装和维护成本高,以及移动性能差等缺点。因此,采用无线通信技术,是实现LED智能调光的理想选择。
近年来,近距离无线通信技术获得了迅猛的发展,主流技术包括红外技术、蓝牙(Bluetooth)、Wi—Fi和ZigBee技术等。其中,Wi-Fi的功耗大且设备要求高,而ZigBee开发难度大且成本高。因此,对于普通的LED照明控制来讲,低功耗蓝牙技术一方面突破了功耗的瓶颈,另一方面广泛在iPhone、三星、HTC等智能手机中推广,更加具有技术和成本两方面的优势。本文将着重讨论基于手机蓝牙的LED无线调光技术。
1 系统简介及工作原理
整个调光系统的原理框图如图1所示。一部智能手机可同时与一组或多组LED灯具进行配对,由智能手机通过APP发送调光控制信号,嵌入在灯具里的蓝牙模块接收控制信号,经单片机译码后就可控制LED光源的开关、明暗度和颜色等。在感受家居灯控方便快捷的同时,更能享受蓝牙技术在LED灯控应用上的智能与乐趣。
2 硬件电路设计
2.1 MCU控制器
MCU采用STC89C52RC芯片,工作电压为5 V,具有8 KB Flash、512字节RAM、32位I/O口线、看门狗定时器、2个数据指针、3个16位定时器/计数器、一个7向量4级中断结构、全双工串行口、片内晶振及时钟电路、单片机与蓝牙模块通过串口进行连接,采用Keil软件进行开发,生产HEX文件,然后通过STC软件将程序烧录到芯片当中。
2.2 蓝牙模块
蓝牙模块选择HC-06,可以实现蓝牙转串口功能,HC—06采用CSR主流蓝牙芯片,完全兼容蓝牙V2.0协议标准,支持SPP协议最高还可支持3M调制模式。模块供电电压为3.3 V工作(3.1~4.2 V),配对时在30~40 mA波动,配对完毕后通信电流为8 mA,具有PIO0~PIO11、AIO0、AIO1、USB、PCM、UART及SPI接口,模块的波特率可以由用户利用“AT+指令集”进行设置,工作电流为40 mA,休眠电流<1 mA,内置2.4 GHz天线,用户无需调试天线。
外置8 Mb Flash,谐波干扰为2.4 MHz,发射功率为3 dBm,可以与蓝牙笔记本电脑、电脑加蓝牙适配器、PDA等设备进行无缝连接,模块的有效传输距离为10 m。蓝牙芯片上提供UART接口,通过4个引脚与单片机STC89C52RC相连。其中,1个引脚接3.3 V的工作电压,1个引脚接地,蓝牙模块上的TXD接到单片机上的P3.0口,RXD接到P3.1口,实现蓝牙模块与单片机之间的串行通信。工作电压为3.3 V。
蓝牙模块也可以通过串口与PC机通信,PC机可以通过AT指令对蓝牙模块的一些初始属性进行设置,如波特率、模块名称、配对密码等。
2.3 LED驱动电路设计
驱动电路采用ONsemi公司生产的NCL30160作为主芯片,NCL30160集成了N沟道功率MOS场效应管的脉冲宽度调制的浮动式降压转换器,可以为LED光源提供精准的恒定电流输出,以驱动高功率发光二极管。该芯片支持PWM调光,通过DC—DC电路将脉冲宽度调制信号转换为不同占空比的电流信号,实现LED的调光。基于NCL30160的典型LED驱动电路原理图如图2所示。
根据NCL30160的数据手册及输出要求,计算外围器件参数。系统采用5个1 W的LED串联,恒定电流为350 mA。
其中,ILED为LED灯串电流,由式(1)得到R1值,C5采用官方数据手册推荐的取值,电感L1及ROT由式(2)~(4)得到。式中,toff、ton、△I、RDS(on),的取值参考数据手册,VIN在此处取为24 V,DCRL为电感内阻,此处取为0。
3 软件设计
软件设计包括主程序设计、串口通信程序设计、PWM调光程序设计和手机APP程序设计。
3.1 主程序设计
图3为主程序流程图,通过蓝牙模块与单片机互连,单片机通过串口接收来自手机蓝牙模块的无线数据,经过单片机内部译码后产生对应占空比的PWM波形。主程序的作用就是根据手机终端的调光控制信号,实时产生合适的PWM调光信号去调节LED光源的亮度。
3.2 PWM调光算法设计
定时器0采用中断的方式产生PWM波形,定义频率、占空比,并且将P1.0口设为输出端口。根据串口接收到的数据对占空比以及频率进行调节。因为在手机软件中设计了4个控制按键,分别为“频率+”、“频率-”、“调光+”、“调光-”,当按下其中一个按键时,就会根据收到的相应数据对PWM波进行调节。
当按下“调光+”或者“调光-”时,PWM波的占空比就会发生变化,高电平占的比例越多,则LED照明灯越亮,反之则越暗。
当按下“频率+”或者“频率-”时,PWM波一个周期的PWM波长就会发生变化,在主函数main.c中定义了初始频率FREQ=4 000,反映在示波器上的周期是频率的倒数,因此频率越大,一个周期的PWM波长就越短。定时器0采用中断的方式产生PWM波形,为了便于观察,在程序中设定了频率为200~4000的范围,每次的调频幅度为20,这样就会非常明显地观察到PWM波在一个周期内的变化。PWM调光算法程序流程图如图4所示。
3.3 手机APP界面设计
本程序是基于Android2.1系统,所用开发工具为Eclipse集成开发环境。Eclipse是跨平台的自由集成开发环境,最初主要用于Java语言开发,但是目前也有通过插件使其作为其他计算机语言(比如C++、Python和Android)的开发工具,在此开发环境下,开发软件非常方便。这款软件是基于RFCOMM蓝牙串口服务的传输软件,通过该软件实现蓝牙串口模块的通信功能。
RFCOOM协议是基于欧洲电信标准协会ETSI07.10规程的串行线性仿真协议。此协议提供了RS-232控制和状态信号,作为一个简单的传输协议,其在两个不同设备上的应用程序之间保证一条完整的通信路径,并在它们之间保持一通信段。
为了验证手机终端的APP程序功能,没有对软件界面做特别美化的设计,仅包含所用到的几个按钮,以实现预期的功能为最大目标。手机设计界面如图5所示。
首先打开手机中的该软件,依次选择“打开蓝牙”和“连接设备”,找到对应的蓝牙模块名称,连接正确后,蓝牙模块就会由闪烁状态变为静止状态,此时手机表示与对应的蓝牙模块连接成功。接下来,通过操作手机软件界面的按键,P1.0口的输出PWM波形会随按键的变化而发生相应的变化,从而实现对LED照明灯的无线控制。
当按下“调光+”或“调光-”时,示波器上的波形占空比就会发生相应的变化。所谓占空比,是指高电平在一个信号周期内所占的比重,比重越大,则占空比就越大,LED灯就越亮。
当按下“频率+”或“频率-”时,PWM波的占空比始终不发生变化,而PWM波频率会在一个信号周期内相应地变大或变小。
4 实验结果
实验电路如图6所示,由单片机控制电路、蓝牙模块、LED驱动电路和LED光源组成。LED光源采用5个1 W的LED串联,额定电流为350 mA。
测试开始前,先将手机终端与蓝牙模块实现配对,配对成功后,蓝牙模块上的灯就会由闪烁状态变为静止状态,图7为配对成功后手机APP的界面图。
接着,就可以触摸手机上的调光按钮进行无线调光,如不断按“调光-”按钮时,通过示波器观察单片机输出的PWM波形,发现占空比也会随着触摸逐渐变小,实际的LED灯的亮度逐渐变暗。用万用表依次测量了3组数据,输出电流的平均值依次为240 mA、160 mA、50 mA,实验波形如图8所示。
结语
由于传统的照明系统具有布线麻烦、可扩展性差、节能效率低等缺点,本文采用手机Bluetooth技术,实现了对LED灯的无线调光控制。经过一段时间的测试,系统不仅可以通过手机蓝牙控制LED灯具的开关,还可以调节LED灯的亮度和颜色,已经达到了预期的结果。该系统结构简单、成本低,解决了传统机械开关使用不方便和传统灯具亮度不可调的问题,具有一定的实用价值。