Circuit and method for controlling pulse width modulation of a current supply for a load

09980332 ยท 2018-05-22

Assignee

Inventors

Cpc classification

International classification

Abstract

A circuit comprising a controller (2) for controlling a pulse width modulated input signal, and a driver (4) configured to supply current to a load (6) based on the input signal, wherein over the on time of each pulse width modulation period the driver (4) supplies current to the load (6) with a second frequency that is greater than the first frequency. The controller (2) is configured to control the duty cycle to set the output of the load (6) to a desired output level, and to dither the duty cycle about a point corresponding to the desired output level.

Claims

1. A circuit comprising: a driver; and a controller for controlling a pulse width modulated input signal applied to the driver, the input signal having a period comprising an on time and an off time with said period repeating at a first frequency, and the controller being configured to control a duty cycle of the input signal being a proportion of the on time relative to the period or off time; wherein the driver is configured to supply current to a load based on the input signal, wherein over the off time of each period the driver withholds supply of current from a power supply to the load, and over the on time of each period the driver supplies current form the power supply to the load but with a second frequency that is greater than the first frequency, the load thus generating an output at a level dependent on the duty cycle; wherein the controller is configured to control the duty cycle to set the output of the load to a desired output level, and to dither the duty cycle about a point corresponding to the desired output level; and wherein the circuit further comprises a feedback channel from the driver to the controller, wherein the feedback channel is configured to measure the second frequency and wherein the controller is configured to adapt the dithering of the duty cycle in dependence on the second frequency as measured by said feedback channel.

2. The circuit of claim 1, wherein the controller is configured to control the duty cycle to switch the output of the load to a plurality of different output levels, and said dithering comprises dithering the duty cycle about each of a plurality of points corresponding to said different output levels respectively.

3. The circuit of claim 1, wherein the load comprises a light source and the output comprises light emitted by the light source.

4. The circuit of claim 3, wherein the controller is configured to control the duty cycle to switch the light emitted by the load to a plurality of different light output levels.

5. The circuit of claim 4, wherein the controller is configured to code a data signal into said light by using the different light output levels to signal symbols of the data signal.

6. The circuit of claim 4, wherein the controller is configured to perform said dithering by dithering the duty cycle about each of a plurality of points corresponding to the different light output levels respectively.

7. The circuit of claim 1, wherein: the output of the load varies according to a relationship between the duty cycle and the level of the output; and the first frequency and the second frequency in combination result in a pattern in the relationship between the duty cycle and the level of the output that repeats in regular intervals of the duty cycle.

8. The circuit of claim 7, wherein the load comprises a light source and the output comprises light emitted by the light source, said level of the output being a level of said light and said relationship being between the duty cycle and the level of said light.

9. The circuit of claim 7, wherein the duty cycle is dithered in a plurality n of discrete steps about said point.

10. The circuit of claim 9, wherein the duty cycle is dithered about said point in n steps of P/n where P is a period of said regular intervals of the duty cycle.

11. The circuit of claim 9, wherein the dithering is random with each of the n steps having a 1/n probability of being selected per period.

12. The circuit of claim 1, wherein the driver is a buck converter.

13. The circuit of claim 1, wherein the feedback channel comprises a voltage divider or a differential circuit.

14. A computer program product comprising code embodied on a non-transitory computer-readable storage medium and adapted to, when executed by one or more processors, perform operations comprising: causing a pulse width modulated input signal to be provided to a driver which supplies current to a load based on the input signal, wherein the input signal has a period comprising an on time and an off time with said period repeating at a first frequency, and wherein over the off time of each period the driver withholds supply of current from a power supply to a load, and over the on time of each period the driver supplies current from the power supply to the load with a second frequency that is greater than the first frequency; controlling a duty cycle of the input signal being a proportion of the on time relative to said period or off time, in order to set an output of the load to a desired output level; and measuring the second frequency; and dithering the duty cycle about a point corresponding to the desired output level based on the measured second frequency.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) To assist the understanding of the present disclosure and to show how embodiments may be put into effect, reference is made by way of example to the accompanying drawings in which:

(2) FIG. 1 is a schematic diagram of a buck converter with load and controller,

(3) FIG. 2 is a schematic diagram of another buck converter with load and controller,

(4) FIG. 3 is a schematic sketch of the input voltage of a buck converter,

(5) FIG. 4 is a timing diagram showing the output current of a buck converter,

(6) FIG. 5 is graph illustrating output level versus duty cycle of a buck converter input,

