I'm making a custom machine with a Duet 2 controller and it needs to be able to regulate the pressure inside the printer nozzle while it's printing. Basically I need the extruder motor to speed up or slow down depending on if there's too much or too little pressure in the nozzle. I'm using a pressure transducer hooked up to the print head to read the pressure. Is there any way I could do this with the Duet controller?
Best posts made by Cynopolis
-
Controlling nozzle pressure with a PID loop
Latest posts made by Cynopolis
-
RE: Stepper motor wont change direction Duex 2
@JoergS5 I know the drivers I'm currently using respond to both 3.3v and 5v
-
RE: Stepper motor wont change direction Duex 2
@JoergS5 The drivers I'm using were purchased by a former employee at the company I'm working for and there is no documentation on them. However, we have been using these drivers with success for at least a year without any issues in combination with the duet 2. Currently, I'm working around the direction limitation by wiring the direction pin to a switch and manually changing the direction when I need to.
@dc42 Any suggestions for troubleshooting that I could try?
-
RE: Stepper motor wont change direction Duex 2
@JoergS5 , I tried setting all the parameters to T5:5:5:5 and that didn't change anything. I think the underlying issue is that when I measured the direction pin with a multimeter it was never pulled low at any point.
-
Stepper motor wont change direction Duex 2
I recently added on a Duex 2 to my Duet 2 to help drive more heaters and external stepper drivers. I'm using the test pins on the Duex 2 to send step and direction signals to the external stepper drivers on drive 7 and 8. The stepper motors turn just fine, but I can't get them to turn the other direction. don't currently have access to the duet as I write this, but here are the important lines in the config.g file.
M569 P7 S1 T2:2:2:0 M569 P8 S1 T2:2:2:0 M584 E7:8
I also went through with a multimeter and measured the direction pin while telling the motor to go in forward and in reverse. The direction pin is always pulled to logic high no matter what I do.
I'm currently using firmware 3.1.1
-
RE: Controlling nozzle pressure with a PID loop
I agree with you about my initial idea, and that's why I didn't want to go through with it in the first place. Your solution would certainly be faster and easier to implement in code. I apologize about the miscommunication in my initial response as well. I should've been more thorough in describing how the extruder should act in different use cases, and I hadn't really considered what should happen when I need the extruder to retract.
I'd love to get this issue solved in firmware, but I'm very new to this forum. Where could I post to get this issue raised to the firmware developers?
-
RE: Controlling nozzle pressure with a PID loop
I had already been thinking about a solution similar to yours where I'd hook up the pressure transducer as a an input to the Duet's temperature sensor header and then use the Duet's PID control as an input into a micro controller that would drive a stepper motor. I like your way of doing it better though because it allows for a much more precise input for the micro-controller (A step and direction line vs a PWM signal).
However, I think the key thing missing from your solution is the ability to communicate the desired pressure to the micro-controller. Ideally there'd be another argument added to the G1 command that's used to set a target pressure. That way on retract commands you could specify a pressure of zero so the extruder wouldn't try to maintain a pressure while also trying to retract.
It would also be possible to use the direction line to specify a pressure override from what's set in the micro-controller. I.E. if the direction line is pulled high the micro-controller would know to stop trying to chase a target pressure and just listen to the step line.
-
RE: Controlling nozzle pressure with a PID loop
I was initially thinking that it would be entirely driven by the pressure, but (A) would definitely be preferable. Ideally I'd give it a pressure to chase with an E value as a starting baseline and then let the duet controller make minor adjustments to accurately keep the same pressure.
-
Controlling nozzle pressure with a PID loop
I'm making a custom machine with a Duet 2 controller and it needs to be able to regulate the pressure inside the printer nozzle while it's printing. Basically I need the extruder motor to speed up or slow down depending on if there's too much or too little pressure in the nozzle. I'm using a pressure transducer hooked up to the print head to read the pressure. Is there any way I could do this with the Duet controller?