Friday, February 28, 2014

R, L, C measurements with an AC source

I recently had a customer ask if there was a way to use one of our AC sources to determine whether the load connected to its output was capacitive or inductive. Agilent’s 6811B, 6812B, and 6813B AC power source/analyzers are all capable of making many different measurements, several of which can be used to calculate the impedance of the connected load. To determine the impedance, the simplest measurements to use are the amplitude and phase measurements of the applied sine wave voltage and resultant current. Agilent’s AC sources can measure harmonic content of the voltage and current, both amplitude and phase, up to the 50th harmonic. From these measurements, you can calculate the impedance of the R, L, or C connected to the AC source output.

I grabbed a few sample parts from our lab area to demonstrate these measurements. First, I used a power resistor that was about 49 ohms. I applied a sine wave of about 20 Vac at 1000 Hz (0 phase) and used the built-in measurement capability to measure about 0.4 Aac at a phase (angle) of very near 0 degrees (the measurement was -7.01E-2 = -0.071 degrees). Of course, 0 degrees of phase between the voltage and current means the sine waves are in phase and the load is resistive as expected. See Figure 1.

The next test I did was with an inductor. Connecting it to the output of the AC source and once again applying about 20 Vac at 1000 Hz from the AC source, using the built-in measurement capability, I measured about 0.129 Aac at a phase of -88.66 degrees. The phase measurement of nearly -90 degrees confirmed that the load on the AC source was an inductor and the magnitude could be calculated to be about 25 mH which is what I expected (I measured it using an Agilent LCR meter). The series resistance in the line cord, clip leads, and inductor wire itself (I did not use remote sense) accounted for the non-ideal phase of -88.66 degrees instead of the ideal phase of -90 degrees. And the R was calculated from the AC source measurements to be about 3.6 ohms and agreed with external verification. See Figure 2.

Finally, I connected a capacitor to the AC source output and applied about 10 Vac at 1000 Hz. The AC source measurement system showed 0.633 Aac at an angle of 87.47 degrees indicating a capacitor was across its output. From these measurements, the capacitance and series R were calculated to be 9.88 uF and 0.711 ohms, consistent with externally verified measurements. See Figure 3.
So you can see that it is possible to determine the impedance (resistance, capacitance, or inductance) of a device connected across the output of an AC source when the right measurement capabilities are built into the AC source, as they are with the Agilent AC sources. These highly capable products not only make measurements like this easy, they also can easily create a large variety of AC output stimulus waveforms.

Use Agilent's BenchVue Software to Save Time

Hi everyone!

I wanted to take the time I have in this month’s blog post to tel you about a great new tool that we have for you here at Agilent.  It is a new software package called BenchVue.  BenchVue offers users the ability to control their power supplies, oscilloscopes, spectrum analyzers,  DMMs, and function generators using their computer without the need to write a program.  It is a free download.  You can download BenchVue at:

Agilent BenchVue Software


Naturally I am going to talk about the power supply potion of BenchVue (this is a power supply blog after all).  Presently the software supports the Agilent N6700 Modular Power Supplies and the Agilent E36xxA Basic Power Supplies.  I do not know if many people remember but we used to have a free software package for the E36xxA power supplies called Intuiilink.   BenchVue is  the modern successor to Intuiilink.  I recently checked BenchVue out on my E3646A DC Power Supply.  

The E3646A is a basic two output DC Power Supply.  BenchVue communicates with it using GPIB (in my case my Agilent 82357 USB/GPIB converter).  Take a look at the below picture:




You can program all of the basic settings (even for multiple channels) on your power supply on one screen.  If you used the front panel to do all of these entries it would take quite a while to navigate through all of the menus.  BenchVue saves you time by putting all of this in one place.  The other neat thing that I noticed is that you can get the voltage and current readback from both channels on the screen at the same time.  You can't see both channels on the front panel, you have to manually switch.

The other main feature of BenchVue that can save you some time is the built in datalogger.  For those of you that are unfamiliar with the term datalog, this is when an instrument takes measurements at a predetermined time interval and stores them in a file that you can look at later.  With BenchVue, you can set a datalog up to take a measurement as fast as every second.  You can then take the stored values and export them to Matlab, Microsoft Excel, Microsoft Word, or to a CSV file.  

You could write your own datalog program but the beauty of BenchVue is that you can set the log up by entering a few values and then just press the "Run" button to make it go.  You also do not have to worry about formatting the data or creating files since BenchVue does all of that for you.  You basically just run it, then export the data and then you can view it in your chosen format.

Here is a sample thirty second datalog where I logged the voltage on Output 1:


After it was complete, I just hit the "Export" button, chose Microsoft Excel and I got the following:


Pretty cool!

That's my short intro to the new Agilent BenchVue software.  Go download it.  Let us know any thoughts you have in the comments section.

Monday, February 24, 2014

How to test the efficiency of DC to DC converters, part 2 of 2

In part 1 of my posting on testing the efficiency of DC to DC converters (click here to review) I went over the test set up, the requirements for load sweep synchronized to the measurements, and details of the choice of the type and set up of the current load sweep itself. In this second part I will be describing details of the measurement set up, setting up the efficiency calculation, and results of the testing. This is based on using the N6705B DC Power Analyzer, N6782A SMUs, and 14585A software as a platform but a number of ideas can be applicable regardless of the platform.




Figure 1: Synchronized measurement and efficiency calculation set up

