Thursday, April 30, 2015

Let's See the Watchdog TImer in Action

Hi everybody!

It is the end of the month and time for my monthly blog post.

Quite some time ago, my buddy Gary mentioned our watchdog timer protection in a post.  Here is what he had to say:

The watchdog timer is a unique feature on some Agilent power supplies, such as the N6700 series. This feature looks for any interface bus activity (LAN, GPIB, or USB) and if no bus activity is detected by the power supply for a time that you set, the power supply output shuts down. This feature was inspired by one of our customers testing new chip designs. The engineer was running long-term reliability testing including heating and cooling of the chips. These tests would run for weeks or even months. A computer program was used to control the N6700 power supplies that were responsible for heating and cooling the chips. If the program hung up, it was possible to burn up the chips. So the engineer expressed an interest in having the power supply shut down its own outputs if no commands were received by the power supply for a length of time indicating that the program has stopped working properly. The watchdog timer allows you to set delay times from 1 to 3600 seconds. 

(For the whole post click here)

Since Gary wrote that post, we have released the N6900 and N7900 APS units that also include this useful feature.  What I wanted to do was show how to set it up, how to use it,and how to clear it so that everything is a bit more clear.   All of my programming examples in this post will be done using my APS with the VISA-COM IO Library in Visual Basic.

The setup is pretty easy:

        APS.WriteString("OUTP:PROT:WDOG:DEL 5")
        APS.WriteString("OUTP:PROT:WDOG ON")

This sets the watchdog delay to 5 seconds and enables it.  This means that if there is no IO activity (ie your computer hangs up) for 5 seconds, then the unit will go into protect and shut the output down.

Lets say that I have a program that performs a measurement around every second for a minute.  Here is the program:


        APS.WriteString("OUTP:PROT:WDOG:DEL 2")
        APS.WriteString("OUTP:PROT:WDOG ON")

        For i = 0 To 59
            APS.WriteString("MEAS:VOLT?")
            strResponse = APS.ReadString
            Threading.Thread.Sleep(1000)
        Next

        Threading.Thread.Sleep(3000)

        APS.WriteString("STAT:QUES:COND?")
        strResponse = APS.ReadString

 The watchdog delay is set for 2 second so while I run in the loop taking my measurements everything is working great.  After the 3 second wait at the end though, the 2 second watchdog timer comes into effect and the unit goes into the protect state and disables the output.  The response to the questionsable status query is 2048 which corresponds to bit 11 of the register which is defined as "Output is disabled by a watchdog timer protection".  This is the expected result.

My reccomendation to clear the watchdog timer would be to first disable the watchdog timer and then clear the protect.  You can then re-start the watchdog timer when you are ready.

        APS.WriteString("OUTP:PROT:WDOG OFF")
        APS.WriteString("OUTP:PROT:CLE")

The watchdog timer is a pretty cool feature that can perform a pretty useful task.  I hope that this blog post explains what it is and how to use it a bit more.

Tuesday, April 28, 2015

Optimizing a Power Supply’s Output Response Speed for Applications Demanding Higher Performance

Most basic performance power supplies are intended for just providing DC power and maintain a stable output for a wide range of load conditions. They often have lower output bandwidth to achieve this, with the following consequences:
  • Internally this means the feedback loop gain rolls off to zero at a lower frequency, providing relatively greater phase margin. Greater phase margin allows the power supply to remain stable for a wider range of loads, especially larger capacitive loads, when operating as a voltage source.
  • Externally this means the output moves slower; both when programming the output to a new voltage setting as well as when recovering from a step change in output load current.


While this is reasonably suited for fairly static DC powering requirements, greater dynamic output performance is often desirable for a number of more demanding applications, such as:
  • High throughput testing where the power supply’s output needs to change values quickly
  • Fast-slewing pulsed current loads where the transient voltage drop needs to be minimized
  • Applications where the power supply is used to generate power ARB waveforms


A number of things need to be done to a power supply so that it will have faster, higher performance output response speed. Primarily however, this is done by increasing its bandwidth, which means increasing its loop gain and pushing the loop gain crossover out to a higher frequency. The consequence of this the power supply’s stability can be more influenced by the load, especially larger capacitive loads.

To better accommodate a wide range of different loads many of our higher performance power supplies feature a programmable bandwidth or programmable output compensation controls. This allows the output to be set for higher output response speed for a given load, while maintaining stable operation at the same time. As one example our N7900A series Advanced Power System (APS) has a programmable output bandwidth control that can be set to Low, for maximum stability, or set to High1, for much greater output voltage response speed. This can be seen in the graph in Figure 1, taken from the APS user’s guide.
  


