One key performance specification of any LED Driver that claims to be TRIAC dimmable is whether it allows the LED load to blink; this can be especially hard to avoid at the low end of the TRIAC dimming range. In this paper, we will present an LED driver design based on the MCP19111 that is capable of driving an LED load across an exceptionally wide TRIAC dimming range of 1mA to 750mA with absolutely NO blinking of the LED load. The presented design is based upon the existing MCP19111_EVAL board and requires NO hardware modification in order to drive the single LED load examined here. The means for expanding the design to drive higher voltage LED loads from wider input voltage ranges will be presented as well. Finally, the follow-on design will demonstrate how to dim the load ONLY in response to the determined TRIAC duty cycle while rejecting changes in the RMS value of the AC line.
But First, Let’s Meet the Family
Before we dive into the specifics of the TRIAC dimmable LED driver application and the part we used to address it, let’s take a look at the new family of Hybrid Power Conversion Controller products from Microchip. This new product family consists of three pairs of digitally enhanced power analog products, each aimed at a specific set of power conversion topologies (see Table 1).
|Part Number||Common Features||Total GPIO
(including open drain pins and one input-only pin)
|MCP19110||- 12-channel, 10 bit A/D
- I2C interface
- Multiple internal timers interrupt on GPIO change, INT pin, timer conditions, ADC, and multiple internal flags
- Internal watchdog timer circuit
- Thermal shutdown, and multiple configurable voltage lockout parameters
|MCP19111||Same as MCP19110||15||PMBus compatible, 2 pin ICD/2pin ICSP debug capability|
|MCP19114||Same as MCP19110||9|
|MCP19115||Same as MCP19110||13||2 pin ICD/2pin ICSP debug capability|
|MCP19118||Same as MCP19110||12||PMBus compatible|
|MCP19119||Same as MCP19110||15||PMBus compatible, 2 pin ICD/2pin ICSP debug capability|
All of the devices in the MCP19xxx family have an 8-bit PIC® microcontroler core embedded with the requisite support analog elements to implement the indicated power conversion topology. The product family consists of pairs of devices that are differentiated from each other with respect to the inclusion or omission of debug port. Thus, the MCP19119, MCP19115 and MCP19111 each have a four pin debug & programing port, while their “twins” the MCP19118, MCP19114 and MCP19110, respectively, do not.
And Here is the Star of the Show…
The design we will be looking at here uses the MCP19111 to drive a single Lumileds Luxeon Rebel High Power LED from a 12 VAC input under TRIAC dimming. The power conversion topology is a synchronous buck. In order to clearly understand what this new family of “Hybrid Controllers” is (and is not), let’s take a look at the typical application diagram for the MCP19111 taken directly from its data sheet:
As shown in Figure 1, the MCP19111 pins are nearly evenly divided between those related to the PIC micro on the left and those related to the synchronous buck elements on the right. It should also be noted that most of the pins associated with the PIC microcontroller core functionality are “multi-functional”. Thus, the MCP19111 can be used to run a simple application or dynamically change the performance of the sync buck elements in application under the direction of a system host via PMBus™ or I2C. However, ALL of the pins associated with the sync buck function must be used as shown in Figure 1.
Thus, the MCP19111 is essentially a digitally configurable analog sync-buck controller running under the supervision and control of an independent micro that is fully available to run a separate application. That is, once the sync-buck programmable elements are configured, the sync-buck function can run without further involvement from the PIC core.
We Keep it Simple…THIS Time
For the purpose of this paper, we will work with the existing MCP19111 eval board (Part #: ADM00397) without any modifications to the board whatsoever. The code that was developed to run the application detailed in this paper leverages the existing “Buck Power Supply Application” code from Microchip with the modifications and additions required to implement our LED driver application fully documented and available here.
Because we did not modify the existing hardware, we did not need to use the “MCP19111 Design Analyzer v1.1” that allows a user to optimize the eval board’s switching frequency, control loop characteristics, resistors, capacitors and inductor to produce the desired output voltage and current. This tool is available here.The Design Analyzer is a 5-tab spreadsheet that guides the user through the design in at step-by-step process (see Table 2).
|Tab In Spreadsheet||Description of Task Addressed and Output Produced|
|Input Parameters||Here, the designer enters application parameter values such as VIN, VOUT, IOUT, FS, etc.|
|Component Selection||Here, the designer enters values of critical system components such as L inductance, COUT, CIN, RF, CF. These selections will be guided by values calculated by the design spreadsheet based on the data entered by the user in the “Input Parameters” tab.|
|Efficiency||This tab displays the calculated loss elements for both FETs by Conduction, Switching and, for the Low Side FET, body diode losses as well. The separate losses for the inductor, controller, CIN and COUT are also given. Finally, the estimated efficiency at Full Load is also given.|
|Frequency Analysis||The designer uses this tab to set critical gain parameters in the feedback and compensation network which then determine the system transient performance and stability. The spreadsheet returns calculated values of Crossover, Phase and Gain margin immediately in response to designer inputs to allow iterative tradeoffs.|
|GUI||This tab allows the designer to review the calculated values to be entered into the MCP19111 MPLAB X IDE Plug-In. The calculated values show in this tab will be programmed into the MCP19111 to implement the desired application characteristics selected by the designer.|
How We Did What We Did…
For our test set up, we ran the AC output from the TRIAC dimmer (TD_1) into a 10:1 step down transformer (T_1) and then into a diode bridge (FWB_1). The rectified output is filtered via an Aluminum Electrolytic capacitor (C_1) (of which more will be said later) and then into the V_in port of the MCP19111 eval board. A number of different TRIAC dimmers were tested to verify compatibility.
From the above diagram, it can be seen that the load current through the TRIAC will be approximately 1:10 of the load current into the MCP19111 eval board due to the 10:1 step down transformer. Thus, for our relatively low power application here (less than 3W overall MAX power consumption), for lower power settings of the TRIAC, the load current will be less than the typical holding current of the TRIAC. This can be seen from the following calculation:
Power input = V_AC * I_AC so that I_AC = (3W)/(110VAC) = 35ma at MAX power in to LED load.
While there are sensitive gate TRIACs available that have holding currents well below this number, in retrofit applications, we cannot count on them being present and thus need to address the “worst case” here.
When the TRIAC load current falls below the “holding current” of the TRIAC, the TRIAC will “miss-fire” after turn on and effectively turn off/on for the remainder of that AC ½ cycle as illustrated in Figure 4. In many LED Driver circuits, this will result in visible flickering in the LED load which is totally unacceptable.
TRIAC Firing with I_Load >> I_Hold_Current (Idealized)
In both Figures 3 and 4, once the signal is passed through the diode bridge and out to the filter cap, the result is simply an AC voltage with a DC offset. Of course, the resulting RMS voltage is substantially lower in the case of the signal in figure 4 vs 3, but no matter: so long as the rectified and filtered signal is above a certain “conversion threshold” level (V_In_Min_Conv), then the MCP19111 will continue to draw current from the filter cap to deliver to the load. Since the TRIAC can continue to miss-fire as in Figure 4 indefinitely, a very low load current can be delivered with no disturbances in either the load current or light level. For the test set up shown in Figure 3, load currents as low as 1ma are easily maintained.
Flow of the Code
Figure 5 is a flow chart of the code that was inserted into the existing MCP19111 Buck Power Supply code immediately after initialization and variable declaration:
Upon start up, the application code inhibits any switching of the FETs until V_in has been above 5.0 volts for at least 100 mSec. After this criterion has been met, the code enters “Load Current Maintenance” mode. Here, the output current is determined by multiplying the target value by the ratio of the V_Input_New at the input to the board by the expected nominal “V_nom” voltage:
I (out) = I (Nominal) * [(V_Input_New)/(V nom)]
From here, the value of the output current set point is increased or decreased by one count or set to the min/max allowed value.
Clearly, from the above equation, it can be seen that no attempt is made here to infer the TRIAC duty cycle, a change in the RMS value of the rectified and filtered line voltage will be treated the same way whether it is the result of a change in TRIAC duty cycle or a change in the AC line voltage.
A Look Ahead
In the next installment in this series on the MCP119xx family of digitally enhanced analog power controllers, we will (i) use a customized MCP19111 circuit and PCB to allow much wider input and output voltage ranges, (ii) provide for direct analog dimming and (iii) correct for changes in AC RMS line voltage that are independent of TRIAC duty cycle. That is, we will present a means for inferring the TRIAC duty cycle and using only that operational parameter to control the output current and render the supply immune to changes in AC line voltage. The only hardware that would need to be added to the existing set up shown in Figure 5 above would be three small resistors and two small capacitors. We will also examine more closely how one uses the “Design Analyzer” spreadsheet to optimize the circuit components and operating parameters for a given application.