tangential control
-
@India What do you mean by "tangential control"? Do you mean a rotary axis? RepRapFirmware supports that. Add a motor to a spare stepper driver output on the Duet 2. Set the motor direction with M569, and define it as a rotational axis with M584 and R parameter. See https://docs.duet3d.com/en/User_manual/Reference/Gcodes#m584-set-drive-mapping
Ian
-
@droftarts thank you sir .
Here Tangential control means tangential control of knife, in this knife /nozzle fallow the path of cutting/printing and whenever there is turn knife/nozzle also turn.
I hope you @droftarts understand what i wanted to know.Thanks.
-
@India That sounds like a 4-axis kinematic, which is still being developed and tested by forum members.
-
@India Ah, right, tangential knife. See this thread which discusses it: https://forum.duet3d.com/topic/32806/tangential-knife-support-newbie-questions
Most tangential knives work as a rotary axis (Duet/RepRapFirmware supports up to 10 axes); it's up to the Gcode generation software to output the correct Gcode to set the direction of the blade. If it is a reciprocating knife, usually there's a second motor (either stepper or DC motor) which controls that. The controller board can be set up to support this, it just then needs to be sent the correct commands.
If you have a link to the tangential knife you want to use, that might help. A Gcode sample from the Gcode generation software might also be useful, to see what the machine is supposed to do.
Ian
-
@India we have customers doing this already, by configuring the rotating head as a 4th axis and preprocessing the Gcode. You have to take account of the fact that at any sharp corner you will have to pause the XY motion while you rotate the head.
-
@dc42 Sure sir , for G code, how to get the coordinate (angle with which it rotate) of 4th axis.(V)
G90 // Absolute mode G0 X0 Y0 G0 Z10 // Nozzle height 10 mm G1 X50 Y0 V_? // straight line of 50mm in X direction G1 X50 Y50 V_? // straight line of 50mm in Y direction G1 X0 Y0 V _? // straight line joining the initial coordinate (0,0) in this code how to give the value of V so that it fallow the cutting/printing path.
how to calculate the value of V?
-
@India said in tangential control:
how to calculate the value of V?
If you move V while the XY axes also move, your V-angle will be right at the end of the move
IMHO you have to calculate the V-angle according the current XY position and the target XY position.
Then move only V to the target-angle, before you move XY. -
@o_lampe thanks sir, please see the video for your reference. YouTube video from 17s onward , i want same control .
-
@India as has been previously pointed out, this is normally done by adding a post processing step to the gcode generator. You get the value of V for straight lines by looking at the start and stop co-ordinates and then use trigonometry to determine the angle the is perpendicular to the line.
Regarding the point that @o_lampe brought up, you need to set V at the start of the line, or set it on its own line
e.g.
G1 X0 Y0 V0 G1 X100 Y0 V0 G1 X100 Y0 V90 ;rotate the tool head by 90 degrees in advance of the next line G1 X100 Y100 V90
or
G1 V0 G1 X0 Y0 G1 X100 Y0 G1 V90 G1 X100 Y100
-
@India You can see it rotates the head only before it does infill.
Then, during infill, the curves are chopped in tiny segments with small angle changes between.
Don't use a slicer which produces G2/G3 (arc commands). You'd need a very clever postprocessor to segmentize those arcs first, before calculating angles -
@T3P3Tony Such a tangential control would be a good feature for part-cooling fans, too!
Instead of blowing air everywhere, we could have a rotating fan shroud, following the nozzle-path and exactly aim towards the fresh filament.
#firmware wishlist