The present invention relates to electronics, and more specifically, to optimizing the turn on time for drivers for solid state light sources.
The continued development of high-brightness solid state light sources for use in general illumination applications has led to increased use of such light sources in various general illumination lighting devices. In general, a solid state light source operates in a fundamentally different way than a conventional filament or gas lamp, and typically operates off of direct current (DC) power, as opposed to alternating current (AC) power, which is found throughout buildings. A driver is used to allow lighting devices including solid state light sources to run off of AC power by converting an AC input, such as a 120V/60 Hz line input, to a stable direct current (DC) voltage, which is used to drive the solid state light source(s). Such a circuit typically incorporates an electromagnetic interference (EMI) filter, a power factor correction circuit, and a rectifier, arranged in a particular topology. A variety of topologies for drivers are well-known in the art. One example is an LCC topology, including an inductor and two capacitors in a tank circuit configuration, which can provide a constant current output.
A conventional LCC topology for a constant current driver requires a slow loop response for good control of the current provided to the solid state light source being driven. However, such a topology prevents a fast turn on time for the driver, which can lead to the overshooting or undershooting the desired output current. Overshooting or undershooting the desired output current can lead to lack of stability and flashing the solid state light sources, which are undesirable outcomes. The alternative to an LCC topology is to use a buck converter to deliver a constant current output, but this increases complexity and cost.
Embodiments of the present invention provide a turn on optimization of an LCC topology for a constant current driver. The turn on optimization leads to a stable output current being reached in a short amount of time (e.g., less than one second), which prevents flashing of the solid state light sources being driven by the driver. Embodiments use a pre-determined table of duty cycle values, stored within the driver, for a variety of possible output currents and corresponding output voltages. Depending on the desired output current, a series of selected duty cycle values are chosen from the table and applied to a feedback circuit of the driver. The feedback circuit adjusts a switching frequency of the LCC tank circuit, resulting in the output current reaching a stable state without causing flashing of the solid state light sources.
In an embodiment, there is provided a method of optimizing driver turn on to prevent flashing of a light source powered by the driver. The method includes selecting, from a table of duty cycle values, a highest duty cycle value corresponding to a target output current of the driver, wherein the selected duty cycle value has a corresponding voltage; applying the selected duty cycle value to the driver; measuring an output voltage at the light source connected to an output of the driver; comparing the measured output voltage to the corresponding voltage of the selected duty cycle to produce a voltage comparison result; and adjusting the selection of the duty cycle based on the voltage comparison result.
In another related embodiment, the method may further include measuring an output current at the light source connected to the output of the driver; comparing the measured output current to the target output current to produce a current comparison result; and applying an adjustment coefficient to a feedback circuit of the driver, wherein the feedback circuit adjusts a switching frequency of the driver based on the selected duty cycle. In a further related embodiment, comparing the measured output current may include comparing the measured output current to the target output current to produce a current comparison result, wherein the current comparison result indicates that the measured output current is within a threshold range of the target output current; and applying may include applying a mild adjustment coefficient to a feedback circuit of the driver, wherein the feedback circuit adjusts a switching frequency of the driver based on the selected duty cycle and the applied mild adjustment coefficient.
In another further related embodiment, comparing the measured output current may include comparing the measured output current to the target output current to produce a current comparison result, wherein the current comparison result indicates that the measured output current exceeds a threshold range of the target output current; and applying may include applying an aggressive adjustment coefficient to a feedback circuit of the driver, wherein the feedback circuit adjusts a switching frequency of the driver based on the selected duty cycle and the applied aggressive adjustment coefficient.
In yet another related embodiment, the method may further include repeating measuring, comparing, and adjusting until a most recent voltage comparison result indicates that a desired voltage comparison result is reached. In still another related embodiment, the method may further include prior to selecting, querying a microcontroller to learn a target output current of the driver, wherein the target output current of the driver is a preset value.
In yet still another related embodiment, the method may further include prior to selecting, querying a microcontroller to learn a target output current of the driver, if the driver is to dim the light source, and a preset output current of the driver; and selecting may include calculating a voltage range based on the preset output current of the driver and a power range of the driver, wherein the voltage range includes a high voltage value and a low voltage value; and selecting, from a table of duty cycle values, a duty cycle value corresponding to the target output current of the driver and the low voltage value of the calculated voltage range, wherein the low voltage value of the calculated voltage range is the corresponding voltage. In a further related embodiment, the method may further include: measuring an output current at the light source connected to the output of the driver; comparing the measured output current to the target output current to produce a current comparison result; and applying an adjustment coefficient to a feedback circuit of the driver, wherein the feedback circuit adjusts a switching frequency of the driver based on the selected duty cycle. In a further related embodiment, comparing the measured output current may include comparing the measured output current to the target output current to produce a current comparison result, wherein the current comparison result indicates that the measured output current is within a threshold range of the target output current; and applying may include applying a mild adjustment coefficient to a feedback circuit of the driver, wherein the feedback circuit adjusts a switching frequency of the driver based on the selected duty cycle and the applied mild adjustment coefficient. In another further related embodiment, comparing the measured output current may include comparing the measured output current to the target output current to produce a current comparison result, wherein the current comparison result indicates that the measured output current exceeds a threshold range of the target output current; and applying may include applying an aggressive adjustment coefficient to a feedback circuit of the driver, wherein the feedback circuit adjusts a switching frequency of the driver based on the selected duty cycle and the applied aggressive adjustment coefficient.
In another embodiment, there is provided a computer program product, stored on a non-transitory computer readable medium, including instructions that, when executed on a processor in communication with a driver to power a light source, cause the processor to perform operations of: selecting, from a table of duty cycle values, a highest duty cycle value corresponding to a target output current of the driver, wherein the selected duty cycle value has a corresponding voltage; applying the selected duty cycle value to the driver; measuring an output voltage at the light source connected to an output of the driver; comparing the measured output voltage to the corresponding voltage of the selected duty cycle to produce a voltage comparison result; and adjusting the selection of the duty cycle based on the voltage comparison result.
In a related embodiment, the instructions may cause the processor to perform further operations of measuring an output current at the light source connected to the output of the driver; comparing the measured output current to the target output current to produce a current comparison result; and applying an adjustment coefficient to a feedback circuit of the driver, wherein the feedback circuit adjusts a switching frequency of the driver based on the selected duty cycle. In another related embodiment, the instructions may cause the processor to perform further operations of repeating measuring, comparing, and adjusting until a most recent voltage comparison result indicates that a desired voltage comparison result is reached. In still another related embodiment, the instructions may cause the processor to perform further operations of prior to selecting, querying a microcontroller to learn a target output current of the driver, wherein the target output current of the driver is a preset value. In yet another related embodiment, the instructions may cause the processor to perform further operations of prior to selecting, querying a microcontroller to learn a target output current of the driver, if the driver is to dim the light source, and a preset output current of the driver; and the processor may perform operations of selecting by calculating a voltage range based on the preset output current of the driver and a power range of the driver, wherein the voltage range includes a high voltage value and a low voltage value; and selecting, from a table of duty cycle values, a duty cycle value corresponding to the target output current of the driver and the low voltage value of the calculated voltage range, wherein the low voltage value of the calculated voltage range is the corresponding voltage.
In another embodiment, there is provided a system to prevent flashing of a light source. The system includes: a driver to power the light source, and a computer system. The computer system includes a processor; a memory; an input interface and an output interface, each in communication with the driver; and an interconnection mechanism allowing communication between the processor, the memory, the input interface, and the output interface. The memory includes a turn on optimization application that, when executed in the processor as a turn on optimization process, causes the computer system to perform operations of: selecting, from a table of duty cycle values stored in the memory, a highest duty cycle value corresponding to a target output current of the driver, wherein the selected duty cycle value has a corresponding voltage; applying, via the output interface, the selected duty cycle value to the driver; measuring, via the input interface, an output voltage at the light source connected to an output of the driver; comparing the measured output voltage to the corresponding voltage of the selected duty cycle to produce a voltage comparison result; and adjusting the selection of the duty cycle based on the voltage comparison result.
In a related embodiment, the driver may include a feedback circuit, and the computer system may perform further operations of: measuring, via the input interface, an output current at the light source connected to the output of the driver; comparing the measured output current to the target output current to produce a current comparison result; and applying, via the output interface, an adjustment coefficient to the feedback circuit of the driver, wherein the feedback circuit adjusts a switching frequency of the driver based on the selected duty cycle.
In another related embodiment, the computer system may perform further operations of repeating measuring, comparing, and adjusting until a most recent voltage comparison result indicates that a desired voltage comparison result is reached. In yet another related embodiment, the computer system may perform further operations of prior to selecting, querying the memory to learn a target output current of the driver, wherein the target output current of the driver is a preset value. In still another related embodiment, the computer system may perform further operations of prior to selecting, querying the memory to learn a target output current of the driver, if the driver is to dim the light source, and a preset output current of the driver; and when selecting, the computer system may perform operations of: calculating a voltage range based on the preset output current of the driver and a power range of the driver, wherein the voltage range includes a high voltage value and a low voltage value; and selecting, from a table of duty cycle values stored in the memory, a duty cycle value corresponding to the target output current of the driver and the low voltage value of the calculated voltage range, wherein the low voltage value of the calculated voltage range is the corresponding voltage.
The foregoing and other objects, features and advantages disclosed herein will be apparent from the following description of particular embodiments disclosed herein, as illustrated in the accompanying drawings in which like reference characters refer to the same parts throughout the different views. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating the principles disclosed herein.
The input voltage Vin is provided to an EMI filter and PFC circuit 102, which filters out undesirable electromagnetic interface and provide power factor control, resulting in a bus voltage Vbus. The bus voltage Vbus is provided to an LCC tank circuit 104. The LCC tank circuit 104 provides a voltage and current to an output rectifier 106 that is based on a switching frequency fsw of the LCC tank circuit 104. In some embodiments, as described below, the switching frequency fsw of the LCC tank circuit 104 is set by a feedback circuit 112. The output rectifier 106 provides the output voltage Vout and the output current Iout at an output 107 of the driver to the light source 108. A microcontroller 110 senses the output voltage Vout as a sensed voltage Vsense and the output current Iout as a sensed current Isense from the light source 108. Using one or both of these values, the microcontroller 110 provides a selected duty cycle value Dselect to the feedback circuit 112. Based on the selected duty cycle value Dselect, the feedback circuit 112 adjusts the switching frequency fsw of the LCC tank circuit 104, as is described in greater detail below.
The microcontroller 110 is shown and referred to as a microcontroller for convenience, and embodiments are not so limited. That is, any type of computer system or computerized device (such as but not limited to a processor, microprocessor, controller, etc.) that includes a memory, a processor, input and output interfaces, and an interconnection mechanism, that is able to execute, run, interpret, operate or otherwise perform as described herein is a suitable alternative for the microcontroller 110. Further, though
The memory system 212 is any type of computer readable medium and in some embodiments is encoded with a turn on optimization application 240-1 that includes a turn on optimization process 240-2. The turn on optimization application 240-1 may be, and in some embodiments is, embodied as software code such as data and/or logic instructions (e.g., code stored in the memory 212 or on another computer readable medium such as a removable drive) that supports processing functionality according to different embodiments described herein. During operation of the microcontroller 110, the processor 213 accesses the memory 212 via the interconnection mechanism 211 in order to launch, run, execute, interpret or otherwise perform the logic instructions of the turn on optimization application 240-1. Execution of the turn on optimization application 240-1 in this manner produces processing functionality in a turn on optimization process 240-2. In other words, the turn on optimization process 240-2 represents one or more portions or runtime instances of the turn on optimization application 240-1 performing or executing within or upon the processor 213 in the microcontroller 110 at runtime.
It is noted that example configurations disclosed herein include the turn on optimization application 240-1 itself including the turn on optimization process 240-2 (i.e., in the form of un-executed or non-performing logic instructions and/or data). The turn on optimization application 240-1 may be, and in some embodiments is, stored on a computer readable medium (such as a disk, disk drive, electronic, magnetic, optical, solid state, or other computer readable medium). The turn on optimization application 240-1 may also be, and in some embodiments is, stored in the memory 212 as firmware in, for example, read only memory (ROM), or as executable code in, for example, Random Access Memory (RAM). In addition to these embodiments, it should also be noted that other embodiments herein include the execution of the turn on optimization application 240-1 in the processor 213 as the turn on optimization process 240-2. Those skilled in the art will understand that the microcontroller 110 may, and in some embodiments does, include other processes and/or software and hardware components, such as but not limited to an operating system, not shown in this example.
In addition to storing the turn on optimization application 240-1, the memory 212, in some embodiments, also stores information used by the turn on optimization application 240-1 when executing in the processor 213 as the turn on optimization process 240-2. This includes, but is not limited to, a table of duty cycle values 250, a target output current 260 of the driver 101, a dim setting 270 of the driver 101, and a preset output current 280.
The table of duty cycle values 250 includes one or more values representing a duty cycle for a particular output voltage and output current. The duty cycle values change both across output voltages and output currents. Thus, for example, there is an array of duty cycle values for an output current of 500 mA, with a different duty cycle value having a corresponding output voltage value. Similarly, there is an array of duty cycle values for an output voltage of 100 V, with a different duty cycle value having a corresponding output current value. In some embodiments, depending on the configuration of the driver 101, certain output voltage and output current pairs do not have a duty cycle value; in other words, in some embodiments, not every space in the table of duty cycle values 250 has a duty cycle value. The table of duty cycle values 250 is determined by, for example but not limited to, measuring the duty cycle of the driver 101 at steady state under various output voltage and output current load conditions, and recording the measured values accordingly in the table of duty cycle values 250. The table of duty cycle values 250 is then stored in the memory 212.
In some embodiments, the target output current 260 is a preset value that is loaded into the memory 212 during manufacture of the driver 101. In some embodiments, the target output current 260 is a preset value that is input to the driver 101 via, for example but not limited to, the optional current/dim interface 219, by for example, an end user (not shown) or a control device (not shown), and stored within the memory 212. In some embodiments, the target output current 260 is a variable value that is adjusted via, for example but not limited to, the optional current/dim interface 219, by, for example, an end user (not shown) or a control device (not shown), depending on operating conditions of the system 100, such as but not limited to the load 108 to be driven by the driver 101 or an ambient light sensor (not shown) in communication with the driver 101, and stored in the memory 212.
The dim setting 270 indicates whether the driver 101 will be dimming the light source 108 being driven by the driver 101. In some embodiments, the dim setting 270 is entered into the memory 212 via the optional current/dim interface 219. In some embodiments, the dim setting 270 includes a dimming curve that represents a change in the output current Iout and/or the output voltage Vout over a range of values as dimming occurs.
In some embodiments, the preset output current 280 is a preset value that is loaded into the memory 212 during manufacture of the driver 101. In some embodiments, the preset output current 280 is a preset value that is input to the driver 101 via, for example but not limited to, the optional current/dim interface 219, by for example but not limited to, an end user (not shown) or a control device (not shown), and stored within the memory 212. In some embodiments, the preset output current 280 is a variable value that is adjusted via, for example but not limited to, the optional current/dim interface 219, by, for example, an end user (not shown) or a control device (not shown), depending on operating conditions of the system 100, such as but not limited to the load 108 to be driven by the driver 101 or an ambient light sensor (not shown) in communication with the driver 101, and stored in the memory 212. In some embodiments, the target output current 260 is equivalent to the preset output current 280. In some embodiments, the target output current 260 is substantially equivalent to the preset output current 280.
The input interface 215 of the microcontroller 110, in some embodiments, receives the sensed voltage Vsense and the sensed current Isense from the light source 108, and in some embodiments, the input interface 215 performs the sensing of the output voltage Vout and the output current Iout at the light source 108 via a sensing circuit 218. The sensing circuit 218 may be, and in some embodiments is, any known sensing circuit or device, such as but not limited to an operational amplifier. The input interface 215, in some embodiments, receives other signals from other components of the driver 101 (not shown). The output interface 214 of the microcontroller output the selected duty cycle value Dselect from the table of duty cycle values 250 stored in the memory 212. In some embodiments, the output interface 214 includes a PID controller 217, which applies an adjustment coefficient to the selected duty cycle value Dselect, based on, for example but not limited to, an error calculation.
Flowcharts of embodiments of a method 400 are depicted in
Further, while
In some embodiments, such as shown in
In some embodiments, such as shown in
In some embodiments, such as shown in
The methods and systems described herein are not limited to a particular hardware or software configuration, and may find applicability in many computing or processing environments. The methods and systems may be implemented in hardware or software, or a combination of hardware and software. The methods and systems may be implemented in one or more computer programs, where a computer program may be understood to include one or more processor executable instructions. The computer program(s) may execute on one or more programmable processors, and may be stored on one or more storage medium readable by the processor (including volatile and non-volatile memory and/or storage elements), one or more input devices, and/or one or more output devices. The processor thus may access one or more input devices to obtain input data, and may access one or more output devices to communicate output data. The input and/or output devices may include one or more of the following: Random Access Memory (RAM), Redundant Array of Independent Disks (RAID), floppy drive, CD, DVD, magnetic disk, internal hard drive, external hard drive, memory stick, or other storage device capable of being accessed by a processor as provided herein, where such aforementioned examples are not exhaustive, and are for illustration and not limitation.
The computer program(s) may be implemented using one or more high level procedural or object-oriented programming languages to communicate with a computer system; however, the program(s) may be implemented in assembly or machine language, if desired. The language may be compiled or interpreted.
As provided herein, the processor(s) may thus be embedded in one or more devices that may be operated independently or together in a networked environment, where the network may include, for example, a Local Area Network (LAN), wide area network (WAN), and/or may include an intranet and/or the internet and/or another network. The network(s) may be wired or wireless or a combination thereof and may use one or more communications protocols to facilitate communications between the different processors. The processors may be configured for distributed processing and may utilize, in some embodiments, a client-server model as needed. Accordingly, the methods and systems may utilize multiple processors and/or processor devices, and the processor instructions may be divided amongst such single- or multiple-processor/devices.
The device(s) or computer systems that integrate with the processor(s) may include, for example, a personal computer(s), workstation(s) (e.g., Sun, HP), personal digital assistant(s) (PDA(s)), handheld device(s) such as cellular telephone(s) or smart cellphone(s), laptop(s), handheld computer(s), or another device(s) capable of being integrated with a processor(s) that may operate as provided herein. Accordingly, the devices provided herein are not exhaustive and are provided for illustration and not limitation.
References to “a microprocessor” and “a processor”, or “the microprocessor” and “the processor,” may be understood to include one or more microprocessors that may communicate in a stand-alone and/or a distributed environment(s), and may thus be configured to communicate via wired or wireless communications with other processors, where such one or more processor may be configured to operate on one or more processor-controlled devices that may be similar or different devices. Use of such “microprocessor” or “processor” terminology may thus also be understood to include a central processing unit, an arithmetic logic unit, an application-specific integrated circuit (IC), and/or a task engine, with such examples provided for illustration and not limitation.
Furthermore, references to memory, unless otherwise specified, may include one or more processor-readable and accessible memory elements and/or components that may be internal to the processor-controlled device, external to the processor-controlled device, and/or may be accessed via a wired or wireless network using a variety of communications protocols, and unless otherwise specified, may be arranged to include a combination of external and internal memory devices, where such memory may be contiguous and/or partitioned based on the application. Accordingly, references to a database may be understood to include one or more memory associations, where such references may include commercially available database products (e.g., SQL, Informix, Oracle) and also proprietary databases, and may also include other structures for associating memory such as links, queues, graphs, trees, with such structures provided for illustration and not limitation.
References to a network, unless provided otherwise, may include one or more intranets and/or the internet. References herein to microprocessor instructions or microprocessor-executable instructions, in accordance with the above, may be understood to include programmable hardware.
Unless otherwise stated, use of the word “substantially” may be construed to include a precise relationship, condition, arrangement, orientation, and/or other characteristic, and deviations thereof as understood by one of ordinary skill in the art, to the extent that such deviations do not materially affect the disclosed methods and systems.
Throughout the entirety of the present disclosure, use of the articles “a” and/or an and/or the to modify a noun may be understood to be used for convenience and to include one, or more than one, of the modified noun, unless otherwise specifically stated. The terms “comprising”, “including” and “having” are intended to be inclusive and mean that there may be additional elements other than the listed elements.
Elements, components, modules, and/or parts thereof that are described and/or otherwise portrayed through the figures to communicate with, be associated with, and/or be based on, something else, may be understood to so communicate, be associated with, and or be based on in a direct and/or indirect manner, unless otherwise stipulated herein.
Although the methods and systems have been described relative to a specific embodiment thereof, they are not so limited. Obviously many modifications and variations may become apparent in light of the above teachings. Many additional changes in the details, materials, and arrangement of parts, herein described and illustrated, may be made by those skilled in the art.
Number | Name | Date | Kind |
---|---|---|---|
20100238724 | Fukuda | Sep 2010 | A1 |
20140101135 | Yousaf | Apr 2014 | A1 |