How should I configure a new type of extruder tool?

I mean his tool is directly related to the movement he’s already undertaking.

He doesn’t need a new complete degree of freedom, which is what another axis is for.
Another axis moves independently of the existing axes.
His tool, as I understand it, needs to move WITH the movement.

Sure you CAN use another axis for this, but usually another axis is used for a totally new axis of movement.

In other words, obviously the basic 3 axes are X,Y,Z for their cartesian movements.
Adding additional axes are usually for rotation on those axes, call it Xr,Yr,Zr.
Hence 6 axis machines.

His tool isn’t an independent motion axis. It screeds along side the existing lines being extruded.

What I THINK he needs (if I’m understanding his screed tool correctly) is an extension to the kinematics that can calculate the rotation of that stepper to keep the screed tool tangential to the line based on the current angle of movement of the effector.

That’s not technically independent movement, It might be considered 3.5 axes.

@TheFuzzyGiggler

Yeah but isn’t that exactly what a 4th Axis does?
Integrating another axis into the motion system?

Sure, you have to generate Movements for that axis, but I guess you could do something like “G0 X Y Z A E” afterwards.

And the Motion system would automatically align all steppers in sync?

And the generation of the movement of Stepper “A” should be done in the Slicer anyways I suppose.

  • cad435

By definition another axis is completely independent movement.

In your example, that would assume A needs to move independently of X Y and Z.
In his case it doesn’t.

It’s movements needs to be DERIVED from X and Y.
He wants to screed the sides of the lines which is defined by the X and Y movement.
Adding another axis is overkill for that.

Ideally his stepper would be driven by an extension of the kinematics in that sense.

Kind of like with a Core XY printer.
It has A & B drives, neither of them are another “Axis” but in combination they work to facilitate X and Y movement.

A = X + Y
B = X - Y

In this situation his stepper would be similar, but the formula would be more complicated. Hence my comment above…

I might have an additional idea but I need to work it out mathematically first.

I think I understand both points of view. I think the “independence” argument is a bit relative or semantic. It boils down to where it is established: either at slicer level, kinematics level, or plain mechanics.

Taking it to the extreme, it could be argued that any machine with any number of axes executing a linear GCODE program only has a single degree of freedom (which would be time).

As interesting as this is, OP needs a way to tell the 4th motor to rotate in some predefined way relative to the others. Since he already has GCODE for the A “axis” then the solution for him should be a XYZA+E system.

And…

I think this screed tool is very similar to what knife cutting machines do. @arasbm perhaps you can get some ideas from that world.

1 Like

No you are misunderstanding what I need. As I said in my posts above the calculation of tangent line is quiet easy in grasshopper and what I need is an independent 4th axis that I could control from GCode. I had assumed that Klipper would easily support at least 6 axis independently but when it came down to test things I realized it is very specific to 3 axis FDM machines.

I wish I knew this earlier. But it is ok and I will hopefully be able to at least test my proof of concept before switching to a Duet board. Could you explain a bit how the duet board resolves this issue? Do they maintain their own fork of Klipper? I will have to look into it more, but any insight you can provide is appreciated.

Ah I see what you mean with “independent axis”

My argument would be as following:

A/B drives are two steppers which “translate” totwo “fundamental” motions X/Y.
To go from X/Y to A/B (which Klipper is doing) In is called “inverse Kinematiks” (at least in Robotics it’s called that way)

With fundamental motion I mean like “axis” on the regular Cartesian Coordinate systems.

To produce a desired shape you need to “link” fundamental motions into the desired motions.

The “linking” will be made by the CAM (in this scenario the slicer) as you want to make a specific movement.

If either X or Y is out of movement your desired shape fails.

If you make any third Axis that would NOT be rotational axis around the fundamental Axis you would technically create a 4th dimension into the kartesian koordinate system.

In order to produce the desired motion you have to calculate matching movements in that advanced Koordinate system. Usually this is done in CAM/Slicer.

So I guess you could go both ways.
If you say your 4th Axis is derived/Hardwired into the inverse Kinematiks you’d code it into your Klipper motion code

If you’d treat your 4th Axis as “just another dimension which needs movement based on my desired output shape” I guess you’ll calculate it in your slicer…

  • cad435

PS: don’t go hard on me if the things I wrote are not accurate enough, I’m hitting kind of a language barrier here

1 Like

The Duet boards use RRF (Rep Rap Firmware) which would replace Klipper in this case. RRF supports adding more axes (e.g. A, B, C and so on) out of the box, which would solve your problem.

The Duet/RRF has many features, is commercial, is in very active development, has fantastic documentation, and is completely open source firmware and hardware.

If you ever decide to come back to Klipper, you can flash it on a Duet too. This is what I have on my liquid handling robot. I use the A axis for the lock of its tool changer.

I mentioned the Duet’s web-UI because I imagined that maybe that’s why you chose Klipper in the first place (why did you?). The Duets come with an integrated web server that offers a pretty UI for configuration, control, and whatnot: Duet Web Control Manual | Duet3D Documentation

PS: I am not affiliated with RRF/Duet nor Klipper/BTT in any way. I recomend the Duet because I have had a good experience with it. There are surely many other firmwares and control boards out there with multi-axis support.

1 Like

I sympathise. This has been my experience with Klipper exactly.

Though the description is pretty clear “Klipper is a 3d-Printer firmware”, one would assume that it is not just that, but it actually is.

1 Like

ezgif-4-b90c83afed

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.