Haq XY
-
Hi, I'm trying to get the HaqXY kinematics to work.
How do I change so that the Y movement is like CoreXY for 2 X axis but the X movement is regular cartesian?I'm guessing it's pretty simple, but I just can't figure it out..
-
There is no built-in support for that kinematics at present. It sounds rather like MarkForged kinematics - is it? I think someone else is in the process of adding support for MarkForged kinematics to the firmware.
-
Yes, it is basically Markforge but with 2 X axis
If I choose corexy the Y axisi works perfect but both the X axis goes diagonal. If I choose regular cartesian both the X axisi works but Y become diagonal.
-
It sounds to me that MarkForged kinematics would work for that machine, provided it is implemented so that any additional axes created are straightforward linear axes.
-
@dc42 yeah that would be awsome! Do you know when it's supose to be implemented?
-
@dc42 Do you know who this someone is?
-
It looks like that someone was a user who enquired about MarkForged kinematics on the RepRap forums, but decided the Duet was too expensive for him.
I've had an idea for a generalised Cartesian/CoreXY configuration that would also encompass CoreXZ, CoreXYU, MarkForged, Haq, and all other variants of the principle that the movement of an axis is a linear function of the movements of a number of motors. Now I need to refresh my memory on how to invert a matrix.
-
Sounds very promising
-
@dc42 I got this from a guy who has implemented a markforge design with a smoothieware board, would it be hard to use this and make the kinematics for the Duet?
https://github.com/simpai/Smoothieware/commit/3788c3812fc7e6b94c031ed4b90fcdb7680fc87c
-
@dc42 I got this from a guy who has implemented a markforge design with a smoothieware board, would it be hard to use this and make the kinematics for the Duet?
https://github.com/simpai/Smoothieware/commit/3788c3812fc7e6b94c031ed4b90fcdb7680fc87c
Not really, however implementing MarkForged kinematics in RRF isn't difficult anyway. It would be best done by generalising the existing CoreXY kinematics. But right now I am trying to finish the 2.02 release, so now isn't the time to make that sort of change.
-
@dc42 Hi!
Has there been any progress on the Markforged kinematics? -
-
@dc42 That would be super great!
-
@dc42 Any updates?
-
I have a new internal build supporting the generalised CoreXY kinematics, but I've not had time not run a print using it yet.
-
@dc42 That sound great! If you want me to test it I would happily do so
I got the machine with the schematics described in the first post ready to go
-
I've put a very early beta at https://www.dropbox.com/s/fyvibzm0zl92hiy/Duet2CombinedFirmware.bin?dl=0. Sending M669 K11 should put it in MarkForged mode. If you want to set the movement matrix by hand you can use M669 K0 X1:-1 Y0:1 instead.
Please test it with great care and low motor current. In particular, the homing behaviour is untested.
-
@dc42 Im fiddling with it now
Maybe a dumb question, but is K0 the X axis? maybe K1 is Y axis?
In this case, if I just activate Markforged by putting M669 K11 in the config file then X becomes Y and Y becomes X.When Y is moving both X and Y need to move, but when X is moving only X needs to move.
Now its the other way around -
Try this: M669 K0 Y1:-1
I used the diagram at https://hackaday.io/project/19543-haq-xy/details. So the X motor should just affect X, and the Y motor should affect X and Y.
-
@dc42 Woho! It worked!
The homing is a bit weird thoug
How should I proceed if I want to add another X axis? -
What is weird about the homing? You will need to home like a CoreXY, see the wiki page on configuring RRF for CoreXY.
To add another axis, create a U axis using M584, then use the M669 XYZU parameters to define the matrix you need for the motion. The X, Y, Z etc. parameters of M669 define the rows of the matrix. The rows are the axes, the columns are the motor movements needed to move those axes. Sending M669 without parameters will print the current matrix.
At a guess, if the mechanics of U are similar to X, you would need:
M669 K0 Y1:-1:0:-1
As we started with Cartesian kinematics (K0), any rows you don't specify will just have a 1.0 in the diagonal element.
-
@dc42 Well, first of all I think both the Y motor and all 3 Z motors are going the wrong way, but thats more my fault I guess
but if I just change the positon in the Y/X home files I could get them to home correctly, but its very buggy and somethines everything just freaks out and goes superfast.
So do I need to set the config file to run corexy before I add the M669?
Aha I see!
But, if I run just one of the extruder heads in Y/X, will the second stay at its home position or will it just run diagonally along? -
Holy crap, I think I got it to work
Btw, if I use M564 S0 H0 and after that tried to home axis, may that interfear with the homing?M669 K0 Y1:1:0:1 ; set Y to react with X1 and U6
M584 Z2:5 U6 ; set 3 Z drivers and U6 (second extruder head)
M569 P0 S1 ; Drive 0 goes forwards
M569 P1 S0 ; Drive 1 goes backwards
M569 P2 S0 ; Drive 2 goes backwards
M569 P3 S1 ; Drive 3 goes forwards
M569 P4 S1 ; Drive 4 goes forwards
M569 P5 S0 ; Drive 5 goes backwards
M569 P6 S0 ; Drive 6 goes backwards -
I'm glad you got it working.
M564 H0 S0 will not affect the G1 S1 and G1 S2 commands in homing files. It only affects regular G0 and G1 moves.
BTW, are you the author of the post at https://hackaday.io/project/19543-haq-xy/details ?
-
@dc42 hmm ok.. there's definalty somethubg wrong with my homing then. As I said before, sometimes it works perfect and other times, for example, the Y axis just plunge into the endstop and agter I cant move it.
No the author is Haqnmaq, iv'e talked to him about this project and he was exited as well
I think this could be a really neet solution for a idex printer.