Simultaneous 3d Print + Laser??
-
Hi Folks,
Another side project;I'd like to be able to drive a laser whilst FFF printing in such a way that I can regulate the amount of power delivered in line with the speed of XY plane travel, or rate of filament delivery. i.e. power delivered to the surface of the part or filament is constant per unit area. This query relates to 2 different topics I'm doing a feasibility assessment on.
From what I can see the Laser mode and FFF modes are distinct and cant be active at the same time, that being the case is there any way to couple a PWM output to either the XY travel speed or the extruder filament speed?
Again I'm thinking a small infinite loop in the daemon.g reading instantaneous velocity of which ever axis' I'm interested from the object model might do the trick (or combining x & y to get travel speed in the XY plane) .
I can then use travel speed to scale for laser output power and set the laser PWM value. I'd probably arm and disarm the laser with a duet driven relay and an enclosure door interlock on its power supply.
Again, its just a mental exercise for now but any constructive thoughts would be much appreciated all the same.
All the best
Barry M -
@CNCModeller
There is M571 to turn an output on/off when extruding however its current implementation would only allow a fixed PWM
What you want to do could probably be handled by post processing. Just add an appropriate M42 to any extrusion line based on the speed or whatever you want.
Otherwise you'd have to modify the firmware so that M571 used a variable for the PWM -
@OwenD said in Simultaneous 3d Print + Laser??:
@CNCModeller
There is M571 to turn an output on/off when extruding however its current implementation would only allow a fixed PWM
What you want to do could probably be handled by post processing. Just add an appropriate M42 to any extrusion line based on the speed or whatever you want.
Otherwise you'd have to modify the firmware so that M571 used a variable for the PWMThanks @OwenD yet another M code I'm not familiar with! I keep reading and searching the dictionary but it feels like I'm never going to fully understand the entire gcode pallet for duet lol.
I guess I could post process to issue a new M571 to update the pwm setting every time a G1 was issued with a new feedrate.
Definitely food for thought!
Thanks again
Barry M -
@CNCModeller
I'd use M571 to switch the laser-enable pin. Then control PWM by postprocessing M42 commands.I was wondering, what type of laser you want to use? The dot size is usually much smaller than extrusion width, unless you want to put the laser way out off focus. But then the powerdensity is so low, it wont make much difference.
A CO2 laser has a beam of ~0.5mm without lens, maybe that's an option? It can still burn paper without lens, when you pulse long enough. -
@o_lampe said in Simultaneous 3d Print + Laser??:
@CNCModeller
I'd use M571 to switch the laser-enable pin. Then control PWM by postprocessing M42 commands.I was wondering, what type of laser you want to use? The dot size is usually much smaller than extrusion width, unless you want to put the laser way out off focus. But then the powerdensity is so low, it wont make much difference.
A CO2 laser has a beam of ~0.5mm without lens, maybe that's an option? It can still burn paper without lens, when you pulse long enough.thanks @o_lampe It'd be a laser diode setup. I don't need a lot of power density as I don't want to cut, just surface heating. I need to do some testing next to see if the idea is worth taking forward. I'll give your strategy a go.
Many thanks
Barry M -
@CNCModeller
So it doesn't matter where your laser beam is, relative to the nozzle? I was wondering how a trailing or leading laserbeam could be achieved... -
@o_lampe said in Simultaneous 3d Print + Laser??:
@CNCModeller
So it doesn't matter where your laser beam is, relative to the nozzle? I was wondering how a trailing or leading laserbeam could be achieved...@o_lampe I have an idea how to make it work mechanically I think I have a way forward.
The next challenge is to do the look ahead for beam location ahead of the nozzle. I'm thinking of post processing the gcode to add additional laser axis commands.
If I can get the look ahead post processing to work I think I'm pretty much there for concept 1. That's the next avenue of investigation.
The second concept needs trailing illumination but that doesn't need to be accurate to the width of a filament bead.
Once I've knocked the rough edges of of either of the concepts I'll post more details here. It's all a bit back of fag packet at the moment! I'm just trying to get enough confidence to invest in parts to build a proof of concept test bench.
Thanks for your help it's much appreciated!
All the best
Barry M -
@CNCModeller I don't see any reason why switching to laser mode and then sending G1 commands with both E and S parameters wouldn't both extrude and drive the laser. You would need to post-process the output from your slicer to add the S parameters.
-
@dc42 said in Simultaneous 3d Print + Laser??:
@CNCModeller I don't see any reason why switching to laser mode and then sending G1 commands with both E and S parameters wouldn't both extrude and drive the laser. You would need to post-process the output from your slicer to add the S parameters.
That's very interesting @dc42 I'll give it a go, it'll be a while before I get that far though. Need to figure out how to do the look ahead for laser position relative to the print head.
Many thanks
Barry M -
@CNCModeller said in Simultaneous 3d Print + Laser??:
Need to figure out how to do the look ahead for laser position relative to the print head.
I'd wait for RRF3.5, where look ahead will be different.
-
@o_lampe said in Simultaneous 3d Print + Laser??:
@CNCModeller said in Simultaneous 3d Print + Laser??:
Need to figure out how to do the look ahead for laser position relative to the print head.
I'd wait for RRF3.5, where look ahead will be different.
Thanks for the heads up @o_lampe.
Is there any pre reading I could do w.r.t how this might work?
Many thanks
Barry M -
@CNCModeller This thread is about multi-motion systems in RRF3.5
https://docs.duet3d.com/en/User_manual/RepRapFirmware/Multiple_motion_systems