Gas station without pumps

2017 February 18

Digilent’s OpenScope

Filed under: Uncategorized — gasstationwithoutpumps @ 10:08
Tags: , , , ,

 

Digilent, which makes the excellent Analog Discovery 2 USB oscilloscope, which I have praised in several previous post, is running a Kickstarter campaign for a lower-cost oscilloscope: OpenScope: Instrumentation for Everyone by Digilent — Kickstarter.

I’m a little confused about this design, though, as is it is a much lower-quality instrument without a much lower price tag (they’re looking at $100 instead of the $180 or $280 price of the Analog Discovery 2, so it is cheaper, but the specs are much, much worse). The OpenScope looks like a hobbyist attempt at an oscilloscope, unlike the very professional work of the Analog Discovery 2—it is a real step backwards for Digilent.

Hardware Limitations:

  • only a 2MHz bandwidth and 6.25MHz sampling rate (much lower than the 30MHz bandwidth and 100MHz sampling of the Analog Discovery 2)
  • 2 analog channels with shared ground (instead of differential channels)
  • 12-bit resolution (instead of 14-bit)
  • 1 function generator with 1MHz bandwidth and 10MHz sampling (instead of 2 channels 14MHz bandwidth, 100MHz sampling)
  • ±4V programmable power supply up to 50mA (instead of ±5V up to 700mA)
  • no case (you have to 3D print one, or buy one separately)

On the plus side, it looks like they’ll be basing their interface on the Waveforms software that they use for their real USB oscilloscope, which is a decent user interface (unlike many other USB oscilloscopes).  They’ll be doing it all in web browsers though, which makes cross-platform compatibility easier, at the expense of really messy programming and possibly difficulty in handling files well.  The capabilities they list for the software are much more limited than Waveforms 2015, so this may be a somewhat crippled interface.

I would certainly recommend to students and educators that the $180 for the Analog Discovery 2 is a much, much better investment than the rather limited capabilities of the OpenScope.  For a hobbyist who can’t get the academic discount, $280 for the Analog Discovery 2 is probably still a better deal than $100 for the OpenScope. The Analog Discovery 2 and a laptop can replace most of an electronics bench for audio and low-frequency RF work, but the OpenScope is much less capable.

The only hobbyist advantage I can see for the OpenScope (other than the slightly lower price) is that they are opening up the software and firmware, so that hobbyists can hack it.  The hardware is so much more limited, though, that this is not as enticing as it might be.

Some people might be attracted by the WiFi capability, but since power has to be supplied by either USB or a wall wart, I don’t see this as being a huge win.  I suppose there are some battery-powered applications for which not being tethered could make a difference (an oscilloscope built into a mobile robot, for example).

Going from a high-quality professional USB scope to a merely adequate hobbyist scope for not much less money makes no sense to me. It would have made more sense to me if they had come out with OpenScope 5 years ago, and later developed the Analog Discovery 2 as a greatly improved upgrade.

2016 December 27

FET I-vs-V with Analog Discovery 2 again

 

In FET I-vs-V with Analog Discovery 2, I plotted Id vs. Vgs curves for an nFET:

The Ids-vs-Vgs curves do not superimpose as nicely as curves I’ve measured with PteroDAQ. I don’t yet understand why not.

Yesterday, I played with sweeping the power supply (Power waveform generator).  In this post, I used that capability to plot Id vs Vds curves for different gate voltages (Vgs) of a different nFET (since the AOI518 is an obsolete part).  The setup is the same as for the previous test—the function generator is connected to the gate, the power supply to the drain load resistor in series with the nFET whose source is connected to ground, and the two oscilloscope channels monitor the voltage across the load resistor and across the nFET.  The difference is that I use the power-waveform option to put a 1Hz triangle wave on the power supply, but put just a DC offset (AC amplitude 0V) on the function generator output, so that the gate voltage is constant as the drain voltage is adjusted.

The saturation regions are well plotted up to Vgs=2.7V. I averaged 10 or 20 scans for each of these curves, to reduce quantization noise for small voltages or small currents.

