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

non linear Z axis with bed compensation ON

Scheduled Pinned Locked Moved
Duet Hardware and wiring
3
7
298
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.
  • undefined
    tom33
    last edited by 17 Jan 2022, 09:30

    Hi,

    I have a problem with the Z axis when the bed compensation taper is ON.

    The Z axis doesn't move same when the bed compensation is enable.

    You can see the difference in the two videos

    Compensation ON-converted-converted.mp4
    Compensation Off-converted-converted.mp4

    undefined 1 Reply Last reply 18 Jan 2022, 08:36 Reply Quote 0
    • undefined
      Phaedrux Moderator
      last edited by 17 Jan 2022, 21:03

      I can't tell what you mean. The videos are only 1 second long.

      Can you describe in more detail what you're seeing?
      Can you share your config settings and firmware version?
      What is the printer setup?

      Z-Bot CoreXY Build | Thingiverse Profile

      undefined 3 Replies Last reply 18 Jan 2022, 08:04 Reply Quote 0
      • undefined
        tom33 @Phaedrux
        last edited by 18 Jan 2022, 08:04

        @phaedrux

        When I have the bed compensation enable (G29 S1) and I move the the Z axis (near the heat bed) if I request to move 1mm the axis moves by 0.97mm
        If I disable the compensation (G29 S2) if I request to move 1mm the axis moves by 1mm

        This result in bad height of my prints.

        I use 3.4.0b7 and I also use 3.4.0b7+4 and same problem

        I use duet3M6HC with duet1XD for external driver (I also update the 1XD)

        G90 ; send absolute coordinates...
        M83 ; ...but relative extruder moves
        M451
        M929 S3
        ; Drives
        M569 P0 S0 ; Drive 0 T0 Extrudeur Gauche
        M569 P1 S1 ; Drive 1 T1 Extrudeur Droit
        M569 P2 S1 ; Drive 3 T0 Extrudeur Bobine Gauche
        M569 P3 S1 ; Drive 3 T0 Extrudeur Bobine Droit
        M569 P4 S1 ; Drive 4 T1 Montée descente
        G4 S1
        ; set drive mapping
        M584 E1:2
        M584 A3 B4 C0
        M584 P6
        M350 E16:16 I1 ; configure microstepping without interpolation
        M350 A16 B16 C16 I1 ; configure microstepping with interpolation
        M92 A415 B415 C300 E582:582 ; set steps per mm
        M566 X300 Y300 Z100 W50 A500 B500 C50 E500:500 ; set maximum instantaneous speed changes (mm/min)
        M203 X12000 Y12000 Z1800 W1800 A3600 B3600 C10000 E1200:1200 ; set maximum speeds (mm/min)
        M201 X250 Y250 Z100 W50 A500 B500 C500 E500:500 ; set accelerations (mm/s^2)
        M906 A1200 B1200 C750 E400:400 I30 ; set motor currents (mA) and motor idle factor in per cent
        M84 S0 ; Set idle timeout
        M913 C100 ; Courant moteur Axe C 50%
        ; Axis Limit
        M208 X0:1040 Y0:515 Z0:534.3 W0:534.3 A-10000:10000 B-10000:10000 C-10:10
        M671 X0:1040 Y250:250
        ; Endstops
        M574 A0
        M574 B0
        M574 C2 S1 P"!10.io0.in"
        ;Stall Detection
        ; Z-Probe
        M558 P5 C"!io4.in" H10 F300 T6000 ; set Z probe type to switch and the dive height + speeds "!io8.in"
        G31 P500 X0 Y0 Z-2.725 ; set Z probe trigger value, offset and trigger height
        M557 X15:985 Y15:485 S150 ;define mesh grid
        ; Bed heater
        M308 S0 P"temp0" Y"thermistor" A"Plateau chauffant" T100000 B4138 C0 ; configure sensor 0 as thermistor on pin temp0
        M950 H0 C"out5" T0 ; create bed heater output on out0 and map it to sensor 0
        M307 H0 B0 R0.334 C356.2 D1.33 S1.00 V24.0 ; disable bang-bang mode for the bed heater and set PWM limit
        M140 H0 ; map heated bed to heater 0
        M143 H0 S120
        M570 H0 P60 T10 S120; set temperature limit for heater 0 to 120C
        ; Tool 0 heater
        M308 S1 P"temp1" Y"thermistor" A"E0" T98640 B4632.86 C9.4861662E-08 H0 L0 ; Set thermistor
        ;M307 H1 B0 R1.862 C397.7:397.7 D19.89 S1.00 V24.0
        M307 H1 B0 R1.857 C385.6:374.5 D14.06 S1.00 V24.0
        M950 H1 C"out1" T1 ; Extruder 0 heater
        M143 H1 S300 ; Set temperature limit for heater 1 to 300C
        M570 H1 P60 T35 S120
        ;Tool 1 heater
        M308 S2 P"temp2" Y"thermistor" A"E1" T98640 B4632.86 C9.4861662E-08 H0 L0 ; configure sensor 2 as thermistor on pin temp2
        M307 H2 B0 R1.782 C345.7:345.7 D18.75 S1.00 V24.0
        M950 H2 C"out2" T2 ; create nozzle heater output on out2 and map it to sensor 2
        M143 H2 S300
        M570 H2 P60 T35 S120
        ;Heat chamber
        M308 S3 P"temp3" Y"thermistor" A"Chambre" T100000 B4138 C7.06e-8 ; configure sensor 3 as thermistor on pin temp3
        M950 H3 C"out0" T3 ; create chamber heater output on out3 and map it to sensor 3
        M307 H3 B0 S1.00 ; disable bang-bang mode for the chamber heater and set PWM limit
        M141 H3 ; map chamber to heater 3
        M143 H3 S100 ; set temperature limit for heater 3 to 100C
        M950 P6 C"out3"
        ; Tools
        M563 P0 S"E0" D0 H1 F0 ; Define Extruder 0 drive 0 Heater 1 Fan 0
        G10 P0 X-10.085 Y-5.075 Z0 C0 ; Set offset
        G10 P0 R0 S0 ; Reset initial tool 0 active and standby temperatures to 0C
        M563 P1 S"E1" D1 H2 F1 ; Define Extruder 1 drive 1 Heater 2 Fan 1
        G10 P1 X10.085 Y5.075 Z0 C0 ; set tool 1 axis offsets Essais Z offset pour déplacement axe C
        G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C
        ;Filament Monitor
        ;M591 P3 C"io5.in" S1 D0 ; filament monitor connected to E0_stop
        ;M591 P3 C"io6.in" S1 D0 ; filament monitor connected to E0_stop
        ; Fans
        M950 F0 C"10.out1" ; create fan 1 on pin out5 and set its frequency
        ;M950 F1 C"out8" ; create fan 2 on pin out6 and set its frequency
        ;M106 P0 S255 H1:2 T20 ; set fan 0 value. Thermostatic control is turned on
        ;M106 P0 S0
        ;M106 P1 S0 ; set fan 2 value. Thermostatic control is turned on
        ;Servo
        ;950 S4 C"io4.out" ; Servo Montée / Descente
        M950 S5 C"io5.out" ; Servo B0
        M950 S7 C"io7.out" ; Servo B1
        ;Input
        ;M950 J0 C"io0.in" ; Arret d'urgence
        ;M950 J20 C"35.io0.in"
        ;M581 T0 P0 S1 R0 ; T0 --> M112 Arret d'urgence
        ;M581 T0 P20 S1 R0
        ;M950 J1 C"io1.in" ; Pause / Play trigger 2.g
        ;M581 T2 P1 S0 R0 ; T6 --> M25 Pause / Play
        ;M950 J2 C"io2.in" ; Pause / Stop trigger 3.g
        ;M581 T3 P2 S0 R0 ; Stop
        ;M950 J3 C"25.io2.in" ; Door
        ;M581 T4 P3 S0 R0 ; Door
        ;M950 J10 C"!10.io0.in" ; Detection Outils Impression 3D
        ;M581 T10 P10 S0 R0 ; Trigger10.g
        ;M950 J11 C"!20.io0.in" ; Detection Outils CNC
        ;M581 T11 P11 S0 R0 ; Trigger11.g
        ;Output
        ;M950 P0 C"20.out0" ; Verrouillage porte
        M950 P1 C"10.out0" ;
        M150 X0 ; set LED type to NeoPixel and set SPI frequency to 3MHz
        M501
        ; Custom settings are not defined
        M375 P"/sys/_Printer/heightmap.csv"
        M376 H15 ; bed compensation taper
        ;global CumulativeTime = 0
        ;M98 P"0:/macros/myUpTime.g" ; this could be in start.g if doing print time
        ; load saved parameters from non-volatile memory
        M911 S22.0 R22.5 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ;set voltage thresholds and actions to run on power loss
        M501
        1 Reply Last reply Reply Quote 0
        • undefined
          tom33 @Phaedrux
          last edited by 18 Jan 2022, 08:11

          @phaedrux
          heightmap

          RepRapFirmware height map file v2 generated at 2022-01-10 19:27, min error -0.294, max error 0.581, mean 0.135, deviation 0.268
          axis0,axis1,min0,max0,min1,max1,radius,spacing0,spacing1,num0,num1
          X,Y,15.00,985.00,15.00,485.00,-1.00,150.00,150.00,7,4
          -0.275, 0.181, 0.213, 0.119, -0.019, -0.181, -0.294
          -0.169, 0.481, 0.538, 0.381, 0.213, -0.019, -0.244
          -0.200, 0.525, 0.581, 0.425, 0.269, 0.081, -0.119
          -0.125, 0.344, 0.444, 0.356, 0.225, 0.081, -0.025
          1 Reply Last reply Reply Quote 0
          • undefined
            tom33 @Phaedrux
            last edited by 18 Jan 2022, 08:22

            @phaedrux

            If I disable the M376 in the config.g I do not have the problem

            1 Reply Last reply Reply Quote 0
            • undefined
              rjenkinsgb @tom33
              last edited by rjenkinsgb 18 Jan 2022, 08:36

              @tom33 said in non linear Z axis with bed compensation ON:

              I have a problem with the Z axis when the bed compensation taper is ON.
              The Z axis doesn't move same when the bed compensation is enable.

              It shouldn't!

              You have some rather extreme height values in your heightmap...

              With taper enabled, it should follow the heightmap at Z0 but move Z absolutely flat at the top of the taper height and above.

              If the heightmap shows the bed eg. 0.5mm high and you have it set to taper off at 20mm, all the Z moves at that point must be 2.5% shorter so the heightmap adjustments are cancelled out by the top of the taper height.

              The effects would be a lot less if your bed was nearer flat.

              Robert J.

              Printers: Overlord pro, Kossel XL+ with Duet 6HC and "Frankentron", TronXY X5SA Pro converted to E3D toolchange with Duet 6HC and 1LC toolboards.

              1 Reply Last reply Reply Quote 1
              • undefined
                Phaedrux Moderator
                last edited by 18 Jan 2022, 16:07

                M375 P"/sys/_Printer/heightmap.csv"

                You should not load a heightmap in the config.g, only after Z0 is set with the probe.

                Can you try doubling your taper height?

                Z-Bot CoreXY Build | Thingiverse Profile

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