The synchronized measurement and efficiency calculation set up, and display of results are shown in Figure 1, taking note of the following details corresponding to the numbers in Figure 1:
  1. In the 14585A the data logging mode was selected to make and display the measurements. The oscilloscope mode could have just as easily been used but with a 10 second sweep the extra speed of sampling with the oscilloscope mode was not an advantage. A second thing about using the data logging mode is you can set the integration time period for each acquisition point. This can be used to advantage in averaging out noise and disturbances as needed for a smoother and more representative result. In this case an integration period of 50 milliseconds was used.
  2. To synchronize the measurements the data log measurement was set to trigger off the start of the load current sweep.
  3. Voltage, current, and power for both the input and output SMUs were selected to be measured and displayed. The input and output power are needed for the efficiency calculation.
  4. The measurements were set to seamless ranging. In this way the appropriate measurement range for at any given point was used as the loading swept from zero to full load.
  5. A formula trace was created to calculate and display the efficiency in %. Note that the negative of the ratio of output power to input power was used. This is because the SMU acting as a load is sinking current and so both its current and power readings are negative.


With all of this completed really all that is left to do is first start the data logging measurement with the start button. It will be “armed” and waiting from a trigger signal from the current load sweep ARB that had been set up. All that is now left to do is press the ARB start button. Figure 2 is a display of all the results after the sweep is completed.




Figure 2: DC to DC Converter efficiency test results

All the input and output voltage, current, and power measurements, and efficiency calculation (in pink) are display, but it can be uncluttered a bit by turning off the voltages and currents traces being displayed and just leave the power and efficiency traces displayed. This happened to be special DC to DC converter designed to give exceptionally high efficiency even down to near zero load, which can be seen from the graph. It’s interesting to note peak efficiency occurred at around 60% of full load and then ohmic losses start becoming more significant.

And that basically sums it all up for performing an efficiency test on a DC to DC converter!

Thursday, February 20, 2014

How to test the efficiency of DC to DC converters, part 1 of 2

I periodically get asked to provide recommendations and guidance on testing the efficiency of small DC to DC voltage converters. Regardless of the size of the converter, a DC source is needed to provide input power to the converter under constant voltage, while an electronic load is needed to draw power from the output, usually under constant current loading. The load current needs to be swept from zero to the full load current capability of the DC to DC converter while input power (input voltage times input current) and output power (output voltage times output current) are recorded. The efficiency is then the ratio of power out to power in, most often expressed in a percentage. An illustration of this is shown in Figure 1. In addition to sourcing and sinking power, precision current and voltage measurement on both the input and output, synchronized to the sweeping of the load current is needed.




Figure 1: DC to DC converter efficiency test set up

One challenge for small DC to DC voltage converters is finding a suitable electronic load that will operate at the low output voltages and down to zero load currents, needed for testing their efficiency over their range, from no load to full load output power. It turns out in practice many source measure units (SMUs) will serve well as a DC electronic load for testing, as they will sink current as well as source current.

Perhaps the most optimum choice from us is to use two of our N6782A 2-quadrant SMU modules installed in our N6705B DC Power Analyzer mainframe, using the 14585A software to control the set up and display the results.  This is a rather flexible platform intended for a variety of whatever application one can come up with for the most part. With a little ingenuity it can be quickly configured to perform an efficiency test of small DC to DC converters, swept from no load to full load operation. This is good for converters of 20 watts of power or less and within a certain range of voltage, as the N6782A can source or sink up to 6 V and 3 A or 20 V and 1 A, depending on which range it is set to. One of the N6782A operates as a DC voltage source to power the DUT and the second is operated as a DC current load to draw power from the DUT. A nice thing about the N6782A is it provides excellent performance operated either as a DC source or load, and operated either in constant voltage or constant current.

An excellent video of this set up testing a DC to DC converter was created by a colleague here, which you can review by clicking on the following link: “DC to DC converter efficiency test”.

The video does an excellent job covering a lot of the details. However, if you are interested in testing DC to DC converters using this set up I have a few more details to share here about it which should help you further along with setting it up and running it.

First, the two N6782A SMUs were set up for initial operating conditions. The N6782A providing DC power in was set up as a voltage source at the desired input voltage level and the second N6782A was set to constant current load operation with minimum (near zero) loading current.

Note that the 14585A software does not directly sweep the load current along the horizontal axis. The horizontal axis is time. That is why a time-based current sweep was created in the arbitrary waveform (ARB) section of the 14585A. In that way any point on the horizontal time axis correlates to a certain current load level being drawn from the output of the DUT. The ARB of course was set to run once, not repetitively. The 14585A ARB set up is shown in Figure 2.





Figure 2: Load current sweep ARB set up in 14585A software

This ARB sweep requires a little explanation.  While there are a number of pre-defined ARBs, and they can be used, an x3 power formula was chosen to be used instead. This provided a gradually increasing load sweep that allowed greater resolution of this data and display at light loads, where efficiency more quickly changes. As can be seen, the duration of the sweep, parameter x, was set to 10 seconds. As a full load current needed to be -1 A, using the actual formula (-x/10)3  gave us a gradually increasing load current sweep that topped out at -1A after 10 seconds of duration. The choice of 10 seconds was arbitrary. It only provided an easy way to watch the sweep on the 14585A graphing as it progressed. Finally, a short (0.1 second) pre-defined linear ramp ARB was added as a second part of the ARB sequence, to bring the load current back to initial, near zero, load conditions after the sweep was completed. This is shown in Figure 3.




Figure 3: Second part of ARB sweep to bring DUT load current back to initial conditions


I hope this gives you a number of insights about creative ways you can make use of the ARB. As there is a good amount of subtle details on how to go about making and displaying the measurements I’ll be sharing that in a second part coming up shortly, so keep on the outlook!

Friday, January 31, 2014

More Information on the Awesomeness of binary data

Hi everybody!

This month I am going to do a build on one of Ed's posts from this month.  It was titled "Using Binary Data Transfers to Improve Your Test Throughput".  If you have not read it, go ahead and click on the link. I'll be here when you get back.

I wanted to reiterate how drastic the difference is between using these two interfaces when you are reading large amounts of data.   I did some bench-marking a little while ago and I wanted to share it now with everybody.  Please note that these were quick tests that I did and in no way are official numbers.  In fact if you see anything wrong with my methods, please comment.   

The first thing that I will talk about is my method.  I did the test with a N6700B MPS Mainframe and a N6781A SMU module.  I wrote a program that set up the module to source 5 V and then take an array of voltage measurements.  I set it for the maximum number of measurement points (524288 points) with the fastest sample rate (though for this experiment the sample rate does not really matter).  Before I did the reading of the data from the N6700B to my PC I started a programmatic stopwatch and stopped the stopwatch after the reading was complete.  I looped 20 times and took the average.

One thing that I would highly recommend is to use the Agilent VISA-COM IO library.  The VISA-COM library offers a ReadIEEEBlock function that makes reading binary data really easy for you.  

The screenshot below shows the relevant loop and the calculation.  This program was written in VB and I used LAN to communicate with the instrument.


The other important piece that this is not showing is that I am setting the data format to real using FORM REAL command.  When you use ASCII, the command is FORM ASCII (this is also the default setting).

You can see the commented out ReadString command that I swapped in when I used the ASCII data format.  You can also see my extremely professional (and useful) "I am on line" counter that I put in so that I knew my program was looping correctly.

So now for the times.  ASCII format took around 100 s to read back all 524288 measurements into a string.  When I switched to the binary format, it took under 5 seconds. As you can see, that is a very drastic difference and if you are reading back a lot of data from an instrument that supports the binary format, you really need to use it.

I also did a few other experiments.  I changed the total number of points down to 1000.  The binary format took a little under 20 ms to read the data and the ASCII format took about 125 ms.  The last test that I did was 3 data points.  The binary format took a little less than 15 ms and the ASCII format took under 5 ms to make the measurement.  So you can see that as you read less and less data back, the ASCII format does catch up to the binary format and even exceed it.

Moral of the story is that if it is something more than a few points to read back, use binary because it will save you a ton of time.

That's all I have this month and I will be back next month!





Wednesday, January 29, 2014

Using a DC Power Supply to Regulate Energy

In a previous 2-part posting I talked about what power and energy is (part 1 – energy) (part 2 – power).  It is pretty straight-forward thing to do to use a DC power supply for regulating voltage or current. Constant voltage (CV) and constant current (CC) regulation are standard features of most all DC power supplies used in testing. However, what if you have an unusual application calling for applying a fixed amount of energy to your device under test (DUT)? For example, adding a fixed amount of energy to a calorimeter or chemical process, or testing the must (or must not) tripping energy of a fuse, or circuit breaker, or squib or detonator perhaps?

When the resistance of a device remains constant, it is relatively straight-forward to apply a fixed amount of energy to a DUT. By applying a fixed voltage or current, the power in the DUT remains constant. Then the energy is simply:

E = (V2/R)*t = (I2*R)*t

Where E is the energy in watt-seconds or joules, V is voltage in volts, R is resistance in ohms, I is the current in amps, and t is time in seconds. All you now need to do is apply the constant voltage or current for a pre-determined amount of time and you will then be delivering a fixed amount of energy to your DUT.

Many times however, a lot of DUTs do not maintain constant loading. The may have a dynamically varying loading by nature or its resistance dramatically increases as it heats up. How do you regulate a fixed amount of energy to your DUT under these circumstances? One possibility is to use one of a few specialized power supplies on the market can regulate their outputs with constant power. As the DUT’s loading decreases or increases the power supply will adjust its output accordingly in order to maintain a constant output power delivered to the DUT.  Again then, by applying this constant power for a pre-determined amount of time you will then be delivering a fixed amount of energy to your DUT.

Still, for DUTs that do not maintain constant loading, it is very often not desirable, or outright unacceptable, to apply constant power sourcing.. It may be you can only apply a fixed voltage or current to your DUT. What can you do for these circumstances? Time can no longer remain a fixed value when trying to regulate a fixed amount of energy. The solution becomes quite a bit more complex, as depicted in Figure 1.




Figure 1: Regulating a fixed amount of energy to a DUT

Putting the solution depicted in Figure 1 into practice can prove challenging. The watt-hour meter needs to provide a trigger out signal when the desired watt-hour (or watt-second) threshold level is reached. This becomes even more challenging if this response time required needs to be just fractions of a second for this set up. More than likely this may become a piece of customized hardware.

Interestingly this very set up can be programmatically configured within our N6900A and N7900A series Advanced Power System (APS) power supplies. These products have Amp-hour and Watt-hour measurement integrated into their measurement systems. Not only can you measure these parameters, there is a programmable way to act on them in a variety of ways as well, which is the expression signal routing. Logical expressions can be programmed and downloaded into APS, which then acts on them at hardware-level speeds.  Creating and loading the signal routing expression into the APS unit is simplified by using the N7906A Power Assistance software, which let me do it graphically, as shown in Figure 2.



Figure 2: Graphically developing and loading an energy limit setting into an Agilent APS unit

In Figure 2 a threshold comparator was set to generate a trigger output at a level of 0.0047 watt-hours. This trigger was then routed to the output transient system, to cause the output to transition to a new output level when triggered. I had entered in zero volts as the triggered output level. Thus when the watt-hour reading reached its trigger point, the output went to zero, cutting off any more power and energy from being delivered to the DUT.

The SCPI command set for this signal routing expression is also generated from this software utility by clicking on “SCPI to clipboard”. This saves on the effort generating the code manually if you are incorporating the expression into a larger test program. For this expression the code generated is:

:SENSe:THReshold1:FUNCtion WHOur
:SENSe:THReshold1:WHOur 0.0047
:SENSe:THReshold1:OPERation GT
:SYSTem:SIGNal:DEFine EXPRession1,"Thr1"
:TRIGger:TRANsient:SOURce EXPRession1


To test things out a 1.18 ohm resistive load was used to draw 84.75 watts for a 10 volt output setting. The output cut back to zero volts at nearly 200 milliseconds, as expected. This is shown in the oscilloscope capture in Figure 3.



Figure 3: APS output for an 84.75 watt load and energy limit set to 0.0047 watt-hours

The load power was then doubled by increasing the output voltage to 14.142 volts. The APS output cut back to zero volts in half the time, delivering the same amount of energy, as expected. This is depicted in the oscilloscope capture in Figure 4.



Figure 4: APS output for a 169.5 watt load and energy limit set to 0.0047 watt-hours

While using a resistor makes it easy to see that a set amount of energy is being delivered to the load. However, being able to act on a real time watt-hour energy measurement makes it very practical to do deliver a fixed amount of energy, regardless of the dynamic nature of the load over time.

Friday, January 24, 2014

Using Binary Data Transfers to Improve Your Test Throughput

From time to time I have shared here on “Watt’s Up?” a number of different ways the system DC power supply in your test set up impacts your test time, and recommendations on how to make significant improvements in the test throughput. Many of these previous posts are based on the first five of ten hints I’ve put together in a compendium entitled “10 Hints on Improving Throughput with your Power Supply” (click here for hints 1-5).

Oscilloscopes, data acquisition, and a variety of other test equipment are often used to capture and digitize waveforms and store large arrays of data during test, the data is then downloaded to a PC. These data arrays can be quite large, from thousands to millions of measurements. For long-term data logging the data files can be many gigabytes in size. These data files can take considerable time to transfer over an instrument bus, greatly impacting your test time.

Advanced system power supplies incorporating digitizing measurement systems to capture waveform measurements like inrush current are no different. This includes a number of system DC and AC power products we provide. Even though you usually have the choice of transferring data in ASCII format, one thing we recommend is instead transfer data in binary format. Binary data transmission requires fewer bytes reducing transfer time by a factor of two or more.


Further details about using binary mode data transfers can be found in hint 7 of another, earlier compendium we did, entitled “10 hints for using your power supply to decrease test time” (click here to access). Between these two compendiums of hints for improving your test throughput I expect you should be able find a few different ideas that will benefit your particular test situation!

Wednesday, January 8, 2014

Keysight Technologies – What’s in a name, anyway?

This is an exciting time for us! Yesterday, January 7, 2014, we learned what our new company name will be: Keysight Technologies. Here is a link to the official press release: 

If you have not heard by now, back in September of 2013, Agilent Technologies announced it would split into two companies by the end of 2014. Since I started in 1980, 33+ years ago, I have worked for and will continue to work for the electronic measurement side of the business. For my first 19 years with the company, we were Hewlett-Packard, a company that formed in 1939 as a test and measurement company and eventually birthed Silicon Valley. It is this electronic measurement side of the business that is getting the new name, just as we did in 1999 when we became Agilent from Hewlett-Packard. The other part of Agilent, the life sciences, diagnostics, and applied markets side will continue to operate under the Agilent name. Note that the electronic measurement side will still have the same great people designing and supporting the same great products and services….just a new name: Keysight Technologies.

So let’s take a closer look at the new name, logo, and tagline for Agilent’s electronic measurement business:


The name combines the words “key”, meaning essential, and “insight” meaning intuitive perception. Essential intuitive perception. Seeing what others cannot. A key can also be used to unlock something; we will continue to unlock measurement insights, as our tagline says. And we have been doing this for 75 years - since the day that Bill Hewlett and Dave Packard released their first electronic test instrument, an audio oscillator, in 1939. By the way, it is purely a coincidence that the Watt’s Up? authors, Ed, Matt, and I have combined experience of more than 75 years as stated in our blog header, although I’d like to think that the three of us have been unlocking measurement insights in the AC and DC power field for a combined total of 75 years! In fact, we now have a total of more than 80 years’ experience between the three of us and I will update the header later this year when we officially begin using the Keysight name. But I digress...

The logo symbol is derived from one of the most fundamental wave shapes there is: a sine wave – a wave shape from which all other wave shapes can be built. This is very appropriate for our 100% focus on electronic measurement, not to mention a tribute to our original founders, Bill and Dave, for their audio oscillator. And the power products and topics that you read about here in Watt’s Up? are equally represented by the logo symbol, especially our AC sources! If you really think about it, Keysight will be doing what Hewlett-Packard originally set out to do and Agilent continued to do for decades: build the world’s leading test and measurement company.

So what’s in a name? Essential intuitive perception is in our name. A clear focus on electronic measurement is in our name. Our strong and deep heritage is in our name. And when we begin to fully operate as Keysight Technologies later this year, what you will find behind our name will be the same high quality products and people that you have come to know. That’s what’s in the name Keysight Technologies!


Tuesday, December 31, 2013

Using Agilent Command Expert to Help Write Programs

Happy New Year everyone!  

I am writing this on New Years Eve 2013 and I want to wish everyone a happy and safe 2014.  Ed, Gary, and I had a goal of getting 4 blog posts out a month this year and with this being the fourth blog post this month, we have met that goal!  Thank you to everyone for taking the time to read our blog.

Today, I am going to provide a short intro to  Agilent Command Expert (hereto referred to as ACE). ACE is a free tool that Agilent offers that helps you program your instruments. You can write simple scripts in ACE that you can save and share with other programmers.  The coolest feature of ACE is that it allows you to export the sequence to different programming languages.   You can find the latest version of Command Expert at: 


Using ACE is pretty easy.  The first thing that you need to do is set up your instrument.  My instrument is an Agilent N6700B.  Here is what the setup/edit screen looks like:  



Once you choose the instrument, ACE will download the command set so you do not need to have the programming guide handy.  This is a great feature since you can easily see all of the commands as well as all of the inputs and outputs of the commands. 

Here is the set voltage screen:


You can see here that it shows you all of the programmable items in the command (in this case the voltage and the channel list).  Once you set everything up as you'd want, click add step and it adds it to the sequence.

You can also do queries with ACE.  Here is how you would do a MEAS:VOLT? query:


Again, it shows you all of the programmable items (in this case only the channel list).  It also shows you that there is returned data.  Click add step to get it added to the sequence.

I am going to continue using the same SCPI command as I used in my example last week, here is completed sequence from the example from last month:


Now for the fun part!  You can export the sequence to just straight SCPI:


To C#:


To C++:


To VB.NET:


To Matlab:


It gives you the option to copy the text to the clipboard so that you can paste it into the text editor for your programming language.  

There is also a tool included that allows you to create sequences in Labview.  There is a really good tutorial included with the software that shows you how to do this.

There is a ton more info on the ACE webpage link at the beginning of this blog post.

I hope that this short intro to Agilent Command Expert was useful to everyone.  Please feel free to leave a comment.  Happy New Year everyone!







Sunday, December 29, 2013

Shower by cell phone and the attitude of gratitude

As I type this, I’m sitting on an airplane, clean, comfortable (as much as that’s possible sitting in economy), clean shaven, well fed, flying home to New Jersey from Frankfurt. Things could have been different…
I started my travels today from a hotel in Sindelfingen, Germany, drove to the Stuttgart airport, and took a short flight to Frankfurt where I connected with this much longer flight home (8.5 hours). I was visiting some of Agilent’s distribution partners in Germany and France over the last ten days to present training on our newest power supply products.

Last night, before I went to sleep, I called the front desk of the hotel to ask for a 6 am wake-up call. I wanted to have time to shower, shave, dress, eat breakfast, check out, gas-up the car, drive to the airport, return the car, exchange my leftover Euros for US dollars, and finally make my morning flight. I also set my new cell phone alarm for the same time (6 am). I recently purchased my first smart phone, so I’m happy to be using its features!

6 am rolls around, my cell phone alarm goes off (yes, I managed to set it correctly), and I wake up momentarily not knowing exactly where I am or what is happening (typical for trips where you change hotels a lot). 5 seconds after the alarm starts its intermittent beeping, I come to my senses in my nearly pitch-black, normally very quiet room. The only light is a dim glow from a tiny LED on the room thermostat and the only sound is a low hum from the heating system fan in between the alarm beeps. 10 seconds after the alarm started beeping, the room suddenly become absolutely pitch-black. No light at all! I wonder if I’m dreaming and I feel like I have completely lost my eyesight! But then I noticed that the heating system fan went from humming to silent, and the thermostat LED is no longer glowing. Totally dark and totally quiet (between phone beeps) with no thermostat LED and no fan? OK, perhaps I’m not dreaming and most likely, this is a power failure! In the absolute darkness, I fumble for my beeping cell phone and manage to push a button on it partially illuminating the screen. I turn off the alarm, and now can see just enough to try the lamp switch next to the bed. Click, click on the lamp….no light. Yeah, definitely a power failure. I know that the cell phone, an Apple 5S, has a flashlight feature that is a nice, bright white LED. Turning that on, I’m now able to easily maneuver around the room. I pick up the room phone, but it is dead. I look outside, and it is dark everywhere. Yep, it’s not just my room, nor is it just the hotel. The power is out everywhere. Guess I won’t be getting my 6 am wake-up call!

Next, it is time to shower. I strategically place the cell phone on the bathroom counter angled just right so the light bounces off the ceiling and I can see reasonably well in the shower. Shaving is a bit more difficult with the limited and oddly angled light, but I manage. Then the lights come back on. Whoo-hoo!  About 10 minutes later, the hotel phone rings and the manager is very apologetic about the wake-up call being 40 minutes late. I tell him “no problem” and explain my phone alarm still woke me on time.
So had my cell phone alarm not awakened me, I may have slept too long resulting in a missed flight. And if I did not have the flashlight feature on the phone, I would not have been able to shower and shave making me more comfortable during a full day of travel. Earlier in my trip, the cell phone GPS also saved my colleague and me by guiding us to our hotel, to the office, and enabling us to find our way back to the hotel after walking around town for lunch.

Cell phones play a very large role in our lives today. While we humans survived the vast majority of our existence without them, smart phones and all electronic technology have vastly changed our lives. While I regularly wonder how my life would have been different had I lived in a time without electricity, today, my smart phone changed my experiences. I could have missed my flight had my cell phone alarm not gone off. I could have been less comfortable during my long travel day had I not been able to shower by cell phone light. Despite a power failure preventing a wake-up call and no light in my hotel room for the early morning, my day was not really disrupted thanks to my cell phone. While these things are minor in the grand scheme of things, I am still grateful for the technology we have that allows us to do the things we do. And I’m glad to be a part of that technology by working with power products. Many cell phone manufacturers use Agilent power products during their design, verification, and manufacturing processes and I am happy to be a part of that chain.

May all of your travels during this holiday season be uneventful…and Happy New Year!

Friday, November 29, 2013

Using Labview without Using an Instrument Specific Driver

Hi everyone!

Labview is presently one of the most popular programming languages for programming test and measurement equipment.   Here at Power and Energy Central, we often get requests for more Labview programming examples for our products (which is definitely something on my agenda).   We also get requests for Labview drivers (which do exist for many of our products).  I thought that I would use this month’s blog posting to demonstrate how to program without using a driver.  There are a few advantages to this approach.  The first and main one is that it gives you access to the full SCPI command set of the instrument.  Anything you can do with the instrument is available to you.  The second advantage is that you do not need to worry about downloading and setting up drivers. 

I am going to work through an example using my Agilent N6700B on LAN.  We are going to use VISA calls in Labview to communicate with the instrument.  The first thing that we are going to need to do is get the VISA init string from the Agilent IO Libraries (or whatever IO Library you are using).  You can see the init string from my N6700B below (from the Agilent IO Libraries):



With the VISA address in hand, start up Labview and choose a blank VI.  Go to the Functions Pallette -> Instrument IO -> VISA ->Advanced and choose Open.  This function will open up a VISA session with your instrument.  There are quite a few inputs to this function but I usually just set up the instrument address and the VISA Open timeout:

After opening a session, we are ready to send our first commands.  I usually like to send a *RST and a *IDN?  so I know that I am in a known state and fully communicating with my instrument.   To send a command, you are going to go to the VISA menu and choose Write.  There are a few lines that you will need to connect here.  In Labview, you will always connect the “VISA Resource Name Out” and “error out” lines through your entire program (you will see that throughout this example).   The command is the other input.  This will need to be a string.  

Since we sent a query, we need to read out the output buffer.  This is done by choosing read in the VISA menu.   You need to do with the read are set the byte count to be read (I set it to 100 bytes so it is totally out of the way).   You also need a string indicator so that you can read and display the results of the *IDN query.



I am going to finish out my program by setting my supply to 4 V, turning the output on, and measuring the voltage.  All of these steps will use the same reads and writes that we used before.  The last thing I will do is use a VISA Close.  Using a Close will de-allocate all the resources and release the instrument.  This is generally good programming practice and is often overlooked.  Here is what the final program looks like:


After I run the completed program, I get the following results:


We can see that the results are as we expected and our program is working.

From this example, you can see that doing simple things is pretty easy in Labview.   If you are interested in downloading the example, please leave a comment here and I will post it so that you can get it.  As always, if you have any questions please feel free to post in our comments.  Take care!



Wednesday, November 27, 2013

Why can’t you put electronic loads in series?

The quick answer to the above question is: because you will likely damage at least one of the loads with excessive voltage! For the longer answer, read on….

