Gas station without pumps

2015 July 25

Noise from PteroDAQ KL25Z

Filed under: Circuits course,Data acquisition — gasstationwithoutpumps @ 15:31
Tags: , , , , , ,

In a series of posts (most recently More on measuring PteroDAQ KL25Z input impedance), I’ve been measuring the input impedance of my various ways of measuring AC voltage, and having some trouble getting a reasonable value for using the PteroDAQ as a measuring device.  In the most recent post, I noted that hardware averaging seemed to make the measurements worse, not better, when the input impedance was high.

I decided to map out how bad this measurement error was, by changing the source resistance and seeing how the voltage measurement changed. I picked a low frequency (55Hz) with a high sampling rate (6001.5Hz), so that aliasing was not an issue.

The voltage measurements are fine up to a source impedance of 10kΩ without averaging, but only to 1kΩ with 32× hardware averaging.

The voltage measurements are fine up to a source impedance of 10kΩ without averaging, but only to 1kΩ with 32× hardware averaging.

My conjecture about the problem with the 32× averaging was that the KL25Z sample-and-hold circuitry was injecting interference onto the pin, and that too high a source impedance did not provide sufficient current to eliminate this noise before the next sampling of the pin.

I tried fixing the problem by adding a small capacitor between the pin being measured (PTE0) and ground. The idea is that the capacitor can short out the high-frequency interference, using charge from the capacitor to cancel the noise rather than from the source. If the capacitor is too large, then the low-pass RC filter of the source impedance and the capacitance will reduce the signal, but if it is too small, then the sample-and-hold will be confused by the noise from the previous sample. With the 55Hz signal and a 100kΩ source impedance, I tried a number of capacitors, looking for the one that would maximize the voltage reading with 32× hardware averaging. I settled on 470pF, which would give a corner frequency of 3.39kHz (approximately my Nyquist frequency).

Putting in a 470pF capacitor to bypass the noise from the sampling helps when there is no averaging, but not so much when there is averaging.

Putting in a 470pF capacitor to bypass the noise from the sampling helps when there is no averaging, but not so much when there is averaging.

