How do I determine parameters in an npn array thermal oven? - Page 1
Forum section: electronics / projects

author: homeless_peep
author_rank: Contributor
timestamp: May 27, 2017, 10:18:36 am
content: Hello folks,I have a circuit (an exponential current source, for a music synthesizer) that uses two matched transistors, and the whole thing is very sensitive to1. the temperature difference between the two transistors2. the absolute temperature of the transistors.The 3 most used solutions are1. use a temperature depended resistor to scale the input accordingly and cancel out thermal errors,2. Blindly throw power to the transistors through a not controlled heater resistor, hoping the temperature will always rise to the same levels for both transistors, and rise at roughly the same level no matter the ambient temperature3. Design a thermal loop, that keeps the transistors at the exact same temperature no matter what. I've noticed that cheap commercial synths (microbrute and minibrute) use this technique and it works great (been using it for a while).I've already tried solution 2 with two discrete jellybean transistors and a resistor thermally coupled between them. Most days it will work ok and everything is in tune, but sometimes it just won't (and retuning is really a pain in the butt).I have two MAT14 npn transistor arrays available and I'd like to go for another prototype, utilising them. They feature 4 matched npn transistors with characteristics favorable to the exponential converter. The classic solution I'm seeing all over the place is something like this:http://hackabrute.yusynth.net/MINIBRUTE/analog-board/schematics/MiniBrute-04-VCO.pdf(bottom left, "Temperature Regulator" block)I understand how the temperature sensing and reference work and the topology used to just generate heat from the transistor. But I'm puzzled when it comes to the OPAMP configuration. It's configured as a comparator, realising what looks to be like on-off control. However, since differences are in the order of milivolts (2.2mV/C° for silicon?), or even less, the output will eventually not be saturated (when differences reach the order of microvolts) and, fingers crossed, the loop will settle somewhere and be stable.Is that reasoning correct? Would a gain controller perform better?On to the next question, let's suppose I roll with the above topology. How should I go on deciding the resistor values for my transistors and power supply? I've set a 114uA current on my sensor and calculated the voltage reference for about 50C°. What about the heater transistor? For now, I've set it up such that for maximum (positive) opamp voltage I get the maximum power dissipation(~0.5W), while still staying within the absolute maximum rating (<30mA and 85C°) and for minimum (negative) opamp voltage I got the minimum dissipation (~0.1W).How does loop stability work in this case?Any help or resources would be much appreciated.

author: David Hess
author_rank: Super Contributor
timestamp: May 27, 2017, 01:32:16 pm
content: Maybe the divider at the output of the TL064 is lowering the gain enough to prevent oscillation.I agree though that a higher DC gain integrator would be better. Check out figure 4 of Linear Technology application note 5 where this was done with a CA3096 by overcompensating the 301A operational amplifier.

author: Gyro
author_rank: Super Contributor
timestamp: May 28, 2017, 08:59:32 am
content: The last time I saw a transistor array thermally stabilised in that way was in the Practical Electronics 'Minisonic' project back in 1975. Yes, it was also a synthesizer and it was also used to stabilize the current source!There are scans of the project on Tim Stinchcombe's site:http://www.timstinchcombe.co.uk/index.php?pge=peminiThe temperature stabiliser was included as an enhancement in part 4 of the project (the Minisonic, not the Minisonic 2), here's the specific link to the scan pdf:http://www.timstinchcombe.co.uk/synth/pe_mini/pe_mini_feb_75.pdfI haven't analysed the circuit, other than noting that it looks pretty straightforward and includes setup instructions. Your request just triggered averydistant memory!

