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

    Triple z axis bed tramming

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    3
    32
    1.4k
    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.
    • mrenz999undefined
      mrenz999 @Phaedrux
      last edited by

      @Phaedrux X is back right. Y is back. So Left for +Y and Forward for +X. Yes offsets are relative to the nozzle. The points in the bed.g are exactly where they are relative to the endstop 0's. The M671 motors are in the correct order.

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

        @mrenz999 said in Triple z axis bed tramming:

        So Left for +Y and Forward for +X.

        That's definitely a non standard arrangement and I can't tell with metal gymnastics alone if that's going to produce mirrored prints or not, or if it's just an odd rotation of a right hand coordinate system.

        Can you post a photo of the printer looking down at it and explain where the endstops are?

        Having a non-standard coordinate system is going to make for headaches like this.

        Here's an example of a right handed setup.

        left_right_hand.gif dbot axis.png Cartesian-coordinate-system.png Bed Area.png

        Z-Bot CoreXY Build | Thingiverse Profile

        mrenz999undefined 1 Reply Last reply Reply Quote 0
        • mrenz999undefined
          mrenz999 @Phaedrux
          last edited by

          @Phaedrux My other printer is the same from factory. The one I am working on now is a BLV MGN Cube. Not having issues with the prints other than getting the bed leveling handled. The front of the printer is open. So everything goes to the far right for 0,0.

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

            The 0,0 point doesn't have to be where the endstops are located. The right handed coordinate system assumes you're looking at the printer from the front. It's fine to have the 0,0 position in a different position provided it's both axis that are flipped. If only one is flipped you'd get mirrored prints.

            Z-Bot CoreXY Build | Thingiverse Profile

            mrenz999undefined 1 Reply Last reply Reply Quote 0
            • mrenz999undefined
              mrenz999 @Phaedrux
              last edited by

              @Phaedrux Gotcha. So instead of front left 0,0 is back right on this one and the Zonestar M9Z3 that I have. The CR10sPro that I have is like what you are saying. 0,0 is front left.

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

                Yeah back right is fine as long as you're orienting that in your brain. It's still a right handed coordinate system, it's just rotated 180 degrees.

                The front left thing is mostly to match the way slicers and CAD software orient the origin and it helps to have a standardized way of talking about it with other people so that we're all on the same page. Instructions usually assume that coordinate system for instance.

                The important thing is that where ever you've defined the 0,0 position, if you were standing at the printer such that that point is at the front left, then the motor movements should match what I originally described. -x to the left, etc.

                Is that the case?

                Z-Bot CoreXY Build | Thingiverse Profile

                mrenz999undefined 1 Reply Last reply Reply Quote 0
                • mrenz999undefined
                  mrenz999 @Phaedrux
                  last edited by

                  @Phaedrux yep. That is the case.

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

                    Alright, so now with that in mind, lead screw positions in M671 correct, M208 axis limits correct, probe offset correct, motor order matches.. that leaves us with the points in bed.g and my original question.

                    Are the points defined in your bed.g trying to place the probe as close to the lead screws as possible?

                    A good way to check would be to move your print head such that the probe is as close as possible to the first lead screw, then use that current head position as the point to probe, repeat for the other lead screws.

                    Z-Bot CoreXY Build | Thingiverse Profile

                    mrenz999undefined 1 Reply Last reply Reply Quote 0
                    • mrenz999undefined
                      mrenz999 @Phaedrux
                      last edited by

                      @Phaedrux those are exact. I couldn’t probe them.

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

                        Can you post your homeall?

                        When you run G32 does it home correctly and then move to the first point?

                        Does the probe work otherwise?

                        Z-Bot CoreXY Build | Thingiverse Profile

                        mrenz999undefined 2 Replies Last reply Reply Quote 0
                        • mrenz999undefined
                          mrenz999 @Phaedrux
                          last edited by

                          @Phaedrux

                          ; generated by RepRapFirmware Configuration Tool v3.1.1 on Thu Jun 04 2020 11:20:25 GMT-0700 (Pacific Daylight Time)

                          G91 ; relative positioning

                          G1 H2 Z5 F6000 ; lift Z relative to current position

                          G1 H1 X-450 Y-450 F1800 ; move quickly to X and Y axis endstops and stop there (first pass)

                          G1 H1 X-450

                          G1 H1 Y-450

                          G1 X5 Y5 F6000 ; go back a few mm

                          G1 H1 X-450 Y-450 F360 ; move slowly to X and Y axis endstops once more (second pass)

                          G1 X250 Y210 F9000 ; go to first bed probe point and home Z

                          G30 ; probe the bed

                          G1 H1 Z-465 F360

                          G90

                          G92 Z5

                          Probe works. G32 command only goes near the 0,0 and then just stops.

                          Phaedruxundefined 1 Reply Last reply Reply Quote 0
                          • mrenz999undefined
                            mrenz999 @Phaedrux
                            last edited by

                            @Phaedrux found part of the issue. The z motors were not mapped correctly in the bed.g. Fixed that. Now it homes all. Then goes back the home x and y and tries to probe which is off the bed.

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

                              @mrenz999 said in Triple z axis bed tramming:

                              G30 ; probe the bed
                              G1 H1 Z-465 F360
                              G90
                              G92 Z5

                              This is a problem. You're first using the probe to find Z0, but then you're also homing using an endstop, and then forcing the Z position to Z5. Remove those last 3 lines to maintain the probed Z position, otherwise you're bound to have an offset from where it thinks the bed is and where the bed actually is. Use the probe to home Z. That's what it's meant for.

                              @mrenz999 said in Triple z axis bed tramming:

                              Then goes back the home x and y and tries to probe which is off the bed.

                              As I said before, jog your print head such that the probe is where you want it to probe, the XY coordinates of the head at that point is what you want to use in the bed.g points.

                              Z-Bot CoreXY Build | Thingiverse Profile

                              mrenz999undefined 1 Reply Last reply Reply Quote 0
                              • mrenz999undefined
                                mrenz999 @Phaedrux
                                last edited by

                                @Phaedrux
                                Ok new bed.g
                                ; bed.g
                                ; called to perform automatic bed compensation via G32
                                ;
                                ; generated by RepRapFirmware Configuration Tool v3.1.1 on Thu Jun 04 2020 11:20:24 GMT-0700 (Pacific Daylight Time)
                                M561 ; clear any bed transform
                                ;G29 ; probe the bed and enable compensation
                                G28 ; home
                                ;M401 ; deploy Z probe
                                G30 P2 X20 Y110 Z-99999 ; probe near an adjusting screw
                                G30 P3 X20 Y365 Z-99999 ; probe near an adjusting screw
                                G30 P4 X430 Y240 Z-99999 S3 ; probe near an adjusting screw and calibrate 3 motors
                                G29
                                ;M402 ; retract probe

                                New homeall.g

                                ; generated by RepRapFirmware Configuration Tool v3.1.1 on Thu Jun 04 2020 11:20:25 GMT-0700 (Pacific Daylight Time)

                                G91 ; relative positioning

                                G1 H2 Z5 F6000 ; lift Z relative to current position

                                G1 H1 X-450 Y-450 F1800 ; move quickly to X and Y axis endstops and stop there (first pass)

                                G1 H1 X-450

                                G1 H1 Y-450

                                G1 X5 Y5 F6000 ; go back a few mm

                                G1 H1 X-450 Y-450 F360 ; move slowly to X and Y axis endstops once more (second pass)

                                G1 X264 Y250 F9000 ; go to first bed probe point and home Z

                                G30 ; probe the bed

                                ;G1 H1 Z-465 F360

                                ;G90

                                ;G92 Z5

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

                                  @mrenz999 said in Triple z axis bed tramming:

                                  G30 P2 X20 Y110 Z-99999 ; probe near an adjusting screw
                                  G30 P3 X20 Y365 Z-99999 ; probe near an adjusting screw
                                  G30 P4 X430 Y240 Z-99999 S3 ; probe near an adjusting screw and calibrate 3 motors

                                  Shouldn't that be P1 P2 P3? Your points start at P2 for some reason.

                                  Z-Bot CoreXY Build | Thingiverse Profile

                                  mrenz999undefined 1 Reply Last reply Reply Quote 0
                                  • mrenz999undefined
                                    mrenz999 @Phaedrux
                                    last edited by mrenz999

                                    @Phaedrux
                                    That's the assigned motors for Z
                                    Is that not the correct way to put it ?
                                    ; Drives
                                    M569 P0.0 S0 ; physical drive 0.0 goes forwards
                                    M569 P0.1 S1 ; physical drive 0.1 goes forwards
                                    M569 P0.2 S0 ; physical drive 0.2 goes forwards
                                    M569 P0.3 S0
                                    M569 P0.4 S1
                                    M569 P0.5 S0 ; physical drive 0.3 goes forwards
                                    M584 X0.0 Y0.1 Z0.2:3:4 E0.5 ; set drive mapping
                                    M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
                                    M92 X80.00 Y80.00 Z400.00 E420.00 ; set steps per mm
                                    M566 X900.00 Y900.00 Z60.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
                                    M203 X20000 Y20000 Z600 E3600.00 ; set maximum speeds (mm/min)
                                    M201 X3000 Y3000 Z100 E5000 ; set accelerations (mm/s^2)
                                    M906 X1600 Y1600 Z1600 E1600 I30 ; set motor currents (mA) and motor idle factor in per cent
                                    M84 S30 ; Set idle timeout
                                    M671 X20:20:430 Y110:365:240 S0.5 ; leadscrews at rear left, front middle and rear right

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

                                      No, in this context G30 P is the number of the point to probe

                                      https://duet3d.dozuki.com/Wiki/Gcode#Section_G30_Single_Z_Probe

                                      You're probing 3 points and doing 3 point correction, so use p1 p2 p3

                                      Z-Bot CoreXY Build | Thingiverse Profile

                                      mrenz999undefined 2 Replies Last reply Reply Quote 0
                                      • mrenz999undefined
                                        mrenz999 @Phaedrux
                                        last edited by mrenz999

                                        @Phaedrux Ok changed that. It goes to all 3 points now and probes but then says error: 3 points expected 0 probed.
                                        G32
                                        Error: Bed calibration : 3 factor calibration requested but only 0 points provided

                                        1 Reply Last reply Reply Quote 0
                                        • mrenz999undefined
                                          mrenz999 @Phaedrux
                                          last edited by

                                          @Phaedrux Should I change Defining my mesh to less points ?

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

                                            Mesh is different. That's G29 and M557. Not related to independent leveling.

                                            My mistake. It should be P0 for the first point and not P1. So P0 P1 P2

                                            There is quite literally an example here: https://duet3d.dozuki.com/Wiki/Bed_levelling_using_multiple_independent_Z_motors#Section_Example_for_3_motors

                                            Z-Bot CoreXY Build | Thingiverse Profile

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