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

    backing out from the endstop

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    4
    19
    864
    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.
    • Danalundefined
      Danal
      last edited by

      @nraynaud said in backing out from the endstop:

      the tool changer is activated by a cam shaft, and zeroing it is a bit of an issue when I can't trigger on edge.

      Jubilee has a limit switch for "locked" (aka "home") and a limit switch for "enough torque has occured to assure the tool is locked". Note that second one is not an absolute position. It is a torque sensor. This is because Jubilee uses some plastic where E3D uses metal. With metal parts, this second switch could be a position sensor. These two switches are wired in series and connected to the low endstop for the tool lock axis (U).

      Unlock a tool? The code is very similar to homing that axis (see below)
      Lock a tool? Same thing, other direction.

      Also, lock/unlock are in macros, so the pre/post/free files can invoke them.

      There are no "edge" issues with this setup.

      ; Disengage the toolchanger lock
      
      G91                 ; Set relative movements
      G1 U-2 F9000 H2     ; Back off the limit switch with a small move
      G1 U-360 F9000 H1   ; Perform up to one rotation looking for the home limit switch
      G90                 ; Restore absolute movements
      
      ; Engage the toolchanger lock
      
      G91                 ; Set relative mode
      G1 U2 F9000 H2      ; Back off the limit switch with a small move
      G1 U360 F9000 H1    ; Perform up to one rotation looking for the torque limit switch
      G90                 ; Set absolute mode
      
      ; Home U Axis
      
      G91                     ; Set relative mode
      G1 U-360 F9000 H1       ; Big negative move to search for home endstop
      G1 U6 F600              ; Back off the endstop
      G1 U-10 F600 H1         ; Find endstop again slowly
      G90                     ; Set absolute mode
      

      Delta / Kossel printer fanatic

      1 Reply Last reply Reply Quote 0
      • nraynaudundefined
        nraynaud
        last edited by nraynaud

        here is my free0.g (axis W is the cam shaft):

        G91 ; relative positioning
        G0 Z2 ; lift Z
        G1 E-20 F10000
        G90 ; absolute positioning
        
        M913 Y180 X180; bump Y axis current
        G53 G0 X212.5 Y0 F40000 ; get in front of the dock
        M208 Y-70 S1 ; Set axis minimum
        G53 G0 Y-55
        G53 G1 Y-66 W11 F10000
        G53 G1 Y-55 F2000
        M913 Y100 X100; restore Y axis current
        M208 Y0 S1 ; Set axis minimum
        G53 G0 Y2 F40000
        
        

        here is my tpre0.g:

        G91 ; relative positioning
        G0 Z2 ; lift Z
        G90 ; absolute positioning
        
        
        G53 G0 X212.5 Y2 F40000
        G53 G1 Y-10 F500 H1 ; re-home Y
        
        M913 X180 Y180; bump axis current
        M208 Y-70 S1 ; Set axis minimum
        G53 G0 Y-60 W1 F40000 ; move and unlock dock
        G53 G1 Y-66 W1 F10000
        

        here is the tpost0.g:

        M98 P"tpostall.g"
        
        G1 E20 F8000
        

        and the tpostall.g:

        M703 ; load filament parameters
        
        G1 Y-60 F40000
        M913 X100 Y100; axis current
        G53 G0 Y2 F50000; move back
        
        M208 Y0 S1 ; Set axis minimum
        
        G53 G1 H1 F500 Y-10 ; home Y
        
        G53 G0 X200 F50000 ; go towards the prime tower
        
        

        my problem is that some steps might be skipped during those operations, either hitting the dock or pulling on the springs, and I want to be able to recover without losing time in the cases where I don't need to recover.

        I was looking into stall detection, but I don't feel confident I can detect it reliably.

        Of course with a cam shaft there is no hard stop, so finding the angular position is normally done by edge triggering.

        the general design is visible here: https://twitter.com/nraynaud/status/1203771796929044480

        1 Reply Last reply Reply Quote 0
        • dc42undefined
          dc42 administrators @nraynaud
          last edited by dc42

          @nraynaud said in backing out from the endstop:

          thanks, the backoff is what I do currently.

          What do you think of G1 H parameter that would guard the move (stop when a endstop is triggered or released, why not 2 options) but not change the origin (and we'll do whatever G92 we want from there).

          I don't advise using G92 in homing files, because if the G1 H1 move fails to trigger the endstop, it doesn't set the homed status so the machine is safe from doing ordinary moves; but if you use G92 then the axis gets flagged as homed anyway.

          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

          nraynaudundefined 1 Reply Last reply Reply Quote 0
          • nraynaudundefined
            nraynaud @dc42
            last edited by

            @dc42 I think that makes the window of usefulness quite narrow.

            It seems that stall detection with R3 crashes if it happens in tfree.g, it looks paused, but no button does anything (homing, resuming, cancel print).

            1 Reply Last reply Reply Quote 0
            • Danalundefined
              Danal
              last edited by

              The kinematic coupling is different, as is the cam lock... but the X/Y moves to free, pick up, etc. are the same as a Jubilee.

              @nraynaud said in backing out from the endstop:

              some steps might be skipped during those operations, either hitting the dock or pulling on the springs

              • Hitting the dock? When I was commissioning the Jubilee, I hit the dock a lot, and therefore un-set Y home. It was very frustrating. However, hitting the dock absolutely stops happening once you get the printer set up correctly.

              • Skipping steps pulling on the spring? Then the spring needs to be weaker or the motor stronger.

              Having a condition where a printer skips steps, and then attempting to compensate for that, represents a fundamental flaw in an open loop design. I realize that is a very direct statement, and it is not meant to be negative. It is, however, meant to push the idea very hard. Either get the operation of the printer to where steps are never skipped, or go to servos.

              Delta / Kossel printer fanatic

              nraynaudundefined 1 Reply Last reply Reply Quote 0
              • nraynaudundefined
                nraynaud @Danal
                last edited by nraynaud

                @Danal I am trying to close the loop, that's what all my questions about reacting to switches and conditions and stall detection are.

                I am trying to be progressive in closing the loop, because it's the fastest way to drain money and bringing noise into a system. So for now I'm trying to react to slow filterable events.

                Danalundefined 1 Reply Last reply Reply Quote 0
                • nraynaudundefined
                  nraynaud
                  last edited by

                  I cobbled something together, I don't know how far it will go:
                  outdanger.g:

                  M574 Y0 C"nil"
                  M558 K0 P5 C"ystop" F10000 H0 I1
                  G38.5 Y100 P0
                  M558 K0 P0 C"nil"
                  M574 Y1 S0 P"!ystop"
                  

                  it occurred to me that the endstops are useless most of the time anyways since there are no guarded move, I might even plug them to the emergency stop in normal situation and back to endstops during homing.

                  1 Reply Last reply Reply Quote 0
                  • Danalundefined
                    Danal @nraynaud
                    last edited by

                    @nraynaud said in backing out from the endstop:

                    I am trying to close the loop, that's what all my questions about reacting to switches and conditions and stall detection are.

                    I do (still) think that servos are the real answer... at the same time... I will do everything I can to help.

                    @nraynaud said in backing out from the endstop:

                    I might even plug them to the emergency stop in normal situation and back to endstops during homing.

                    I've had that same thought. Perhaps wire to both, with a relay (or transistor) to break the path to e-stop when homing?

                    Delta / Kossel printer fanatic

                    1 Reply Last reply Reply Quote 0
                    • nraynaudundefined
                      nraynaud
                      last edited by

                      my 1000 feet view it to wire them to a M999 script, because the capacitors in the DC power supplies pack a lot of puch and they really don't stop quickly.

                      1 Reply Last reply Reply Quote 0
                      • nraynaudundefined
                        nraynaud
                        last edited by

                        I have significantly reduced the tool changing forces by using this wonderful and clever invention: grease. I should use it more on my moving parts.

                        I have had very good positional repetition and no stalling since.

                        IMG_3918.jpeg
                        I am posting a picture because I really needed a lucky break on this project.

                        1 Reply Last reply Reply Quote 0
                        • Danalundefined
                          Danal
                          last edited by

                          Nice!!!

                          It is a great feeling to get a multi-color print.

                          Delta / Kossel printer fanatic

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