Skip to content
Snippets Groups Projects
Commit f4a00a8b authored by Erik Strand's avatar Erik Strand
Browse files

Add preamp v2 to inputs page

parent e3109afe
Branches
No related tags found
No related merge requests found
...@@ -21,7 +21,7 @@ The pickups generate an analog electrical signal, so the most direct way to read ...@@ -21,7 +21,7 @@ The pickups generate an analog electrical signal, so the most direct way to read
To gain experience with analog circuitry, I'm going to make an off-chip preamp that boosts the signal and provides a DC offset. Instead of adding a microcontroller to this board, I plan on connecting it to my existing board using an ISP header. This will save me some soldering, and will allow me to test the same preamp stage with different microcontrollers. To gain experience with analog circuitry, I'm going to make an off-chip preamp that boosts the signal and provides a DC offset. Instead of adding a microcontroller to this board, I plan on connecting it to my existing board using an ISP header. This will save me some soldering, and will allow me to test the same preamp stage with different microcontrollers.
I mostly followed Amanda's [Instructables article](https://www.instructables.com/id/Arduino-Audio-Input/), but added some modifications I found on [Electronics Stackexchange](https://electronics.stackexchange.com/questions/14404/dc-biasing-audio-signal). To amplify the signal, I use an op-amp in a non-inverting configuration, and to provide a DC offset I pass the amplified signal through a capacitor that's connected to a voltage divider circuit. I mostly followed Amanda's [Instructables article](https://www.instructables.com/id/Arduino-Audio-Input/), but added some modifications I found on [Electronics Stackexchange](https://electronics.stackexchange.com/questions/14404/dc-biasing-audio-signal). To amplify the signal, I use an op-amp in a non-inverting configuration, and to provide a DC offset I pass the amplified signal through a capacitor that's connected to a voltage divider circuit. I'm using the MISO ISP pin for my input, and MOSI for output.
![](/img/10_schematic.png) ![](/img/10_schematic.png)
...@@ -40,7 +40,7 @@ As an initial test of the preamp, I measured its input and output with a [Saleae ...@@ -40,7 +40,7 @@ As an initial test of the preamp, I measured its input and output with a [Saleae
![](/img/10_amplification.jpg) ![](/img/10_amplification.jpg)
Upon closer inspection, however, it's clear that my amplification isn't linear. Clearly there's something wrong with my op-amp circuit. At least the DC bias appears to be right at 2.5V. Upon closer inspection, however, it's clear that there are some serious problems. Though the output's DC bias does appear to be at 2.5V, it gets much closer to 5V than it does to 0V. Even the input appears altered: the waveforms are clipped on the bottom end.
![](/img/10_nonlinear.png) ![](/img/10_nonlinear.png)
...@@ -119,15 +119,15 @@ This reads samples and spits them out over the serial connection. ...@@ -119,15 +119,15 @@ This reads samples and spits them out over the serial connection.
![](/img/10_oscillations.png) ![](/img/10_oscillations.png)
## Circuit Design Rev2 ## Circuit Design Revisited
A friend pointed me to Mark Feldmeier's wonderful [op-amp guide](https://ocw.mit.edu/courses/media-arts-and-sciences/mas-836-sensor-technologies-for-interactive-environments-spring-2011/readings/MITMAS_836S11_read02_bias.pdf), which I relied on heavily for a total redesign of my preamp. It includes a number of improvements. First, my voltage divider gets a buffer (i.e. an op-amp wired so that its output is always the same voltage as its input). Once I'm processing audio from multiple strings at once, this will help prevent crosstalk via the bias voltage rail. I'm also biasing my signal before amplification, which means the bias voltage rail is only connected to the high-impedance op-amp inputs, and that the low-impedance op-amp output can be used directly. A friend pointed me to Mark Feldmeier's wonderful [op-amp guide](https://ocw.mit.edu/courses/media-arts-and-sciences/mas-836-sensor-technologies-for-interactive-environments-spring-2011/readings/MITMAS_836S11_read02_bias.pdf), which I relied on for a total redesign of my preamp. It includes a number of improvements. First, my voltage divider gets a buffer (i.e. an op-amp wired so that its output is always the same voltage as its input). Once I'm processing audio from multiple strings at once, this will help prevent crosstalk via the bias voltage rail. I'm also biasing my signal before amplification, which means the bias voltage rail is only connected to the high-impedance op-amp inputs, and that the low-impedance op-amp output can be used directly.
![](/img/10_preamp_v2.jpg) ![](/img/10_preamp_v2.jpg)
I also made a number of improvements for my instrumentation. I connected header pins not just to the output, but also to both sides of the guitar input and my bias voltage. This should help with debugging if there are still problems. I also soldered some jumper wires to proper audio jacks, so that I can plug my bass in without clips. I also made a number of improvements for my instrumentation. I connected header pins not just to the output, but also to both sides of the guitar input and my bias voltage. This should help with debugging if there are still problems. I also soldered some jumper wires to proper audio jacks, so that I can plug my bass in without clips.
Picture here... ![](/img/10_preamp_v2_board.jpg)
This board's output looks a lot better than the previous one's. This board's output looks a lot better than the previous one's.
......
static/img/10_preamp_v2_board.jpg

624 KiB

0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment