Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Setting up 'guard thermistors'

    Scheduled Pinned Locked Moved
    General Discussion
    3
    10
    435
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • DaBitundefined
      DaBit
      last edited by

      Probably this has been beaten to death, but all I can find is posts about setting up virtual heaters and displaying the temperature of them.

      I would like to setup a couple of 'guard thermistors' using the extra thermistor inputs on the expansion header of my Duet2 Wifi. One extra on the bed, one on the (liquid cooled) coldend. I want to shutdown the printing when one of those guard thermistors reports an unusual temperature.

      I am currently using the latest RRF2 firmware, but if this is easier to do with RRF3 I would not mind moving to that.

      dc42undefined 1 Reply Last reply Reply Quote 0
      • A Former User?
        A Former User
        last edited by A Former User

        Given that you already have a thermistor on the hotend and the bed, adding another isn't going to provide much more safety. the firmware will model the heater and throw an error if its heating or cooling outside of the expected range, as such you'll still be reliant on the firmware doing its job.

        For adittional safety I'd rather suggest thermal fuses or bi-metal switches to physically interrupt the circuit if they exceed the set value. Search the forums for TCO and/or thermal fuse to see more on the topic.

        Back to the topic at hand; RRF2 can only respond to digital i/o atm, there is comming support for conditional g-code in RRF3 so it'll likely be able to achieve what you want. There is a thread on that, you may want to follow that for details and timelines: https://forum.duet3d.com/topic/13516/conditional-gcode-and-object-model-variables/21

        As added by DC42 below: https://duet3d.dozuki.com/Wiki/Gcode#Section_M143_Maximum_heater_temperature

        1 Reply Last reply Reply Quote 0
        • DaBitundefined
          DaBit
          last edited by

          An extra thermistor for the bed is dubious, but I am moving to a thermistor embedded in the aluminium instead of the one embedded in the silicone heater mat; at higher bed temperatures I have too much deviation in temperature between surface and what the mat sensor reports, and it takes ages for the temperatures at the bottom of the heatbed and top of the heatbed to equalize sufficiently. I might as well use the one in the mat to provide an upper bound on temperature; it is already there. Of course I can put the thermistors in series or in parallel to sort of average the temperature, but I don't think that is a very good solution.

          The coldend is different; if water flow ever stops things turn into a very hard to clean mess. I could use a thermal switch, but I find the lower-temperature ones I tried before highly inaccurate, and they are usually physically much larger than a thermistor also.

          A Former User? 1 Reply Last reply Reply Quote 0
          • A Former User?
            A Former User @DaBit
            last edited by

            @DaBit said in Setting up 'guard thermistors':

            if water flow ever stops things turn into a very hard to clean mess.

            then a flow sensor could make more sense imo; might* be able to tie it into the filament sensor stuff without much more effort than that.

            *) i.e. i have no idea if it'll work

            1 Reply Last reply Reply Quote 0
            • dc42undefined
              dc42 administrators @DaBit
              last edited by

              You can do this by setting up extra heater protection elements using M143.

              Duet WiFi hardware designer and firmware engineer
              Please do not ask me for Duet support via PM or email, use the forum
              http://www.escher3d.com, https://miscsolutions.wordpress.com

              1 Reply Last reply Reply Quote 0
              • DaBitundefined
                DaBit
                last edited by

                Nice, M143 seems to be what I am looking for.

                Will this work?

                M305 S"Coldend" P103 X3 T100000 B4725   ; setup virtual heater using THERMISTOR3 at the coldend?
                M143 H1 P103 S40
                M143 H1 S285                            ; Two protection instances allowed?
                M143 H2 P103 S40                        ; Allowed to use the same virtual heater in two protection instances?
                M143 H2 S285
                

                Regarding a flow sensor: that provides indirect protection only. Having flow says nothing about the cold end becoming too hot.
                When I start to split the flow in parallel (I am considering milling a small waterblock to keep the Duet stepper drives cool, for example) it might happen that one of the 4mm hoses to the coldend gets pinched while the sensor still senses flow.

                dc42undefined 1 Reply Last reply Reply Quote 0
                • dc42undefined
                  dc42 administrators @DaBit
                  last edited by

                  @DaBit said in Setting up 'guard thermistors':

                  Nice, M143 seems to be what I am looking for.

                  Will this work?

                  M305 S"Coldend" P103 X3 T100000 B4725   ; setup virtual heater using THERMISTOR3 at the coldend?
                  M143 H1 P103 S40
                  M143 H1 S285                            ; Two protection instances allowed?
                  M143 H2 P103 S40                        ; Allowed to use the same virtual heater in two protection instances?
                  M143 H2 S285
                  

                  Regarding a flow sensor: that provides indirect protection only. Having flow says nothing about the cold end becoming too hot.
                  When I start to split the flow in parallel (I am considering milling a small waterblock to keep the Duet stepper drives cool, for example) it might happen that one of the 4mm hoses to the coldend gets pinched while the sensor still senses flow.

                  That looks OK to me for RRF3. Please test it before relying on it, because testing heater protection instances in RRF3 is still on my todo list.

                  You should be able to use the same sensor to protect two heaters, although that seems to me an unusual thing to do. The term "virtual heater" no longer applies in RRF3 because it treats sensors and heaters separately; whereas in RRF2 a sensor could only be tied to a heater, so you needed a "virtual heater" if you wanted to use a sensor that wasn't associated with a particular heater.

                  Duet WiFi hardware designer and firmware engineer
                  Please do not ask me for Duet support via PM or email, use the forum
                  http://www.escher3d.com, https://miscsolutions.wordpress.com

                  1 Reply Last reply Reply Quote 0
                  • DaBitundefined
                    DaBit
                    last edited by

                    OK, so with RRF 2.05 (what I currently run) it won't work? Then I will read a bit on the migration and try RRF3. Need to get some 4k7 resistors to be able to use the thermistor inputs on the expansion header anyway.

                    In my case it is not unusual to use a single protection instance for two heaters since I am using an E3D Chimera where two nozzles and two heatbreaks share the same cooling block. Thus, in case the cooling stops both E0 and E1 may cause an overtemperature fault at the cooling block.

                    A Former User? 1 Reply Last reply Reply Quote 0
                    • A Former User?
                      A Former User @DaBit
                      last edited by A Former User

                      @DaBit said in Setting up 'guard thermistors':

                      OK, so with RRF 2.05 (what I currently run) it won't work?

                      you should be fine (the config would differ though) https://duet3d.dozuki.com/Wiki/Gcode#Section_M143_Maximum_heater_temperature

                      1 Reply Last reply Reply Quote 1
                      • DaBitundefined
                        DaBit
                        last edited by DaBit

                        What would be different for RRF2 then? Can you post a few lines of example code maybe?

                        One more question: can the protection instances control the PS_ON pin on the Duet 2 Wifi? I might want to put a mechanical relay (with flyback diode of course) controlled by the PS_ON pin in the 230VAC path which is switched off when severe overtemperature faults occur. MOSFET's fail shorted, SSR's do so too.

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post
                        Unless otherwise noted, all forum content is licensed under CC-BY-SA