The saturation regions are well plotted up to Vgs=2.7V. I averaged 10 or 20 scans for each of these curves, to reduce quantization noise for small voltages or small currents.

I got quite different results when I removed and replaced the nFET from the breadboard—the breadboard contacts seem to have a variation of about ±0.05Ω in resistance, which is much larger than the on-resistance of the nFET when fully on. I took measurements with a wire between the source and drain to estimate the wiring resistance, but wiggling the wire produced very different results.

In the next graph, I tried subtracting off the wiring resistance to get the on-resistance, but I’m really quite dubious about the measurements smaller than 0.5Ω, because of the unrepeatability of the bread board contact resistance.

The numbers here look good (close to the spec sheet), but repeating the measurements could result in ±0.1Ω, which makes the Ron measurements for fully on transistors rather useless.

The numbers here look good (close to the spec sheet), but repeating the measurements could result in ±0.1Ω, which makes the Ron measurements for fully on transistors rather useless.

By using a smaller power resistor, I could probably get saturation currents for slightly higher gate voltages, up to the current limit of the power supplies in the Analog Discovery 2, but better on-resistance measurements would require a better jig for making low-resistance contacts to the FET.

By using a much larger resistor, I could measure low currents more accurately, which would give me a better idea of the leakage currents—I don’t really believe the measurements for Vgs=2.1V, because the current appears to decrease with increasing Vds, which is probably an artifact of measuring a small difference in voltage with a large common-mode signal.

I tried using larger resistors to measure the saturation currents, but the results varied a lot depending on what size load resistor is used. I believe that the difference is due to temperature changes from self-heating. If I sweep out to larger Vds voltages (using a smaller load resistor, hence smaller IR drop across it), but about the same saturation current, I’m dissipating more power in the transistor, so making it warmer. This appears to increase the saturation current. Reducing the range of the voltage with the same load resistor drops the curve down, just as increasing the load resistor does. I suspect that proper measurement requires a jig that holds the transistor at a nearly constant temperature, as well has having very low contact resistance.

The saturation current seems to vary by about ±10% as I change load resistors. The effect is most likely thermal—note that using a smaller voltage sweep for Vgs=2.3V and Rload=51Ω resulted in almost the same curve as Rload=270Ω, because the power dissipated was about the same.

The saturation current seems to vary by about ±10% as I change load resistors. The effect is most likely thermal—note that using a smaller voltage sweep for Vgs=2.3V and Rload=51Ω resulted in almost the same curve as Rload=270Ω, because the power dissipated was about the same.

Note that the thermal explanation also works for explaining why the superposition does not work well for the Id vs Vgs plots—at lower load resistances, more power is dissipated in the transistor, and it gets warmer, shifting the current curve upward.

2016 December 25

Coin cell batteries are pressure sensitive

Filed under: Data acquisition — gasstationwithoutpumps @ 18:03
Tags: , , ,

I found out from Zohar that one could squeeze more power out of almost dead coin cells, literally—squeezing CR1225 lithium/manganese-dioxide (Li/MnO2) batteries when they are nearly dead appears to revive the batteries. So I decided to test this with my oscilloscope.  First, I made a test jig for holding batteries that I could apply pressure to:

The contacts are made with 22-gauge copper wire. I can squeeze the battery by pressing down on it with an aluminum rod.

The contacts are made with 22-gauge copper wire. I can squeeze the battery by pressing down on it with an aluminum rod.

I still have to work out a way to provide a measurable force to the battery (probably attaching a tray to a short length of aluminum rod, so that I can put known weights on the tray), but I’ve been doing some testing with “low force” (just enough to make contact) and “high force” (about 70N).

I provided a 100Hz triangle wave from 0.4 V to 3.4 V to the gate of the nFET, to produce a variable load on the battery, hoping to trace out a nice load line.

I provided a 100Hz triangle wave from 0.4 V to 3.4 V to the gate of the nFET, to produce a variable load on the battery, hoping to trace out a nice load line.

