The present disclosure relates to controllers for lamps, and methods of controlling lamps, including colour controllable lamps such as RGB lamps.
According to a first aspect of the present disclosure there is provided a controller for a lamp, comprising:
Such a controller can advantageously enable a lamp to be used in two modes of operation: a stabilized-mode that can provide a stable/predictable colour when a requested colour is not highly saturated, which can take into account how the temperatures associated with the lamp can affect the colour of light provided by the lamp; and a full-colour-mode that can utilise the full colour that the lamp can provide when a requested colour is highly saturated.
In one or more embodiments the stabilized-lamp-control-signal represents an equally or less saturated colour than the full-colour-lamp-control-signal.
The stabilization-module may be configured to add one or more colour-correction-values to colour-values that define a full-colour-gamut in order to generate the stabilized-colour-values. The full-colour-lamp-control-signal may represent a colour-value in the full-colour-gamut. The stabilized-lamp-control-signal may represent a colour-value in a stabilized-colour-gamut, as defined by the stabilized-colour-values.
In one or more embodiments the controller is configured to receive information representative of a requestable-colour-gamut for the lamp. The threshold value may correspond to a boundary of the requestable-colour-gamut.
In one or more embodiments the lamp comprises first, second and third colour LEDs. The stabilized-colour-values may comprise RGB values. The stabilized-lamp-control-signal may be representative of a colour-value that is within a colour gamut defined by the stabilized-colour-values.
The stabilized-lamp-control-signal may represent a colour within a stabilized-colour-gamut of the lamp having stabilized-chromaticity-limits. The full-colour-lamp-control-signal may represent a colour within a full-colour-gamut of the lamp having full-colour-chromaticity-limits. The stabilized-colour-gamut may be a subset of the full-colour-gamut.
In one or more embodiments the lamp comprises first, second and third colour LEDs. The threshold value may represent a light output of the lamp provided in accordance with the stabilized-lamp-control-signal for which one of the LEDs has a light output below a LED-threshold-value.
In one or more embodiments the stabilization-module is further configured to:
In one or more embodiments the stabilization-module is configured to set a degree of stabilization that is applied to the requested-colour-value based on the difference-value. In one or more embodiments the controller is configured to linearly combine the full-colour-lamp-control-signal and the stabilized-lamp-control-signal in order to provide the lamp-control-signal.
In one or more embodiments the coefficients of the linear combination are functions of a difference-value representative of the distance between (i) the requested-colour-value; and (ii) a boundary of a requestable colour gamut.
In one or more embodiments the full-colour-module is configured to provide the full-colour-lamp-control-signal based on the temperature-values.
In one or more embodiments the threshold value is 1%, 2%, or 5% of a maximum colour value.
In one or more embodiments the lamp comprises a white LED.
There may be provided a method of controlling a lamp, the method comprising:
While the disclosure is amenable to various modifications and alternative forms, specifics thereof have been shown by way of example in the drawings and will be described in detail. It should be understood, however, that other embodiments, beyond the particular embodiments described, are possible as well. All modifications, equivalents, and alternative embodiments falling within the spirit and scope of the appended claims are covered as well.
The above discussion is not intended to represent every example embodiment or every implementation within the scope of the current or future Claim sets. The figures and Detailed Description that follow also exemplify various example embodiments. Various example embodiments may be more completely understood in consideration of the following Detailed Description in connection with the accompanying Drawings.
One or more embodiments will now be described by way of example only with reference to the accompanying drawings in which:
Colour-controllable lamps typically include three light sources, respectively producing red (R), green (G) and blue (B) outputs. Sometimes more light sources are added to improve the lamp's performance at a specific colour, for example white (W) light source is added. By controlling the intensity of each of the light sources, a user may control both the perceived colour, or chromaticity, and the luminance, or intensity, of the lamp.
One or more examples disclosed herein relate to colour-changeable LED lamps. LED colour output may not be stable, and the human eye is sensitive to colour changes. Therefore there is a need for precise lamp output control. The knowledge of a junction temperature of the LEDs can allow for compensation for colour and intensity change. However, LED RGB(W) lamps that use output colour stabilization can have a limited colour gamut. Using primary LEDs instead of virtual colour corners as light sources for colour mixing, when a requested colour is close to the boundary of the stabilized colour gamut, can extend the colour gamut as and when it is beneficial to do so.
It will be appreciated that a user has 3 degrees of freedom in controlling a RGB lamp—that is to say the magnitude of each of the red, green and blue channels. Two of these degrees of freedom control the chromaticity of the output, and the third degree controls the intensity. In the case of, for instance, 8-bit digital control where each of R, G and B can be assigned values between 0 and 255, and ignoring the variation of perceived intensity with colour, the sum R+G+B is indicative of the luminance, and the ratios B/R and G/R are indicative of chromaticity. Of course any other two pairs of ratios may be used; the third ratio will be determined from the two pairs of ratios and the sum.
In an ideal situation, the three light sources are “perfect” in the sense that they produce respectively monochromatic R, G and B light, which has a fixed chromaticity—that is to say it has fixed x and y, colour-coordinates, independent of operating conditions such as intensity or operating temperature.
As is clear from the figure, the light output from each of the LEDs does not have a fixed chromaticity/colour, that is to say it is not represented by a single point on the chart.
Rather, it varies with operating conditions, and in particular with the junction temperature of the LED. Moreover, and although this is not shown on the chart, the luminance—that is to say the intensity—of the light output from each LED also varies with its junction temperature.
x-coordinate(×105)=(−0.0586)·T2+(25.712)·T+(66406), (1)
y-coordinate(×105)=(0.0592)·T2+(25.753)·T+(33574), (2)
and luminance(×102)=(−08976)·T2+(−522.08)·T+(65072). (3)
These 9 fitting parameters thus define the operation of the red LED. So for three LEDs a total of 27 parameters are required. Use of these parameters can enable the xy coordinates and luminance of a RGB lamp to be determined at given temperature value.
Returning to
The triangle bounded by the three colour corners 311, 321, 331 represents a range of chromaticity values that should always be achievable by an RGB lamp, irrespective of operating conditions. This triangle will be referred to as a requestable-colour-gamut 315, and can be encoded onto a lamp, or otherwise associated with the lamp. The requestable-colour-gamut 315 represents a range of chromaticities that can be provided in a stable way, and can be used by a lamp controller to ensure that the lamp is not instructed to produce light that is outside of the requestable-colour-gamut 315 because such light would be unpredictable/unstable.
Such colour stabilization (for example using a fixed corners algorithm to define the three (fixed) colour corners 311, 321, 331) leads to a restricted/limited colour gamut of an RGB LED lamp. The restriction results from the fact that colour is stabilized for all possible primary LED colour variations. This prevents the lamp from rendering maximally saturated colours.
In one example, a required colour value is in an RGB format, and each of the individual RGB values can take a value between 0 and 255 (corresponding to eight bit digital control). Light with chromaticity at point A may be achieved by (255, 0, 255); chromaticity at point B by (0, 10, 255), and chromaticity at point C by (20, 255, 20) and chromaticity at point D by (255, 255, 255).
The chromaticity values of each of the actual LEDs at any given temperature may be determined using the quadratic fitting parameters described above. Then, provided that, for all temperatures, the chromaticity value of each of the actual LEDs is suitably positioned outside of the requestable-colour-gamut 315 formed by the colour corners, the chromaticity of the actual LEDs may be “corrected”, so that they have the chromaticity of the colour corners 311, 321, 331 respectively, by adding a small amount of light from the other LEDs, to each LED. For the green LED, having a green-variability-line shown as 320, the red and blue LEDS can be operated such that together they output purple light with a specific chromaticity that brings the actual light output by the green LED down to the green colour corner 321. The variability of purple light required to achieve this is shown as a plurality of discrete values in
By reducing the chromaticity of each LED down to an associated colour corner 311, 321, 331 before subsequent colour mixing, a consistent and stable light output can be provided by the lamp for a given required colour value, irrespective of where on the variability curves 310, 320, 330 an LED happens to be operating. By using a temperature-value associated with the LEDs, software can determine the degree to which the chromaticity of each LED exceeds its associated colour corner 311, 321, 331, and therefore how the other 2 LEDs should be operated to bring the chromaticity of the lamp down to the associated colour corner 311, 321, 331.
In this way, a controller can generate stabilized-colour-values (illustrated as the colour corners 311, 321, 331 in
The controller can then generate a stabilized-lamp-control-signal based on the requested-colour-value and the colour corners 311, 321, 331 (stabilized-colour-values). The stabilized-lamp-control-signal can have a component for each of the individual LEDs. For example, the controller can perform respective linear combinations of each component of the requested-colour-value and the associated components of each of the colour corners 311, 321, 331 in order to determine the stabilized-lamp-control-signal. This signal is an instruction signal for the lamp (which may simply have suitable current levels for driving the LEDs in the lamp) that will cause the lamp to provide a predictable/stable light output, irrespective of the temperature of operation.
A numerical example, using RGB colour values is as follows:
A requested-colour-value is (255, 255, 0), which represents yellow light.
For a given temperature, the stabilized-colour-values (colour corners 311, 321, 331) have been determined as:
The stabilized-colour-values are then mixed (optionally proportionally) in accordance with the requested-colour-value. For the red LED of the lamp, the red component of each stabilized-colour-value is mixed with the corresponding colour component of the requested-colour-value, and the results of each mix are combined. By “corresponding”, it is meant the colour component of the requested-colour-value that corresponds to the stabilized-colour-value (colour corner) in question. As illustrated below, (a), (b) and (c) are calculated and then added together to give (d), which is representative of the red component of the stabilized-lamp-control-signal:
Similarly, for the green LED:
Similarly, for the blue LED:
Then, the stabilized-lamp-control-signal can be provided that has a red component that is based on 65535 a green component that is based on 65535 and a blue component that is based on 510. These values can be normalised to 255 by dividing by 257 and rounding to integers, such that the stabilized-lamp-control-signal is representative of an RGB value of (255, 255 2). In some examples, each component can be proportional to its associated numerical value. In some examples, additional processing may be performed on the stabilized-lamp-control-signal, for example to account for variations in light intensity with temperature, before generating a final lamp-control-signal that is received by the lamp.
The temperature correction for each of the LEDs (in order to determine the stabilized-colour-values) may be carried out using a lookup table. However, for implementations that use 12 bit control (for example), the lookup table may become very large. In one or more embodiments, even though not required for practicing the embodiments described herein, a microcontroller IC, such as the JN5168, and JN5169 microcontroller available from NXP semiconductors, may be used. The LED driver control may then be performed via four channel PWM output from the microcontroller. Calculations associated with the method can then for example be provided in the form of a precompiled library.
Operating in this way, by generating stabilized-colour-values based on temperature-values, and then using the stabilized-colour-values and a requested-colour-value to generate a stabilized-lamp-control-signal can be considered as operating in a stabilized-mode-of-operation. It is stable inasmuch as the actual colour/chromaticity of light output by the lamp is stable/consistent irrespective of the temperature of the lamp.
It will be appreciated that the input terminal 502 may or may not be an external terminal of the controller 500. For example, in some examples, the controller may determine the temperature-values of the lamp 502 internally, based on, for example, measured values of currents flowing through the LEDs in the lamp.
The controller 500 also includes an output terminal 506 that provides a lamp-control-signal to the lamp 502.
The controller 500 includes a full-colour-module 508 that provides a full-colour-lamp-control-signal for the output terminal 506 when the controller 500 is operating in a full-colour-mode-of-operation. The controller 500 includes a stabilization-module 510 that provides a stabilized-lamp-control-signal for the output terminal 506 when the controller 500 is operating in a stabilized-mode-of-operation.
A mode controller 512 compares the requested-colour-value with a threshold value in order to determine whether the controller 500 should operate in the full-colour-mode-of-operation or the stabilized-mode-of-operation. That is, if the colour-value satisfies the threshold value, then the mode controller 512 instructs the stabilization-module 510 to provide the stabilized-lamp-control-signal to the output terminal 506. If the colour-value does not satisfy the threshold value, then the mode controller 512 instructs the full-colour-module 508 to provide the full-colour-lamp-control-signal to the output terminal 506.
The threshold value is used to determine how close the requested-colour-value is to the chromaticity limits as defined by requestable-colour-gamut shown in
The stabilization-module 510 generates stabilized-colour-values based on the received temperature-values, and then uses the stabilized-colour-values and the requested-colour-value to generate the stabilized-lamp-control-signal. As discussed above with reference to
The full-colour-module 508, in contrast, provides the full-colour-lamp-control-signal based directly on the requested-colour-value. That is, the requested-colour-value is not corrected/modified to provide a stabilised/consistent light output. In this way, a maximum achievable saturation (depth of colour) can be achieved for each and every lamp 502 when operating in this mode of operation, albeit the achieved chromaticity for a given colour-value may vary depending upon the operating temperature of the LEDs in the lamp 502.
As an example, in the full-colour-mode-of-operation, if pure red light is requested, then the full-colour-lamp-control-signal will be representative of an RGB value of (255, 0, 0). In contrast, if pure red light were requested when the controller 500 is operating in the stabilized-mode-of-operation, the stabilized-lamp-control-signal will be representative of an RGB value of (255, x, y), where x and y do not equal zero. The exact values of x and y will be set by the controller 500 in accordance with the received temperature-value, in order to bring the chromaticity of the light output by the lamp 502 down to the colour corner that is shown in
It will be appreciated that the above discussion of chromaticity values does not take into account a required brightness/luminance of a lamp, which can be processed separately. The above discussion of comparing colour-values with threshold values can be considered as operating on normalised colour-values, and that a required brightness can be taken into account by subsequent processing of the full-colour-lamp-control-signal or stabilized-lamp-control-signal.
At step 602, the method receives a requested-colour-value as an input. At step 604, the method determines whether or not the requested colour is close to the boundary of a requestable-colour-gamut, as shown in
If the requested colour is close to the boundary, then at step 606 the method uses primary LEDs as light sources. This can be implemented by part of the full-colour-module of
In this way, when the requested colour lies close to the boundary of the requestable-colour-gamut, a more saturated colour is rendered. It is more saturated because the colour gamut is extended by substituting the (stabilized) colour corners with (non-stabilized) primaries for a subsequent colour mixing algorithm. This can enable colour stabilization to be preserved for the non-saturated colours (which can include points on the black body curve); and at the same time enable a colour of maximum possible saturation to be rendered when saturated colours are requested. Therefore, colour stabilization is not entirely sacrificed because the non-stabilized primaries are only used in the subsequent colour mixing algorithm when the requested colour is close to the boundary of the requestable-colour-gamut.
Determining whether or not the requested colour is close to the boundary of a requestable-colour-gamut at step 604 can be implemented by comparing the requested colour-value with a threshold value. For example, for an RGB requested colour-value, by checking the following condition:
The threshold value a can be zero in one example, in which case the requested-colour value is only considered close to the boundary if it is on the boundary. That is, the boundary of the triangle can be defined as colour values at which one or two of the RGB values are zero.
Alternatively, the threshold value a may be non-zero, in which case a full-colour-region is defined around the periphery of the colour gamut triangle. The thickness of the full-colour-region is defined by the threshold value a. When the requested colour-value falls within the full-colour-region, the method moves on to step 606 instead of step 608. The threshold value a may be 1%, 2%, or 5% of a maximum colour value (such as a RGB value), for example.
In some examples, if the requested colour-value falls within the full-colour-region, the method can generate the stabilized-colour-values (fixed colour corners) at step 608 based on the temperature-value (as discussed above), and also a difference-value representative of the distance between (i) the requested-colour-value; and (ii) the boundary of the requestable-colour gamut. For example, the method can apply an algorithm that effectively sets a degree of stabilization that will be applied based on how close the requested colour value is to the boundary of the colour gamut triangle. In one instance, this can involve applying a weighting to the colour-correction-values that are added to the full-colour-gamut to provide the stabilized-colour-values. For example, 100% of the colour-correction-values are added for a maximum-difference value, and 0% of the colour-correction-values are added for a minimum-difference value. In this way a degree of stabilization can be set.
In a further still example, the method can compare the requested colour-value to a plurality of threshold values. Then, depending upon which threshold values are satisfied, the method can apply one or a plurality of different stabilization-modes-of-operation, for example to set a degree of stabilization that will be applied.
In an alternative example, the requested colour-value can be represented by xy coordinates. In such an example, a distance between the requested colour and the requestable-colour-gamut can be determined. If the distance is below a threshold value then the xy coordinates can be mapped to an extended colour gamut at step 606, for example by using a full-colour module as discussed above.
It will be appreciated that a similar approach can be taken for any other colour domain that may be used.
In some examples, the controller can linearly combine a full-colour-lamp-control-signal and a stabilized-lamp-control-signal in order to provide the lamp-control-signal. This can enable the controller to gradually blend in between a stabilized-mode-of-operation and a full-colour-mode-of-operation. The coefficients of the linear combination can be functions of a difference-value representative of the distance between (i) the requested-colour-value; and (ii) the boundary of the requestable colour gamut.
A requestable-colour-gamut (stabilized colour gamut) 715 is shown in
The requestable-colour-gamut 715 represents a stabilized-colour-gamut of the lamp having stabilized-chromaticity-limits that correspond to the controller operating in a stabilized-mode-of-operation. When a controller is operating a lamp in a stabilized-mode-of-operation, it determines where on the variability-lines 710, 720730 each lamp should be operating, based on their temperature values, and then determines colour-correction-values for adding to the full-colour-gamut 717 in order to bring the overall chromaticity of the lamp down to the requestable-colour-gamut 715 as defined by the colour corners 711, 721, 731.
The full-colour-gamut 717 represents a colour-gamut of the lamp having full-colour-chromaticity-limits that correspond to the controller operating in a full-colour-mode-of-operation.
The instructions and/or flowchart steps in the above figures can be executed in any order, unless a specific order is explicitly stated. Also, those skilled in the art will recognize that while one example set of instructions/method has been discussed, the material in this specification can be combined in a variety of ways to yield other examples as well, and are to be understood within a context provided by this detailed description.
In some example embodiments the set of instructions/method steps described above are implemented as functional and software instructions embodied as a set of executable instructions which are effected on a computer or machine which is programmed with and controlled by said executable instructions. Such instructions are loaded for execution on a processor (such as one or more CPUs). The term processor includes microprocessors, microcontrollers, processor modules or subsystems (including one or more microprocessors or microcontrollers), or other control or computing devices. A processor can refer to a single component or to plural components.
In other examples, the set of instructions/methods illustrated herein and data and instructions associated therewith are stored in respective storage devices, which are implemented as one or more non-transient machine or computer-readable or computer-usable storage media or mediums. Such computer-readable or computer usable storage medium or media is (are) considered to be part of an article (or article of manufacture). An article or article of manufacture can refer to any manufactured single component or multiple components. The non-transient machine or computer usable media or mediums as defined herein excludes signals, but such media or mediums may be capable of receiving and processing information from signals and/or other transient mediums.
Example embodiments of the material discussed in this specification can be implemented in whole or in part through network, computer, or data based devices and/or services. These may include cloud, internet, intranet, mobile, desktop, processor, look-up table, microcontroller, consumer equipment, infrastructure, or other enabling devices and services. As may be used herein and in the claims, the following non-exclusive definitions are provided.
In one example, one or more instructions or steps discussed herein are automated. The terms automated or automatically (and like variations thereof) mean controlled operation of an apparatus, system, and/or process using computers and/or mechanical/electrical devices without the necessity of human intervention, observation, effort and/or decision.
It will be appreciated that any components said to be coupled may be coupled or connected either directly or indirectly. In the case of indirect coupling, additional components may be located between the two components that are said to be coupled.
In this specification, example embodiments have been presented in terms of a selected set of details. However, a person of ordinary skill in the art would understand that many other example embodiments may be practiced which include a different selected set of these details. It is intended that the following claims cover all possible example embodiments.
Number | Date | Country | Kind |
---|---|---|---|
16154731.0 | Feb 2016 | EP | regional |