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

    Core XY movement issues

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    10
    103
    14.2k
    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.
    • FxxTooundefined
      FxxToo @deckingman
      last edited by

      @deckingman I completely agree with you on this. You replied to me on my first post about this issue, see the first link.
      There is something wrong. I have gone over both X and Y axis. I re tension ed the belts to square the X to the Y. The Y rails are with in less than .001" according to the measurements I have taken. In frustration I took to searching for answers and found the problem in the 2nd link. DC42 replied after a lot of questions and such that maybe the board timing might be off. So that is why I tried changing the steps between the X and the Y. I started with the values that the poster had used in his config.g file. At one point my y axis stopped moving using the M92 configuration I posted. I know that is a patch and not the fix. Thats why I am posting trying to find out if Maybe I have an board issue as well. The poster and I bought our boards about the same time. I have the same motors , the same pulleys from the same manufacturer. I am going to pull the motors off and mic the pulleys and count the teeth..just to be sure. Maybe DC42 will chime in here.

      1 Reply Last reply Reply Quote 0
      • JoergS5undefined
        JoergS5 @FxxToo
        last edited by

        @fxxtoo

        I would try exclude the first possibility that the steppers or controllers behave differently. In CoreXY there are commands to send A and B (the steppers itself) movements instead of X Y, then you can measure the belt movements and compare exactly (G92 set same).

        Documentation to move the steppers is at
        https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCoreXYPrinter
        last part commissioning.

        If they behave differently, there could be reasons like one motor not getting enough current or is defect, loose pulley etc.

        FxxTooundefined 1 Reply Last reply Reply Quote 1
        • FxxTooundefined
          FxxToo @JoergS5
          last edited by

          @joergs5
          I went through that and my results were
          G91 G1 S2 X100 F3000 ; MOVES X+ AND Y+ ABOUT THE SAME DISTANCE at a 45 degree angle
          G91 G1 S2 Y100 F3000 ; MOVES X+ AND Y- ABOUT THE SAME DISTANCE at a 45 degree angle.
          According to the docs, that is what they are supposed to do. Now going to the bottom the page and the first command is
          G91 ; relative mode (a cut and paste from the page)
          G1 S2 X10 ; move the X motor forward 10mm.... Can you tell me the difference, besides the amount of move? One should assume that the X should move by itself (no Y movement) . I tried the command both with the feed parameter and the results were the same. MOVES X+ AND Y+ ABOUT THE SAME DISTANCE at a 45 degree angle. I am getting flustered here. If I am doing something wrong, I can't see it..

          JoergS5undefined 1 Reply Last reply Reply Quote 0
          • JoergS5undefined
            JoergS5 @FxxToo
            last edited by

            @fxxtoo I meant it in another sense. Not the result of the X and Y movements, but the belt movement itself *), so e.g. the belt at the left and right edges. Because those movements are independent of your printer build (parallel or not etc.).
            Please use this long belt lengths, as the difference is about 10% and you need a good measurement.

            *) X and Y is the movement of the hotend in X and Y direction, A and B is the movement of the stepper (how many turns, the angle, belt move). The special commands are to check A and B. The blog is a bit unexact in this respect, should use A and B to differentiate.

            A and B translates into X=A+B, Y=A-B, so a difference between the steppers is hard to analyze, if you only look to X and Y.

            Did you reset the G92 to the default same lengths first?

            FxxTooundefined 1 Reply Last reply Reply Quote 0
            • deckingmanundefined
              deckingman
              last edited by

              @fxxtoo

              I've just read through all your other posts and all those that you linked to. It does seem to me that it might be the same issue as the other guy, which seemed to be fixed by a replacement board. When you run the tests for each individual motor, it'll tell you that it's turning and in the right direction but not necessary at the right speed. On a CoreXY, for pure X movement both motors turn in the same direction and for pure Y, both motors turn but in opposite directions (or it might be the other way round). Therefore it follows that if one motor turns at a different speed to the other, then there will be some movement in Y when doing pure X, and/or some movement in X when doing pure Y, which is what you are seeing. It seems that you have eliminated any mechanical build inaccuracies. So the cause could be wiring (a bad crimp as one user found in one of those threads), or maybe a faulty board that is causing one motor to skip steps , or a faulty motor (have you tried swapping each A and B motor with say the Z motor?)

              TBH, I don't know how you go about proving to your supplier that it's a faulty board rather than on of the other possible causes. Maybe DC or Tony will step in here. I guess you could email your supplier and point them to this thread. Maybe they'll let you have another board on a sale or return basis?

              Ian
              https://somei3deas.wordpress.com/
              https://www.youtube.com/@deckingman

              FxxTooundefined 2 Replies Last reply Reply Quote 0
              • FxxTooundefined
                FxxToo @deckingman
                last edited by

                @deckingman
                Thanks Ian, I really appreciate you taking the time to help me out. I have been playing with for over a month now. I will contact Filastruder about getting a replacement. again many thanks for helping. I was hoping that DC42 would chime in about this..
                RJ

                1 Reply Last reply Reply Quote 0
                • FxxTooundefined
                  FxxToo @JoergS5
                  last edited by

                  @joergs5
                  I think you are talking about measuring the length that each belt travels? I could do that. I have done motion control stuff before, mostly with ball screws and Nothing like a coreXY for sure. I am not sure what you mean with the G92, is that not for setting a position, like an offset?
                  My problem has been that all of the tests on the docs show that I have everything hooked up. When I give the command G90 X100, the Y position would change about 3 mm. I took everything apart and started over and checked and rechecked the Y and X to be to the best of my skillset, correct. It wasn't until changed (knowing that it was not correct) the M92 settings, did the head move as it should. I think there is an issue in the board, but I am going to post my config.g file as maybe someone can show me if I have goofed up. Thanks for your time in trying to help, I do appreciate it! and the food for thought on the belts.
                  rj

                  1 Reply Last reply Reply Quote 0
                  • FxxTooundefined
                    FxxToo
                    last edited by

                    Here is my config.g file (or most of what I have left...I started over)

                    ; Configuration file for Duet WiFi
                    ; (firmware version 1.20 or newer)
                    ; executed by the firmware on start-up
                    ;
                    ; generated by RepRapFirmware Configuration Tool on MODDED 7.12.18

                    ; General preferences
                    M111 S0 ;DEBUGGING OFF
                    G90 ; Send absolute coordinates...
                    M83 ; ...but relative extruder moves
                    M555 P2 ; Set firmware compatibility to look like MARLIN
                    M667 S1 ; Select CoreXY mode

                    ; Network
                    M550 PRJPRINT ; Set machine name
                    ;M552 S1 ; Enable network
                    M552 S1 P192.168.1.99 ;SET IP ADDRESS
                    M553 P255.255.255.0 ;SET SUBNET MASK
                    M586 P0 S1 ; Enable HTTP
                    M586 P1 S0 ; Disable FTP
                    M586 P2 S0 ; Disable Telnet

                    ; Axis Limits
                    M208 X325 Y415 Z0 S0 ; Set axis maxima
                    M208 X0 Y0 Z-600 S1 ; Set axis minima

                    ; Drives M569: Set motor driver direction, enable polarity and step pulse timing Parameters
                    M569 P0 S1 ; Drive 0 goes FORWARDS Rnnn Driver enable polarity: 0 = active low, 1 = active high (default 0)
                    M569 P1 S1 ; Drive 1 goes forwards
                    M569 P2 S0 ; Drive 2 goes forwards
                    ;M569 P3 S1 ; Drive 3 goes forwards
                    M350 X64 Y64 Z128 E16 I1 ; Configure microstepping with interpolation
                    ;M92 X80 Y80 Z175 E420 ; Set steps per mm
                    ;M92 Y320 Y320 Z1400 E420 ;mod to test 64 micro stepping
                    M92 X320 Y319 z1400 E420 ; to test to see if it corrects the speed of both motors
                    M566 X600 Y600 Z100 E120 ; Set maximum instantaneous speed changes (mm/min)
                    M203 X6000 Y6000 Z4000 E1200 ; Set maximum speeds (mm/min) CHANGED FROM 6000 TO 600 Z NO CHG
                    M201 X500 Y500 Z250 E250 ; Set accelerations (mm/s^2)
                    M906 X1500 Y1500 Z1500 E800 I40 ; Set motor currents (mA) and motor idle factor in per cent
                    M84 S30 ; Set idle timeout

                    ; Endstops
                    M574 Z1 S0 ; Set active low endstops
                    M574 X1 Y1 Z2 S0
                    ;M574 X1 Y1 S3 ; Set endstops controlled by motor load detection

                    ; Z-Probe
                    ;M558 P0 H5 F120 T6000 ; Set Z probe type to switch and the dive height + speeds
                    ;G31 P600 X0 Y0 Z2.5 ; Set Z probe trigger value, offset and trigger height

                    M557 X15:327.9 Y15:391 S20 ; Define mesh grid

                    ; Heaters
                    M140 H1 ; Remap heated bed to heater 1
                    M301 H1 P-1 ; Set heater 1 to bang-bang mode
                    M305 P0 X200 ; Configure thermocouple for heater 0
                    M143 H0 S120 ; Set temperature limit for heater 0 to 120C
                    M305 P1 X201 ; Configure thermocouple for heater 1
                    M143 H1 S280 ; Set temperature limit for heater 1 to 280C

                    ; Fans
                    M106 P0 S1 I0 F500 H1 T45 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned on
                    M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
                    M106 P2 S1 I0 F500 H1 T45 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on

                    ; Tools
                    M563 P0 D0 H0 ; Define tool 0
                    G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets
                    G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C

                    ; Automatic power saving
                    M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; Set voltage thresholds and actions to run on power loss

                    ; Custom settings are not configured

                    pro3dundefined 1 Reply Last reply Reply Quote 0
                    • pro3dundefined
                      pro3d @FxxToo
                      last edited by

                      @fxxtoo

                      You can not have M92 X different from Y... It will then move wrong Please set those the same and then do the tests

                      Valkyrie DIY High Temp 3D Printer

                      R&D - Engineering Designer - Viking 3D Printers
                      https://vkingprinter.com/

                      FxxTooundefined 1 Reply Last reply Reply Quote 0
                      • FxxTooundefined
                        FxxToo @deckingman
                        last edited by

                        @deckingman
                        No I didn't try swapping the steppers . I bought the steppers new from a local supplier for another job. I stripped them off the previous application to use them on the printer. I have others. I will check out how to swap the motor to another driver.. maybe that will work thanks!
                        rj

                        1 Reply Last reply Reply Quote 0
                        • FxxTooundefined
                          FxxToo @pro3d
                          last edited by

                          @pro3d
                          Thanks for the reply. I did have them set at being equal. After rebuilding it and making sure that I was parallel and the X was 90 degrees to the Y. I had exactly the same issue as before. If I did the test, it show the correct movement. When I did G90 x100, it would move about 3 mm as well. Which tells me that one motor is Not moving at the same speed as the other. It stopped when I changed the M92 . I am pretty confident that mechanically I am correct. That leaves an issue with the Duet card.
                          rj

                          JoergS5undefined 1 Reply Last reply Reply Quote 0
                          • JoergS5undefined
                            JoergS5 @FxxToo
                            last edited by JoergS5

                            @fxxtoo First sorry, I meant M92, not G92. I meant resetting to same settings for both steppers.

                            The test I propose is to check the steppers and controllers themself, described in the commissioning part. Belt movement is measuring the stepper moves exactly. Looking at X and Y movements can have several reasons if they are not correct.

                            I had a new idea: your steppers are set to 1.5 A. Please check your steppers if they are types to have 2 A max current or more. If your steppers have less, this can lead to problems.

                            FxxTooundefined 1 Reply Last reply Reply Quote 0
                            • FxxTooundefined
                              FxxToo @JoergS5
                              last edited by

                              @joergs5
                              The steppers nema 23 and are 1.8 amps per phase. I am thinking of how to measure the belt movement. I am taking the motors off to measure the pulley, just in case. I am hoping it is something simple. Thanks!
                              RJ

                              JoergS5undefined pro3dundefined 2 Replies Last reply Reply Quote 0
                              • JoergS5undefined
                                JoergS5 @FxxToo
                                last edited by JoergS5

                                @fxxtoo I thought about the pulleys slipping. This depends on the tension you have on the belts.
                                1.5 A seems to be ok for 1.8 steppers. There is some valuable information in
                                https://duet3d.dozuki.com/Wiki/Choosing_and_connecting_stepper_motors
                                Nema23 has more torque than 17er, so you might not notice the slip.

                                You can file into the shaft, but I prefer nondestructive means like loctite 221.

                                1 Reply Last reply Reply Quote 0
                                • pro3dundefined
                                  pro3d @FxxToo
                                  last edited by

                                  @fxxtoo

                                  I think you should up your accel a little. 500 is very low - I dont know if it will help but you could try 1000 as I see you have 10 in jerk

                                  Valkyrie DIY High Temp 3D Printer

                                  R&D - Engineering Designer - Viking 3D Printers
                                  https://vkingprinter.com/

                                  FxxTooundefined 1 Reply Last reply Reply Quote 0
                                  • FxxTooundefined
                                    FxxToo @pro3d
                                    last edited by

                                    @pro3d
                                    Thanks! I have been trying to figure this belt, timing or driver issue out and haven't got into the finer tweaks yet. I will try that.
                                    rj

                                    1 Reply Last reply Reply Quote 0
                                    • deckingmanundefined
                                      deckingman
                                      last edited by

                                      IMO, higher acceleration is likely to make things worse. Start slow, get everything working, then increase speed and acceleration in small steps.

                                      Ian
                                      https://somei3deas.wordpress.com/
                                      https://www.youtube.com/@deckingman

                                      1 Reply Last reply Reply Quote 0
                                      • deckingmanundefined
                                        deckingman
                                        last edited by

                                        Try this. Do a longish move in X, say 100 mm and measure the Y distance and direction. Then swap the A and B motors (the ones that do X and Y). Repeat the X move. If the movement in Y changes direction, then it's an issue with the motor. At least that will eliminate one variable.

                                        Ian
                                        https://somei3deas.wordpress.com/
                                        https://www.youtube.com/@deckingman

                                        FxxTooundefined 2 Replies Last reply Reply Quote 0
                                        • FxxTooundefined
                                          FxxToo @deckingman
                                          last edited by FxxToo

                                          @deckingman
                                          Excellent I will try that. I was just starting to pull the Duet board out. Wiil try that right after lunch. and Post the results.
                                          Do you mean remap the motors or physically swap the motors?
                                          Thanks!
                                          RJ

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

                                            @fxxtoo I would think to physically swap them.

                                            Z-Bot CoreXY Build | Thingiverse Profile

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