(7) FIG. 6 is another graph illustrating output level versus duty cycle,

(8) FIG. 7 is another graph illustrating output level versus duty cycle,

(9) FIG. 8 is a schematic diagram of another buck converter with load and controller,

(10) FIG. 9 is a schematic diagram of another buck converter with load and controller,

(11) FIG. 10 is another graph illustrating output level versus duty cycle,

(12) FIG. 11 is another graph illustrating output level versus duty cycle,

(13) FIG. 12 is a graph illustrating DC content in an output of a buck converter versus phase,

(14) FIG. 13 is another graph illustrating DC content versus phase,

(15) FIG. 14 is another graph illustrating DC content versus phase,

(16) FIG. 15 is another graph illustrating DC content versus phase,

(17) FIG. 16 is another graph illustrating DC content versus phase, and

(18) FIG. 17 is another graph illustrating DC content versus phase.

DETAILED DESCRIPTION OF EMBODIMENTS

(19) As discussed, state-of-the-art drivers for LED illumination are characterized by an irregular (non-linear) mapping of input PWM duty cycle to the generated output light level. In the case of coded light transmission, this may lead to a loss of the DC-free property of the modulation system, resulting in visible flicker. As will be explained in more detail below, it has been found that this flicker can be mitigated to levels below the visibility threshold by applying dither to the input of the driver.

(20) State-of-the-art LED drivers often make use of buck converters for controlling the current through the LED to obtain the desired light output. In case of a PWM-controlled driver, a controller 2 (e.g. a suitably programmed microprocessor) governs the duty cycle of a PWM (0,1)-waveform. The frequency of this PWM waveform typically is of the order of 4 to 16 kHz (or even higher). In the 0-state of each PWM period, no current is fed to the LED, while in the 1-state, a buck converter typically pushes current-packets at a high frequency (typically between 100 and 800 kHz) to the secondary side of its coil 14, thus energizing the LED. This higher buck switching frequency is dependent on the load through an impedance seen on the input. Usually the current at this second, much higher frequency is somewhat low-pass filtered (a capacitor), before actually sending it to the load, but is nonetheless present. It is typically at least one order of magnitude (ten times) higher than the PWM frequency.

(21) The duty cycle of the pulse width modulation controls the average current supplied to the LED 6 and therefore the level of light output by the LED.

(22) Such an arrangement can be used to generate coded light, whereby data is embedded into the visible light emitted from a light source such as an LED or array of LEDs. One way of doing this is to modulate the level of the emitted light, which can be achieved by varying the input duty cycle (and therefore the output light level) between a plurality of discrete values in order to represent different symbols. For example, in one scheme developed by the applicant and referred to as Ternary Manchester, five different levels are used to encode the data symbols. Ternary Manchester is described in WO2012052935.

(23) FIG. 4 shows the output current of a PWM-controlled buck converter 4. On the left can be seen the onset of the 1 state in a single PWM period, governed by the controller 2 (e.g. microprocessor). On the right side can be seen the switch to the 0 state for the five different PWM durations that correspond to the five modulation levels of Ternary Manchester coded light. The wiggles at the top of the trace correspond to the higher frequency on/off switching of the buck converter 4 during the 1 state of the PWM period.

(24) FIG. 5 shows the resulting mapping of input duty cycle D (as applied by the controller 2) to the average output light level L of the LED in terms of current or power, which may also be referred to as the transfer function of the driver 4. For an LED, the light output power is (approximately) proportional to current (because the voltage drop across an LED is almost constant). Note the horizontal plateaus, where the average light output does not increase while the duty cycle increases. These plateaus correspond to the switching to the 0 state of the PWM input signal while being on a falling edge of one of the wiggles caused by the buck converter in FIG. 4. As the buck converter 4 is switched off during a falling edge of each wiggle, the exact switching time of the PWM input signal within a falling edge has no influence on the current pushed to the secondary side of the buck converter 4, thus leading to a constant light output. These malformations (bumps or imperfections) in the otherwise-linear relationship repeat at regular intervals with duty cycle intervals, i.e. are cyclical in duty-cycle space (on the duty cycle scale). In the example of FIG. 5 (and FIGS. 6, 7, 10 and 11) the buck converter period is an interval of 0.05 in duty-cycle.

(25) A problem can arise in using the afore-mentioned LED drivers for the generation of coded light.

