Non-linear Z axis



  • Hello !

    I managed to print a test "cube" with my prototype of scissor-z-axis FoldaRap 😄

    alt text

    More on the RepRap wiki.

    Now that I reached this point, I kindly ask if it would be possible to implement this kind of kinematic in the firmware ?

    Maybe independently of the XY choice as it could have been a Cartesian base with a scissor bed, or other combination (a core XY in my case).
    As far as I understand the firmware part, the non-linearity computation could be similar to a linear Delta machine but simpler (solving one square triangle instead of three). This 2014 post in the RepRap Forum was about the same subject but was never concluded.



  • Has there been any progress with the scissor kinematic?
    I’m currently working on a similar mechanism for a Zaxis.



  • Hi @EmmanuelG
    very impressive idea!
    I had to fight with nonlinear kinematics too and I was able to build a servo mechanism, that compensates the lack of torque at the beginning and keeps the whole movement relatively constant. It's a totally different usecase and linearity wasn't mandatory, but maybe you can find some clues, how to modify your stepper-drive.

    Short Video



  • @EmmanuelG
    over night I had an idea, how to solve both problems at once (the torque problem at start and the nonlinearity)

    Just replace the Z-stepper with a Spindlemotor and add a Mini-scissor
    mini-scissor.jpg

    The torque will be high at Z=0 but the Z-lift will be low.
    At the end of the move, it will be reversed.
    Feel free to ask, if you have further questions
    o_lampe


  • administrators

    @Pakue said in Non-linear Z axis:

    Has there been any progress with the scissor kinematic?
    I’m currently working on a similar mechanism for a Zaxis.

    I think the way I would like to implement this is to introduce a new M669.1 command, that would replace the Z kinematics by scissor lift kinematics. That way is could be used with SCARA, polar etc. kinematics as well as Cartesian and CoreXY. What parameters would that command need to describe the scissor lift mechanism, and how should the Z steps/mm in M92 be interpreted?



  • @dc42 Thanks for the reply!

    Implementing the Z scissor lift independently from the XY movement would be great.
    The way I want to implement the scissor mechanism is based on a hackaday project by Malte Schrader, where the CoreXY mechanism is lifted up from the bed.
    Here some reference of the design:
    Screenshot 2021-02-11 at 17.31.36.png Screenshot 2021-02-11 at 17.32.10.png
    The lift mechanism is driven by two lead screw motors at the bottom of the printer.

    Regarding the kinematic commands only two parameters are really needed (given the arms are symmetric). The length of one arm (L), the offset (O) at Z=0 and the current lead screw position (A). From there on the Z height can be calculated as
    Z = (L^2 - A^2) - O
    I've attached some sketches in the hopes of making it a bit clearer.
    Note 11. Feb 2021.jpg
    Can the Z steps/mm be mapped to the horizontal spacing (a distance in the sketch) that is linear to the motor movement, while the actual Z position is calculated through the non linear formula?



  • I have to ask...

    Is your design requirement that your printer fits into the boot (trunk) of an NB MX-5 (Miata)?

    (I wish a scissor kinematic was available 10 years ago, would have helped).



  • @theruttmeister For the spare parts to go ;D


  • administrators

    I've added this to the firmware wishlist. Does anyone want to have a go at implementing it, with guidance from me?


Log in to reply