Fan control with "ambient" temperatures
-
@achrn The driver over temperature flag is quite high I believe. What I did once was to attach a small bead thermistor to a couple of the driver chips with a small dab of epoxy adhesive, then used a fan in thermostatic mode to blow air over the back of the board. I used something like T40:60 in the M106 for that fan so that it would start to turn at 40 and ramp up to full speed at 60. It gives a bit more granular control than simply on-off.
-
@achrn said in Fan control with "ambient" temperatures:
Possibly there is or will be other stuff in the enclosure too that wants cooling? I note the presence of a fan-cooled psu and some other small board in the photo.
Yep, what you said!
The inlet fan is to the left of the enclosure, and the exhaust on the top. Both the fans have sponge filters to reduce dust/chips getting in...
EDIT: Of course, the door will be closed!
-
So, for whichever thermistor I go for, (probably these), is it a simple case of just changing the existing code to take account of the "activating" temperature and enabling the H1?
-
@nightowl said in Fan control with "ambient" temperatures:
So, for whichever thermistor I go for, (probably these), is it a simple case of just changing the existing code to take account of the "activating" temperature and enabling the H1?
Yes, pretty much. You create the sensor using M308. https://docs.duet3d.com/User_manual/Reference/Gcodes#m308-set-or-report-sensor-parameters
You create the fan using M950. https://docs.duet3d.com/User_manual/Reference/Gcodes#m950-create-heater-fan-spindle-or-gpioservo-pin
Then you use the "H" parameter in M106 to enable thermostatic mode and assign the sensor that the fan will use. https://docs.duet3d.com/User_manual/Reference/Gcodes#m106-fan-on
-
@deckingman Spiffing, thank you!
Whoops, I didn't add the links in my previous post...
These or these are the ones I'm considering.
Will the "thermistor" come with the values I will need to configure it, i.e.:
Tnnn (for thermistor sensors) Thermistor resistance at 25°C Bnnn Beta value, or the reciprocal of the Steinhart-Hart thermistor model B coefficient Cnnn Steinhart-Hart C coefficient, default 0 Rnnn Series resistor value. Leave blank to use the default for your board. Lnnn ADC low offset correction, default 0 (ignored if the hardware supports automatic ADC gain and offset calibration) Hnnn ADC high offset correction, default 0 (ignored if the hardware supports automatic ADC gain and offset calibration)
I have a Duet3 MB6HC board.
Thanks
-
@nightowl You only really need the "T" and the "B" value for your M308. The "C" value is a tiny number - useful to have but not essential for this application so the default of 0 should be fine. Both those links give the T value as 10k (10, 000). the first link gives you a B value but the second does not.
-
@deckingman
That makes things simpler, than you.Do you think there may be a typo in the first example of the M308 command, in the link you sent me? The example value is T100000, which indicates a resistance of 100kOhm, as most people seem to be talking about a 10k resistance (@ 25C).
-
@deckingman
Also, before you answered my question, I emailed the seller about these, and was told they're "...not suitable for CNC control boards." -
@nightowl A thermistor is a very simple device. Most are NTC which means Negative Temperature Coefficient. That is to say, as temperature increases the resistance decreases and vice versa. They can vary from a few ohms at ambient temperature, up to mega ohms. The most common type used in 3D printers are 100K which is why the example shows 100k. But there is no reason why you can't use a 10k, a 1k or any other value as long as you "tell" the firmware what the resistance is at standard ambient temperature by using the correct "T" value.
Did the vendor give a reason why that thermistor would not be suitable? I suspect that he probably simply did not understand what you want to do and may have made the assumption that a CNC control board might not normally have an input for measuring ambient air temperature.
-
Thank you for explaining that. I think you've got it right; I'm not sure the vendor really understood what I was trying to achieve.
I've ordered a pack of 5 from a different supplier, so I'll see how that goes.
Thanks again for your help.