(26) The waveforms used for coded light (actually, deviations from the average required illumination) may be carefully picked to not generate any flicker, i.e. they contain no low frequencies. A typical example is Ternary Manchester (TM), that uses five different levels (in this case PWM duty cycles), e.g., the set {0.2, 0.3, 0.4, 0.5, 0.6}. See FIG. 6. The average light level in this example equals 0.4. Different levels are used sequentially for transmitting information in such a manner, that the deviations from 0.4 have no low-frequency content, i.e. they cause no flicker. In the example of FIG. 6, it can be seen that the output light levels are also spaced equidistant, i.e. a balanced input also results in a balanced output. In this case this happens because the PWM frequency and duty cycle levels have been carefully chosen to have exactly two periods of the buck converter in duty cycle space (i.e. two intervals in the pattern of FIG. 4) between any two consecutive levels. However in general this will not be the case.

(27) FIG. 7 shows the case where the same driver 4 is used while having a 20% larger modulation amplitude of the coded light Ternary Manchester symbols. Note that in this case an equidistant spacing of the input PWM duty cycles leads to a non-equidistant spacing of the resulting output light levels, which in turn destroys the DC-free property of the code, i.e. flicker is generated because the average light level during transmission of Ternary Manchester coded light is not equal to the average light level in absence of Ternary Manchester transmission (0.4 in the example of FIG. 7). It will be appreciated that similar issues may occur in other coding schemes based on other sets of symbols.

(28) To address this, the present disclosure provides a form of dithering whereby a duty cycle of the encoded PWM waveform is adapted in dependence on the buck switching frequency. A feedback channel is added from the buck converter 4 to the controller 2 (e.g. to the microprocessor), so that the controller 2 can suitably adapt the duty cycle of the PWM waveform. The fact that the mapping between light output and duty cycle looks like a linear function with some periodic deformities on top (FIG. 5), makes the dithering approach particularly effective.

(29) FIGS. 8 and 9 show two buck converter implementations incorporating a feedback channel 16. FIG. 8 shows an implementation based on a high side switch and FIG. 9 shows an implementation based on a low side switch, similar to FIGS. 1 and 2 respectively but incorporating the feedback channel 16.

(30) In FIG. 8 (high side switch), the buck switching frequency is obtained by measuring the large potential variations at the cathode of the diode 10. Hence the feedback channel 16 is connected between the cathode of the diode 10 and an input of the controller 2.

(31) In FIG. 9 (low side switch), the voltage at the anode with respect to ground can be used to measure the switching frequency. Hence the feedback channel is connected between the anode of the diode 10 and an input of the controller 2.

(32) The feedback channel 16 may comprise additional measurement circuitry 18 between the anode or cathode of the diode 10 and the microcontroller. This may be desirable due to the large voltages (>3.3V) that may be experienced at the anode or cathode. For example the measurement circuit 18 may be a voltage divider in case the supply and load voltage are relatively constant, or a differential circuit that also avoids leakage current through the LEDs (leakage current would keep the LEDs 6 glowing even if the buck converter 4 is switched off).

(33) As will be discussed in more detail in the following, dithering can be used to decrease the local non-linearity of a buck converter 4 operating in hysteretic current mode where the output current is modulated by enabling and disabling the entire converter using pulse width modulation (PWM).

(34) The dithering is implemented by the controller 2 based on the feedback. The controller may be implemented in the form of code stored on storage medium (memory) and arranged for execution on a microcontroller or more generally processor. Alternatively it is not excluded that some or all of the controller 2 could be implemented in dedicated hardware circuitry, or configurable or reconfigurable hardware circuitry such as a PGA or FPGA.

(35) By applying dither (small deviations) to the input levels, the flicker caused by the non-uniform spacing of the output light levels can be alleviated. In an example application, each Ternary Manchester symbol has a duration of 1 ms, while the PWM frequency is 16 kHz, i.e. once a certain modulation duty cycle input has been picked, the same duty cycle input is used for sixteen consecutive PWM periods (in case of no dither). By dithering these sixteen duty cycle inputs for all Ternary Manchester symbols, an average light output is created for each of the symbols that is much more regularly spaced than the non-dithered version, thus mitigating flicker. As similar approach can also be used for other coding schemes.

(36) As discussed, the actual transfer function between a microprocessor-controlled input and average light level output is characterized by local small scale malformations, e.g. as in FIG. 4. The following uses dither for creating a linearized average transfer function between the microprocessor-controlled input and the light output.

