SC/OFF v2.0 - Don't even look at the old version
Jan 21, 2020 1:09:22 GMT
admin, robertlanger, and 3 more like this
Post by young Protoboard on Jan 21, 2020 1:09:22 GMT
Hi, folks,
When I started designing the SC/OFF v1.0, I took to Robert's module designs as they were used in the patch mentioned in the v1.0 thread. I didn't want to step on any toes so I asked Robert's permission before posting any reverse-engineering of Robert's designs or work that came thereof. Robert mentioned that it would be quite handy if the "scale" knob were polarized, ie. the center position is 0 gain (full attenuation), the left position is -1 gain (negative), and positive to the right.
Well... That was tricky. I thought about it for a good while before giving up on that particular feature, and instead focused on getting something that works at all. After the holidays, I decided that it was time to revisit that feature.
The old:
A polarized knob was on the v2.0 improvement list, as well as far fewer amplifiers; five is an unreasonable amount for a simple DC processing task like this, not to mention cost, difficulty in soldering, etc. Additionally, v1.0 used two different types of amps, which was not ideal. (I'd post the v1.0 schematic here for demonstration/education but it's gross and really just ought to fade away.) I considered the LM358 and MCP602 both necessary in their respective stages due to the input and output ranges of both amps. The MCP602 is capable of "rail-to-rail" output of ~0.1-4.9V in this application IIRC, which makes it suitable to produce a "close enough" 0-5V output, but its input range is more limited, I think by 0.3V away from the rails. Well, if I want a triangle wave to run across the span of four notes or so, that's 0.3V, and I simply wasn't comfortable with losing the bottom and top 0.3V at the input stage. This is where the LM358 came into play; its common mode input range includes 0V and as such made a better input buffer. The LM358 input range, however, is quite low; from 0-~3.8V... I don't want to lose that top 1.2V! Ugh. The solution I found was to string together a series of voltage dividers to attenuate the input signals to within input ranges of the correct amps at the correct stages. This led to a LOT of amps being necessary.
The new:
A polarized scale knob, as stated, and...
I was successful in locating a RRIO op-amp that didn't cost more than $4 apiece shipped from the US (I threw out my China-sourced ICs when their malfunction cost me two weeks of bench time with v1.0). From Mouser, it was even cheaper than the replacement MCP602 and LM358 amps purchased at the same time: meet the confusingly-named MCP6002. In this 5V SS universe, its common mode voltage range beauteously exceeds 0-5V and its output swings to practically its rails. Beautiful. And 33 cents each. I bought 25 only because I don't have the space and pocket change for 100.
Cool, new amps. Let's see just how few we can use!
Schematic:
I'd say I'm pretty happy with an 80% reduction in op amps.
No build photos this time around as I haven't built it yet. Before I do so I'm going to solder up a jig to more quickly and easily mark standoff holes, bus connections, and input and output sockets, and I plan on documenting and sharing, which takes quite a while and I haven't yet found the time. Breadboard tests, however, have been flawless so far.
Here's an executive summary of how this module functions; I have some simulation graphs that I'll share later for better clarity. I'm really proud of the creative design work I put into this circuit, especially the polarized knob:
- Sending the input signal through the middle leg of the SCALE potentiometer creates two (very nearly identical, explained later) voltage dividers with RinputL and RinputR, on respective sides. Basically, the input signal is attenuated twice, to two different but related levels. The level of attenuation of the legs is determined by the position of the knob; at center, the att. values are equal.
- Technically, RinputR and RinputL are in parallel, which changes the behavior of attenuation. Specifically, the attenuation behavior with respect to knob position of these voltage levels is not linear (this will be clearer when I update with simulation visuals); rather, it's a strange-looking hyperbolic curve, whose characteristics vary by values of RinputR, RinputL, and SCALE. Linear behavior is much desired; nobody wants the left-most 10% of the knob to hold 90% of the attenuation range, for example. Turns out, though, if you subtract one attenuated signal from the other, then the result can be quite linear (not accounting for varying component levels, as stated previously). Simulations indicate a 2% deviation from linear behavior at its highest, which I find acceptable.
- The polarization action (one side of the knob inverted) occurs due to this subtraction; when the attenuated voltage level seen by the negative input of the amp via Rin is higher than the positive input, then the result is below 0V, and thus inverted.
- the OFFSET potentiometer serves as an offset voltage reference for positive attenuation and amplification, and as an axis for inversion during negative attenuation and amplification.
- The amp has a set gain of 2 for the IN signal amplification, which must match the value of "global" attenuation of the SCALE voltage dividers. Gain for this configuration is set by the ratio of Rref = Rfeedback and Rin.
- It is important that the resistances of the IN signal division network be at least one order of magnitude lower than the op-amp resistors.
The MCP6002 is a dual amp package, so this can easily be a dual module if one can find the board space with Protoboard.
Simulation visuals, build photos, and videos to come!
yPb
When I started designing the SC/OFF v1.0, I took to Robert's module designs as they were used in the patch mentioned in the v1.0 thread. I didn't want to step on any toes so I asked Robert's permission before posting any reverse-engineering of Robert's designs or work that came thereof. Robert mentioned that it would be quite handy if the "scale" knob were polarized, ie. the center position is 0 gain (full attenuation), the left position is -1 gain (negative), and positive to the right.
Well... That was tricky. I thought about it for a good while before giving up on that particular feature, and instead focused on getting something that works at all. After the holidays, I decided that it was time to revisit that feature.
The old:
A polarized knob was on the v2.0 improvement list, as well as far fewer amplifiers; five is an unreasonable amount for a simple DC processing task like this, not to mention cost, difficulty in soldering, etc. Additionally, v1.0 used two different types of amps, which was not ideal. (I'd post the v1.0 schematic here for demonstration/education but it's gross and really just ought to fade away.) I considered the LM358 and MCP602 both necessary in their respective stages due to the input and output ranges of both amps. The MCP602 is capable of "rail-to-rail" output of ~0.1-4.9V in this application IIRC, which makes it suitable to produce a "close enough" 0-5V output, but its input range is more limited, I think by 0.3V away from the rails. Well, if I want a triangle wave to run across the span of four notes or so, that's 0.3V, and I simply wasn't comfortable with losing the bottom and top 0.3V at the input stage. This is where the LM358 came into play; its common mode input range includes 0V and as such made a better input buffer. The LM358 input range, however, is quite low; from 0-~3.8V... I don't want to lose that top 1.2V! Ugh. The solution I found was to string together a series of voltage dividers to attenuate the input signals to within input ranges of the correct amps at the correct stages. This led to a LOT of amps being necessary.
The new:
A polarized scale knob, as stated, and...
I was successful in locating a RRIO op-amp that didn't cost more than $4 apiece shipped from the US (I threw out my China-sourced ICs when their malfunction cost me two weeks of bench time with v1.0). From Mouser, it was even cheaper than the replacement MCP602 and LM358 amps purchased at the same time: meet the confusingly-named MCP6002. In this 5V SS universe, its common mode voltage range beauteously exceeds 0-5V and its output swings to practically its rails. Beautiful. And 33 cents each. I bought 25 only because I don't have the space and pocket change for 100.
Cool, new amps. Let's see just how few we can use!
Schematic:
I'd say I'm pretty happy with an 80% reduction in op amps.
No build photos this time around as I haven't built it yet. Before I do so I'm going to solder up a jig to more quickly and easily mark standoff holes, bus connections, and input and output sockets, and I plan on documenting and sharing, which takes quite a while and I haven't yet found the time. Breadboard tests, however, have been flawless so far.
Here's an executive summary of how this module functions; I have some simulation graphs that I'll share later for better clarity. I'm really proud of the creative design work I put into this circuit, especially the polarized knob:
- Sending the input signal through the middle leg of the SCALE potentiometer creates two (very nearly identical, explained later) voltage dividers with RinputL and RinputR, on respective sides. Basically, the input signal is attenuated twice, to two different but related levels. The level of attenuation of the legs is determined by the position of the knob; at center, the att. values are equal.
- Technically, RinputR and RinputL are in parallel, which changes the behavior of attenuation. Specifically, the attenuation behavior with respect to knob position of these voltage levels is not linear (this will be clearer when I update with simulation visuals); rather, it's a strange-looking hyperbolic curve, whose characteristics vary by values of RinputR, RinputL, and SCALE. Linear behavior is much desired; nobody wants the left-most 10% of the knob to hold 90% of the attenuation range, for example. Turns out, though, if you subtract one attenuated signal from the other, then the result can be quite linear (not accounting for varying component levels, as stated previously). Simulations indicate a 2% deviation from linear behavior at its highest, which I find acceptable.
- The polarization action (one side of the knob inverted) occurs due to this subtraction; when the attenuated voltage level seen by the negative input of the amp via Rin is higher than the positive input, then the result is below 0V, and thus inverted.
- the OFFSET potentiometer serves as an offset voltage reference for positive attenuation and amplification, and as an axis for inversion during negative attenuation and amplification.
- The amp has a set gain of 2 for the IN signal amplification, which must match the value of "global" attenuation of the SCALE voltage dividers. Gain for this configuration is set by the ratio of Rref = Rfeedback and Rin.
- It is important that the resistances of the IN signal division network be at least one order of magnitude lower than the op-amp resistors.
The MCP6002 is a dual amp package, so this can easily be a dual module if one can find the board space with Protoboard.
Simulation visuals, build photos, and videos to come!
yPb