I tested three CR1225 batteries, each of which had been used a fair amount. The most dramatic effect was from the deadest of the batteries:

I-vs-V plot for battery 2 with low force

I-vs-V plot for battery 2 with low force

Battery 2 I-vs-V with high force

Battery 2 I-vs-V with high force

The plots above are directly from the Analog Discovery 2 oscilloscope, using the XY plot and a “math” channel that scales Channel 2 by the 200Ω sense resistor to get current. I also exported the data and plotted it with gnuplot, so that I could hand-fit the internal resistance:

The battery has an internal resistance of 500Ω, but squeezing it hard brings the resistance down to about 140Ω.

The battery has an internal resistance of 500Ω, but squeezing it hard brings the resistance down to about 140Ω.

A new Energizer CR1225 battery should have an internal resistance of 30Ω, increasing to about 50Ω when the battery is “dead” (from the datasheet). This battery is clearly well beyond the point that Energizer would consider it dead, though it is still capable of delivering almost 3.5mW (2.5mA@1.4V). Squeezing the battery hard lets it deliver 12.3mW (7.5mA@1.64V). Actually, those are only instantaneous power levels. The voltage drops quickly to a lower level, where it holds steady for a while, so the sustained power is more like 11.1mW (7.4mA@1.5V). The 200Ω load is a pretty good match to the internal resistance of the battery here, so this is about as much power as we can squeeze out of the dead battery.

I tried two other batteries that were not quite as dead. Battery 3 had 190Ω internal resistance dropping to 84Ω when squeezed, and Battery 5 had 220Ω dropping to 65Ω—all of these would have been considered dead batteries by Energizer (they weren’t Energizer batteries, but a no-name brand from China):

Battery 3 was a bit better than battery 2, getting up to 7mA without squeezing.

Battery 3 was a bit better than battery 2, getting up to 7mA without squeezing.

Battery 5 was the best battery tested, at least at high force, delivering 24mW (10.8mA@2.2V) to a 200Ω resistor.

Battery 5 was the best battery tested, at least at high force, delivering 24mW (10.8mA@2.2V) to a 200Ω resistor.

I’m pretty sure that the resistance differences I’m seeing are due to squeezing the battery, and not changes in the battery-wire contact resistance, but it would be good to devise a way to squeeze the battery without squeezing the contacts.

Things still to do:

  • Modify the test jig to provide measured forces squeezing the battery.
  • Modify the test jig so that the contact force and area is independent of the amount of squeezing.
  • Test some new coin cells, to see if squeezing to reduce internal resistance is just a phenomenon of nearly dead batteries or applies to all lithium/manganese-dioxide cells.  A new battery should be able to deliver 11mA@2.6V (34mW) to a 200Ω load.

It would also be good to have a theory about why increasing the pressure reversibly decreases the internal resistance.  TO come up with such a theory, though, I’d need to have a better understanding of the mechanical and chemical properties of the coin cells: what is the chemical reaction that increases the internal resistance? What moves when pressure is applied to the coin cell?  So far, the only guess I have is a change to the bulk resistivity of the electrolyte, with squeezing reducing the distance between the electrodes.  But the coin cell is not getting skinnier by a factor of 3, so I don’t think that the electrodes are getting that much closer together.

Last, it would be good to have a better understanding of the hysteresis in the I-vs-V plot.  Why does the voltage drop then hold steady at constant current, and why does the voltage recover when the current is no longer drawn?

Update 31 Dec 2016:  I tried testing a couple of brand new coin cells. They had an internal resistance of about 15Ω and did not seem particularly pressure sensitive. I’d need a more careful setup to measure the small changes in internal resistance and be sure I wasn’t just seeing a change in the contact resistance.

2016 December 19

Impedance of inductors and parasitic impedance of oscilloscope

Filed under: Data acquisition — gasstationwithoutpumps @ 01:04
Tags: , , , ,

Because the Analog Discovery 2 makes doing impedance spectroscopy so easy, I decided to do a quick check of my inductors to plot their impedance, checking the series resistance in the process.  This was just going to be a short interruption to my day of working on my book, but it ended up taking up most of the day, because I got interested in seeing whether I could determine the characteristics of the scope inputs that were limiting the performance at higher frequencies.

Here was the data I started with, after converting the dB scale to |Z|. I used a 20Ω resistor in order to get reasonably large voltages at both ends of the frequency sweep. With a larger resistor, the low-frequency measurement across the inductor was too noisy, because the voltages were so small.

Here was the data I started with, after converting the dB scale to |Z|. I used a 20Ω resistor in order to get reasonably large voltages at both ends of the frequency sweep. With a larger resistor, the low-frequency measurement across the inductor was too noisy, because the voltages were so small.

The data looks fine up to 1MHz, but above that is a resonant peak, probably from the capacitance of the oscilloscope and the wiring to it.

I tried modeling the oscilloscope inputs as capacitors, but that resulted in way too sharp a spike at the resonance to match the data, so I tried a resistor in series with a capacitor. Initially, I tried modeling both channels identically, but I got better fits when I used a different model for each channel:

The resistor in series with the capacitance of the scope limits the sharpness of the resonance peak. Channel 1 was measuring the voltage across the 20Ω resistor, and Channel 2 was measuring the voltage across the inductor, so the setup is more sensitive to the Channel 2 parameters than to the Channel 1 parameters. I don’t really believe that the Channel 1 parameters fit here are correct.

It might be interesting to swap which channel is connected to which device, and see whether the R+C models still fit well, but I’ve not got the time for that tonight.   I did have some earlier data (from playing with resistor sizes) and I fit the oscilloscope models to it:

The fits here suggest some  difference between the channels, but not as radical a difference as the previous plot.  The 62kΩ sense resistor, though not good for determining the DC resistance of the inductor, does give a good handle on the parasitic impedance of the oscilloscope channels.

The fits here suggest some difference between the channels, but not as radical a difference as the previous plot. The 62kΩ sense resistor, though not good for determining the DC resistance of the inductor, does give a good handle on the parasitic impedance of the oscilloscope channels.

2016 December 15

Function generator bandwidth of Analog Discovery 2

Filed under: Data acquisition — gasstationwithoutpumps @ 15:56
Tags: , , ,

The network analyzer function of the Analog Discovery 2 USB oscilloscope makes it easy to characterize the function generator’s bandwidth—just connect the function generator to the input channel (making sure that the input channel is not specified as a reference) and do a sweep.  The only choice is whether to use the wires that come with the basic unit or the optional BNC adapter board and scope probes.  I tried it both ways (and with both 1X and 10X settings of the scope probes), using 1V amplitude on the waveform generator one in all cases:

There is not much difference in the bandwidth between 10X probes and wires (both high impedance) (8.5–8.8MHz bandwidth), but the 1X scope probes provide higher bandwidth—higher than the 10MHz measurable with the network analyzer.

There is not much difference in the bandwidth between 10X probes and wires (both high impedance) (8.5–8.8MHz bandwidth), but the 1X scope probes provide higher bandwidth—higher than the 10MHz measurable with the network analyzer.

I tried loading the function generator with resistors, but this made essentially no difference in the frequency characteristics. It isn’t the 1MΩ resistance of the scope that matters, but the capacitance of the oscilloscope plus probe.

So I tried adding capacitive loads and found that I got a very clear LC resonance. With a 330pF load, I got the peak near 10MHz to approximately cancel the drop:

The resonance around 9.1MHz with a 330pF load is actually a little too strong and over-corrects for the drop in bandwidth. Adding 6.8Ω in series with the 330pF capacitor makes a load that nicely compensates for the inductance of the wires.

A resonance around 9.1MHz with a 330pF capacitor implies an inductance of about 0.93µH, which is in a reasonable ballpark of the sort of inductance one would expect for 80cm of wire (4 wires each about 20cm).

Next Page »

Blog at WordPress.com.

%d bloggers like this: