CN110572905B - Led灯控制方法、系统及设备 - Google Patents
Led灯控制方法、系统及设备 Download PDFInfo
- Publication number
- CN110572905B CN110572905B CN201910841076.XA CN201910841076A CN110572905B CN 110572905 B CN110572905 B CN 110572905B CN 201910841076 A CN201910841076 A CN 201910841076A CN 110572905 B CN110572905 B CN 110572905B
- Authority
- CN
- China
- Prior art keywords
- led lamp
- lamp control
- controller
- color
- control request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Circuit Arrangement For Electric Light Sources In General (AREA)
Abstract
本发明公开了一种LED灯控制方法、系统及设备。本发明通过接收用户的操作指令;根据与控制器间定义的私有通讯协议生成所述操作指令对应的LED灯控制请求;将所述LED灯控制请求发送至所述控制器,以使所述控制器根据所述LED灯控制请求实现LED灯控制。其中,移动终端基于定义的私有通讯协议将用户操作指令生成LED灯控制请求后下发至控制器中,不仅实现了移动终端与控制器之间的有效通信,更能为控制器提供足够多样的LED灯控制请求,使控制器在不需要修改程序的情况下即可根据用户的任意设置实现LED灯的任意显示效果,如LED灯颜色、动作、时间波形的随意切换,实现了LED灯的灵活控制,降低了LED灯控制成本和效率。
Description
技术领域
本发明涉及LED灯技术领域,尤其涉及一种LED灯控制方法、系统及设备。
背景技术
随着LED灯的广泛应用,人们对LED灯的发光效果要求越来越高,然而目前市面上很多LED灯通常只有固定的几种发光颜色或者发光模式,发光效果单一,无法满足人们的需求。
中国专利号为CN201520416531.9LED的实用新型灯智能控制系统公开了一种根据红外线感应单元和环境亮度检测单元变化的LED灯智能控制系统,这种系统将红外线感应单元和环境亮度检测单元集成在一个控制器中,按照预先设定好的逻辑控制LED灯发光,如根据环境亮度或环境中是否有人调节LED灯的亮度。该方案只能实现LED灯亮度的简单变换,不能实现颜色变化及动态效果的切换,无法实现对LED灯的灵活控制,控制效率不高。
发明内容
本发明的主要目的在于提供一种LED灯控制方法、系统及设备,旨在解决现有技术中LED灯控制的控制不灵活技术问题。
为实现上述目的,本发明提供一种LED灯控制方法,所述方法包括以下步骤:
接收用户的操作指令;
根据与控制器间定义的私有通讯协议生成所述操作指令对应的LED灯控制请求;
将所述LED灯控制请求发送至所述控制器,以使所述控制器根据所述LED灯控制请求实现LED灯控制。
优选地,所述私有通讯协议包括包头及包体;其中,
所述包头包括魔术字、信息类型、信息长度、校验和、通道号及灯数;
所述包体包括认证数据、控制器版本号、指令数据、当前电压数据、事件定义颜色数据、事件类型数据及扩展配置数据。
优选地,所述根据与控制器间定义的私有通讯协议生成所述操作指令对应的LED灯控制请求的步骤,包括:
根据所述私有通讯协议的指令数据从所述操作指令中获取当前RGB三色值;
将所述当前RGB三色值存储至LED灯控制请求中;和/或,
根据所述私有通讯协议的指令数据从所述操作指令中获取当前颜色动作类型或当前颜色时间波形;
对应将所述当前颜色动作类型或所述当前颜色时间波形存储至LED灯控制请求中。
所述将所述LED灯控制请求发送至所述控制器,以使所述控制器根据所述LED灯控制请求实现LED灯控制的步骤,包括:
将所述LED灯控制请求发送至所述控制器,以使所述控制器对应根据所述LED灯控制请求中的所述当前RGB三色值,和/或,所述当前颜色动作类型或所述当前颜色时间波形实现LED灯控制。
优选地,所述根据所述私有通讯协议的指令数据从所述操作指令中获取当前RGB三色值的步骤之后,所述方法还包括:
识别所述当前RGB三色值中的最大颜色值;
将除所述最大颜色值外的其他两种颜色值分别除以所述最大颜色值,获得对应的颜色比例;
将所述其他两种颜色值分别乘以对应的颜色比例,获得其他两种颜色值对应的加权颜色值;
根据所述最大颜色值及其他两种颜色值对应的加权颜色值获得最终颜色值;
将所述最终颜色值存储至LED灯控制请求中。
优选地,所述操作指令包括当前通道号以及除当前通道号以外的其他信息;所述方法还包括:
获取多条操作指令,并检测各操作指令中的当前通道号及其他信息;
当各操作指令中的其他信息相同时,根据所述私有通讯协议中的通道号及各操作指令中的当前通道号获得混合通道号值;
将所述混合通道号值存储至LED灯控制请求中;
将各操作指令中的其他信息合并后存储至LED灯控制请求中。
优选地,所述检测各操作指令中的当前通道号及其他信息的步骤之后,所述方法还包括:
当各操作指令中的其他信息不相同时,根据所述私有通讯协议中的通道号及各操作指令中的当前通道号获得单一通道号值;
将所述单一通道号值存储至LED灯控制请求中;
将各操作指令中的其他信息分别存储至LED灯控制请求中。
优选地,所述方法应用于移动终端,所述接收用户的操作指令的步骤之前,所述方法还包括:
检测所述移动终端中的应用程序是否启动;
当所述应用程序启动时,从所述私有通讯协议的扩展配置数据中读取预设电压阈值、电压转换基数及电压补偿值;
从所述控制器中获取LED灯载体终端的采样电压;
根据所述采样电压、所述电压转换基数及所述电压补偿值获得所述LED灯载体终端的实际电压值;
在所述实际电压值小于所述预设电压阈值时,根据所述扩展配置数据中的开关灯指示将关灯指示存储至LED灯控制请求中。
优选地,根据所述采样电压、所述电压转换基数及所述电压补偿值通过下式获得所述LED灯载体终端的实际电压值:
V1=(V0+B)*S+Offset;
其中,V0为采样电压,V1为实际电压值,B为电压转换基数,offset为电压补偿值,S为预设常数。
此外,为实现上述目的,本发明还提供一种LED灯控制系统,所述LED灯控制系统包括移动终端及控制器;
所述移动终端,用于接收用户的操作指令,根据与所述控制器间定义的私有通讯协议生成所述操作指令对应的LED灯控制请求,并将所述LED灯控制请求发送至所述控制器;
所述控制器,用于接收所述LED灯控制请求,并根据所述LED灯控制请求实现LED灯控制。
此外,为实现上述目的,本发明还提供一种LED灯控制设备,所述LED灯控制设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的LED灯控制程序,所述LED灯控制程序配置为实现所述的LED灯控制方法的步骤。
本发明通过接收用户的操作指令;根据与控制器间定义的私有通讯协议生成所述操作指令对应的LED灯控制请求;将所述LED灯控制请求发送至所述控制器,以使所述控制器根据所述LED灯控制请求实现LED灯控制。其中,移动终端基于定义的私有通讯协议将用户操作指令生成LED灯控制请求后下发至控制器中,不仅实现了移动终端与控制器之间的有效通信,更能为控制器提供足够多样的LED灯控制请求,使控制器在不需要修改程序的情况下即可根据用户的任意设置实现LED灯的任意显示效果,如LED灯颜色、动作、时间波形的随意切换,实现了LED灯的灵活控制,降低了LED灯控制成本和效率。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的LED灯控制设备结构示意图;
图2为本发明LED灯控制方法第一实施例的流程示意图;
图3为图2中步骤S20细化的流程示意图;
图4为本发明LED灯控制方法第二实施例的流程示意图;
图5为本发明LED灯控制方法第三实施例的流程示意图;
图6为本发明LED灯控制系统第一实施例的功能模块图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的LED灯控制设备结构示意图。
如图1所示,该LED灯控制设备可以包括:处理器1001,例如CPU,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对LED灯控制设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及LED灯控制程序。
在图1所示的LED灯控制设备中,网络接口1004主要用于与外部网络进行数据通信;用户接口1003主要用于接收用户的输入指令;所述LED灯控制设备通过处理器1001调用存储器1005中存储的LED灯控制程序,并执行以下操作:
接收用户的操作指令;
根据与控制器间定义的私有通讯协议生成所述操作指令对应的LED灯控制请求;
将所述LED灯控制请求发送至所述控制器,以使所述控制器根据所述LED灯控制请求实现LED灯控制。
进一步地,处理器1001可以调用存储器1005中存储的LED灯控制程序,还执行以下操作:
根据所述私有通讯协议的指令数据从所述操作指令中获取当前RGB三色值;
将所述当前RGB三色值存储至LED灯控制请求中;和/或,
根据所述私有通讯协议的指令数据从所述操作指令中获取当前颜色动作类型或当前颜色时间波形;
对应将所述当前颜色动作类型或所述当前颜色时间波形存储至LED灯控制请求中。
进一步地,处理器1001可以调用存储器1005中存储的LED灯控制程序,还执行以下操作:
将所述LED灯控制请求发送至所述控制器,以使所述控制器对应根据所述LED灯控制请求中的所述当前RGB三色值,和/或,所述当前颜色动作类型或所述当前颜色时间波形实现LED灯控制。
进一步地,处理器1001可以调用存储器1005中存储的LED灯控制程序,还执行以下操作:
识别所述当前RGB三色值中的最大颜色值;
将除所述最大颜色值外的其他两种颜色值分别除以所述最大颜色值,获得对应的颜色比例;
将所述其他两种颜色值分别乘以对应的颜色比例,获得其他两种颜色值对应的加权颜色值;
根据所述最大颜色值及其他两种颜色值对应的加权颜色值获得最终颜色值;
将所述最终颜色值存储至LED灯控制请求中。
进一步地,处理器1001可以调用存储器1005中存储的LED灯控制程序,还执行以下操作:
获取多条操作指令,并检测各操作指令中的通道号及其他信息;
当各操作指令中的其他信息相同时,根据所述私有通讯协议中的通道号及各操作指令中的通道号获得混合通道号值;
将所述混合通道号值存储至LED灯控制请求中;
将各操作指令中的其他信息合并后存储至LED灯控制请求中。
进一步地,处理器1001可以调用存储器1005中存储的LED灯控制程序,还执行以下操作:
当各操作指令中的其他信息不相同时,根据所述私有通讯协议中的通道号及各操作指令中的通道号获得单一通道号值;
将所述单一通道号值存储至LED灯控制请求中;
将各操作指令中的其他信息分别存储至LED灯控制请求中。
进一步地,处理器1001可以调用存储器1005中存储的LED灯控制程序,还执行以下操作:
检测所述移动终端中的应用程序是否启动;
当所述应用程序启动时,从所述私有通讯协议的扩展配置数据中读取预设电压阈值、电压转换基数及电压补偿值;
从所述控制器中获取LED灯载体终端的采样电压;
根据所述采样电压、所述电压转换基数及所述电压补偿值获得所述LED灯载体终端的实际电压值;
在所述实际电压值小于所述预设电压阈值时,根据所述扩展配置数据中的开关灯指示将关灯指示存储至LED灯控制请求中。
进一步地,处理器1001可以调用存储器1005中存储的LED灯控制程序,还执行以下操作:
根据所述采样电压、所述电压转换基数及所述电压补偿值通过下式获得所述LED灯载体终端的实际电压值:
V1=(V0+B)*S+Offset;
其中,V0为采样电压,V1为实际电压值,B为电压转换基数,offset为电压补偿值,S为预设常数。
本实施例通过上述方案,使移动终端基于定义的私有通讯协议将用户操作指令生成LED灯控制请求后下发至控制器中,不仅实现了移动终端与控制器之间的有效通信,更能为控制器提供足够多样的LED灯控制请求,使控制器在不需要修改程序的情况下即可根据用户的任意设置实现LED灯的任意显示效果,如LED灯颜色、动作、时间波形的随意切换,实现了LED灯的灵活控制,降低了LED灯控制成本和效率。
基于上述硬件结构,提出本发明LED灯控制方法实施例。
参照图2,图2为本发明LED灯控制方法第一实施例的流程示意图。
在第一实施例中,所述LED灯控制方法包括以下步骤:
S10:接收用户的操作指令;
可以理解的是,本实施例的执行主体为移动终端。所述移动终端可以为智能手机、平板电脑、笔记本电脑或智能手环等设备,本实施例对此不加以限制。
需要说明的是,用户的操作指令,指用户在移动终端设置的LED灯显示效果的参数,包括当前RGB三色值、当前颜色动作类型或所述当前颜色时间波形、当前通道号等信息。
S20:根据与控制器间定义的私有通讯协议生成所述操作指令对应的LED灯控制请求;
在具体实现中,移动终端与控制器之间需要先建立网络连接,所述网络连接可采用蓝牙,也可以采用WIFI(Wireless Fidelity,基于IEEE 802.11b标准的无线局域网)、GPRS(General Packet Radio Service,通用分组无线服务技术)等技术连接,本实施例对此不加以限制。当移动终端与控制器之间建立网络连接后,可以通过预先定义好的私有通讯协议生成操作指令对应的LED灯控制请求。
作为一实施例,预先定义的私有通讯协议的内容如下:
私有通讯协议包括包头及包体;其中,所述包头包括魔术字、信息类型、信息长度、校验和、通道号及灯数;所述包体包括认证数据、控制器版本号、指令数据、当前电压数据、事件定义颜色数据、事件类型数据及扩展配置数据。
移动终端与控制器之间可以传输八种消息,即LED灯控制请求的类型:
查询灯数消息:消息包头+认证数据
返回灯数消息:消息包头+控制器版本号
指令消息:消息包头+[[单色|多色]+[动作]|[时间波形]]
查询电压消息:消息包头
返回电压消息:消息包头+当前电压数据
事件定义消息:消息包头+事件定义颜色数据
事件上报消息:消息包头+事件类型数据
扩展配置消息:消息包头+扩展配置数据
其中[]表示0个或1个,|表示2选1
消息包头的定义如下表1所示:
magic | type | length | checksum | channel | lednum |
表1
magic:1byte,魔术字
type:1byte,消息类型
当type=1时,所有LED灯一种颜色,不带动作和时间波形,使用当前的动作或时间波形
当type=2时,所有LED灯一种颜色,带动作,不带时间波形
当type=3时,不同LED灯不同颜色,不带动作和时间波形,使用当前的动作或时间波形
当type=4时,不同LED灯不同颜色,带动作,不带时间波形
当type=5时,时间波形里面包含颜色
当type=6时,颜色模式不变,只带动作
当type=7时,移动设备查询灯数
当type=8时,移动设备查询控制器状态
当type=9时,控制器返回灯数
当type=10时,控制器返回状态
length:2bytes,消息总长度
checksum:1byte,校验和
channel:1byte,通道号
通道号支持两种类型:
a.单一通道号值:000、001、010、011,表示第1-4个通道
b.混合通道值:最高位置1,目的是与单一通道号值区分,低4位分别表示是否对对应通道号生效,如下表2所示,C1为0,表示对第1个通道不生效;C1为1,表示对第1个通道生效。
1 | 0 | 0 | 0 | C4 | C3 | C2 | C1 |
表2
lednum:1byte,灯数
消息包体的定义如下:
1、认证数据:6bytes。
R1 | R2 | R3 | D1 | D2 | D3 |
表3
如上表3所示,R1、R2、R3是3个随机字节,D1、D2、D3是用预设算法将R1R2R3加密后的值,所述预设算法可以是哈希算法、对称算法(Data Encryption Standard,DES)等,本实施例对此不加以限制。
在具体实现中,控制器收到LED灯控制请求后会取出R1R2R3,然后采用同样的算法计算出E1E2E3,只有E1E2E3与D1D2D3相同时,才认为认证通过,通过该认证数据的设计,使得移动终端与控制器之间的数据传输更加安全可靠,保障了控制器接收到的LED灯控制请求的准确性。
2、控制器版本号:3bytes。
3、指令数据:包括单色、多色、颜色动作类型或颜色时间波形,具体定义如下:
a.单色:3bytes,携带RGB三色值。
b.多色:(3*lednum)bytes,携带每个LED灯的RGB三色值。
c.颜色动作类型:包括动作标号、颜色渐变数据、频闪动作数据、转动动作数据、预留定义数据。
动作标号:1byte,定义如下:
0为静态的情况,没有动作;1为亮度调节;2为颜色渐变;3为频闪(带频闪动作数据);4为转动(带转动动作数据)。
颜色渐变数据:1byte,指示颜色渐变的速度。
频闪动作数据:1byte,指示频闪的闪动频率
转动动作数据:4byte,定义如下表4所示:
mode | direction | speed | hop |
表4
mode:1byte,定义如下:
0为自定义模式(只有mode为0时,下面的direction\speed\hop才有效);1为固定模式1;2为固定模式2...;7为固定模式7。
direction:转动方向
speed:转动速度
hop:跳动间隔
预留定义数据:6bytes。
d.颜色时间波形:7bytes。
颜色时间波形的结构为:
totaltime(1byte)+divisionnum(1byte)+timedata(5byte)。其中,timedata的结构定义如下表5所示:
time | R | G | B | wave |
表5
time:1byte,该段颜色持续的时间
RGB:3bytes,颜色值
wave:1byte,波形类型
4、当前电压数据:2bytes
当前电压数据的结构为:Part1(1bytes)+Part2(1bytes),其中Part1表示当前电压整数部分,Part2表示当前电压小数部分。
5、事件定义颜色数据:17bytes,定义如下表6所示:
brakedetect | turndetect | keydelaysec | keyhandle | keyreport | keymapledchannel | signalcolorkey |
表6
其中,
brakedetect:用于指示控制器是否检测刹车信号
turndetect:用于指示控制器是否检测转向信号
keydelaysec:用于指示控制器刹车和转向信号最短有效时间
keyhandle:用于指示控制器是否根据刹车转向信号来控制LED灯
keyreport:用于指示控制器是否上报刹车转向信号事件到移动终端
keymapledchannel:用于指示各通道被信号控制的逻辑
signalcolorkey:用于指示转向和刹车显示的颜色
6、事件类型数据:2bytes
事件类型数据的结构为:KeyId(1bytes)+State(1bytes),其中,KeyId表示事件类型(左转0,右转1,刹车2),State表示事件状态(停止0,开始1)。
7、扩展配置数据:17bytes,定义如下表7所示:
delayturnout | voltagethreshold | baseplusvoltage | singlemaxvoltage | othermaxvoltage | reserved |
表7
delayTurnOut:1byte,开关灯指示,用于指示网络断开之后控制器是否将LED灯关掉,如果为0,则控制器会将LED灯关掉;如果为1,则控制器不关灯,除非电压低于低电压保护的电压阈值。
voltagethreshold:2bytes,用于存储低电压保护的电压阈值。
baseplusvoltage:2bytes,用于存储将ADC采样电压转换成实际电压值的电压转换基数
singlemaxvoltage:2bytes:,用于存储移动终端下发单色时进行低电保护的电压补偿值
othermaxvoltage:2bytes,用于存储移动终端下发多色、颜色动作类型或颜色时间波形时进行低电保护的电压补偿值
reserved:8bytes,预留。
S30:将所述LED灯控制请求发送至所述控制器,以使所述控制器根据所述LED灯控制请求实现LED灯控制。
可理解的是,当控制器接收到LED灯控制请求后,可以根据与移动终端之间定义的私有通讯协议对该LED灯控制请求进行解析,从而实现对LED灯的控制,在控制器对LED灯的控制过程中,面对用户的不同设置,无需修改控制器程序,即可通过移动终端灵活控制LED灯的颜色与动作。以转动逻辑为例,移动终端下发的多色值会根据灯的数量,下发3*灯数个byte的颜色值,这样移动终端想定义什么样颜色组合的转动都可以实现。
本实施例通过接收用户的操作指令;根据与控制器间定义的私有通讯协议生成所述操作指令对应的LED灯控制请求;将所述LED灯控制请求发送至所述控制器,以使所述控制器根据所述LED灯控制请求实现LED灯控制。其中,移动终端基于定义的私有通讯协议将用户操作指令生成LED灯控制请求后下发至控制器中,不仅实现了移动终端与控制器之间的有效通信,更能为控制器提供足够多样的LED灯控制请求,使控制器在不需要修改程序的情况下即可根据用户的任意设置实现LED灯的任意显示效果,如LED灯颜色、动作、时间波形的随意切换,实现了LED灯的灵活控制,降低了LED灯控制成本和效率。
参照图3,图3为基于第一实施例提出的步骤S20细化的流程示意图。
本实施例中,所述步骤S20具体包括:
S21:根据所述私有通讯协议的指令数据从所述操作指令中获取当前RGB三色值;
应当理解的是,由于私有通讯协议的指令数据中定义了单色和多色中RGB三色值,当用户在移动终端的应用程序中设置了需要LED灯显示的颜色参数时,移动终端可以从操作指令中获取用户设置的当前RGB三色值。
S22:将所述当前RGB三色值存储至LED灯控制请求中;
需要说明的是,将用户设置的当前RGB三色值存储至LED灯控制请求中后,控制器可以根据私有通讯协议解析出LED灯控制请求中的当前RGB三色值,并根据当前RGB三色值实现对LED灯颜色的控制。
作为另一实施例,针对部分LED灯显示颜色不鲜艳的问题,可以通过对当前RGB三色值进行调整及优化后存储至LED灯控制请求中,使LED灯显示颜色更加鲜艳。
具体地,可以识别所述当前RGB三色值中的最大颜色值;将除所述最大颜色值外的其他两种颜色值分别除以所述最大颜色值,获得对应的颜色比例;将所述其他两种颜色值分别乘以对应的颜色比例,获得其他两种颜色值对应的加权颜色值;根据所述最大颜色值及其他两种颜色值对应的加权颜色值获得最终颜色值;将所述最终颜色值存储至LED灯控制请求中。
举例说明,若用户设置的当前RGB三色值为(50,100,200),则50对应的颜色比例为50/200=0.25,100对应的颜色比例为100/200=0.5,50对应的加权颜色值为50*0.25=12.5,100对应的加权颜色值为100*0.5=50,最终颜色值为(12.5,50,200)。通过该算法既可以使LED灯显示颜色更鲜艳,又可以使优化后的颜色值按比例平滑变化,不会出现巨大波动。
和/或,
S23:根据所述私有通讯协议的指令数据从所述操作指令中获取当前颜色动作类型或当前颜色时间波形;
应当理解的是,由于私有通讯协议的指令数据中定义了颜色动作类型或颜色时间波形,当用户在移动终端的应用程序中设置了需要LED灯显示的动作或波形参数时,移动终端可以从操作指令中获取用户设置的当前颜色动作类型或当前颜色时间波形。
在实际应用中,移动终端可以实现的LED灯的颜色、动作或时间波形的单一控制,也可以实现组合控制,本实施例对此不加以限制。
S24:对应将所述当前颜色动作类型或所述当前颜色时间波形存储至LED灯控制请求中。
需要说明的是,将用户设置的当前颜色动作类型或所述当前颜色时间波形存储至LED灯控制请求中后,控制器可以根据私有通讯协议解析出LED灯控制请求中的当前颜色动作类型或所述当前颜色时间波形,并根据当前颜色动作类型或所述当前颜色时间波形实现对LED灯动作或时间波形的控制。
本实施例通过根据所述私有通讯协议的指令数据从所述操作指令中获取当前RGB三色值,和/或,所述当前颜色动作类型或所述当前颜色时间波形,并将上述信息保存至LED灯控制请求中,可以实现控制器对LED灯的颜色、动作、时间波形的单一或组合控制。通过对当前RGB三色值的优化,使得LED灯的颜色更加鲜艳,为用户呈现更好地显示效果。
参照图4,图4为基于第一实施例提出的本发明LED灯控制方法第二实施例的流程示意图。
本实施例中,步骤S10之后或步骤S30之前,所述LED灯控制方法还包括以下步骤:
S40:获取多条操作指令,并检测各操作指令中的当前通道号及其他信息;
应当理解的是,根据私有通讯协议的定义,将所述操作指令分为当前通道号及除当前通道号以外的其他信息。由于在具体操作时,用户可能下发多条操作指令,指示不同通道号对应的LED灯显示同样的颜色、动作或时间波形,因此可以对各操作指令中的当前通道号及其他信息进行检测,判断是否只有通道号不同,在只有通道号不同时,采取措施降低数据带宽。
S50:当各操作指令中的其他信息相同时,根据所述私有通讯协议中的通道号及各操作指令中的当前通道号获得混合通道号值;
易于理解的是,当各操作指令中仅通道号不同时,根据所述私有通讯协议中定义的通道号格式,将当前通道号更换为混合通道号值。当各操作指令中其他信息不同时,将当前通道号更换为单一通道号值。
S60:将所述混合通道号值存储至LED灯控制请求中;
应当理解的是,若当前通道号为混合通道值时,将混合通道号值存储,若当前通道号为单一通道号值时,则将单一通道号值存储至LED灯控制请求中。
进一步地,作为另一实施例,在将当前通道号更换为单一通道号值或混合通道号值后,还可以根据私有通讯协议重新计算校验和,并将计算后的校验和存储至LED灯控制请求中。
S70:将各操作指令中的其他信息合并后存储至LED灯控制请求中。
应当理解的是,在各操作指令中仅通道号不同时,将其他信息合并成一条信息后存储至LED控制请求中,减少了控制器接收的数据量,降低了数据带宽。而当各操作指令中其他信息不同时,为了保障数据的准确性,需要将其他信息分别存储到LED灯控制请求中。
本实施例通过当移动终端检测到要发送的消息只有通道号不同,而颜色值、灯数等信息相同时,移动终端会将分别发送给多个通道的多条消息合并成一条消息,发送到控制器处理,有效降低了数据带宽。
参照图5,图5为基于第一实施例提出的本发明LED灯控制方法第三实施例的流程示意图。
本实施例中,步骤S10之前所述LED灯控制方法还包括以下步骤:
S110:检测所述移动终端中的应用程序是否启动;
应当理解的是,用户通过移动终端中的应用程序实现对LED灯显示效果的控制,所述应用程序可以为运行于移动终端上的可执行程序或App,本实施例对此不加以限制。
S120:当所述应用程序启动时,从所述私有通讯协议的扩展配置数据中读取预设电压阈值、电压转换基数及电压补偿值;
应当理解的是,预设电压阈值、电压转换基数及电压补偿值均为预先设置在私有通讯协议的扩展配置数据中的值,其中,考虑到不同的LED灯控制方式(单色或多色)对电压影响的差异,电压补偿值可以分为单色时进行低电保护的电压补偿值和多色、颜色动作类型或颜色时间波形时进行低电保护的电压补偿值。
S130:从所述控制器中获取LED灯载体终端的采样电压;
易于理解的是,LED灯载体终端,指放置LED灯的载体终端,如当LED灯为车灯时,载体终端为车辆。
需要说明的是,由于私有通讯协议中定义了当前电压数据,在具体实现中可以根据私有通讯协议中定义的当前电压数据的格式从控制器中获取采样电压。
S140:根据所述采样电压、所述电压转换基数及所述电压补偿值获得所述LED灯载体终端的实际电压值;
需要说明的是,由于控制器在控制LED灯时电流会发生变化,如灯亮时电流大,灯暗时电流小,导致控制器对LED灯载体终端的采样电压有差异,如在电流较大时采样电压会偏低,因此为了获得准确的实际电压值,需要对电压进行补偿,具体地,可以通过下式获得实际电压:
V1=(V0+B)*S+Offset;
其中,V0为采样电压,V1为实际电压值,B为电压转换基数,offset为电压补偿值,S为预设常数。
S150:在所述实际电压值小于所述预设电压阈值时,根据所述扩展配置数据中的开关灯指示将关灯指示存储至LED灯控制请求中。
易于理解的是,当实际电压值小于所述预设电压阈值时,说明LED灯载体终端电量不足,此时为了给LED灯载体终端省电,需要关掉LED灯,以进行低电保护。
作为另一实施例,检测到移动终端中的应用程序异常退出时,此时控制器检测到网络连接已断开,控制器同样可以使用上述步骤继续进行低电保护逻辑的判断,在实际电压值小于预设电压阈值时关掉LED灯省电。
本实施例通过在移动终端检测LED灯载体终端的实际电压值并在实际电压值小于预设电压阈值时向控制器下发关灯指示,使控制器进行低电保护控制,保障了LED灯载体终端电量的最大化利用。
本发明进一步提供一种LED灯控制系统。
参照图6,图6为本发明LED灯控制系统一实施例的功能模块图。
本实施例中,所述LED灯控制系统包括:
所述移动终端10,用于接收用户的操作指令,根据与所述控制器间定义的私有通讯协议生成所述操作指令对应的LED灯控制请求,将所述LED灯控制请求发送至所述控制器;
可以理解的是,本实施例的执行主体为移动终端。所述移动终端可以为智能手机、平板电脑、笔记本电脑或智能手环等设备,本实施例对此不加以限制。
需要说明的是,用户的操作指令,指用户在移动终端设置的LED灯显示效果的参数,包括当前RGB三色值、当前颜色动作类型或所述当前颜色时间波形、当前通道号等信息。
在具体实现中,移动终端与控制器之间需要先建立网络连接,所述网络连接可采用蓝牙,也可以采用WIFI、GPRS等技术连接,本实施例对此不加以限制。当移动终端与控制器之间建立网络连接后,可以通过预先定义好的私有通讯协议生成操作指令对应的LED灯控制请求。
作为一实施例,预先定义的私有通讯协议的内容如下:
私有通讯协议包括包头及包体;其中,所述包头包括魔术字、信息类型、信息长度、校验和、通道号及灯数;所述包体包括认证数据、控制器版本号、指令数据、当前电压数据、事件定义颜色数据、事件类型数据及扩展配置数据。
移动终端与控制器之间可以传输八种消息,即LED灯控制请求的类型:
查询灯数消息:消息包头+认证数据
返回灯数消息:消息包头+控制器版本号
指令消息:消息包头+[[单色|多色]+[动作]|[时间波形]]
查询电压消息:消息包头
返回电压消息:消息包头+当前电压数据
事件定义消息:消息包头+事件定义颜色数据
事件上报消息:消息包头+事件类型数据
扩展配置消息:消息包头+扩展配置数据
其中[]表示0个或1个,|表示2选1
消息包头的定义如下表1所示:
magic | type | length | checksum | channel | lednum |
表1
magic:1byte,魔术字
type:1byte,消息类型
当type=1时,所有LED灯一种颜色,不带动作和时间波形,使用当前的动作或时间波形
当type=2时,所有LED灯一种颜色,带动作,不带时间波形
当type=3时,不同LED灯不同颜色,不带动作和时间波形,使用当前的动作或时间波形
当type=4时,不同LED灯不同颜色,带动作,不带时间波形
当type=5时,时间波形里面包含颜色
当type=6时,颜色模式不变,只带动作
当type=7时,移动设备查询灯数
当type=8时,移动设备查询控制器状态
当type=9时,控制器返回灯数
当type=10时,控制器返回状态
length:2bytes,消息总长度
checksum:1byte,校验和
channel:1byte,通道号
通道号支持两种类型:
a.单一通道号值:000、001、010、011,表示第1-4个通道
b.混合通道值:最高位置1,目的是与单一通道号值区分,低4位分别表示是否对对应通道号生效,如下表2所示,C1为0,表示对第1个通道不生效;C1为1,表示对第1个通道生效。
1 | 0 | 0 | 0 | C4 | C3 | C2 | C1 |
表2
lednum:1byte,灯数
消息包体的定义如下:
6、认证数据:6bytes。
R1 | R2 | R3 | D1 | D2 | D3 |
表3
如上表3所示,R1、R2、R3是3个随机字节,D1、D2、D3是用预设算法将R1R2R3加密后的值,所述预设算法可以是哈希算法、对称算法(Data Encryption Standard,DES)等,本实施例对此不加以限制。
在具体实现中,控制器收到LED灯控制请求后会取出R1R2R3,然后采用同样的算法计算出E1E2E3,只有E1E2E3与D1D2D3相同时,才认为认证通过,通过该认证数据的设计,使得移动终端与控制器之间的数据传输更加安全可靠,保障了控制器接收到的LED灯控制请求的准确性。
7、控制器版本号:3bytes。
8、指令数据:包括单色、多色、颜色动作类型或颜色时间波形,具体定义如下:
a.单色:3bytes,携带RGB三色值。
b.多色:(3*lednum)bytes,携带每个LED灯的RGB三色值。
c.颜色动作类型:包括动作标号、颜色渐变数据、频闪动作数据、转动动作数据、预留定义数据。
动作标号:1byte,定义如下:
0为静态的情况,没有动作;1为亮度调节;2为颜色渐变;3为频闪(带频闪动作数据);4为转动(带转动动作数据)。
颜色渐变数据:1byte,指示颜色渐变的速度。
频闪动作数据:1byte,指示频闪的闪动频率
转动动作数据:4byte,定义如下表4所示:
mode | direction | speed | hop |
表4
mode:1byte,定义如下:
0为自定义模式(只有mode为0时,下面的direction\speed\hop才有效);1为固定模式1;2为固定模式2...;7为固定模式7。
direction:转动方向
speed:转动速度
hop:跳动间隔
预留定义数据:6bytes。
d.颜色时间波形:7bytes。
颜色时间波形的结构为:
totaltime(1byte)+divisionnum(1byte)+timedata(5byte)。其中,timedata的结构定义如下表5所示:
time | R | G | B | wave |
表5
time:1byte,该段颜色持续的时间
RGB:3bytes,颜色值
wave:1byte,波形类型
9、当前电压数据:2bytes
当前电压数据的结构为:Part1(1bytes)+Part2(1bytes),其中Part1表示当前电压整数部分,Part2表示当前电压小数部分。
10、事件定义颜色数据:17bytes,定义如下表6所示:
brakedetect | turndetect | keydelaysec | keyhandle | keyreport | keymapledchannel | signalcolorkey |
表6
其中,
brakedetect:用于指示控制器是否检测刹车信号
turndetect:用于指示控制器是否检测转向信号
keydelaysec:用于指示控制器刹车和转向信号最短有效时间
keyhandle:用于指示控制器是否根据刹车转向信号来控制LED灯
keyreport:用于指示控制器是否上报刹车转向信号事件到移动终端
keymapledchannel:用于指示各通道被信号控制的逻辑
signalcolorkey:用于指示转向和刹车显示的颜色
6、事件类型数据:2bytes
事件类型数据的结构为:KeyId(1bytes)+State(1bytes),其中,KeyId表示事件类型(左转0,右转1,刹车2),State表示事件状态(停止0,开始1)。
7、扩展配置数据:17bytes,定义如下表7所示:
delayturnout | voltagethreshold | baseplusvoltage | singlemaxvoltage | othermaxvoltage | reserved |
表7
delayTurnOut:1byte,开关灯指示,用于指示网络断开之后控制器是否将LED灯关掉,如果为0,则控制器会将LED灯关掉;如果为1,则控制器不关灯,除非电压低于低电压保护的电压阈值。
voltagethreshold:2bytes,用于存储低电压保护的电压阈值。
baseplusvoltage:2bytes,用于存储将ADC采样电压转换成实际电压值的电压转换基数
singlemaxvoltage:2bytes:,用于存储移动终端下发单色时进行低电保护的电压补偿值
othermaxvoltage:2bytes,用于存储移动终端下发多色、颜色动作类型或颜色时间波形时进行低电保护的电压补偿值
reserved:8bytes,预留。
所述控制器20,用于接收所述LED灯控制请求,并根据所述LED灯控制请求实现LED灯控制。
可理解的是,当控制器接收到LED灯控制请求后,可以根据与移动终端之间定义的私有通讯协议对该LED灯控制请求进行解析,从而实现对LED灯的控制,在控制器对LED灯的控制过程中,面对用户的不同设置,无需修改控制器程序,即可通过移动终端灵活控制LED灯的颜色与动作。以转动逻辑为例,移动终端下发的多色值会根据灯的数量,下发3*灯数个byte的颜色值,这样移动终端想定义什么样颜色组合的转动都可以实现。
本发明通过接收用户的操作指令;根据与控制器间定义的私有通讯协议生成所述操作指令对应的LED灯控制请求;将所述LED灯控制请求发送至所述控制器,以使所述控制器根据所述LED灯控制请求实现LED灯控制。其中,移动终端基于定义的私有通讯协议将用户操作指令生成LED灯控制请求后下发至控制器中,不仅实现了移动终端与控制器之间的有效通信,更能为控制器提供足够多样的LED灯控制请求,使控制器在不需要修改程序的情况下即可根据用户的任意设置实现LED灯的任意显示效果,如LED灯颜色、动作、时间波形的随意切换,实现了LED灯的灵活控制,降低了LED灯控制成本和效率。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种LED灯控制方法,其特征在于,所述LED灯控制方法包括以下步骤:
接收用户的操作指令;
根据与控制器间定义的私有通讯协议生成所述操作指令对应的LED灯控制请求;
所述根据与控制器间定义的私有通讯协议生成所述操作指令对应的LED灯控制请求的步骤包括:
根据所述私有通讯协议的指令数据从所述操作指令中获取当前RGB三色值;
将所述当前RGB三色值存储至LED灯控制请求中;
将所述LED灯控制请求发送至所述控制器,以使所述控制器根据所述LED灯控制请求实现LED灯控制;
所述将所述LED灯控制请求发送至所述控制器,以使所述控制器根据所述LED灯控制请求实现LED灯控制的步骤,包括:
将所述LED灯控制请求发送至所述控制器,以使所述控制器对应根据所述LED灯控制请求中的所述当前RGB三色值实现LED灯控制。
2.如权利要求1所述的LED灯控制方法,其特征在于,所述私有通讯协议包括包头及包体;其中,
所述包头包括魔术字、信息类型、信息长度、校验和、通道号及灯数;
所述包体包括认证数据、控制器版本号、指令数据、当前电压数据、事件定义颜色数据、事件类型数据及扩展配置数据。
3.如权利要求2所述的LED灯控制方法,其特征在于,所述根据与控制器间定义的私有通讯协议生成所述操作指令对应的LED灯控制请求的步骤还包括:
根据所述私有通讯协议的指令数据从所述操作指令中获取当前颜色动作类型或当前颜色时间波形;
对应将所述当前颜色动作类型或所述当前颜色时间波形存储至LED灯控制请求中;
所述将所述LED灯控制请求发送至所述控制器,以使所述控制器根据所述LED灯控制请求实现LED灯控制的步骤还包括:
将所述LED灯控制请求发送至所述控制器,以使所述控制器对应根据所述LED灯控制请求中的所述当前颜色动作类型或所述当前颜色时间波形实现LED灯控制。
4.如权利要求1所述的LED灯控制方法,其特征在于,所述根据所述私有通讯协议的指令数据从所述操作指令中获取当前RGB三色值的步骤之后,所述方法还包括:
识别所述当前RGB三色值中的最大颜色值;
将除所述最大颜色值外的其他两种颜色值分别除以所述最大颜色值,获得对应的颜色比例;
将所述其他两种颜色值分别乘以对应的颜色比例,获得其他两种颜色值对应的加权颜色值;
根据所述最大颜色值及其他两种颜色值对应的加权颜色值获得最终颜色值;
将所述最终颜色值存储至LED灯控制请求中。
5.如权利要求2所述的LED灯控制方法,其特征在于,所述操作指令包括当前通道号以及除当前通道号以外的其他信息;所述方法还包括:
获取多条操作指令,并检测各操作指令中的当前通道号及其他信息;
当各操作指令中的其他信息相同时,根据所述私有通讯协议中的通道号及各操作指令中的当前通道号获得混合通道号值;
将所述混合通道号值存储至LED灯控制请求中;
将各操作指令中的其他信息合并后存储至LED灯控制请求中。
6.如权利要求5所述的LED灯控制方法,其特征在于,所述检测各操作指令中的当前通道号及其他信息的步骤之后,所述方法还包括:
当各操作指令中的其他信息不相同时,根据所述私有通讯协议中的通道号及各操作指令中的当前通道号获得单一通道号值;
将所述单一通道号值存储至LED灯控制请求中;
将各操作指令中的其他信息分别存储至LED灯控制请求中。
7.如权利要求2至6中任一项所述的LED灯控制方法,其特征在于,所述方法应用于移动终端,所述接收用户的操作指令的步骤之前,所述方法还包括:
检测所述移动终端中的应用程序是否启动;
当所述应用程序启动时,从所述私有通讯协议的扩展配置数据中读取预设电压阈值、电压转换基数及电压补偿值;
从所述控制器中获取LED灯载体终端的采样电压;
根据所述采样电压、所述电压转换基数及所述电压补偿值获得所述LED灯载体终端的实际电压值;
在所述实际电压值小于所述预设电压阈值时,根据所述扩展配置数据中的开关灯指示将关灯指示存储至LED灯控制请求中。
9.一种LED灯控制系统,其特征在于,所述LED灯控制系统用于实现如权利要求1至8中任一项所述的LED灯控制方法的步骤,所述LED灯控制系统包括移动终端及控制器;
所述移动终端,用于接收用户的操作指令,根据与所述控制器间定义的私有通讯协议生成所述操作指令对应的LED灯控制请求,并将所述LED灯控制请求发送至所述控制器;
所述控制器,用于接收所述LED灯控制请求,并根据所述LED灯控制请求实现LED灯控制。
10.一种LED灯控制设备,其特征在于,所述LED灯控制设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的LED灯控制程序,所述LED灯控制程序配置为实现如权利要求1至8中任一项所述的LED灯控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910841076.XA CN110572905B (zh) | 2019-09-02 | 2019-09-02 | Led灯控制方法、系统及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910841076.XA CN110572905B (zh) | 2019-09-02 | 2019-09-02 | Led灯控制方法、系统及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110572905A CN110572905A (zh) | 2019-12-13 |
CN110572905B true CN110572905B (zh) | 2022-03-11 |
Family
ID=68778034
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910841076.XA Active CN110572905B (zh) | 2019-09-02 | 2019-09-02 | Led灯控制方法、系统及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110572905B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106969302A (zh) * | 2016-01-12 | 2017-07-21 | 松下知识产权经营株式会社 | 照明设备以及照明系统 |
CN107040539A (zh) * | 2017-04-20 | 2017-08-11 | 广州华多网络科技有限公司 | 一种协议数据包构建方法、装置及计算机系统 |
CN109842608A (zh) * | 2017-11-29 | 2019-06-04 | 松下知识产权经营株式会社 | 通信装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8860843B2 (en) * | 2011-03-11 | 2014-10-14 | Nokia Corporation | Method and apparatus for capturing an image of an illuminated area of interest |
CN204707304U (zh) * | 2015-01-29 | 2015-10-14 | 广州景晴光电科技有限公司 | 可任意定制灯光模式的多像素rgb控制器 |
-
2019
- 2019-09-02 CN CN201910841076.XA patent/CN110572905B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106969302A (zh) * | 2016-01-12 | 2017-07-21 | 松下知识产权经营株式会社 | 照明设备以及照明系统 |
CN107040539A (zh) * | 2017-04-20 | 2017-08-11 | 广州华多网络科技有限公司 | 一种协议数据包构建方法、装置及计算机系统 |
CN109842608A (zh) * | 2017-11-29 | 2019-06-04 | 松下知识产权经营株式会社 | 通信装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110572905A (zh) | 2019-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11812381B2 (en) | Wideband channel access methodology and system for wireless stations | |
US11044672B2 (en) | Station wake-up method and station | |
AU2007281912B2 (en) | Synchronization between wireless devices while saving power | |
CN102656939B (zh) | 用于无线网络中的节电操作的空闲超时的公告时间的方法和系统 | |
US9913216B1 (en) | Techniques to reduce power consumption in mobile device during low-power mode | |
US20140313957A1 (en) | Method and Device for Power Saving | |
US20230362818A1 (en) | Apparatuses, methods, and computer-readable medium for communication in a wireless local area network | |
US11671998B2 (en) | Apparatuses, methods, and computer-readable medium for communication in a wireless local area network | |
CN204425718U (zh) | 一种基于二维码的智能led灯控系统 | |
US8908105B2 (en) | Wireless display system, wireless display device and method for switching working mode | |
EP3079447B1 (en) | Controlling networked lighting devices | |
KR20120052549A (ko) | 저속 네트워크 통신을 이용한 단말 간 접속 제어 방법 및 이를 이용한 장치 | |
CN110572905B (zh) | Led灯控制方法、系统及设备 | |
JP2007116209A (ja) | 無線lan装置 | |
US20230130117A1 (en) | Systems and methods of restricted twt for wireless communication | |
WO2023069691A1 (en) | Systems and methods of restricted twt for wireless communication | |
CN113794610B (zh) | 网关通讯方法、装置、设备及存储介质 | |
Hu et al. | IoT-based LED lighting control in smart home | |
CN212231495U (zh) | 一种电子墨水屏显示系统 | |
KR20150006165A (ko) | 무선통신 단말기 및 그 제어방법 | |
US8305385B2 (en) | Display device with embedded networking capability | |
WO2006087868A1 (ja) | マルチモード通信装置 | |
TW202329752A (zh) | 用於指示受限目標喚醒時間的服務週期資訊的系統和方法 | |
JP6182950B2 (ja) | 通信システム、通信端末、及びプログラム | |
KR20220066591A (ko) | 무선 통신을 수행하는 방법 및 이를 지원하는 전자 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |