PS_ON pin: what can control it?
-
I asked the question in another topic, but it was probably hidden too much. Sorry for asking again.
Question: what exactly controls the PS_ON pin on the Duet2? I know M80/M81 can do so. But what about protection instances, for example? Can these cause a toggle/shutdown of the PS_ON pin too? What else?
Reason behind the question: I am trying to figure out if it makes sense to add a (mechanical) relay to the printer that switches the incoming 230VAC. This allows the printer to completely remove it's own power (and effectively kill itself), which is somewhat useful after a print but even more useful when the bed SSR or extruder heater MOSFET decides to fail shorted.
Of course I would need a flyback diode over the relay coil and a bypass pushbutton over the relay to be able to turn on the printer. -
You can get it to trip after exceeding maximum temps. There are other trips that happen during a build. I had requested that this cover be extended to cover not building times but so far I don't believe this has been followed up. As the heaters are permanently live with a switched ground it wouldn't take much to accidentally run the heaters.
Depending on your current draws for your hotend and heatbed you maybe able to use a suitably rated relay on the DC + side of the hotend and heater, with the caveat that switching under load shouldn't be done under load too often.
Plan B for me is two PSUs with tied negatives where one supplies the board at VIN and the second supplies the posative side of the heaters.
Plan C is the kill all route, as you do get false trips and it could leave you with a bunged hotend.
-
On my mains bed powered printer I use a contactor (relay) and an SSR wired in series on the ungrounded mains wire and another contact of the same contactor and another SSR wired in series on the grounded conductor of the mains bed heat all controlled by PS_ON. All 3 would have to fail closed to cause the bed heat not to respond. The contactor also will open the hot end heater circuit if for some reason the Mosfet in the Duet failed on. I also have a GFCI cord cap on the printer cord so it and the cord are ground fault protected. Overkill? Some would say yes but I have better peace of mind with the few additional components. I have intention of adding an independent watchdog in case for some reason the Duet freezes because all the above would be moot in that event but haven't implemented that yet. I do not however leave any of my printers printing without human oversight either in person or on premise via camera.
-
Thus, PS_ON deactivates when a heater fault occurs?
-
@DaBit not immediately as far as I can remember. Think there is a configurable delay.
-
It deactivates when the print is cancelled by a heater fault. I think default is still 10 min which is way too long if wanting to kill the heater via relay etc but is configurable now.
https://duet3d.dozuki.com/Wiki/Gcode#Section_M570_Configure_heater_fault_detection
"Snnn Timeout in minutes for print to be cancelled after heater fault (Firmware 1.20 and later)."
-
Forgot to mention, and you may have one already, that you should have a thermal fuse in the heater or mechanically attached to the bed unless it is powered low enough it won't get to dangerous temperatures anyway.
-
BTW as far as I know it currently will not deactivate when not printing.
-
I tightened up the timeouts and excursion limits for all the heaters. Topic 8464 describes the PS_ON behaviour when a heater fault occurs, which is what I was looking for.
The machine not shutting down due to a heater fault when idle, hmm. I would prefer to be able to configure the printer to do so. Disabled by default so it won't interfere during bringup, enabled when everything works as expected.
Dangerous temperatures are 380-500C; that is the range where many of our plastics autoignite. Not easy for the bed to reach those temperatures. For the hotend, it probably is.