掌桥专利:专业的专利平台
掌桥专利
首页

一种LED灯的混光控制方法

文献发布时间:2023-06-19 19:30:30


一种LED灯的混光控制方法

技术领域

本发明涉及光电技术领域,尤其是涉及一种LED灯的混光控制方法。

背景技术

目前,对于LED灯的混光控制,软件端的颜色通常用RGB或HSL方式描述。而在实际使用过程中,LED灯珠的电流仅和光通量成正比关系,因此,软件仅能通过控制LED灯珠的电流,以混合得到目标颜色。其关键是得到目标颜色在色度图上的坐标,以及不同颜色LED灯珠(加色法原色)的光通量的比例设置,使混合后的颜色落在指定的坐标上。

通常软件端使用RGB描述的颜色等比换算成LED灯珠的电流,或针对常用颜色,预设电流值,通过此类方式控制产品的颜色无法精确调控,且会存在一定的偏差。本发明通过三原色的刺激值的作用原理,提供一种LED灯的混光控制方式,以精确匹配目标颜色。

发明内容

本发明是为了克服现有技术的控制产品的颜色无法精确调控,且会存在一定的偏差的问题,提供一种LED灯的混光控制方法。

为了实现上述目的,本发明采用以下技术方案:

一种LED灯的混光控制方法,包括以下步骤:S1:测得LED灯珠在色度图上的坐标点R、G、B,并换算得到目标颜色的坐标点T;S2:比较点R、G、B与点T,直线BT与直线RG相交于点T

作为本发明的优选方案,所述S1中换算得到目标颜色的坐标点T的换算方式包括:若颜色采用HSL方式描述,则通过计算函数算法换算成RGB方式描述;若颜色采用RGB方式描述,则通过计算函数算法换算成色度图上的坐标点T。

作为本发明的优选方案,所述T

/>

作为本发明的优选方案,所述T

作为本发明的优选方案,所述T