author: homeless_peep
author_rank: Contributor
timestamp: May 28, 2017, 10:38:10 am
content: Thanks a lot for that Gyro, it all makes more sense now. The article uses a simple PI stage which is more straightforward than the open loop topologies.So, the "loop gain" of such an arrangement (heater+sensing circuit) is depended on both the power dissipated from the heater and the voltage gain of the opamp?I'm thinking about including a couple of different resistors for the heater's emiter, to adjust the "heater gain" roughly, and a trimmer on the opamp feedback, just in case I fire it up and the whole loop goes in oscillator heaven, lol.How does heat transfer through the chip work in terms of transfer function/control loop?I have already made a prototype of a triangle core VCO I designed for a modular synthesizer system (it is also my final project for an ECE master). Tuning instability is enhanced by the fact that my design called for a PNP source, but guess what! There are no low cost PNP quad+ arrays on the market to make a stabilised current source, at least none that i could find. That already limits my options a lot so I just heated the damn thing and hoped for the best. It's not that bad actually, but certainly not ok for a polyphonic system. Good enough for graduating though, lol.And don't even get me started on waveshaping.

author: Gyro
author_rank: Super Contributor
timestamp: May 28, 2017, 11:03:27 am
content: You're welcome.In terms of loop / thermal gain, I'd try not to over-think it (difficult, I know, when it's a masters project). You have very little to go on however - all you have in terms of package spec is thermal resistance junction-case and case-ambient, (which is of course implementation specific). I think you can do it by just adjusting the gain of the feedback loop and allowing for some damping of the response. You would be best to breadboard (solder, not pluggin) this section before commiting to PCB. It would be quick to do and would give you a much better feel of any issues. You can easilly see if it goes into oscillation by monitoring a Vbe and also applying loading to the other transistors to see how well the circuit responds and tracks. Control loop theory is fine when you have all the necessary figures. Some things, you have to do the best you can and then try it out.

author: homeless_peep
author_rank: Contributor
timestamp: May 28, 2017, 12:28:04 pm
content: I have already experimented with simple thermal loops on to-92 packages on the breadboard. I used a heating resistor thermally coupled to an lm335 and fooled around loop parameters like gain. It was all very "random" in terms of values (just went with whatever felt right), but it was very easy to trim it to work properly. Measuring with a multimeter and a thermocouple, I could get it up to 70C° and keep it there fairly easily. I also observed the temperature error (output of the difference amplifier), it always settled to some final value when the loop was stable.I will follow the article you posted, adjusted for the MAT14 (more current gain, lower Vbe values). If all else fails, i will disable the thermal control and bombard the sucker with heat, until it stays in tune, lol.

author: Gyro
author_rank: Super Contributor
timestamp: May 28, 2017, 12:43:55 pm
content: QuoteYay, the pragmatic approach. There's hope for you yet!I suspect that you will have much better success with the much closer coupled monolithic transistor array. You should be able to derive some useful parameters for yourself. eg:- Absolute die temperature... externally heat the package to known temperatures while monitoring the Vbe of one transistor.- Thermal losses... Apply a fixed dissipation to one transistor and monitor change of your monitor Vbe.- Thermal time constant... Apply/remove the dissipation, as above, and observe the rate of monitor Vbe change.

author: David Hess
author_rank: Super Contributor
timestamp: May 28, 2017, 03:24:08 pm
content: Quote from: homeless_peep on May 28, 2017, 10:38:10 amExactly, and the emitter resistors will also make the "heater gain" more linear and predictable.QuoteThe time constant for a monolithic transistor array is on the order of milliseconds or faster. (1) If you monitor the temperature at different points on the array using the different transistors, then you can *see* the waves of heat propagate across the part. Jim Williams mentions this and transistor selection for heater, sensor, and active device in the application note I referenced.QuoteThe lack of inexpensive monolithic transistor arrays and variety is a real problem in these applications.THAT Corporationmakes some which are suitable including PNP parts. If you collect enough part numbers, then you might be able to find some NOS (new old stock) or pulls for a low cost. While not ideal, attaching matched discrete transistors to a temperature controlled heat sink can work and is how it was done in the distant past.(1) The propagation of heat across the semiconductor die is one of the primary limitations in operational amplifier setting time. Thermal feedback from the output transistors to the input transistors also limits open loop gain. "Precision" operational amplifiers take steps to minimize these problems by using symmetrical layouts to cancel the effects of temperature waves. Minimizing the output loading with an external buffer can help.

author: homeless_peep
author_rank: Contributor
timestamp: May 31, 2017, 02:31:41 pm
content: Thank you both for your suggestions. I had contacted THAT corporation for samples, but they didn't answer my e-mail. Analog devices MAT14 did arrive, so I was designing around that. But, surprise surprise, the people from THAT not only did send me samples (got them yesterday), but they were awesome enough to include 4(!) from each array on the 300 series, all in DIP packages. MAT14 has better logarithmic characteristics, but THAT320 has PNPs, eliminating the need for a current mirror.So I got to the breadboard today and experimented a bit. This was easy after all.I used transistors 1 and 3 (top left, bottom right), reasoning that it's better to have the heater and sensor equidistant from the expo transistors, plus, not have immediate thermal contact between the two.When operating in open loop mode (like the microbrute schematic I posted) there is indeed (like we predicted) an AC voltage on the output of the opamp, at a frequency of about 80Hz. The duty cycle will vary depending on the temperature set and the heater gain, but the frequency is fairly consistent (always between 70 and 80 hz). Perhaps there is a way to calculate the time constant of the die from that frequency value. I'm not sure if this causes low frequency thermal oscillation, but certainly having about 20mA of current pulsing through the heater might cause noticable interference.Next, i tried a 120nF cap across the opamp output and negative input. The output is now completely smooth, the loop settles in just a couple of seconds and seems to stay put. Touching or blowing the package doesn't change the sensor voltage at all, so i assume the regulation is good enough for my purpose. I tried lower values too, at 33nF the loop behaviour was similar, but i could notice some ripple at the output.Finally, i replaced the capacitor with an 1M resistor. I'm not sure I can see a difference from the capacitor version (didn't bother to compare settling times, they seemed to be in the same order of magnitude). When changing the temperature setting, the sensor voltage follows really fast (looks like 'real time"). I'm not sure how I can verify that there is no low frequency oscillation. I think i can barely make out something on the (digital) oscilloscope, but it's hidden deep into the noise floor. Any suggestions on that?On the voltage reference, the eurorack synthesizer standard calls for +- 12V supply rails, but I expect small variations from one user to the next. I think it'll be worth it to use some kind of stable, low thermal drift reference voltage. Would an onboard 7809 be adequate for that? Should I go into something more sophisticated?We don't have the equipment to do extensive thermal tests and there are hardly any use to my application. Each unit is always hand trimmed and tuned before use, so what's important here is that the temperature is always the same, not what it's absolute value will be.To calibrate the temperature setting I measured the sensor Vbe at room temperature (~630mV) and set my trimmer to 580mV. The die should be at about 50C° (~25C° above ambient). Since I don't really care about absolute measurement accuracy and linearity, I guess that's good enough.Observing Vbe through time is very hard due to the scope noise. I tried averaging, but I had no luck. There is a specific lower boundary for the power dissipation below which the energy lost to ambient is greater than what the transistor dissipates, so the loop doesn't work. I couldn't verify this (I wouldn't want my transistors to fry, yet), but I assume that increasing the gain of the loop (either by more collector current or more error amplifier gain) brings the whole system closer to oscillation conditions, while reducing the settling time. If I open the thermal loop and attempt to make it's bode diagram just by feeding inputs at the + of the opamp and measuring outputs at the sensor voltage would i arrive to anything useful?

author: Kleinstein
author_rank: Super Contributor
timestamp: May 31, 2017, 03:43:34 pm
content: Having just the 1 M resistor in feedback to reduce the gain of the thermal loop, still keeps a rather high gain for the OP. It may not be the very best choice to have the heater referenced to the +12 V and the sensor relative to the GND side. Though this would be mainly a problem with a capacitor in feedback. This might give some extra ripple if the supply voltage is not absolute stable. A LM7809 type regulator would be well good enough. With the resistor in feedback the regulator is mainly proportional type (with rather high gain). With the capacitor it would be an I type regulator. The more normal type of compensation would be a capacitor and resistor in series, thus a PI type regulator.The usually adjustment for a P-Type regulator would be to increase the gain until it just oscillates and than reduce the gain by something like a factor of 2 to 4. A similar adjustment is possible with the PI or even a PID regulator. It is called the Ziegler–Nichols method. So I don't think an extra open loop measurement is really needed.Usually such a regulator is either stable or it is oscillating with large amplitude - so a small amplitude oscillation so that one would not see is nothing to worry about.

author: homeless_peep
author_rank: Contributor
timestamp: May 31, 2017, 04:18:40 pm
content: Kleinstein, could you elaborate on the supply referencing?I tried changing the supply voltage by +-0.5V and the sensor voltage remained the same. I referenced the heater to both rails so i could get more power dissipation for a given collector current. Would it improve overall robustness to use the LM7809 for all voltages except for the opamp (heater, sensor and reference).P and I controllers were very easy to stabilise, and since there is no low amplitude oscillation to watch out for, if it looks good it has to be. Would there be some considerable gain in making a PI version? What is most important here is repeatability of the final temperature and long term stability while in use. I don't really care about how fast it settles, in the synthesizer world warm up times up to 20 minutes are not unheard of.

author: Kleinstein
author_rank: Super Contributor
timestamp: May 31, 2017, 05:05:00 pm
content: For the hand drawn circuit, the heater current is controlled by the base current and this the OPs output voltage relative to the + 12 V. The OPs input side is more like referenced to the GND side. It depends on the size of the base resistor on how much supply ripple would come through to the output side. I don't think it will be so much trouble. If at all it would be the faster ripple that could be a problem - all the slower part will be compensated by the control loop. Also supply ripply would compete with the rather high control voltage of the OP, not the 2 mV/K at the sensor.For the supply, it would be mainly the divider with the 10 K and 100 K where the supply should be stable. So it might be worth to use something like a TL431 as a 2,5 V reference there. The other supply could stay at the rough regulated 12 V.The purpose of a PI regulator would be an even more accurate control, not a faster response. It looks like there is already a really high gain and accurate control in the proportional mode. So changing from I control to PI control would be like going from maybe 100 mK temperature stability to 1 mK temperature stability. So nothing to worry about in a synthesizer.If you would really go for highest precision, one could use the sensing transistor already as a first amplifier: so supply an adjusted voltage to the base. This could reduce the influence of OPs offset by something like a factor of 100-500.This way the transistor might even already have enough gain to get away without using an OP at all. I attached a corresponding circuit. The compensation part C1 R5 would be optional and may not be needed here.

author: homeless_peep
author_rank: Contributor
timestamp: May 31, 2017, 05:44:13 pm
content: Quote from: Kleinstein on May 31, 2017, 05:05:00 pmI kinda lost you here.I'll give that circuit a try tomorrow. If anything, i love how elegant it is.

author: floobydust
author_rank: Super Contributor
timestamp: May 31, 2017, 05:54:38 pm
content: Just recently saw this approach to analog synthesizer VCO fail. You have to have the whole thing in an isolated chamber/oven. NOT ON A PCB with everything else.The problem is the heat loss from the matched-transistors+heater to the PCB, and if ambient temperature is up there you cannot cool anything. A lot of thermal design.I would say do not re-invent the wheel- you are better off to use theCurtis Electromusic CEM3340VCO, it has returned to production since the 1980's. It's a proven stable VCO for analog synths.

author: David Hess
author_rank: Super Contributor
timestamp: May 31, 2017, 05:57:18 pm
content: I would put a resistor in series with the emitter of Q3 to better control its gain with a voltage drop of at least one Vbe at the operating current.Then for adjusting the loop response, I would use the DSO to measure the output of the operational amplifier and perturb the loop with the square wave output from a function generator. The settling time of the temperature control loop is not too important but if too slow, settling time of the translinear function may be affected.