With the 470pF capacitor, the source resistance can get as high as 100kΩ before the noise injection becomes a problem, when not using hardware averaging (at the 6kHz sampling rate—higher sampling rates would start seeing problems at lower impedances. In general, I think that sampling period should be at least 3.5 times the RC time constant of the source resistance and the added capacitance. For single-ended, 16-bit measurements with short sample times, the KL25Z hardware averaging has a period of 25 ADC clock cycles and PteroDAQ is set up to use a 6MHz ADC clock, so the samples are at 240kHz, which would suggest a maximum source impedance of 2.5kΩ for a 470pF capacitor using hardware averaging. This seems consistent with the measured data.

I realized this morning that I did not need to just conjecture the noise on the pin—I could stick an oscilloscope on it and measure it. I used a 47kΩ series resistor (so that the 1MΩ || 10pF load of the Bitscope oscilloscope would not make a huge difference) and a 10 Hz input from the FG085.  I set the PteroDAQ sampling rate to 3750Hz, so that there would be about equal time for the 32 samples and for recovery between them.  I captured single traces and got fairly consistent results.  Here is an example:

This trace at 50mV/division and 20µs/division shows the 240kHz noise from the sample-and-hold circuitry for the first half, and the much smaller noise when not sampling for the second half.  This trace was done without the 470pF capacitor.

This trace at 50mV/division and 20µs/division shows the 240kHz noise from the sample-and-hold circuitry for the first half, and the much smaller noise when not sampling for the second half. This trace was done without the 470pF capacitor.

The noise injected by the sample-and-hold circuitry is about 190mV peak-to-peak with the 47kΩ resistance, or about 4µA.

Adding the 470pF capacitor reduces the peak-to-peak noise to about 16mV or 340nA, but there is enough of a bias to the noise that the error is much larger, as seen by the slow decay back to the correct value in the following trace:

At 10mV/division and 20µs/division, this trace shows both the reduction in noise from using a 470pF  capacitor and slow recovery to the correct voltage at the end of the 32 samples. The time constant for 470pF times 47kΩ is about 22µs, about 5.3 times the sampling rate (or about 20 times longer than desirable for accurate reading).

At 10mV/division and 20µs/division, this trace shows both the reduction in noise from using a 470pF capacitor and slow recovery to the correct voltage at the end of the 32 samples. The time constant for 470pF times 47kΩ is about 22µs, about 5.3 times the sampling rate (or about 20 times longer than desirable for accurate reading).

The injection of noise back into the circuit being tested is a particularly nasty property for test equipment to have. One could avoid it by adding a unity-gain buffer before the pin, which would have three good effects:

  • The input impedance would now be the impedance of the op amp, which can be in the 10GΩ range (for the cheap MCP6004 op amps we use in class)
  • If there was noise from the microprocessor, it would not be injected into the circuit being tested.
  • The source impedance for the analog-to-digital converter would now be around 40Ω (for the MCP6004 op amps), so all these noise problems would go away.

There is one downside to using a unity-gain buffer: you get some non-linearity near the power rails, so the range of useful operation is reduced somewhat.

So when using the PteroDAQ, it is important to pay attention to the source impedance.  When the source impedance, R, is high, one can either

  • add capacitance to reduce the switching noise of the sample-and-hold circuitry (resulting in an RC time constant >3.5 times the sampling period, which can be user-specified (no averaging), 4.1667µs (single-ended channels), or 5.6667µs (differential channels) on the KL25Z; or
  • add a unity-gain buffer to separate the input from the pin.

The noise consideration is a bigger constraint on operation than the input impedance of the analog-to-digital converter pins, which made my attempts to characterize the input impedance somewhat quixotic.

2015 July 21

Measuring PteroDAQ KL25Z input impedance

In a series of posts (most recently Measuring BitScope BS-10 input impedance), I’ve been measuring the input impedance of my various ways of measuring AC voltage:

meter Z
Radio Shack 10.87MΩ || 18.54pF
DT-830B 0.42MΩ || 31.59pF
DT-9205A 13MΩ || 22pF
BitScope BS-10 oscilloscope 1.025MΩ || 9.8pF

I spent yesterday trying to add the PteroDAQ data acquisition system with the Freedom KL25Z board to that list.

One problem was that PteroDAQ was not designed to report an RMS voltage, but just a waveform, so I modified PteroDAQ to report the mean and standard deviation of a channel (not in the released version yet, as I still have some work to do on the user interface). Note that the mean of a channel is its DC bias, and the standard deviation is the RMS AC voltage. (I’ve never much cared for meters that report RMS AC+DC, which is the root-mean-square voltage without separating AC and DC components.)

A bigger problem is that PteroDAQ can only sample at fairly low frequencies, but the parallel capacitance is expected to be fairly small (pin capacitance for the pin is only about 7pF and the short wiring on the board should only add another couple of picofarads), so the RC time constants will be small. The result is that the low frequencies below the Nyquist frequency will not be much affected by the parallel capacitance, and all I would be able to estimate is the DC resistance of the inputs.

I can take advantage of a trick, however, to get effectively much higher sampling rates: aliasing. Because the input is a sine wave of stable frequency, f, I can sample it at every \frac{n+\phi}{f} seconds and get a waveform that advances by phase \phi. I can pick the integer n to be large enough to get a feasible sampling rate while still seeing the whole waveform, especially if I pick the phase advance to be about \phi=\pi/128, so that I see all the 256 entries in the function generator’s table.

This trick has the further advantage of presenting the sample-and-hold with about the same value as it sampled on the previous sample, so that I don’t have to worry about the short sampling time not getting fully charged through a high-impedance input.  If I don’t do the aliasing trick, then the short sample time PteroDAQ uses (4 cycles of a 6MHz clock, or 667ns) is not enough to charge the sampling capacitor to the final voltage.

At higher frequencies, even this short sampling time is too long—at 1MHz the voltage changes substantially in 667ns, and the sampling capacitor ends up averaging the value over the sampling interval, which reduces the AC RMS voltage.

I made my measurements with the hardware averaging set to 1×, since averaging multiple readings is a digital low-pass filter that would hide the analog low-pass filter I’m trying to measure.  Because the measurements at 1× are so noisy, I took a large number of  measurements to determine the mean and standard deviation.  The results are still a bit noisy, as I did not realize the importance of having very precise sampling rates initially—if the \phi value is too small, then I have to be careful to include an integer number of periods of the aliased waveform in the averaging to avoid bias, and if it is too large, then the short sample time is not long enough to charge fully and my waveform is not full scale.  A good compromise seems to be to pick n so that the sampling rate is around 5kHz and \phi=\pi/128 to get about a 19.5Hz aliased waveform. Only a few of my measurements were done with these settings, so I should probably redo the whole set at some point.

The aliasing trick is not a perfect one—at high frequencies there are a lot of glitches, where it is clear that the sampling did not happen at precisely the place in the waveform desired. This is probably due to jitter in the digital phase oscillators used in FG085, as the PteroDAQ interrupts should come at precise intervals (though the intervals may not be at exactly the frequency desired). The noise is much more of a problem with a high impedance source, as it may take several samples for the sampling capacitor to get back to the correct value.

I measured PTB0 with 1× sampling both directly driven by the FG085 (with 2.9Vpp and +1.8V offset) and through a 100.1kΩ resistor.

The dropoff in voltages at high frequencies with not series resistor is probably due to the averaging of the 667ns sampling time.

The dropoff in voltages at high frequencies with not series resistor is probably due to the averaging of the 667ns sampling time.

The impedance estimate derived from these measurements is pretty solid on the DC resistance, but the parallel capacitance estimate varies depending on how much of the high-frequency measurement I use in the fitting.

My estimate of C is 8pF±2pF, depending on how much of the high frequency data I include in the fit.

My estimate of C is 8pF±2pF, depending on how much of the high frequency data I include in the fit.

Estimating the input impedance of the single-ended pins of KL25Z at 2.5MΩ || 8pF seems pretty good. I’ll have to check the differential inputs separately, as there is no reason to suppose that they have the same input impedance.

I think that the 8pF I’m seeing is mainly the pin capacitance of the PTB0 pin, with a little extra board capacitance. The sampling capacitor is not really measurable here, since it is only connected to the input for very short intervals. To measure the RC time constant of the sample-and-hold circuit, we’d have to vary the sampling time (which is possible on the KL25Z, but which PteroDAQ is not set up to do).

2015 July 18

Measuring BitScope BS-10 input impedance

In Voltmeter impedance I presented a 2-voltmeter way of measuring AC voltmeter impedance, and in Measuring voltmeter input impedance I presented a way of measuring the AC voltmeter impedance with just the voltmeter itself, a function generator, and a resistor that is around the DC resistance of the meter (or a little smaller).

I got measurements of

meter Z
Radio Shack 10.87MΩ || 18.54pF
DT-830B 0.42MΩ || 31.59pF
DT-9205A 13MΩ || 22pF

I decided to apply the same techniques to the BitScope BS-10 USB oscilloscope, getting the following result:

The BitScope provides the standard oscilloscope input impedance of 1MΩ.

The BitScope provides the standard oscilloscope input impedance of 1MΩ.

The BitScope has the standard 1MΩ input impedance with a fairly small 10pF parallel capacitance (probably largely from the 20cm leads I was using). The measurements are a bit noisy, because I was using the provided peak-to-peak voltage measurement, which varies quite a bit from trace to trace.  At high frequencies the waveform is not much like a sine wave, so the results are bit dubious that far out—I did not include frequencies greater than 100kHz in the fit.

The voltage measurements look pretty good, though getting consistent measurements from BitScope’s peak-to-peak measurements with the cursor is a bit difficult:

I think that the voltage drop with no series resistor is from the limits of the FG085 function generator, not from the BitScope oscilloscope.

I think that the voltage drop with no series resistor is from the limits of the FG085 function generator, not from the BitScope oscilloscope.

I should probably average hundreds of waveforms to get a more precise and accurate measurement, but setting that up would be tedious.   I did gather 576 traces of the 200kHz waveform and averaged them together to get a 2.2334V peak-to-peak waveform that looks much more like a sine-wave than I would have expected from the individual traces:

The distortions from a sine wave are barely visible here.

The distortions from a sine wave are barely visible here.

The BitScope is capable of seeing the glitches in the waveform at lower frequencies, like 2kHz, but only barely. The nonlinearities are much better viewed with the PteroDAQ running at lower frequencies.

DT-9205A voltmeter review

Filed under: Circuits course — gasstationwithoutpumps @ 13:42
Tags: , , ,

I recently bought a DT-9205A digital voltmeter for under $10, including free shipping from China, to see whether it would be usable for students in my electronics class for working at home.

There are some things to like about this meter, besides the price.  The digits of the display are 2.5cm (1″) high, making the meter easily readable from a distance, even without my glasses (my wife asked if it was a special multimeter for seniors). The meter doesn’t autorange, but has a knob to select several different ranges for its 3½-digit display:

V DC V AC A DC A AC Ω C
200mV 200mV 2mA 2mA 200Ω 20nF
2V 2V 20mA 20mA 2kΩ 200nF
20V 20V 200mA 200mA 20kΩ 2µF
200V 200V 200kΩ 20µF
1000V 750V 20A 20A 2MΩ 200µF
20MΩ
200MΩ

It also has a diode forward-voltage measurement (@1mA) that doubles as a continuity check and a bipolar transistor hFE measurement (base current ≈10µA, VCE≈2.8V). The diode tester does not get up to high enough voltages for testing the forward-voltage of LEDs, but seems to work OK with 171mV and 200mV for two different Schottky diodes and 600mV for ordinary rectifiers. The continuity checker does not beep with that large a voltage difference—they claim that the buzzer should sound if there is less than about 30Ω, but I get a threshold closer to 100Ω.  The 1mA current seems to be fairly accurate, though, so the measurement is about the same as using the 200Ω range on the ohmmeter.

The capacitance meter seems to be ok, but I don’t have any very accurate capacitances to check it with, and it doesn’t seem to work with electrolytic capacitors.

They claim a 10MΩ input impedance for both the DC voltage and the AC voltage, and about 1% accuracy on the voltages (varying slightly depending on the range). They claim a range of 40Hz to 400Hz for the AC voltage measurement, but we need more than that for the course, so I was curious what it was actually capable of, and what the actual input impedance of the meter was (including the parallel capacitance).

To measure the input impedance, I connected the voltmeter to my FG085 function generator with or without a series impedance, and recorded what the voltmeter reported (as I did in the Measuring voltmeter input impedance post).  I also used my BitScope oscilloscope to measure peak-to-peak voltages, which I scaled to RMS values, so I could see whether problems were with changes in the function generator output or in the voltmeter measurements.

For the 20V range with the FG085 set to provide a 10Vpp signal, I observed an interesting resonant peak:

The meter works ok up to  2kHz, but has a weird resonance around 50kHz.

The meter works ok up to 2kHz, but has a weird resonance around 50kHz.

Note: I don’t trust the absolute calibration of the BitScope enough to claim that there is any inaccuracy in the DT-9205A measurements at low frequencies—the meter is probably more accurate there than the digital oscilloscope. I can’t really check with PteroDAQ (where I’ve checked the calibration against the bench meters in the lab), because PteroDAQ is limited to 0V—3.3V (with the KL25Z boards), and I want to measure AC voltages that are centered at 0.

I made similar measurements with the 2V range and a nominal 2.5Vpp sine-wave input:

The 2V AC scale also has a resonant peak, but around 30kHz and not as big as on the 20V scale.  The measurements seem to be usable to about 3kHz.

The 2V AC scale also has a resonant peak, but around 30kHz and not as big as on the 20V scale. The measurements seem to be usable to about 3kHz.

The 2kHz–3kHz upper limit on the accuracy of the meter could be a limitation, but the only thing we use meter for at higher frequencies is relative measurements (measuring magnitude of impedance |Z| by measuring the voltage across the component and the voltage across a series resistance). I can estimate the impedance of the AC voltmeter input by treating the series resistor plus meter as a voltage divider, and assuming that the resistances are all big enough that the voltage from the function generator doesn’t change much by adding the series resistor.

The impedance measurements are not entirely consistent, getting estimates that vary by 20% in resistance and 50% in capacitance.

The impedance measurements are not entirely consistent, getting estimates that vary by 20% in resistance and 50% in capacitance.

It looks like I can use the ratios of voltages out to about 40kHz, ten times the frequency limit for using the voltages directly. That should be good enough for both the loudspeaker impedance lab and the electrode impedance lab, though it is not as good as the benchtop Agilent meters, which we can push to 2MHz for ratio measurements like this.

Unfortunately, the impedance estimates are not as consistent as I’d like, with the DC resistance varying from 11MΩ to 15MΩ and the capacitance from 21pF to 31pF. The variation in capacitance may just be due to different configuration of the test leads on my bench—I had not made a point of keeping the leads in the same place between changes of the series impedance, and I probably should have. The capacitance of the leads could easily vary by 10pF—indeed, most of the observed capacitance is probably from the leads.  For practical purposes, treating the meter impedance as no bigger than 10MΩ||25pF will probably be ok for most measurement work.

The variation in the estimated DC resistance is harder for me to explain, but it seems to be consistently higher than the 10MΩ spec. One problem with the 10MΩ input impedance is that the meter is very sensitive to capacitively coupled 60Hz interference—with a high output impedance (like the 3.3MΩ series resistor), the voltage reading depends on whether my hands are near the leads or not. I tried to be consistent in my body position and staying 30cm away from the leads while making the measurements.

The AC voltmeter takes a long time to settle—I believe it works by using a peak detector and low-pass filtering the peaks, and it seems to have quite a long time constant for the low-pass filter. This makes for more stable readings and the ability to measure AC voltages of lower frequencies, but it means waiting a while for the signals to settle after any change in the input. That tradeoff is good for what we use the meter for in the lab (measuring steady-state voltages), but not so good for people who want to measure transient signals.

Overall, the DT-9205A looks like a good buy for <$10, and I think I can make all the labs that use voltmeters work with this cheap meter.

 

2015 July 17

Reworking electronics class for cheap equipment

Filed under: Circuits course — gasstationwithoutpumps @ 23:09
Tags: , , , , ,

On of my goals for this summer (on which I’ve made little progress) is to rewrite the labs in the book so that there are three levels: a version for use with professional equipment (like we have in the circuits lab), a version for use by home hobbyists (with a lab and parts budget of a few hundred dollars), and a version for impecunious students to do in their dorm rooms (under $100 total for parts and equipment).

The equipment in the lab is really high quality and definitely overkill for a first electronics lab. The equipment for each 2-student bench is listed (on the lab-support web page) as

(1) Digital Oscilloscope, Tektronix Model 3052, 500MHz/5GS/sec; 2-Channel with IEEE488-GPIB interface
(1) Arbitrary Function Generator, Agilent 33120A, 5MHz, GPIB Interface
(2) Triple Output DC Power Supply, Agilent E3631A Digital Display
(2) Digital Multimeter, 6.5 digit, Agilent 34401A, GPIB interface
(1) Analog Oscilloscope, Kikusui COS5041, 45MHz, 2-Channel
(1) Digital Counter, Leader Model

Computers 
Dell GX-270; Pentium 4 Computer with 17in LCD (flat panel) Display

Although I initially taught the students to use the analog oscilloscopes, most of the signals we look at in the bioengineering lab are too slow for that to be really convenient, so I no longer teach the analog scopes.  We’ve also never used the digital counters, and one power-supply per bench would be plenty.We often use both multimeters, to simultaneously measure both current and voltage. Some students do use the computers, not wanting to bring their laptops or having difficulty installing software on them, but the computers are ancient—a more functional laptop can be bought used for under $200.

Few hobbyists are going to want to spend the thousands of dollars needed for even a stripped down bench with

(1) Digital Oscilloscope, Tektronix Model 3052, 500MHz/5GS/sec; 2-Channel with IEEE488-GPIB interface
(1) Arbitrary Function Generator, Agilent 33120A, 5MHz, GPIB Interface
(1) Triple-output DC Power Supply, Agilent E3631A Digital Display
(2) Digital Multimeter, 6.5 digit, Agilent 34401A, GPIB interface,

so I’m looking for serviceable replacement equipment for home use, with the understanding that a lot of the high-end functionality would be sacrificed.  I am also looking for cheaper ways to do the labs that require less equipment.

For oscilloscopes, I have two replacements:

For hobbyists with a couple hundred dollars in the budget, a USB oscilloscope with a 20M sample/sec sampling frequency is a worthwhile investment, but a lot of the labs can be done at low speed with just the PteroDAQ.

For function generators, I’ve looked at several choices, including the Elenco FG-500 kit and the JYETech FG085 kit. Although none of them are really satisfying, the FG085 kit is probably good enough for use in the applied electronics class.  The frequency can be set precisely to low frequencies (needed for the sampling and aliasing lab), the peak-to-peak voltage and amplitude can be set, and the rather nasty glitches in the waveform are not too bad for the labs in the course.  The frequency limitation is acceptable for the low-speed work in the labs, and at <$50 the function generator is within reach for hobbyists and possibly even for students. The only lab that might be hard with the FG085 function generator is the class-D power-amp lab, as the distortion introduced by the glitches might be a problem, as would the discrete steps in the triangle waveform at high frequencies.

For power supplies, I’ll be redoing all the labs except the class-D power amp to use a single power supply, so that the labs can be run off either 5V USB power or the 3.3V regulator on the KL25Z board. The power amp definitely needs an external power supply, but the cheapest way for a hobbyist to get one is to buy a regulated wall wart for $5–$10 and a barrel-jack connector to connect to the breadboard. I’ll have to think about whether to try modifying the power amp to be single-rail, or to recommend getting two wall warts and connectors.  One problem with using wall arts as that they are single-voltage supplies and lack the adjustable voltage and current limits of a bench supply.  I did recently buy some cheap step-down buck regulator boards that claim to have an adjustable output voltage (with a multi-turn trimpot), but I’ve not tried playing with them yet.

For voltmeters, a handheld Fluke 87 multimeter would be a good choice, but at about $400, they are rather expensive even for hobbyists. So I’ve been looking at cheap digital multimeters to see if they would be adequate for the labs.  Even the cheap ones are good enough for measuring DC resistance and DC voltage, but several of the labs rely on AC voltage measurements, sometimes at moderately high frequencies, so that is the main bottleneck. I started looking at the voltmeters I had already, and determined that the $5 DT-380B, which has only 200V and 600V AC scales was not really usable for the class, but an old Radio Shack pocket multimeter would be, if Radio Shack still existed and still sold that multimeter. I just bought a $10 DT-9205A multimeter and have started testing it. I’ll review it on my blog soon, but I think it would be usable for the class.  I’m also looking a whether the labs can be redesigned to use a single multimeter, instead of a pair of multimeters, though at $10 each, it might be worth recommending getting two.

Students will also need a soldering station for several of the labs.  I like my Weller WESD51 soldering station, but it is a bit expensive.  The student labs got Weller WLC100 irons, which use the same tips but are much cheaper.  They just have a power control (5W–40W), not temperature feedback control, and the highest setting runs much too hot for working with small electronics, but they are certainly usable. I think that the students may have damaged (oxidized) some of the tips by running the irons too hot.  I’ll probably have to clean and re-tin them all at the beginning of each quarter that I use them. (I’ve learned that I can’t expect the lab-support people to do any maintenance.)

Here are labs currently in the book, with a note on what needs to be done to “hobbify” each one:

  1. Setting up:  Needs soldering station and KL25Z board.  (Could rewrite to discuss using Arduino boards as alternative.)
  2. Sampling and aliasing: Needs PteroDAQ and function generator. For FG085 function generator, would need discussion of setting period, not just frequency, since frequency resolution is only 1Hz,  but time resolution is 1ms, so 5.1Hz ≈196ms.
  3. Temperature measurement: Ohmmeter, thermometer, and PteroDAQ are all the tools that are needed.
  4. Electret microphone: measuring DC current and voltage is easiest with two meters, but can be done with one by switching probes (keep one probe on the microphone output and switch the other between power and ground). The PteroDAQ is used for the bulk of the measurements. Looking at the AC output is best with an oscilloscope and part of the intent of this lab is to teach the use of oscilloscopes, so doing without one would be tough.  One can look at waveforms with PteroDAQ and gnuplot, but the immediacy of the oscilloscope is lost.
  5. Loudspeaker modeling: Needs function generator and AC voltage meter. Because we are simultaneously measuring AC voltage and current (using just voltmeters and a current-sense resistor, not an ammeter), it is easiest to do this lab with two meters, but it can be done with one, by switching leads.  Because the resistances used are very small compared to the meter input impedances, we don’t have to worry about the voltmeters changing the behavior. Although we can go up to 2MHz with the bench equipment, going to 40kHz is probably enough to see the non-linear behavior of the loudspeaker.  The voltmeters don’t have to have absolute accuracy to 40kHz, but they need to have relative accuracy, so that ratios of readings at the same frequency are correct, even if the individual readings are way off.  We can push meters way beyond their specs if we only need relative accuracy.  Note: if someone has a USB oscilloscope, peak-to-peak readings can be done with it at frequencies as high as it can handle, which may be well beyond what a cheap hand-held meter can do, though the voltage resolution on the cheap USB oscilloscopes is rather low.
  6. Hysteresis: Measuring hysteresis voltages just requires PteroDAQ and a slowly changing voltage, which can be done with a potentiometer or with a function generator with an offset to keep the voltage in range for PteroDAQ. The capacitive touch sensor uses the KL25Z board with different software to detect the frequency (writing a version of that code for the Arduino boards is on my to-do list). It is handy to have an oscilloscope to look at the waveforms, and to see the effect the capacitive load of the oscilloscope probe has on the frequency of the oscillator, but most of the lab can be successfully done with just the KL25Z board and breadboard. I do include soldering in this lab also.  I might want to rework the hysteresis oscillator board so that students can run a loudspeaker off extra inverters or make two oscillators, but no lab equipment is needed for this lab.
  7. Electrodes: needs function generator and AC voltmeter. the impedance measurements here are very similar to the loudspeaker impedance measurements, but the impedance of the polarizable electrodes can be fairly large, so that the input impedance (particularly the input capacitance) of the meters makes a big difference. This is one I’ll have to check out with cheap meters—I know I already ran into trouble with the Radio Shack meter on this lab, so I’ll have to check it out with the DT-9250A meter. The chapter will have to be rewritten with more discussion of the choice of current-sense resistor, and why using a larger resistor causes problems at higher frequencies. Students were running into problems even with the Agilent multimeters because of the high capacitance of some of the probe sets (see Voltmeter impedance).  Using a single meter and switching between using it for measuring voltage and current would make the effect worse, as the load on the circuit would be different in the two conditions.  Using a USB oscilloscope for the measurements might work ok, though the voltage resolution is a bit low.
  8. Low-power audio amplifier: Needs oscilloscope and power supply. I plan to rework this lab to use a single power supply, so that it can be powered off of USB power. I also need to redesign the prototyping board, so that it can be used to solder up the amplifier for use as a pre-amp on the class-D power-amp lab. Using PteroDAQ for debugging the audio-amp design is possible, but would slow down debugging a lot—the students would also miss the thrill of seeing their speech waveforms appear in real time on the oscilloscope.
  9. Strain-gauge pressure sensor: can be done with just the PteroDAQ, as all signals are very low frequency. I’m probably going to eliminate soldering from this lab, which means that I no longer need the instrumentation amp protoboard, since I’ve already switched to having the students use op amps for the EKG lab.  I should design a new protoboard that is useful for both the EKG and the microphone amplifier labs.
  10. Optical pulse monitor: voltmeter and PteroDAQ suffice for bench equipment, but students will need a jig for holding the LED and phototransistor in line.  The wooden blocks that I made for the lab (similar to the ones in Failed attempt at pulse oximeter) are easy to make with a drill press (and probably with a hand-held drill), which is fine for hobbyists, but not so good for students in dorms. I’d like to come up with a better way of holding the LED and phototransistor while applying about 13kPa (100mmHg, 1.9psi) of pressure to the finger. This may be a good design challenge for the freshman design project, as I suspect that there is a solution using cheap materials like foam core and rubber bands.
  11. Class-D power amp: This is the lab that uses the most equipment. I’ll want to try reworking the lab using just hobbyist level equipment—I’ve done it before at home, but not in a clean way. An oscilloscope is really essential for this lab, to see the gate waveforms and adjust the pullups on the open-collector comparator outputs, but a decent USB oscilloscope is probably good enough.
  12. EKG: This lab needs no equipment other than a soldering station and the PteroDAQ, though an oscilloscope is useful for measuring the output of the first stage.
Next Page »

%d bloggers like this: