Here is the populated board - hand drilled - with some learning about component spacing.
I abandoned the idea of dual mosfets for now to simplify things.
This will run sensor cooling, sensor defogging and lens dew heater. A second board will drive the camera shutter and dithering and perhaps camera power - for now it's batteries.
A little more design work on the pcb , a little bit of code to drive the heater supplies at the right time.
EDIT: Amazing!!! - found an error in the board. Disturbingly, it was the digital ground to the Teensy +5. Anyway all fixed - cut the trace and use a jumper to the correct pin.
Latest artwork. Comments, suggestions? The basis is ground planes. Some respacing required. SMD pads are a substitute for an unavailable part with the required 1.7mm in-line pin spacing - SIP. The terminal block at ground is a convenience measure to avoid soldering a heavy ground wire. Same for the Drain terminal block
Getting close. More generous spacing and gaps. Some small adjustments required, on second look, but this is the RC board, as far as I'm concerned. It fits clear of the battery door on the camera base with the MOSFET in contact with the main cooling heatsink.
A smaller version demonstrated the same perceptibly noise free performance, as the original huge ground planes - confident that this will do the same.
It was easier and less time consuming to draw it up on the board editor (Eagle CAD). Consequently, there is no schematic. It's not complex and should be easy to follow.
As mentioned earlier it is all based around more thorough and careful separation of ground sources from analog and digital devices and sensors, leading back to a common ground at the microprocessor board.
The planes, in simple terms, produce low inductance and low impedance pathways to a common ground, with a high impedance connection between analog and ground planes to balance potential difference - that's the theory, anyway. Not new by any means, but a departure from the use of snubber networks for mosfets.
On to an electronics compartment-to-heatsink sub-frame, to stablise the otherwise flexible copper cold finger. I want this to be as neat and compact as possible with basic/convential tools. Anyone should be able to build this - that's the goal. "Some say he's a dreamer, but..."
Well, I'm not happy with the results. I think there is need for isolation of some components which seem to interfere with the microprocessor board. Puzzled
Nope! Wired the pushbutton incorrectly and shorted the whole thing? All working now... attached below.
Small change - low side switching the dew heater only. As this rig will image at 0C, over a wide range of ambient temperatures sensor deffoging is on while cooling is operating
The dew heater is low side switched through an N-channel MOSFET below 5C for now. Easy enough to use a humidity module as a reference.
There's not much more to this and it's time to start imaging with it.
Summarizing this rather drawn out escaped. Thermoelectric cooling of a DSLR sensor is not too difficult, providing the camera is easily adapted. Regulating setpoint temperature has several advantages, such as consistent and reliable image calibration results. Control using PWM and a MOSFET to switch current through the TEC module presents one or two challenges. Switching of the MOSFET shows up as lines in images, if EMI is not reduced to insignificant levels. Ground planes and careful separation of analog and digital ground sources and camera chassis and cold finger bonding has produced best results.
I will post the Eagle .brd file, although it hasn't changed much, along with the cold finger dimensions. There is a link to the heatsink in an earlier post to this thread - heatsink performance is critical. Cooling performance is related to heatsink and fan performance, TEC rating and supply voltage - if the heatsink/fan cannot keep up the TEC will expend energy heating the system - indiscrimately.
Test the system at various PWM settings note the max differential and PWM setting. If the best differential is at a PWM value less than 100% then the heatsink is probably too small or the fan is not moving enough air or both.
The system will shut down automatically on the predicted failure of certain components - that is; anything that is getting outside desired temperature levels.
Nice work Rowland, obviously a lot of thought went into this.
Do you use set point cooling and how do you set what temperature you want to regulate at? LCD interface?
if noise was an issue with switching the mosfet's, would it help if you isolated the controls from the TEC and had it outside on a lead?
do you have a "warm up" sequence as well where you reduce power in steps over a minute to slowly withdraw cooling as most CCD's have?
I've been into hobby electronics for over a decade and most of your theory was "overhead transmission" for me, but interesting nonetheless.
if you wanted to etch PCB's, i've got everything including toner transfer, blank PCB's, ammonium persulphate.
else once you have the eagle files done, I'd suggest using OSH park for the prototype boards as they're professional quality and low cost.
what exposure lengths are you aiming at now that you're cooling the sensor?
ha ha just read your first post, set point via morse code??
its like the martian rovers leaving tyre tracks in morse code reading "JPL".
just add a serial red LCD with two push buttons, add code to display ambient at startup, and accept input for target setpoint and away it goes. dead easy.
the project for automated dew heater controller in the projects section should give you some ideas on the code required with the arduino for display and input.
Nice work Rowland, obviously a lot of thought went into this.
Do you use set point cooling and how do you set what temperature you want to regulate at? LCD interface?
if noise was an issue with switching the mosfet's, would it help if you isolated the controls from the TEC and had it outside on a lead?
do you have a "warm up" sequence as well where you reduce power in steps over a minute to slowly withdraw cooling as most CCD's have?
I've been into hobby electronics for over a decade and most of your theory was "overhead transmission" for me, but interesting nonetheless.
if you wanted to etch PCB's, i've got everything including toner transfer, blank PCB's, ammonium persulphate.
else once you have the eagle files done, I'd suggest using OSH park for the prototype boards as they're professional quality and low cost.
what exposure lengths are you aiming at now that you're cooling the sensor?
Setpoint is currently determined by ambient temperature range, taking into account the capability of the system on the night, rounded to 5, 0, -5C and is automatic. An LCD would be a nice addition. A previous mod used two pushbuttons to set temperature by degree, but I opted for auto setpoint on this one. Depressing the pushbutton disables PWM, reads ambient temperature and calculates setpoint - release pushbutton to start cooling.
Basically what you describe is the arrangement. I have attempted to keep the footprint as small as possible without going down the SMD path, just yet - that's to come.
A warm up sequence is a good idea and easy to implement.
The theory is interesting and I'm happy to say the application has very quick switching response, while maintaining setpoint. I've had a bit of help here and there from one or two members.
I have etching gear, onto board #5. I will try OSH park. I'm over the transfer thing. It's driving me nuts.
Exposure times will be around 3 - 3.5 minutes at iso 800 - 400 as a rule. I find this produces the best quality subs depending on sky conditions. The lower iso is to prevent star bloat in widefield images. There's not much space between stars at 200mm and 1.6 crop factor.
Exposure time is a trade off with widefield to avoid splodgy groups of stars. Just need more subs - I take about 40.
Drill bits - I break lots of those.
I like minimalist controls, cables and so on. The Morse Code thing was a gimmick. The led blinks at a different rate for each setpoint while the button is depressed and lights up again at setpoint.
Thanks so much for writing this up, I'm sure it will benefit many people. I look forward to part two, I'm very tempted to have another go at cooling following your instructions
Would you know if the 1100D is very different from the 1000D? I might have to pull mine apart and see.
I have added as much information as is necessary, hopefully, with some order to it. None of this is set in concrete and there is always room for individuality. The idea has been to set out the basics and at the same time present a working model. I hope it's useful.
The code works well and no doubt can be improved by better programmers than me. It's a low level approach. Pretty much where my programming skills sit at the moment.
The setup was tested at the March 2014 Snake Valley Astro Camp, and it ran nicely at -5C for several hours, between 20 and 15 degrees differential. I will post the image when it is processed.
There are some minor improvements and adjustments to be made. If you don't like the analog sensor readings in the program as control points, just convert and use degrees Celcius.
I did notice, on the second night, while focussing with a mask, what appeared to be diffraction due to a small amount of condensation on the sensor face. This did not reappear once evaporated by the sensor defogger. I suspect that the defogger had not caught up with the cooling, due to low air temperature.
Camera has a full spectrum mod with an Astronomik clip-in UV/IR filter from BINTEL. Probably the easiest and less costly option for hobbyists - allows IR as well, with a filter.
I feel a bit guilty chiming in with suggestions after you got it working but I only just noticed this thread. Sorry. But these few notes are just something to consider when you do your next circuit:
- D1 and D2 can often be omitted through careful selection of Q1 and Q2. Many MOSFETs now ship with reverse protection diodes in the package itself. It's more common than not these days especially to meet electrostatic discharge requirements.
- What's the purpose of the mini trace connecting the big trace to digital ground?
- How are your two grounds connected? Not the 100ohm resistor I hope? If so what's the purpose of that connection?
- For home manufacture especially but also if you start hitting the tolerances of the manufacturer of your circuit board (i.e. 6mil traces) use right angles. For routed boards it prevents overshoot on the routing bit from cutting into your trace, and for home made boards it prevents etchant from pooling at a corner and cutting in. Use 45degree angles where possible making a turn and if you can afford the space use 45degree bevels on T-junctions on the board as well. No electrical reason for it, it just helps ensure that you or someone else won't stuff up the manufacture.
No problem Chris. Good to get a critical eye over it. Responses below comments. many thanks.
Quote:
Originally Posted by Garbz
I feel a bit guilty chiming in with suggestions after you got it working but I only just noticed this thread. Sorry. But these few notes are just something to consider when you do your next circuit:
- D1 and D2 can often be omitted through careful selection of Q1 and Q2. Many MOSFETs now ship with reverse protection diodes in the package itself. It's more common than not these days especially to meet electrostatic discharge requirements.
The IRF7430 has the same. It didn't occur to me at the time. I just modelled it off the SPICE simulation.
- What's the purpose of the mini trace connecting the big trace to digital ground?
- How are your two grounds connected? Not the 100ohm resistor I hope? If so what's the purpose of that connection?
Interesting point - the idea, based on my reading, was to keep the digital ground away from the microprocessor pins - avoid additional EMI. The connection is required to complete the star ground - this became evident when I forgot to connect the processor ground on that side. The 100ohm resistor is on the gate side. The 27ohm resistor, is high impedance to balance potential difference between the ground planes - again modeled off my reading.
Really a case of picking the eyes out of various papers on the subject of ground planes and implementing the lot, to be safe.
- For home manufacture especially but also if you start hitting the tolerances of the manufacturer of your circuit board (i.e. 6mil traces) use right angles. For routed boards it prevents overshoot on the routing bit from cutting into your trace, and for home made boards it prevents etchant from pooling at a corner and cutting in. Use 45degree angles where possible making a turn and if you can afford the space use 45degree bevels on T-junctions on the board as well. No electrical reason for it, it just helps ensure that you or someone else won't stuff up the manufacture.
Must admit, I didn't have much fun with the PCB. I can identify with your comments, particularly the etching. Fine tipped indelible markers are great for touching up botched heat transfers.
Just a note on grounding, a ground must never have a high-impedance connection, whichever paper said that stop reading it. I have a bit of history in mixed signal and low noise design.
The principles of high-impedance links are designed to prevent signals from flowing between different grounds. Unfortunately what happens is if a signal does flow over this link it raises the potential of the ground from the side it's coming from. Your digital ground may suddenly float a few volts above the analogue ground leading to very screwed up responses in mixed signal devices like digital to analogue converters.
Where high *resistance* connections are useful is if the ground current will only flow in case of a fault condition and the fault condition needs to be detected. e.g. in my power amp I have a 10ohm resistor connecting my signal ground to my chassis as there should not be any current flowing unless something goes bang, but none the less I need them connected to prevent the floating ground from causing it's own noise, and if something goes bang I want it to trip the earth fault detector in the house.
The solution is to filter out the signal of interest at the point where grounds connect. In this case you could for instance put capacitor banks on either side of the resistor, or substitute the resistor with an inductor (high impedance at higher frequencies, but low impedance at DC).
In mixed signal design routing the ground plane creatively is the best way of keeping signals and noises separate. It is all 100% about looking at the impedance loops. Return signals travel along the path of least inductance, which is often as close as possible to the original signal which went out. The picture I've attached below is a classic mixed signal device like a DAC with digital on one side, and analogue on the other.
The idea is to route slots down to the point where the signals get mixed (straight through the chip) and connect the grounds there, and also connect the powersupplies there. Keep all the digital signals on the digital side and the analogue on the analogue side. If ever they need to cross via some device they should either be isolated or cross at the one point (kind of like your star ground).
If you do this you effectively limit any mixing of the signals on the plane as you can see by the cream lines. If you do however cross then the signals need to travel back via the wrong side of the plane which is bad and will lead to contamination for want of a better word. When circuits get large it becomes very hard to route, even harder if you can't dedicate an entire plane to ground.
It's more of a black art than anything else. But if all else fails just remember the word star ground. Return all your grounds to one big very low impedance point and you're about 90% of the way there. Chasing that last 10% will drive you mad.
That is excellent feedback Chris. Thank you very much. Amazingly, you didn't loose me at all through your explanation. Simple fix, I think - remove the resistor. Might explain the noisy temp sensor analog inputs. I'll have a closer look at my circuit, per your diagram as well.
Or replace the resistor with a suitably sized inductor if you're trying to eliminate noise. As a matter of interest how is the noise presenting? I assume you don't need lighting fast response. Maybe an 8 point moving average filter implemented in the code may fix the issues too?