Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Moving individual motors of a multi-motor axis to skew-correct

    Scheduled Pinned Locked Moved
    Using Duet Controllers
    4
    10
    343
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • SamanthaJaneyCakeundefined
      SamanthaJaneyCake
      last edited by

      Hi,
      There's a good chance I'm missing something obvious or this has been asked and my searches just haven't pinpointed it so if that's the case please let me know.
      I've just set up my dual motor Z to use independent drivers for the two motors and independent end stops, as per the instructions here. This all works as expected (woohoo!).
      However I'm a little suspicious that my end stops may be a bit offset so the X axis would not be perpendicular to the Z. I've also hard-mounted the end stops and their buffers to avoid any position creep associated with the adjustable screw Z fine-tuning design.
      As such what I would like to do is move either of the drives (E1/4 or Z/2) independently by a manually measured offset distance during homing to bring them in sync with each other. Pseudo code as follows:

      Home Z    ; as per standard
      Move left (or right) Z motor by [n]mm    ; offset one side to compensate skew
      Set Z height as 0     ; ensure new compensated alignment is recognised as homed and level
      

      How do I address the individual motor of the pair to move it?

      Thanks for the help 😄

      mrehorstdmdundefined SamanthaJaneyCakeundefined fcwiltundefined 3 Replies Last reply Reply Quote 0
      • mrehorstdmdundefined
        mrehorstdmd @SamanthaJaneyCake
        last edited by

        @samanthajaneycake I'm assuming you have a bed-flinger that lifts the X axis with a pair of Z screws, similar to a Prusa printer. You really don't need two endstops and to drive the motors independently to correct the X axis tilt relative to Z. Just do what Prusa does- send the X axis to the top of the machine (actually a little beyond the top) until it hits the mechanical stops which you have already positioned to force the X axis perpendicular to the Z axis.

        https://drmrehorst.blogspot.com/

        SamanthaJaneyCakeundefined 1 Reply Last reply Reply Quote 0
        • SamanthaJaneyCakeundefined
          SamanthaJaneyCake @mrehorstdmd
          last edited by SamanthaJaneyCake

          @mrehorstdmd And say I'd rather have full control over this than trusting the top bar? Having done that before I can safely say it won't help correct skew.

          mrehorstdmdundefined 1 Reply Last reply Reply Quote 0
          • mrehorstdmdundefined
            mrehorstdmd @SamanthaJaneyCake
            last edited by

            @samanthajaneycake It seems to work fine for correcting XZ skew in the Prusa machines...

            https://drmrehorst.blogspot.com/

            SamanthaJaneyCakeundefined 1 Reply Last reply Reply Quote 0
            • SamanthaJaneyCakeundefined
              SamanthaJaneyCake @mrehorstdmd
              last edited by SamanthaJaneyCake

              @mrehorstdmd Be that as it may this is off-topic. I'm hoping someone can help me out with this specific issue and not the more broad scope of printer design, of which mine is rather custom and best known by me.
              Thank you for your input.

              1 Reply Last reply Reply Quote 0
              • SamanthaJaneyCakeundefined
                SamanthaJaneyCake @SamanthaJaneyCake
                last edited by

                @samanthajaneycake
                I did this in RRF3 under the assumption that there’s a command that will allow me to address individual drivers regardless of a “synced” status. After all, when homing with 2 Z min end stops they act individually, so the command must exist.

                I’m wondering if I need to temporarily split Z into Z and U axes and if that’s the case do I need to set up U in config essentially the same as how it’s done in RRF2.x?

                Am I just over complicating this by trying to find a RRF3 method for what works in RRF2.x?

                Phaedruxundefined 1 Reply Last reply Reply Quote 0
                • Phaedruxundefined
                  Phaedrux Moderator @SamanthaJaneyCake
                  last edited by

                  @samanthajaneycake said in Moving individual motors of a multi-motor axis to skew-correct:

                  I’m wondering if I need to temporarily split Z into Z and U axes and if that’s the case do I need to set up U in config essentially the same as how it’s done in RRF2.x?

                  Correct. If you want to control a motor individually you must map it to it's own axis.

                  The combined endstop homing in RRF3 is for convenience sake since most of the time you just want to home the axis to the endstop and the endstop points are assumed to be correct. This would remove the skew. However, if your endstops aren't in the "correct" position, you're back to needed to move the drives independently. So either fix the endstop positions, or take full control of the motors.

                  Z-Bot CoreXY Build | Thingiverse Profile

                  SamanthaJaneyCakeundefined 1 Reply Last reply Reply Quote 0
                  • fcwiltundefined
                    fcwilt @SamanthaJaneyCake
                    last edited by

                    @samanthajaneycake

                    I just created mounts for my IR beam break endstop sensors that were adjustable via a M3 machine screw.

                    It was very easy to get them in exactly the right position so "normal" homing using an endstop sensor for each stepper on the X or Y axis.

                    Endstop Mount.jpg

                    Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                    SamanthaJaneyCakeundefined 1 Reply Last reply Reply Quote 0
                    • SamanthaJaneyCakeundefined
                      SamanthaJaneyCake @Phaedrux
                      last edited by SamanthaJaneyCake

                      @phaedrux Thank you for your reply, that clarified things. I'll implement RRF2.x methodology tonight after work.

                      P.S. How do I flag as solved?

                      1 Reply Last reply Reply Quote 0
                      • SamanthaJaneyCakeundefined
                        SamanthaJaneyCake @fcwilt
                        last edited by

                        @fcwilt (warning: ramble incoming) My printer is an own-design foldable bedslinger so has a few frame and component quirks compared to commercial units. It was foldable because at the time I was a student and moved around a fair bit. Having a printer I could fold down and pick up by the handle like a suitcase was very handy.

                        I designed and built it back in 2015 when having a screw on one Z carriage and an end stop positioned below it was the "way it was done". I did not want to reprint and reassemble the rightmost Z carriage with its own screw especially as I am not a huge fan of having 2 adjustment points for Z: Z carriage offset and bed height. If the Z carriages are at the same and correct height (and thus X is perpendicular to Z) then the bed can be trammed to that without issue. To my mind it's more important that Z and X be perpendicular then bed trammed in accordance than adjusting Z to match the bed.

                        So having decided I do not like the Z end stop screw adjustment method (and given the fact that due to some long-forgotten design decisions I have 2x end stop mounts but not 2x end stop screw mounts) it made sense to remove the screw, glue on a pair of buffers to the Z carriages and mount the second end stop. 10 minutes design, 30 minutes print, 30 minutes gluing, soldering, crimping and plugging.

                        At some point I may take the time to go through the entire build and redesign it to smooth out any issues I've encountered in the past 4-5 years but this was a simple and cheap improvement.

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post
                        Unless otherwise noted, all forum content is licensed under CC-BY-SA