author: homeless_peep
author_rank: Contributor
timestamp: May 31, 2017, 06:11:22 pm
content: Quote from: floobydust on May 31, 2017, 05:54:38 pmI can't really do that, since my subject is "Design and implementation of a VCO for the eurorack synthesizer standard"Plus, this has turned into a real obsession, making a viable triangle core design that doesn't use obsolete parts and has more than 5 octaves of rock solid tracking. Still, it can't be that dangerous of a solution, considering most new synth boxes use a technique along those lines rather than go for the CEM.You raise a fine point though, the thermal conduction on a pcb full of metal traces is probably increased compared to the breadboard. However, I'm working with a DIP package and, because of it's cost, i will surely use IC bases. The chip will not be in contact with the pcb, and the insides of a eurorack are a bit warm anyway, so I doubt it will have a problem reaching it's goal temperature. The reference temperature could be increased by 5-10 degrees to allow for warmer settings.

author: Kleinstein
author_rank: Super Contributor
timestamp: May 31, 2017, 07:08:21 pm
content: The heat loss for a dip chip one a board can be quite high. The thermal resistance is usually in the 70 K/W range. So with a 200 mW heater power this is only a 14 K temperature rise. This would limit the temperature range that can be compensated to about this value. So a thermal resistance would be really needed. For a larger range also some extra heating power (e.g. an external Zener in series to heater transistor) might help.

author: homeless_peep
author_rank: Contributor
timestamp: May 31, 2017, 09:39:12 pm
content: My calculations say that I operate at roughly 20-30mA (about the maximum allowed) and bias the heater with both rails, going up to 0.5-0.6W. That's 42 degrees above ambient using that 70K/W figure...

author: David Hess
author_rank: Super Contributor
timestamp: May 31, 2017, 10:16:46 pm
content: I looked up a few transistor arrays and saw values up to 160C/W and a lot of variance between different types. In a production application I would use an external heater to get more operating range but for a prototype or something which will run in a controlled environment, this will not be needed.

author: homeless_peep
author_rank: Contributor
timestamp: May 31, 2017, 10:23:02 pm
content: Quote from: David Hess on May 31, 2017, 10:16:46 pmisn't that a good thing in our case?

author: David Hess
author_rank: Super Contributor
timestamp: May 31, 2017, 10:42:10 pm
content: Quote from: homeless_peep on May 31, 2017, 10:23:02 pmSure and the higher the better but as Kleinstein eludes to, even the ones with high thermal resistance are inconveniently low. Real ICs that rely on this use a thermal insulating die attachment to raise their thermal resistance into the 300 to 400 C/W range.The part I originally saw this done with was the LM389 audio amplifier which has 3 uncommitted NPN transistors. It has a 70C/W thermal resistance however the output stage of the amplifier can handle up to 0.75 watts so its low thermal resistance is not as much of a problem.

author: homeless_peep
author_rank: Contributor
timestamp: May 31, 2017, 10:57:05 pm
content: Would using electrical tape do any good in that respect?Choosing a temperature of 50-55C wouldn't be ok for ambient temperatures of up to 45C? How different a performance should I expect when moving from the breadboard then? Would it be worth my time to solder this circuit on a protoboard just to see how it behaves?so many questions

author: David Hess
author_rank: Super Contributor
timestamp: June 01, 2017, 01:56:59 am
content: Most of the heat conduction is through the lead frame and pins into the printed circuit board so insulation will have limited effectiveness. As long as the die temperature is held a few degrees above the maximum ambient temperature surrounding the IC, the thermal regulation should work great.

author: floobydust
author_rank: Super Contributor
timestamp: June 01, 2017, 05:03:07 am
content: I found it's not about having the NPN array at a constant temperature- the other VCO parts (op-amps, capacitor etc.) have to be in the oven too. Then you will find system power supply voltage (i.e LM7815) drifts quite a bit which was not expected. Very difficult to design. Where you measure the matched-pair temperature verses where you heat the matched-pair; the difference has to be quite small, and heat (leakage) to the PCB absolutely low as possible.One way to beat this is autocal- on power up get a high and low note and set an EEPOT to tune things. As the synth warms up, do it again. If you have an MCU involved, it can also be done in the background.Elektor Formant music synthesizerI don't think it used an oven but others added one.