Figure 1: N7900A APS small signal resistive loading output voltage response

Low setting provides maximum stability and so it accommodates a wider range of capacitive loading. High 1 setting in comparison is stable for a smaller range of capacitive loading, but allowing greater response bandwidth. This can be seen in table 1 below, for the recommended capacitive loading for the N7900A APS, again taken from the APS user’s guide.



Table 1: N7900A APS recommended maximum capacitive loading

While a maximum capacitive value is shown for each of the different APS models for each of the two settings, this is not altogether as rigid and fixed as it may appear. What is not so obvious is this is based on the load remaining capacitive over a frequency range roughly comparable to the power supply’s response bandwidth or beyond. Because of this the capacitor’s ESR (equivalent series resistance) is an important factor. Beyond the corner frequency determined by the capacitor’s capacitance and ESR, the capacitor looks resistive. If this frequency is considerably lower than the power supply’s response bandwidth, then it has little to no effect on the power supply’s stability. This is the reason why the power supply is able to charge and discharge a super capacitor, even though its value is far greater than the capacitance limit given, and not run into stability problems, for example.

One last consideration for more demanding applications needing fast dynamic output changes, either when changing values or generating ARBs is the current needed for charging and discharging capacitive loads.  Capacitors increasingly become “short-circuits” to higher AC frequencies, requiring the power supply to be able to drive or sink very large currents in order to remain effective as a dynamic voltage source!

.

Tuesday, March 31, 2015

When is 64,000 points too many?

Hi everybody!

This month's blog post is based off a customer question that we received this month.  The question was around arbitrary waveforms (arbs), the number of points for the arb, and waveform fidelity.  I have spoken about arbs in the past: click me for Matt's old blog post.  Just to quickly reiterate, there are two options for arbs on the N6705 DC Power Analyzer and the N7900 Advanced power System. There is the Constant Dwell (CD) Arb that allows up to 64,000 point with a minimum Dwell time of 10 us per point and there is the standard List Arb that allows up to 512 points with a dwell as low as 1 us per point.

The question that we are trying to answer today is: When is 512 points more than 64,000 points?  It is an interesting question to think about.  It is definitely not true in cases where you have a non-repeating waveform.  The CD Arb will always be the preferred method there and will give you the best fidelity (smallest dwell times).

The answer is when you have long DC levels in your waveform.  Let's look at the proposed waveform below (please pardon the picture, I hand drew this on my tablet; also note that it is not to scale):


If you look at this waveform, the total time is 11.5 s.  It's a pretty simple waveform that goes from 4 V to 6 V with a 0.05 s ramp between the two values.  We need to pay attention to those times.

Lets with the math behind programming a CD Arb.  With a CD arb, there is a single dwell time so you basically sample the waveform 64000 times.  Lets use that to calculate a dwell time:

11.05 s/64000 = 172.66 us

This means that every point is going to last 172.66 us, no matter if it is in the constantly changing ramp or at a DC level.  This means that when the waveform is at 6 V for 10 s, you will use 57,918 points. That is 90% of your points just sitting at 6V!  For the 0.05 s ramp, you will only be using 290 points.  The ramp is where the waveform is actually changing but due to the nature of how the CD Arb works, you cannot increase the number of points allocated to the ramp.

Let's take a look at the 512 point list now.  We know that the first point of the list will be 4 V for 1 s and that the last point of the list will be 6 V for 10 s.  That leaves us with 510 points to do the 0.05 s ramp which results in s dwell time of 98 us.  This will give us more points in the ramp area and a better looking waveform overall.

That is all I have for this month.  Please feel free to use the comments if you'd like to get in touch with us.

Monday, March 30, 2015

Big resistors needed for high-power testing

Eighteen months ago, in September of 2013, Keysight (we were Agilent at the time) introduced a new high-power series of power supplies: the N8900 series of 5 kW, 10 kW, and 15 kW autoranging DC power supplies. I posted about those here.

Recently, our environmental lab was doing some testing on one of the 15 kW models that required them to use a low-noise load on the output. They have electronic loads that they can connect to the output to dissipate this level of power, but to be sure they were getting the lowest noise possible, they wanted to use resistors to load the output instead of the electronic loads. Since I was amused by the size of the resistors, I thought I’d capture the moment and share a picture with you.


The picture shows one of our R&D engineers in our environmental lab adjusting the output voltage of a 15 kW N8900 series power supply. Notice that these power supplies pack a lot of power (15 kW) in their small 3 U high package (the white box under the fan). The four big green things on the rack are resistors. The two on the top rack are each rated for 15 kW while the two on the lower rack are each rated for 20 kW. So that’s a total of 70 kW of resistive power! Clearly, these are not your father’s ¼ W resistors!

Even with 70 kW of power dissipation capability, and “only” 15 kW available from our power supply, a big fan was needed to keep the resistors cool…..or perhaps I should say “less hot” since they still get very hot. Of course, with an extra 15 kW of power being dissipated in the room, the room temperature was going up. But that was a good thing since we are still experiencing cold weather here in New Jersey despite the fact that spring started ten days ago. So the extra heat felt good!

Before we came out with the N8900 series of high-power supplies, Matt had posted about some things around his desk that included a 2500 W resistor (click here for his post). At that time, that was a high-power resistor. But now with these 15 kW supplies, you can see we had to go much bigger! And given that these supplies can be paralleled to 100 kW or more….well….I look forward to seeing what our R&D group and environment lab engineers come up with to do resistive load testing on those. Submarine-sized resistors, perhaps? We’ll see….

Monday, March 23, 2015

Use slew rate control to cleanly power up and reduce peak inrush current of your DUTs

Previously on Watt’s Up? a colleague wrote about how the current limit setting affects a power supply’s voltage response time (click here to review). In this posting he clearly shows how a low current limit setting can greatly slow down the output voltage turn on response time when powering up your DUT.

While this is generally true and good advice, especially for basic performance power supplies, there are additional things to consider when working with high performance power supplies models, as you will see.

Many basic performance power supplies tend to have larger output filter capacitors in order to achieve lower output noise performance. A disadvantage of having a large output capacitor is that it slows down the output voltage response speed of the power supply. Basic performance power supplies can have turn on response times on the order of a 100 milliseconds.

High performance power supplies operate by a somewhat different set of rules. In comparison to basic performance power supplies they typically have much smaller output capacitors and they are designed to have output turn on and turn off response times on the order of a millisecond or less.

However, absolute fastest is not always the best and that is why fast, high performance power supplies also usually incorporate an output voltage slew rate control as well. This allows you to optimize the output turn on and turn off speed for your particular application. This lets you take advantage of the faster output speed you have available, without it being overkill and cause other problems.

The two most common problems that arise when powering up and powering down many DUTs are related to charging and discharging the input filter capacitor incorporated into them. They are:
  • High peak inrush (and discharge) currents due to the high dV/dt slew rate being applied
  • Power supply CC-CV mode cross over issues resulting from the high peak inrush current


To illustrate, the turn on characteristic of our N6762A power supply was captured when powering up a load consisting of a 1,200 microfarad capacitor in parallel with a 10 ohm resistor. The N6762A was set to 10 volts and its voltage slew rate set to maximum.  This was captured using the N6762A’s digitizing voltage and current readback together with the 14585A software, shown in Figure 1.
  


Figure 1: N6762A power supply turn on response set to maximum slew rate into parallel RC load

The vertical markers have been placed at zero and maximum voltage points of the turn on ramp. The peak inrush current reaches 3.7 amps and the peak voltage overshoots to 11.06 volts, 10% over the 10 volt setting. The overshoot is a result of the power supply crossing over into current limit during the ramp up and allowing the voltage to rise to 11.06 volts before the voltage control loop regains control to bring the output back down to 10 volts. It also takes a little while for the voltage to settle after the peak overshoot. Both the overshoot voltage and peak inrush current can be problems when powering up a DUT. These occur as a result of having too fast of a voltage slew rate when powering the DUT.

To address the problem we then set the N6762A’s slew rate to a more acceptable value of 2,000 volts/second. The turn on voltage and current were again captured and are shown in Figure 2. As can be seen the voltage overshoot is eliminated and the inrush current has been reduced to a more moderate 3.3 amps.


Figure 2: N6762A power supply turn on response set to 2,000 V/s slew rate into parallel RC load

So in closing high performance power supplies have a significant advantage in their output response speed, in comparison to basic power supplies. And while faster is usually better, absolute fastest may not be best, and this applies to the output response time of power supplies as well! But by having the ability to set the output slew rate on high performance power supplies gives you the ability to optimize its speed for your given application, providing for the best possible outcome possible!

.

Wednesday, March 11, 2015

Comparing effects of using pulsed and steady state power to illuminate a high brightness LED

I was having a discussion here with a colleague about the merits of powering a high brightness LED (HBLED) using pulsed power versus using steady state DC power.

My opinion was: “Basically, amperes in proportionally equates to light flux out, so you will get about the same amount of illumination whether it is pulsed or DC.”

His argument was: “Because the pulses will be brighter, it’s possible the effective illumination that’s perceived will be brighter. Things appear to be continuous when discrete fixed images are updated at rates above thirty times a second, and that should apply to the pulsed illumination as well!”

I countered: “It will look the same and, if anything, will be less efficient when pulsed!”

So instead of continuing our debate we ran a quick experiment. I happened to have some HBLEDs so I hooked one up to an N6781A DC source measure module housed in an N6705B DC Power Analyzer sitting at my desk, shown in Figure 1. The N6781A has excellent current sourcing characteristics regardless whether it is DC or a dynamic waveform, making it a good choice for this experiment.



Figure 1: Powering up an HBLED

First we powered it up with a steady state DC current of 100 mA. At this level the HBLED had a forward voltage drop of 2.994 V and resulting power of 0.2994 W, as seen in Figure 2, captured using the companion 14585A control and analysis software.



Figure 2: Resulting HBLED voltage and power when powered with 100 mA steady state DC current

We then set the N6781A to deliver a pulsed current of 200 mA with a 50% duty cycle, so that its average current was 100 mA. The results were again captured using the 14585A software, as shown in Figure 3.


Figure 3: Resulting HBLED voltage and power when powered with 200 mA 50% DC pulsed current

Switching back and forth between steady state DC and pulsed currents, my colleague agreed, the brightness appeared to be comparable (just as I had expected!).  But something more interesting to note is the average current, voltage, and power. These values were obtained as shown in Figure 3 by placing the measurement markers over an integral number of waveform cycles. The average current was 100 mA, as expected. Note however that the average voltage is lower, at 2.7 V, while the average power is higher, at 0.3127 W! At first the lower average voltage together with higher average power would seem to be a contradiction. How can that be?

First, in case you did not notice, the product of the RMS voltage and RMS current are 0.3897 W which clearly does not match our average power value displayed. What, another contradiction? Why is that? Multiplying RMS voltage and RMS current will give you the average power for a linear resistive load but not for a non-linear load like a HBLED. The average power needs to be determined by taking an overall average of the power over time computed on a point-by-point basis, which is how it is done within the 14585A software as well as within our power products that digitize the voltage and current over time. Second, the average voltage is lower because it drops down towards zero during periods of zero current. However it is greater during the periods when 200 mA is being sourced through the HBLED and these are the times where power is being consumed.

So here, by using pulsed current, our losses ended up being 4.4% greater when powered by the comparable steady state current. These losses are mainly incurred as a result of greater resistive drop losses in the HBLED occurring at the higher current level.

There is supposed to be one benefit however of using pulsed power when powering HBLEDs. At different steady state DC current levels there is some shift in their output light spectrum. Using pulsed current provides dimming control while maintaining a constant light spectrum. This prevents minor color shifts at different illumination levels. Although I would probably never notice it!

Saturday, February 28, 2015

Synchronize Your Measurements with Your List Transients

Hi everybody!

My blog post this month is the result of a recent customer question.  The question was: how do you synchronize measurements with list transients?  The short answer is that you use the built in digitizer to generate enough points to sample the measurements over the entire transient.  The rest of this blog will provide the long answer.  The program that I am using here was written for a N6762A DC Power Module but the technique will work with any power supply that has a built in digitizer such as the Advanced Power System or any N6700 module with option 054.

For simplicity’s sake, we are going to use a 5 point list.  The voltage steps are 1 V, 2 V, 3 V, 4 V, and 5 V and the dwell times are 0.1 s, 0.2 s, 0.3 s, 0.4 s, and 0.5 s.  Let’s first set the list up (please note that all programming is done in VB.net with VISA-COM):


The next thing to do is to set up the measurement system.  We need to figure out the total number of points that we need measure so that we can cover the entire transient.  The first thing that we need to do is to calculate the total time of the list transient (you can even do this in your program):


The total time of our transient is 1.5 s.  Now we need to use this to figure out the number of points. I am going to choose a measurement interval of 40.96 us.  This means that we want to take a measurement every 40.96 us for 15 s.  To get the total number of points, you need to divide the total transient time by the measurement time interval:

I’m going to round down and use 36,621 points.  I’m also going to tell the power supply to use the binary data format because as we know from my previous blog posts, this is the fastest way to read back data.   Here is the code to set up the digitizer:


We will set our trigger source to bus for both the transient system and the acquire system:


Next we initiate both systems:


Once the initiate is complete, we send a trigger:

This will start both the list transient and the digitizer.  After everything is completed, we can fetch our measured voltage array:


This array will have all of our measurements.

I hope that this has been useful, have a good month everyone.