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.
    • 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
                                          • FxxTooundefined
                                            FxxToo @Phaedrux
                                            last edited by

                                            @phaedrux
                                            Thanks. I just did that. Same thing. ARRGG!
                                            RJ

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