author: homeless_peep
author_rank: Contributor
timestamp: June 01, 2017, 09:13:26 am
content: The lm78xx regulators have very good long term stability and fairly low temperature drift. With the 7812 it will not be exactly 12V out of the box,but very close.The important thing to understand here, is what kind of detuning you need to compensate and get rid of, and what kind is expected and can simply be tuned out by the user during performance.Broadly speaking, the V/oct setting is a real bitch to trim (by ear) and is what is immediately affected by the converter temperature. Slow drifts in my oscillator core produce a uniform frequency drift. A musician can simply turn the tune knob slightly and come back in tune. Maybe in the technical world it's a taboo, but any musical instrument is expected to drift and you will need to retune, mid performance.To counter that, I am incorporating 9V regulators in the places stuff is referenced to one of the supplies. Apart from the sensor circuit we are discussing here, there is a schmitt trigger based on an LM13700 that needs to be stabilised. Putting everything in an oven is the "mystical" solution- instead of a good design you just brute force it (not very elegant and usually very expensive). I have taken extra care to use as little ICs as possibles in the VCO core, and those used are operating in a way that is fairly independent from the supply voltage. I'm surprised none of you guys didn't talk about resistor and capacitor drift yet, which is much more important than a TL082 working at 30 instead of 25 C.

author: Kleinstein
author_rank: Super Contributor
timestamp: June 01, 2017, 05:23:14 pm
content: The thermal resistance of the board depends one the amount of copper used - so one has some influence and should be able to keep it somewhere close to the prototyping board. However this takes some space and maybe extra wholes / cut outs. An alternative way would be to mount the small circuit part that needs to be a constant temperature on a small daughter board.I don't think many other parts would be so temperature sensitive. It is usually just the trans-linear functions that are really temperature dependent.A schmidt trigger based on an LM13700 would be unusual - here better options might be available - even an NE555 (or better the CMOS version) can make a stable schmidt trigger.

author: David Hess
author_rank: Super Contributor
timestamp: June 01, 2017, 06:23:04 pm
content: Quote from: homeless_peep on June 01, 2017, 09:13:26 amOther than log conformity, the temperature coefficient of the timing capacitor should be the largest problem if the other circuits are designed correctly. They used to use polystyrene for its very dependable -120ppm/C temperature coefficient and then compensate it with a +120ppm/C resistor but I suspect now a C0G nor NP0 ceramic capacitor would be better.Controlling the temperature of a transistor array is better than using an external 0.33%/C gain compensation resistor.

author: homeless_peep
author_rank: Contributor
timestamp: June 27, 2017, 04:56:57 pm
content: It's been a while, but it's finally assembled and working. My board had a couple of mistakes, like missing a ground link or wrong IC footprints. The solutions are a bit...unorthodox, but still, it's not even ugly to look at.I used a simple PI opamp controller by guestimating values based on the experiennce from the breadboard. I think the array reaches the correct temperature at about 5 minutes and, compared to the previous design, I can't notice any frequency drift at all. Log conformity is a bitch though, I'll have to play around the HF compensation circuit to get those last two octaves. It covers 5, almost 6 octaves without compensating.The whole tuning range is somewhat impressive,1.3Hz-290kHz. If I used a faster schmitt's trigger I suppose I could go up to 500k+ (although irrelevant to my purpose). My small tweak at the integrator circuit did get rid of some nasty spikes, caused by the opamp.I've also included an LFO option. When engaged you can go as low as 20minutes/cycle.I kinda messed up on the potentiometer position, they're put in the wrong order. We'll print a panel on FR4 during the week and it's completely ready. I'll get around uploading some pics.Thank you all, you've been a huge help.