作为本发明的优选方案,所述S4具体为:假定原色G的光通量为1,则原色R的光通量为(X

作为本发明的优选方案,所述S5具体包括以下步骤:S51:以光通量为X坐标,电流为Y坐标,测得一定数量的坐标点,通过拟合得到光通量和电流的关系函数;S52:取(原色R的光通量/原色R的最大光通量)、(原色G的光通量/原色G的最大光通量)、(原色B的光通量/原色B的最大光通量)中的最大值A,以及HSL中所描述的亮度L,得到原色R的最终光通量=原色R的光通量*L/A、原色G的最终光通量=原色B的光通量*L/A、原色B的最终光通量=原色B的光通量*L/A;S53:将最终光通量代入拟合函数,求得LED灯珠所需的电流值;S54:根据求得LED灯珠所需的电流值对LED灯珠的发光进行控制。

作为本发明的优选方案,所述S2还包括:若点T与点R、G、B中的一点重合,则设定该点的光通量与其他两点的比值为1:0:0,并直接执行S5。

作为本发明的优选方案,所述还包括:若交点T

因此,本发明具有以下有益效果:

附图说明

图1是本发明的方法流程图;

图2是本发明是实施例的色度图。

具体实施方式

下面结合附图与具体实施方式对本发明做进一步的描述。

如图1所示,一种LED灯的混光控制方法,包括以下步骤:S1:测得LED灯珠在色度图上的坐标点R、G、B,并换算得到目标颜色的坐标点T;S2:比较点R、G、B与点T,直线BT与直线RG相交于点T

如图2所示,首先通过换算得到目标颜色在色度图上的坐标点T,并分别测得LED灯珠在色度图上的坐标点R、G、B(此处以R、G、B所描述的坐标点可以是任何颜色,并不一定代表红、绿、蓝),过点B、T做辅助线,与R、G相交与点T

通过加色法原理,线段BT

由于最终光通量为原色的光通量总和,而光通量总和可以通过HSL中描述的亮度乘以设定的最大光通量得到。因此,在得到光通量总和以及原色R、G、B的光通量比值后,即可求得原色R、G、B的光通量,进而换算成LED灯珠的电流。

注1、由于坐标点T

注2、由于坐标点T可能位于如坐标点T

注3、应排除坐标点T位于原色R、G、B的情况,即目标颜色仅包含原色R、G、B中的某一个原色。

在该实施例中,对本发明的一种LED灯的混光控制方法作进一步详细描述。

1、首先,测得RGB LED灯珠在色度图上的坐标点R、G、B,并换算得到目标颜色的坐标点T,换算方式如下:

a:如果颜色采用HSL方式描述,则将其换算成RGB方式描述,计算函数如下:

static inline float hsl_2_rgb_ext(float v1,float v2,float vh)

{

if(vh<0)

{

vh+=1;

}

if(vh>1)

{

vh-=1;

}

if(6*vh<1)

{

return v1+(v2-v1)*6*vh;

}

if(2*vh<1)

{

return v2;

}

if(3*vh<2)

{

return v1+(v2-v1)*(2.0/3.0-vh)*6;}

return v1;

}

void hsl_2_rgb(float h,float s,float l,float*r,float*g,float*b){

float var_1;

float var_2;

if(0==s)

{

*r=l;

*g=l;

*b=l;

}

else

{

if(l<0.5)

{

var_2=l*(1+s);

}

else

{

var_2=(l+s)-(l*s);

}

var_1=2*l-var_2;

*r=hsl_2_rgb_ext(var_1,var_2,h+(1.0/3.0));

*g=hsl_2_rgb_ext(var_1,var_2,h);

*b=hsl_2_rgb_ext(var_1,var_2,h-(1.0/3.0));

}

}

b、将RGB方式描述的颜色,转换为色度图上的坐标点T,计算函数如下:

void rgb_2_cie1931(float r,float g,float b,float*x,float*y)

{

float s;

float_r;

float_g;

float_b;

float_x;

float_y;

float_z;

s=r+g+b;

_r=r/s;

_g=g/s;

_b=b/s;

r=(_r>0.04045)?pow((_r+0.055)/(1.0+0.055),2.4):(_r/12.92);g=(_g>0.04045)?pow((_g+0.055)/(1.0+0.055),2.4):(_g/12.92);b=(b>0.04045)?pow((_b+0.055)/(1.0+0.055),2.4):(_b/12.92);_x=r*0.649926+g*0.103455+b*0.197109;

_y=r*0.234327+g*0.743075+b*0.022598;

_z=r*0.0000000+g*0.053077+b*1.035763;

*x=_x/(_x+_y+_z);

*y=_y/(_x+_y+_z);

}

2、记点R、G、B与点T坐标点为(X

3、沿点B与点T作辅助线,与线段RG交于点T

X

X

Y

4、如果交点位于点T

5、同理,可以求得点T

X

X

Y

X

X

Y

6、已知点T

如果原色G的光通量为0,假定原色R的光通量为1,原色B的光通量为(X

如果原色R、G的光通量均为0,则假定原色B的光通量为1。

7、如果直线BT平行于直线RG,则通过T

8、通常,光通量和电流的关系不一定严格遵循一元一次函数分布,因此:

a)、以光通量为X坐标,电流为Y坐标,测得一定数量的坐标点,可以拟合得到光通量和电流的关系函数;

b)、取(原色R的光通量/原色R的最大光通量)、(原色G的光通量/原色G的最大光通量)、(原色B的光通量/原色B的最大光通量)中的最大值A,以及HSL中所描述的亮度L,得到原色R的最终光通量=原色R的光通量*L/A、原色G的最终光通量=原色B的光通量*L/A、原色B的最终光通量=原色B的光通量*L/A;

c)、将最终光通量代入拟合函数,求得LED灯珠所需的电流值。

根据求得LED灯珠所需的电流值对LED灯珠的发光进行控制。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何不经过创造性劳动想到的变化或替换,都应涵盖在本发明保护范围之内。

技术分类

06120115930733