[By the way…this is a milestone post for Watt’s Up? since it is post # 100, so thank you to our readers…and Happy Thanksgiving to those in the US or celebrating elsewhere!]

I’ll start with a brief explanation of what an electronic load is, and what it is used for. I am specifically talking about DC electronic loads here. A DC electronic load is a two-terminal electrical instrument that draws power from a DC source. Loads are used to test DC sources. Any device that has a source of DC output power, such as a DC power supply, a DC-to-DC converter, a battery, a fuel cell, or a solar panel, can have power drawn from it with an electronic load. Click here to see Agilent’s DC electronic loads.


For example, to test a fixed-output DC power supply that is rated for 20 V, 5 A, 100 W, you would connect the power supply output to an electronic load with ratings that are equal to or greater than the power supply ratings and that can draw a constant current from the power supply. Since the power supply is regulating the voltage (20 V), the load must regulate the current it draws from the power supply (up to 5 A). If your DC power supply is a constant current source, the load must be capable of drawing power while regulating voltage. You can set most electronic loads to draw power by regulating either constant voltage (CV) or constant current (CC). You can also set many electronic loads to regulate constant resistance (CR) across their input terminals, and some can regulate constant power (CP).

If the power supply to be tested has a higher output voltage than a single electronic load can handle, you may be tempted to put multiple load inputs in series to accommodate the higher voltage. After all, you can do this will power supply outputs to get higher voltage (click here)….why not with loads?

Putting electronic loads in series can cause one of the load inputs to be exposed to a voltage beyond its capabilities that could result in damage to the load. You are putting loads in series because a single load does not have a high enough voltage rating to handle the voltage of your DC power source. But since one of the load inputs could become a low impedance (nearly a short circuit) during test, all of the voltage from your DC source could appear across the other load input in series. There are several scenarios that can result in this destructive situation. To understand these scenarios, you first have to understand how an electronic load works.

Loads work by controlling the conduction of FETs across their input terminals. The control is realized by using a feedback loop to adjust a measured level (such as the input current) so that it equals a reference level (such as the set current). My colleague, Ed Brorein, posted about this topic last year (click here).

When you put multiple electronic loads in series to accommodate higher voltage, one problem scenario occurs when you set both loads to operate in CC mode. You set the same current on both loads. The exact same current flows through both loads (see figure below), but due to small errors in the accuracy of the settings, the real set values will never be exactly equal. Therefore, one of the loads will be trying to draw a higher current (Load 2 in the figure) than the other load (Load 1 in the figure). Since Load 1 will limit the current at the lower value (9.99 A in this example), Load 2 can never attain its real set point (10.01 A in this example). So its internal feedback loop continues to tell the FETs to conduct more and more current until the FETs are fully on looking nearly like a short circuit. This results in nearly all of the power supply voltage appearing across the Load 1 input which can damage it.


If you operate one load input in CC and one in CV, at first this looks like it will result in a stable operating point. However you have to think about how you get to that stable operating point. If you set the loads first before you connect the voltage, before the voltage is applied, the CC load is not satisfied (no current is flowing) so it goes to a short and the CV load is also not satisfied (no voltage is present) so it goes to an open. When the test voltage is applied, all of the voltage initially appears across the open CV load and can damage it. There are other procedures to follow that could temporarily result in a stable operating point (such as slowly increasing the test voltage if you have that ability), but if any fault condition occurs in any of the loads, they try to protect themselves by either turning the FETs on hard (a short) or opening the FETs. In either case, the large destructive voltage will appear across one of the loads in the series connection resulting in damage.

One of my colleagues, Bob Zollo, wrote an article entitled “Why Can’t You Put Electronic Loads In Series To Get More Voltage?” that appeared in Electronic Design on November 4, 2013. For some additional information about this topic, click here to read the article.

So you can see that putting loads in series can too easily result in damage to at least one of the load inputs. I strongly recommend that you do not do it!

Wednesday, November 13, 2013

How to Make More Accurate Current Measurements

There are a number of ways to make current measurements, including magnetically coupled probes, Hall-effect devices, and even some more exotic field sensing probes, but a good quality resistive shunt really cannot be beat in terms of accuracy, bandwidth, and overall general performance.

We likewise make considerable use of high performance shunts in our DC power products to provide extremely accurate current read-back of load currents, spanning the full range of output loading. Not only is the quality and design of the shunt itself critical, but how you treat it and make use of it are all equally important to get great current measurement performance. At the surface it may seem simple; it’s just measuring the voltage drop across a resistor. In reality it is no simple task. It requires appropriate metrological resources to validate the performance.  There are a lot of potential sources of error to recognize, quantify, and contend with.

When working with folks I sometimes encounter those who prefer to develop in their own current measurement into their test systems, instead of relying on the current read-back system already build into their system DC source. There are times when this is the right thing to do and is fine when done correctly. However some of the time there is the preconception that the DC source cannot provide an accurate measurement. The reality is there is a wide selection of DC sources available spanning a wide range of performance, Most likely something will be available that adequately addresses one’s needs. A second issue is, when developing current measurement capabilities for a test system, is truly recognizing all the potential sources of error. It goes well beyond having a good DVM and a good shunt resistor in the test system.  

A colleague here in our R&D group, Mark Peffley, wrote a comprehensive article that was just published. It covers a myriad of things in depth to be taken into consideration in order to make accurate current measurements, including:
  • Temperature dependencies
  • Self-heating and thermal equilibrium
  • Temperature gradients
  • Thermo-electric effects
  • Additional sources of offset errors
  • Voltage drop considerations
  • Shunt selection practical considerations
  • And more!
So using a shunt is a great foundation for making highly accurate current measurements. That’s why we use them in our power products. But, as Mark points out, there is a lot more to it than just Ohm’s law. When using one of our power products we factor all these things in so that they become a non-issue for the user. However, if you do plan to add current measurement into your test systems then I highly recommend reading Mark’s article “Obtain Accurate Current Measurement” (click here to access) as it is a great reference on the subject!

Wednesday, November 6, 2013

Paralleling power supplies for more power without compromising performance!

A year ago my colleague here, Gary, provided a posting “How can I get more power from my power supplies?” (Click here to review). He describes connecting power supplies in series for higher voltage or in parallel for higher current. Along with suggested set ups a list of requirements and precautions are also provided.

Connecting multiple power supplies in parallel operating as voltage sources is always problematic as there will be some imbalance of voltage between them. That’s why, in this previous posting, one unit operates as a voltage source and the remaining paralleled units operate in constant current. The compliance voltage limit of all the units operating in constant current need to be set higher than the master in operating in constant voltage in order to maintain this operation. This is illustrated in Figure 1.



Figure 1: Operating power supplies in parallel for higher power


As long as a high level of loading is maintained the paralleled units remain in their respective operating modes (in this case at least 2/3 loading). However, what happens if you cannot maintain that high level of loading? It is possible in practice to operate at lighter loads with this approach. In this case it is important to set the voltage levels of all the units the same. Now what happens is when the units are fully loaded they operate as already described, with the lowest voltage unit remaining in constant voltage. But when they are unloaded the lower voltage units transition to unregulated operation and the highest voltage unit then maintains the overall output in constant voltage. This is shown in Figure 2, for 0 to 1/3 loading.














Figure 2: Conditions of power supplies connected in parallel at light loading

There is a bit of performance compromises as a result. The transition between the lowest and highest voltage limits adds to the voltage regulation. Also, due to different units experiencing mode crossover transitions between constant voltage, constant current and unregulated operating modes transient voltage performance suffers considerably.

An improvement on this direct paralleling approach is having a master-slave arrangement with control signals to maintain current sharing across units. Our N5700A and N8700A series power supplies use such a control arrangement as depicted in Figure 3, taken from the N5700A user’s guide.




















Figure 3: N5700A Connection for parallel operation (local sensing used)

With this arrangement the master unit, operating in constant voltage, provides an analog current programming output signal to the slave unit, operating in constant current. In this way the two units equally share the load current across a wide range of load current.

Still, having multiple units with only one in constant voltage does not provide as good of dynamic performance as a single voltage source of higher power.  A unique and innovative approach was taken with our N6900A / N7900A series Advance Power System (APS) to support seamless parallel operation without compromising performance. The paralleling arrangement for our N6900A / N7900A series APS is depicted in Figure 4.





Figure 4: N6900A / N7900A series APS Connection for parallel operation

The N6900A / N7900A series APS paralleling arrangement also uses an analog control signal for driving current sharing. However with this arrangement there is no master or slaves. All units remain in constant voltage while equally sharing current. This provides the user with an easy way to scale a power system as required without having to worry about compromising performance.

Thursday, October 31, 2013

Power Supply Programming Part 2: What Type of Programming Language to Use

Happy Halloween Watt’s up fans!  Today I want to look at what programming language you are going to use to write your program.  Instead of recommending a particular language, I am going to break it down by graphical versus text based programming.

Let me start by saying that there really is no correct answer to this question.   This is a matter of personal taste.   

I am going to start with a bit about my background.  Unlike most of my colleagues, I did not specialize in analog electronics in college.  I focused more on computer engineering.  Due to this specialization, I have taken quite a few programming based courses.  I prefer sitting down and programming using a text based programming language because of my background. 

 Graphical programming languages are a very popular option (Agilent VEE is the one that I am most familiar with).     I find these programs are great for doing short programs.  If something can take up less than one page on your computer screen, then it works pretty well here.  These languages also make building user interfaces really easy since there are a lot of easy to access functions for controlling and displaying instrument data.  I personally find that they get very unwieldy if you want to send and read a lot of data with an instrument.  I also find the looping constructs to be strange.   People have told me that these graphical languages look very similar to circuit diagrams and I can see how people would prefer that kind of view to just plain text programming.

I am going to make a confession.  If I have to write a program quickly and I do not have to show it to anybody, I still will write it in HPBASIC.  I find it to be very easy to do simple instrument programming.  There is no need for drivers, once it is set up properly; sending and receiving information with an instrument is a breeze.    Large programs do not fare very well in HPBASIC though.

My preferred way to program these days is Visual Basic (using VISA-COM IO).  If you look at the power supply example programs that we provide, there is a lot of VB in there.  I feel that a text based program allows you to write much more compact code. It takes up a lot less screen space than an equivalent graphically based language.  Something like Visual Basic is also more versatile since it is not only for test and measurement but for more general applications.  The looping constructs work very nicely here and to me the flow makes more sense.  I also find typing quicker than connecting boxes.  Text based programming does have some cons though.  For one, the graphical languages are written from the bottom up to do instrument control.  They have built in functions and data manipulation that make thing easier.  The graphical languages also have some really good libraries for building User Interfaces. 

 The real correct answer to the questions is the best language to use is the one that you are most comfortable programming in.  If you think that I missed any pros or cons please feel free to share in the comments.

Wednesday, October 30, 2013

Protect your DUT from over-current in more ways than one

Last month, I posted about one of our new families of products: the N6900/N7900 Series 1- and 2-kW Advanced Power System (APS) DC Power Supplies (click here). I typically like to post about more general power topics rather than focus on specific Agilent products, but this product has some really interesting features from which you can benefit. After 33 years of working on power here, there aren’t too many new products that get me excited, but this is one of them! So here is a story about an application for it.

Earlier this month, I visited one of our customers that had a device under test (DUT) whose input was sensitive to too much current. That is typically not a difficult issue to protect against using Agilent power supplies with over-current protection (OCP). Set the current limit to a value that you don’t want to exceed, turn on OCP, and the power supply output will go into protect (turn off) when the current limit value is reached. Simple enough! But this customer had an additional requirement. In addition to an OCP value as just described, he also wanted to shut down the output if the current exceeded a lower current for more than a specified amount of time. So he wanted the power supply output to go into protect (turn off) if either of the following conditions occurred on his DUT (I changed this example to protect his information):

       1.  DUT input current exceeds 6 A for any amount of time, or
       2.  DUT input current exceeds 4.5 A for 80 ms

To be honest, at the time of the visit, I wasn’t sure if our new product could do this. The product is so new and so feature-rich that I am not yet familiar with all of its capabilities. But when I returned to my office, I set it up and found it was very easy to do! Here is the solution:

I used the advanced signal routing and logical trigger expressions built into our N7952A APS to setup both requirements. I could have sent SCPI commands to setup the same trigger configuration, but our free Power Assistant Software (N7906A) made this even easier. Figure 1 shows the software with the configuration.


If, after creating the configuration, I want all of the SCPI commands that correspond to it for a program, I could use the software feature “SCPI to clipboard” that creates them from the configuration. See Figure 2.


Take a look at this feature in action. Figure 3 shows a scope trace of the current waveform. As you can see, currents that are less than 4.5 A do not trip the protection. And currents above 4.5 A for less than 80 ms (and below 6 A) also do not trip the protection. But as soon as the current exceeds 4.5 A for 80 ms (and remains below 6 A), the protection tripped – the output shut off causing the current to go to zero amps.


This is just one example of how versatile the N6900/N7900 APS power supplies are. For more information about how these advanced power systems can help you in your power application, please use this link: www.agilent.com/find/aps. To explore this advanced signal routing and logical trigger expressions feature even more, take a look at a post from one of my collegues: https://gpete-neil.blogspot.com/2013/10/protecting-your-dut-during-test-with.html