Analyzing Circuits Using the Espotek Labrador: DC Sweep
Using the Labrador and a DMM, perform a DC sweep of an inverting amplifier. From our previous lab post we saw the simulation values for a DC Sweep. In this lab, we’ll use the Labrador along with a DMM to determine if our measured values match those of the simulation.
Build the Circuit on a Breadboard
- Using this circuit, implement on a breadboard so it is similar to the image below.
- Parts List:
- LM358 Operational Amplifier
- Frequency Generator (Espotek Labrador or ADALM1000)
- 9V power supply
- 2k ohm resistor (or 10k potentiometer)
- 5k ohm resistor (or 10k potentiometer)
Notes:
- Vo is pin 1 on the chip
- Vn is pin 2 on the chip
- Vp is pin 3 on the chip
- Make sure you attach 9V to pin 8 and Ground to pin 4
Using a Potentiometer as a variable voltage source
Notice the potentiometer on the right on the breadboard. There are three terminals:
- Right: Wired to Ground
- Center: Variable voltage pin, Vv, there is a blue wire that connects it to Vi
- Left: Wired to 9V
To test it, connect your DMM positive probe to the Vv node and the negative probe to ground. Notice as you turn the pot, the voltage will vary from 0V to 9V. This will provide the changing voltage for our DC Sweep. Note which end of the pot registers 0V and which end registers 9V.
Attach the Labrador Multimeter Leads
We will be using the Oscilloscope CH1 and CH2 sockets Labrador Images for the Multimeter.
Wiring Instructions
- Plug an orange wire into Oscilloscope CH1 (DC) socket and the other end to Vi, the same row as resistor Rin and the potentiometer.
- Plug a blue wire into Oscilloscope CH2 (DC) socket and the other end to the ground rail.
- Attach the positive probe of your DMM to the pin 1 row of the LM358.
- Attach the negative probe of your DMM to ground.
Performing the DC Sweep
What is nice about being able to use the Labrador as a multimeter (LMM) is it allows you to inexpensively have two multimeters (assuming you already have a DMM) and it is easy to read on the screen. However, this comes at a cost. The LMM functionality displays a false sense of precision and can be inaccurate, typically 100-300mV off in a 9V operating range. One more issue is the software bug, please make sure you have resolved it before continuing.
Given the latter two points, I recommend you use a DMM for critical measurements and only use the LMM to one decimal point. We’ll use the LMM for measuring Vi and a DMM for measuring Vo.
While we believe from our simulation our amplifier operation range for Vi is 3.5V to 6.5V, we will measure outside this range to confirm our analysis.
- With the four wires/probes set as described above, turn the potentiometer to its 0V.
- Confirm the voltage on the Labrador app (LMM), its not unusual to see it register ground or 0V as 200-500mV. For recording purposes, as you have measured this as ground with your DMM, record you initial Vi as 0V. Measure Vo with your DMM and record that value.
- Dial the pot up til the LMM registers about 1V for Vi. Again measure Vo and record both values.
- Do the same for 2V and 3V, however, once you reach 3V, change in 500mV increments instead of 1V increments. We are now in the operating range of the amplifier and we want to be more precise.
- Continue in 500mV increments until you reach 7V for Vi then measure approximately 8V and 9V for Vi and the corresponding Vo.
Seeing the Results
Two of the easiest ways to plot the data are either Matlab (and equivilents) or Julia. I used the following julia program:
using Plots
#Vi Vn Vp Vo
Measurements = [
0 2.6 4.8 7.9;
1 2.9 4.8 7.9;
2 3.5 4.8 7.9;
3 4.2 4.8 7.9;
3.5 4.5 4.8 7.9;
3.9 4.8 4.8 7.6;
4.5 4.8 4.8 6.1;
5.0 4.8 4.8 4.6;
5.5 4.8 4.8 3.5;
6.0 4.8 4.8 2.1;
6.6 4.8 4.8 0.7;
7.0 5.1 4.8 0.7;
8.0 5.8 4.8 0.7;
9.0 6.5 4.8 0.7;
]
plot(Measurements[:,1], Measurements,
title = "Inverting Amplifier DC Sweep",
label = ["Vi" "Vo" "Vn" "Vp"],
xlabel = "Vv Volts",
xlims = (-1.0, 10.0),
xticks = 0:1.0:10,
ylabel = "Volts",
ylims = (-1.0, 10.0),
yticks = 0:1.0:10,
size = (623, 655),
background_color = "#FFFDF6",
gridalpha = .25,
linewidth = 1)
savefig("juliaplot")
To plot the following: As compared to (from CircuitLab):
Pretty Close!
Comments powered by Talkyard.