Printing metal and ceramic with Duet 3
-
@michael-0
am I in the wrong category with this?
Or is it too many questions in one post? -
Hi @Michael-0 interesting project. you questions can be split up into "generic Duet use questions" and "project specific questions"
Generic questions:
@michael-0 said in Printing metal and ceramic with Duet 3:Also, if there is an internal boost converted available on the duet, to enable it to take 24 volt input and output 32 volt from the bed heater power rail, I would love to know about it... I have yet to find any such functionality if it exists.
There is no voltage boost options on Duet, the highest voltage available is the VIN voltage supplied.
I have also been having some strange things going on with powering the raspberry pi 3B from the power available through the ribbon cable of the duet...I have currently set them both up to run on their own separate power supplies, but for whatever reason, I cannot get the RPi to run on the power from the duet through the ribbon cable alone. The RPI must always be connected to a microUSB to work, and the duet must be connected to its own 24 volt input power from the ender 3 power supply.... Anyone now why this is?
Have you looked at the documentation here:
https://docs.duet3d.com/en/Duet3D_hardware/Duet_3_family/Duet_3_Mainboard_6HC_Hardware_Overview#h-5v
depending on the version of the 6HC you have the pass through power jumpers may have already been removed but in general we recommend powering the Pi from its own supply.
Also, I have some connector issues in terms of what connectors are required to connect the nema 17 motors on the ender 3 frame to the motor drivers on the duet 3. The drivers have 4 very beefy pins that I am having trouble finding compatible connectors for to connect to the ender 3 nema 17 steppers motors.
You should have received a connector pack with the Duet which you can use to replace the connectors on the ender three wires with the JST VH connectors on the Duet using a standard crimping tool.
And then onto the project specific question:
I have been experimenting with the duet somewhat, and have currently determined that using the Duet's GPIO pins, configured to send 5 volt logic pulses to an array of (8) MOSFETS (1 for each nozzle) should be sufficient for driving and controlling the print head heating elements. I intend to provide power to the collectors of these MOSFETS via the output voltage rails (typically used for bed heater power) of the duet, supplied through a boost converter to this print head driver board.
I wanted to get some feedback as to whether this is the sound approach?
Or if there is potentially a wiser, easier and safer way to control the 8 nozzle microheaters in the pyrojet print head?The heated bed output can switch a separate voltage supply, up to 36V, so you could provide 36V to your boost convertor via that. What I want to understand is why you need to switch the MOSFET power supply from the Duet. An alternative would be to use a appropriate voltage supply directly to your MOSFETs, with then the control of those coming from the Duet
It essentially behaves the way a thermal inkjet print head does, but at a much higher energy scale and at a lower operating frequency.
How are you crafting the gcode to provide the correct firing sequences to the 8 mosfets?
-
@t3p3tony
Hi Tony,
Thanks for the prompt response and support.@t3p3tony said in Printing metal and ceramic with Duet 3:
There is no voltage boost options on Duet, the highest voltage available is the VIN voltage supplied.
This makes sense. Thanks for confirming.
@t3p3tony said in Printing metal and ceramic with Duet 3:
Have you looked at the documentation here:
https://docs.duet3d.com/en/Duet3D_hardware/Duet_3_family/Duet_3_Mainboard_6HC_Hardware_Overview#h-5vI did indeed read this after asking the question. I initially missed the little click over tab and the distinction between revision 1.01a and 1.01... I have the version 1.01a.
@t3p3tony said in Printing metal and ceramic with Duet 3:
You should have received a connector pack with the Duet which you can use to replace the connectors on the ender three wires with the JST VH connectors on the Duet using a standard crimping tool.
I cannot seem to figure out the orientation the supplied connectors are intended to fit onto the pins on the Duet however...
In this attached image, is it the tight spaced holes on 0.1" pitch that is intended to connect to the big pins on the duet? the duet pins seem to be 0.2" space and the pins are too big for the holes in the connector... When I try the opposite side(the one with the bigger holes in) with the crimps inserted, the fit to the duet pins is very loose... Is this intentional?@t3p3tony said in Printing metal and ceramic with Duet 3:
The heated bed output can switch a separate voltage supply, up to 36V, so you could provide 36V to your boost convertor via that. What I want to understand is why you need to switch the MOSFET power supply from the Duet. An alternative would be to use a appropriate voltage supply directly to your MOSFETs, with then the control of those coming from the Duet
To answer your question:
I want the duet to be able to control the behavior of each of the 8 individual the print head nozzles directly with nozzle specific g-code commands. I am essentially only using the bed heater power to provide DC power, that is then switched via PWM (through the array of MOSFETS) by the 5V IO on the duet, to control the heating and cooling of the nozzle heaters. The heaters themselves respond at speeds on the order of 1-10 milliseconds to input voltages. With an input of 31 volt @ 500 mA, the heaters can heat from 20 C to 1300 C in ~1-10 milliseconds typically.So you would suggest using power directly from the DC power supply(from its other open terminals), and boosting that to the required 31-40 volts instead of trying to tap power from any of the rails on the duet?
@t3p3tony said in Printing metal and ceramic with Duet 3:
How are you crafting the gcode to provide the correct firing sequences to the 8 mosfets?
On this point, I do not yet know. I am pretty new to all of this.
I was thinking of a single gcode instruction that would "turn a nozzle on for X milliseconds, then turn nozzle off" a quick, precisely timed pulse, with a unique identifier for each nozzle and a frequency or time value which determines how long the heater fires for? Basically, just turning an IO out pin on the duet on for 1-10 milliseconds, which then triggers the gate on one of the associated MOSFETS, firing the nozzle on the print head, and then quickly shutting off, and firing the next nozzle in the sequence (the row of the sliced layer presumably) then the print head rasters to the next row, and fires the nozzles again etc. etc.Something along those lines
Thanks again for the help!
-
I have added a picture to the wiring guide to show a JST VH connector wired. Note that the order of the wires is motor specific so do check the phases (details linked in the documentation test for that step)
https://docs.duet3d.com/en/How_to_guides/Wiring_your_Duet_3#h-14-stepper-motors
Regarding the source for the higher voltage, if there is no need to control the supply voltage from the Duet then routing it via the bed heater circuit adds nothing. If you want to be able to turn on and off the overall supply to the MOSFETS then that could be a reason to rout it the way you describe.
I understand that the 8 jet heater mosfets are controlled by the IO pins, what i was referring to was the overall supply for all 8 mosfets.
Regarding how the 8 pyrojet pulses are timed. Will you want to fire up to 8 at once like an inkjet print head, depending on the required pattern. Or will you always fire all 8 at each print head position?
-
@michael-0 I have a few suggestions:
- The 6HC can accept 32V at VIN anyway, so is there a reason why you don't want to power it from a single 32V supply? The absolute maximum is actually 38V but we specify 32V to allow for the VIN voltage rising when you turn all the stepper motors off and they dump power back into VIN.
- The 6HC has 10 mosfet outputs already: the bed heater output, the three high current outputs, and the size low current outputs. Is there any reason why you don't want to use them instead of external mosfets? Or have you allocated them to other functions?
The requirement to pulse the mosfets for a short tie sounds rather similar to the laser rastering support that we plan in the next major firmware revision, except that you have 8 outputs instead of one.
-
@t3p3tony said in Printing metal and ceramic with Duet 3:
I have added a picture to the wiring guide to show a JST VH connector wired. Note that the order of the wires is motor specific so do check the phases (details linked in the documentation test for that step)
this is much more clear to me! thanks! I am something of a caveman when it comes to the simplest of electronics and software. lol
@t3p3tony said in Printing metal and ceramic with Duet 3:
Regarding the source for the higher voltage, if there is no need to control the supply voltage from the Duet then routing it via the bed heater circuit adds nothing. If you want to be able to turn on and off the overall supply to the MOSFETS then that could be a reason to rout it the way you describe.
I suppose I would like the print head overall on/off state to be controlled by the duet as well. Yes. When the machine is powered on or off, I want the print head to go with it.
@t3p3tony said in Printing metal and ceramic with Duet 3:
Regarding how the 8 pyrojet pulses are timed. Will you want to fire up to 8 at once like an inkjet print head, depending on the required pattern. Or will you always fire all 8 at each print head position?
So it is a little misleading to consider pyrojet a perfect analogue to inkjet. Practically speaking, the detonation process on which pyrojet functions is violent and has longer settling times than the typical phase explosion of water based inks driving the jetting in inkjet print heads. Thus, I intend to only fire one nozzle on the pyrojet print head at a time, firing in succession on a row, and then when all the neccessary "dots" have been placed to form that section of the layer in that row, I will move the print head, one dot width, and print the next row, one dot at a time. so on and so forth. So, no, not all 8 nozzles will fire at each print head position. sometimes only 1 may fire, sometimes 3 or 5 or 8, etc.
Does that answer your question?
Perhaps in future, when the nozzles are smaller, firing multiple nozzles simultaneously will become practical. But it is too complicated to pull off with the nozzles and heaters at their current size IMO. -
@dc42 said in Printing metal and ceramic with Duet 3:
The 6HC has 10 mosfet outputs already: the bed heater output, the three high current outputs, and the size low current outputs. Is there any reason why you don't want to use them instead of external mosfets? Or have you allocated them to other functions?
I have not allocated them to any other functions, i was merely unsure of how to remap them to to work with my heaters? I would ultimately need to wire the various MOSFET outputs of the Duet to a 16 pin IDC connector that connects to the print head and presumably remap them in config as pulsed heater outputs.... have you ever seen this done? I was planning to use an external driver and power supply to try an avoid doing any damage to the duet as much as possible. I would love to simplify the setup as much as possible by using the existing hardware to its fullest.
One other concern I have, is that switching to a 32-38 V default power supply, will necessitate higher voltage motors as well. I already have a set of 24 volt steppers I am using... is it possible to step down the input voltage via the motor drivers to run lower voltage motors from a higher voltage supply? or would such an upgrade require that I also buy all new motors? I am trying to keep cost and complexity down as much as possible.
@dc42 said in Printing metal and ceramic with Duet 3:
The requirement to pulse the mosfets for a short tie sounds rather similar to the laser rastering support that we plan in the next major firmware revision, except that you have 8 outputs instead of one.
In fact, the electronic behavior, energy density, and the control scheme of the pyrojet print head is not too far from a laser...
Each heater (0.4mm length X 0.135mm diameter, cylinder) can tolerate about 1.2-2 joules of heat energy per pulse. The maximum pulse frequency is a 10% duty cycle, at about 150 to 1000 Hz, and each heater has, preferably a discrete on off state, whose peak pulse energy is associated with its duty cycle at a constant input voltage. Like a laser cavity.
Would you be so kind as to link me to this project you mention? I have yet to find it in the forum or elsewhere. Or is it still on the drawing board at the moment?Thanks for chiming in with some good ideas for simplifying things. I was also planning to include closed loop hall effect current sensing via the ACS723, on the ground line of the print head, to record the current going through the heating elements with each pulse. This would enable me to provide closed loop quality assurance on the print in real time and potentially detect failures, and return to correct those failed dots for example. I am not sure how I would implement this using the integrated MOSFETS on the Duet?
-
@michael-0 the steppers will take 32-38v without issue. you will actually get higher RPMs before torque runs out running them that way.
@dc42 what about the old inkjet firing support in RRF? is that gone/not appropriate here?
-
@oliof said in Printing metal and ceramic with Duet 3:
the steppers will take 32-38v without issue. you will actually get higher RPMs before torque runs out running them that way.
Thanks for the tip! I will try a power supply upgrade and running the heaters directly from the MOSFETs on the duet in this case.
@oliof said in Printing metal and ceramic with Duet 3:
what about the old inkjet firing support in RRF? is that gone/not appropriate here?
I think this is largely deprectated from what I can tell. It also seems to depend on the use of a MUX as in the inkshield from some nears ago.
http://nerdcreationlab.com/projects/inkshield/Do you suppose it would be preferable to just pipe the output of a single MOSFET through a MUX to the heaters, where the MUX would be switched by one IO pin on the Duet?
-
@michael-0 I have no preferences but I justremembered this feature exists. A MUX board might simplify the firmware configuration and wiring on the one hand, on the other hand I have no idea how well tested the code is in practice.