(37) For instance refer to the example of FIG. 10, where the length of the horizontal stretches in duty cycle (i.e. the width of the dither) equals half of P.sub.bc, where P.sub.bc is the period of the buck cycle intervals. Each input duty cycle dc.sub.in may be replaced by the average of two inputs, one shifted ? of P.sub.bc to the right, and the other shifted ? of Pbc to the left (see the two side vertical dotted lines in FIG. 10 about each central dotted line, representing the two shifted positions and the notional center position between them). It can be shown that in this case the average of each pair creates an output, represented by the five bold horizontal lines in FIG. 10, which have an equal spacing between each consecutive pair, i.e. no flicker. This now holds for every average light output and any valid modulation depth.

(38) In the example of FIG. 10, the buck cycle period P.sub.bc=0.05, the modulation depth=0.24, and the dither spacing is 0.025. The DC content without the two-level dither was found to be 0.199 and the DC content with the two-level dither was found to be ?8.8818?10.sup.?16. Hence one can see the effectiveness of even a simple dither for linearizing a periodic disruption of non-linearity.

(39) Note however, that in the above-described embodiment using two-level dithering, the result of no residual flicker only holds if P.sub.bc is known at the controller 2 controlling the PWM duty cycle (and generating the dither), and if the length of the horizontal stretches equals half of P.sub.bc.

(40) If any of these conditions is not true, a complete linearization of the transfer function will not in general be obtained, and a residual reduced flicker may remain. In this case an n-level dither is of help.

(41) FIG. 11 depicts the situation for n-level dither, where n=4. It turns out that a significant reduction of flicker is still obtained even if P.sub.bc is not exactly known, or if the length of the horizontal stretches (dither width) does not equal half of P.sub.bc.

(42) In the example of FIG. 11, the buck cycle period P.sub.bc=0.05, the modulation depth=0.24, and the dither spacing is 0.025. The DC content without the two-level dither was found to be 0.199 and the DC content with the four-level dither was found to be substantially 0.

(43) In embodiments, the controller 2 is configured to implement the dithering according to one, some or all of the following:

(44) apply n-level dithering to the input duty cycles corresponding to each of the transmitted modulation symbols of coded light;

(45) the spacing between each consecutive pair of dither amplitudes is as close as possible to P.sub.bc/n, where P.sub.bc corresponds to the cyclic malformation in the mapping between duty cycle input and light output (e.g. see FIG. 4);

(46) each element of the set of n dither amplitudes belonging to a single symbol is used with a uniform probability 1/n;

(47) in general, a larger n tends to do a better job than a smaller n;

(48) in case the ratio of the horizontal stretch length (overall dither width) to P.sub.bc is known, it is advantageous to pick n such that a k, 1?k?n?1 exists for which k/n is close to the afore-mentioned ratio;

(49) in case n=4, there are groups of four consecutive PWM symbols, each group having four different dithered PWM amplitudes; and/or

(50) in case n=4, if 0, 1, 2 and 3 correspond to the four different dithered PWM amplitudes belonging to a single symbol in order of increasing amplitude (or duty cycle), the order in which these ditherings should appear temporally in a group equals that equals 0, 3, 2, 1.

