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

    Dual Y-Motor gantry squaring with closed loop steppers

    Scheduled Pinned Locked Moved Solved
    Tuning and tweaking
    2
    3
    240
    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.
    • MaxGyverundefined
      MaxGyver
      last edited by MaxGyver

      In my homing sequence for the Y-Gantry I first home Y in open loop mode as usual, lower the motor currents for both Y-steppers and then slowly drive the Y axis in physical enstops, positioned on both ends of the gantry until the motors loose some steps on each side.
      By doing this, the Y-Axis is perfectly perpendicular to the X-Axis. I reset the motor currents for both Y-motors and proceed with the usual closed loop calibration sequence. My problem is that when closed loop mode is turned on, the motors do a small jump. Unfortunately, this movement is seemingly not equal in both motors, making the Y-Axis skewed again. @dc42 I am wondering what causes this jump and if there is any way to avoid it.

      Here is my Y-Homing sequence. Any suggestions for improvements would be much apreciated. 😊 👍

      ;''' Home Y at the low end of the axis'''
      
      ;pre-homing check
      if move.axes[2].homed=false ;check if Z is homed. If not, home Z first.
       echo "Z-Axis not homed, homing Z-Axis first"
       M98 P"homez.g"
      else
      
      if move.axes[2].machinePosition <=10 ;check if bed is within 10mm of the nozzle
       G91 ;relative positioning
       G0 Z5 ;move bed down
       G90 ; absolute positioning
      else
      
      ;Home Y at the high end of the axis
      G91	;relative positioning
      M569 P125.0 D2 ;open loop mode Y1
      M569 P126.0 D2 ;open loop mode Y2
      G1 Y325 H1 F6000 ;coarse home Y
      
      ;Y-gantry squaring
      M564 S0 ;allow movement outside boundaries
      G1 Y-323 6000 ;move to Ymax
      M906 Y800 ;Set motor currents (mA) and motor idle factor in per cent
      G1 Y-5 F250 ;run Y axis into physical stop
      G4 S2
      M906 Y2000 ;Set motor currents (mA) and motor idle factor in per cent
      G1 Y325 H1 F6000 ;coarse home Y
      G1 Y-2 ;go back a few mm
      G1 Y3 H1 F600 ;fine home Y
      M564 S1 ;limit movement within axis boundarie
      
      ;Closed loop calibration
      if global.closedloop=true ;check if closed loop is on
       G1 Y-10 F6000 ;move to a safe position
       M400 ;wait for the move to complete
       G4 P500 ;wait for the motor to settle
       M569 P125.0 D4 ;turn closed loop on Y-Motors
       M569.6 P125.0 V1 ;perform a tuning maneuver on Y1
       M400 ;wait for the move to complete
       G4 P500 ;wait for the motor to settle
       M569 P126.0 D4 ;turn closed loop on Y-Motors
       M569.6 P126.0 V1 ;prform a tuning maneuver on Y2
       G1 Y+30 F6000 ;move to Ymax
      
      G90 ;absolute positioning
      
      dc42undefined 1 Reply Last reply Reply Quote 0
      • dc42undefined
        dc42 administrators @MaxGyver
        last edited by

        @MaxGyver I assume you are running firmware 3.4.4 on the EXP1HCL board. Please try firmware 3.5beta1 on that board instead and see whether the behaviour is any different. You can continue running firmware 3.4.x on the main board for now.

        Note, the M569.1 configuration parameters have changed in 3.5 - please see the wiki.

        Duet WiFi hardware designer and firmware engineer
        Please do not ask me for Duet support via PM or email, use the forum
        http://www.escher3d.com, https://miscsolutions.wordpress.com

        MaxGyverundefined 1 Reply Last reply Reply Quote 0
        • MaxGyverundefined
          MaxGyver @dc42
          last edited by

          @dc42 Thank you for your response.

          Yes, I am running RRF 3.4.4 (Sorry, I forgot to mention that!)
          With RRF 3.5beta1 on the EXP1HCL, the Y-axis motors now keep their position when closed loop mode is activated. 🙂 👍

          1 Reply Last reply Reply Quote 2
          • Phaedruxundefined Phaedrux marked this topic as a question
          • Phaedruxundefined Phaedrux has marked this topic as solved
          • Anon1337undefined Anon1337 referenced this topic
          • First post
            Last post
          Unless otherwise noted, all forum content is licensed under CC-BY-SA