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

    how to setup a hotend for directly printing metal and ceramic.

    Scheduled Pinned Locked Moved Unsolved
    Hardware dev
    6
    59
    2.2k
    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.
    • lynnmtundefined
      lynnmt
      last edited by

      The quick gist of what i am doing and why:

      I am developing an open source hotend for semisolid metal direct write and direct ceramic 3D printing.

      my hot end consists of a glow plug like the one I have modeled at this link, with a 0.5mm ID straight center bore(60mm deep)hole EDM drilled through it lengthwise. These glowplugs are capable of long term stable operation in air at up to about ~1500 C, and are essentially nonwetting and nonreactive to most nonferrous molten metals at temperatures below 1300 C. they are made of Si3N4-MoSi2 ceramic, which is an electrically semiconducting ceramic matrix composite, and they only heat at the tiny region at the tip, about 2.8mm OD, and ~2 mm long.

      Shameless plug

      i have a youtube video showing the hotend mounted and working on and ender 3 when we were clearing some bronze that got jammed inside it when I stupidly overheated the bronze and simultaneously pulled the feedstock wire out of the hotend, leaving behind a blob of oxide rich slag which had to be remelted and wicked out with a more refractory wire of silicon carbide.

      We use the EDM drilled ceramic glow plug as a combined heated nozzle +hotend+temperature sensor that is extremely fast, and has surface power density comparable to a torch flame(between 1 and 15 watt/mm^2 typical depending on what we are printing) to be able to rapidly heat and cool a a 24 AWG (0.522mm OD, 510 phosphor bronze) metal wire (with no nozzle constriction) to maintain the temperature between the solidus and liquidus for the wire, at the deposition region where the wire touches the build plate. Maintaining such temperature control requires extremely fast temperature cycling up and down(up to about 1000 degrees C/second) (more typical 350 degrees C /second) , and requires very sensitive temperature measurement(+- 1 degree C at a minimum..) to be able to respond to changes in flow conditions in time to maintain stable deposition.

      a little bit about what we are printing with:

      it helps to have metals that have a wide window between solidus and liquidus. 510 phosphor Bronze is one of the few easily available alloys that has a wide window. between 930 and 1060 C, about 130 degrees C.

      so we have opted to start by trying to print bronze from 24AWG (0.52mm) 510 phosphor bronze wire available on mcmaster.

      small wire diameter also helps because it reduces total mass flow requirements and reduces dead metal and risks for granular jamming in the hotend. small hole diameter in the hotend enables the high temperature of the heater to exclude air from the bore, and this provides a relatively anoxic environment inside the hotend which protects the metal from oxidation. the small mass of metal being deposited means that rapid quenching occurs on the build plate, and this means there is little time for oxidation, and for grain growth... because the metal is semisolid as printed, it develops about 3 orders of magnitude less internal stress than in approaches like WAAM.

      this all means that a single rather challenging machining operation was requried to make the ceramic glowplugs into suitable hotends, that is, EDM drilling a centerbored a 60mm X 0.5mm diameter through hole in the Si3N4 MoSi2 ceramic body of the glowplug.

      we have managed to obtain reliable operations for doing the manufacturing.
      we now just need to get control of the system which may require a few minimal firmware alterations...

      we have been aiming for a drop in mod for the ender 3 being the first thing we make and offer for a wider audience, if it works.

      The crux of the problem

      I am having a lot of trouble getting the duet to cooperate and control these extremely high performing heaters. the PID tuning algorithm seems to be too slow to respond to them, and this trip heater faults.
      I am also doing temperature sensing of the heaters by wrapping a type K thermocouple around the ceramic tip and slathering it in refractory cement. this appears to cause some amount of signal cross talk with the thermocouple amplifier MAX 31856 duet daughterboard. or something... I keep getting the error "fault on heater 1:sensor short to other wiring"
      but if I leave the printer to sit after clearing the fault, for perhaps 10-20 minutes, the thermocouple reads temperatures on the hotend heaters of ~30-45C. I can then attempt a PID tun or to enable the heaters, but the tune fails consistently when the overshoot is much larger than anticipated or for some other reason I have not identified.

      ## Basically I need help controlling the temperature of these heaters and making the necessary firmware adjustments to make their control reliable.

      I am not a firmware or software developer, please keep responses at the level of a 5 year old if at all possible...

      Any assistance is greatly appreciated. 🙂

      T3P3Tonyundefined 1 Reply Last reply Reply Quote 5
      • T3P3Tonyundefined
        T3P3Tony administrators @lynnmt
        last edited by

        @lynnmt thanks for the detailed explanation of your project, incredibly cool to have identified and built a hot end with those capabilities.

        Did you see the documentation here:
        https://docs.duet3d.com/en/User_manual/Connecting_hardware/Heaters_tuning#setting-the-model-parameters-manually

        And try calculating the values manually as described?

        www.duet3d.com

        1 Reply Last reply Reply Quote 1
        • lynnmtundefined lynnmt marked this topic as a question
        • lynnmtundefined
          lynnmt
          last edited by

          The reply function has returned for me after switching computers....

          apologies for the extended delay in this thread.

          I have not yet tried manually calculating the values as described.
          I have some questions about the limits on the range of the parameters.

          are there any limits on the heating rate parameter, and the dead time parameters?
          like maximum and minimum values respectively, that the duet will accept?

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

            @lynnmt the temperature is sampled and the PID loop for controlling heater temperature runs at 4Hz.

            The limits on the heater model parameters are currently:

            heating_rate/basic_cooling_rate > 0.1
            dead_time > 0.099
            dead_time * basic_cooling_rate <= 50
            1.0 <= cooling_rate_exponent <= 1.6

            HTH David

            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

            lynnmtundefined 2 Replies Last reply Reply Quote 0
            • lynnmtundefined
              lynnmt @dc42
              last edited by

              @dc42 is there any way to make it work at faster frequencies? and or to increase the frequency of measurement at the thermocouple?

              my heater can heat and cool at ~1000 C/second, and may need to do this fairly often..
              this is almost 250C degree of change in a 4 hertz update cycle.

              I need at least 5-7 degrees C of heating/cooling precision at the heater during operation to ensure the metal in the hotend does not freeze/melt.

              1 Reply Last reply Reply Quote 0
              • lynnmtundefined
                lynnmt @dc42
                last edited by

                @dc42
                when I run M307 per the docs,
                https://docs.duet3d.com/en/User_manual/Connecting_hardware/Heaters_tuning#setting-the-model-parameters-manually

                M307 H1 R1000 K300 D0.25 S0.1 V24

                I get the error "bad model parameters"
                are these values outside the possible ranges specified?

                the command also fails as
                M307 H1 R1000 C4 D0.25 S0.1 V24

                soare0undefined dc42undefined 2 Replies Last reply Reply Quote 0
                • soare0undefined
                  soare0 @lynnmt
                  last edited by

                  @lynnmt External CAN temperature controller? This way you have control from gcode, and higher performance of controller.

                  lynnmtundefined 1 Reply Last reply Reply Quote 0
                  • lynnmtundefined
                    lynnmt @soare0
                    last edited by

                    @soare0
                    do you have a link to such a thing?
                    These exist?

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

                      @lynnmt your original command:

                      M307 H1 R1000 K300 D0.25 S0.1 V24
                      

                      fails because K * D > 50. So reduce K or D to make it <= 50. I suspect the dead time of your heater is well below 0.25 (minimum currently supported is 0.1).

                      Are you driving the heater from a main board or from an expansion board?

                      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

                      lynnmtundefined 1 Reply Last reply Reply Quote 0
                      • lynnmtundefined
                        lynnmt @dc42
                        last edited by lynnmt

                        @dc42

                        Even when i reduce the value to 0.1 it still fails. with the same "bad model parameters" 😞

                        I am driving the heater from the main board.
                        it only draws about 40-60 watts of power.

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

                          @lynnmt this works for me for heaters on both main boards and expansion boards, using firmware 3.5.0-rc.3+:

                          M307 H0 R1000 K300 D0.1 S0.1 V24
                          

                          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

                          lynnmtundefined 2 Replies Last reply Reply Quote 0
                          • lynnmtundefined
                            lynnmt @dc42
                            last edited by lynnmt

                            @dc42
                            I appear to be using reprap firmware for Duet 3 MB6HC 3.3.
                            DSF version 3.4.6

                            The command M307 H1 R1000 C4:2 D0.25 S0.2 V24.0
                            also fails with the same "bad model parameters " error.

                            dc42undefined oliofundefined 2 Replies Last reply Reply Quote 0
                            • soare0undefined
                              soare0 @lynnmt
                              last edited by

                              @lynnmt Yes, they are, but interfacing would not be trivial.
                              I worked with some, some years ago, and being straight chinese, it was a pain to use their CAN bus protocoi (as it was rather suggested than described). If you say you are 5 year old technical, then you may not want to do such gymnastics.
                              I would suggest that maybe an Arduino, with CAN and a thermocouple adaptor, may do the trick.
                              Maybe working from a DUET CAN interface board, would be better than from a mainboard? I think this is what dc42 wants to suggest.
                              Anyway, if your requirements are so ... harsh, regular PIDs may not be your best option (usually they are not designed for such high speeds, but probably some custom controller, wich... may be done on Arduino too, or on any other board like this.
                              I needed to do such stuff a long time a go, basically some ramped ON-OFF controllers, for fast precision control, but this is something needing to be tuned ... in house.
                              Normal fast thermoregulators, means 5samples/second. Super fast ones, maybe 40/sec, like these:

                              https://www.tc.co.uk/temperature_control/HA401.html

                              But the fact you can sample with 1ks/s, means nothing. and I find rather difficult to believe that you need such a speed.

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

                                @lynnmt I suggest you upgrade to 3.5.0-rc.3 then. I know we widened the allowed model parameters at some stage.

                                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

                                lynnmtundefined 1 Reply Last reply Reply Quote 0
                                • oliofundefined
                                  oliof @lynnmt
                                  last edited by

                                  @lynnmt you really should be updating to 3.4.6 at least (I also would suggest leaving out the SBC which has no benefit for your current use).

                                  <>RatRig V-Minion Fly Super5Pro RRF<> V-Core 3.1 IDEX k*****r <> RatRig V-Minion SKR 2 Marlin<>

                                  lynnmtundefined 1 Reply Last reply Reply Quote -1
                                  • lynnmtundefined
                                    lynnmt @oliof
                                    last edited by

                                    @oliof
                                    I am using the SBC to avoid having to network interface with the Duet.
                                    my internet is...unreliable at times.

                                    dc42undefined 1 Reply Last reply Reply Quote 0
                                    • lynnmtundefined
                                      lynnmt @dc42
                                      last edited by

                                      @dc42

                                      can I actually do this upgrade if i have a Duet 3 MB 6HC V1.01A ?

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

                                        @lynnmt yes, firmware updates can be applied to all production versions of Duet boards.

                                        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

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

                                          @lynnmt said in how to setup a hotend for directly printing metal and ceramic.:

                                          @oliof
                                          I am using the SBC to avoid having to network interface with the Duet.
                                          my internet is...unreliable at times.

                                          Duets don't need an internet connection, just a local connection to your PC.

                                          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

                                          lynnmtundefined 1 Reply Last reply Reply Quote 0
                                          • lynnmtundefined
                                            lynnmt @dc42
                                            last edited by

                                            @dc42
                                            so connecting over USB will do?

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