(51) FIGS. 12 to 17 show the DC imbalance (reflecting the generated flicker) of a given packet of the V2 format (consisting of the all-zero pattern 9 0's) for different settings of parameters. For each set of parameters, the value of the 0 input (see FIG. 6) is varied over 1 period P.sub.bc. The bold solid line (i) represents the case of no dither, the non-bold solid line (ii) represents a two-level dither, and the dotted line (iii) represents a four-level dither.

(52) FIG. 12 shows an example with the horizontal stretch? 0.5 P.sub.bc, with P.sub.bc estimated exactly and a modulation depth of 0.24.

(53) FIG. 13 shows an example with the horizontal stretch=0.5 Pbc, Pbc estimated exactly and a modulation depth of 0.28.

(54) Note that in FIG. 12, already two-level dither reduces the DC content to 0, because P.sub.bc is estimated exactly and the horizontal stretch of the dither is exactly half of P.sub.bc. Note also that in FIG. 12 the modulation depth is chosen not to contain an integer number of buck periods. The modulation depth in FIG. 13 (0.28) has been chosen to give the worst possible DC content if no dithering is used.

(55) FIG. 14 shows an example with horizontal stretch=0.25 P.sub.bc, P.sub.bc estimated exactly and a modulation depth of 0.28.

(56) FIG. 15 shows an example with horizontal stretch=0.33 P.sub.bc, P.sub.bc estimated exactly and modulation depth: 0.28.

(57) FIG. 16 shows an example with horizontal stretch=0.33 P.sub.bc, P.sub.bc estimated 20% off, and modulation depth 0.24.

(58) FIG. 17 shows an example with horizontal stretch=0.33 P.sub.bc, P.sub.bc estimated 20% off, and modulation depth: 0.28.

(59) Note: the above has provided various examples of how the dithering can be adapted based on P.sub.bc, which is the buck cycle period, i.e. the interval of regular repetition in the duty cycle domain of the cyclic imperfections (or bumps) in the relationship between duty cycle D and output level L (e.g. see FIGS. 5-7). As also mentioned above, in embodiments the dithering is adapted based on feedback of the buck frequency f.sub.buck (or second frequency), i.e. the frequency of the higher frequency modulation (or wiggles) in the time domain (see FIG. 4). Furthermore, it has been explained how the regular interval P.sub.bc in the duty cycle domain is related to the buck frequency f.sub.buck (or second frequency) in the time domain, and hence it will be seen that knowing f.sub.buck enables the adaptation of the dithering interval based on the examples expressed in terms of P.sub.bc.

(60) Particularly, it has been explained above that the regular imperfections shown in FIGS. 5-7 occur because at some duty cycle values the falling edge of the PWM waveform coincides with a trough of the higher frequency buck frequency wiggles (see FIG. 4), while at other duty cycle values the falling edge of the PWM waveform coincides with a peak of the buck frequency. Thus if one imagines sweeping the duty cycle value from 0% to 100%, so that the falling edge of the PWM waveform sweeps left to right in FIG. 4, then the falling edge of the PWM waveform regularly encounters a trough of the buck frequency, then a peak of the buck frequency, then another trough of the buck frequency, then another peak of the buck frequency, and so forth. Thus when the relationship between duty cycle and output level is plotted with duty cycle on the horizontal axis, then the regular bumps of FIGS. 5-7 appear.

(61) The relationship between P.sub.bc and f.sub.buck will be readily understood by a skilled person from this explanation. Imagine again sweeping the duty cycle from 0% to 100%, which corresponds to sweeping the falling edge of the PWM waveform from left to right across the range of one PWM cycle T (again see FIG. 4). During this process, one would encounter T.sub.buck peaks of the buck frequency waveform, where T.sub.buck is the period 1/f.sub.buck of the buck frequency f.sub.buck in the time domain. That is, as duty cycle varies, one encounters T.sub.buck peaks per PWM period T, so along the duty cycle axis (FIGS. 5-7) the pattern of bumps repeats with interval P.sub.bc=T.sub.buck/T.

(62) Hence in combination with the examples of setting the dither based on P.sub.bc above, it will be understood how feedback of the buck frequency (or second frequency) can be used to adapt the dithering.

(63) It will be appreciated that the above embodiments have been described by way of example only.

(64) For instance, while the above has been described in terms of a buck converter, similar issues may occur in any driver where, during an on phase of the pulse width modulation, current is supplied with a frequency that is higher than the PWM frequency. I.e. other drivers such as fly-back converters may experience harmonics or oscillations which, in combination with the switching at the pulse width modulation frequency, may cause issues such as non-linearity. Further, the techniques disclosed herein may be applicable to other applications other than coded light, or to other loads than LEDs or light sources. For example it may be desired to dim the illumination emitted by a luminaire in a more linear fashion, or control the speed of a motor or control the output of some other load in a more linear fashion. Further, it is not necessary in all embodiments to have actuate feedback of the frequency via a feedback channel or even any feedback at all. The dithering can still do a good job of improving linearity even if the buck switching frequency is only known approximately (e.g. with 50% error), and in fact the dither solution is sufficiently robust such that it can deal with small variations even without feedback.

(65) Other variations to the disclosed embodiments can be understood and effected by those skilled in the art in practicing the claimed invention, from a study of the drawings, the disclosure, and the appended claims. In the claims, the word comprising does not exclude other elements or steps, and the indefinite article a or an does not exclude a plurality. A single processor or other unit may fulfill the functions of several items recited in the claims. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measured cannot be used to advantage. A computer program may be stored/distributed on a suitable medium, such as an optical storage medium or a solid-state medium supplied together with or as part of other hardware, but may also be distributed in other forms, such as via the Internet or other wired or wireless telecommunication systems. Any reference signs in the claims should not be construed as limiting the scope.