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

Crash Detection

Scheduled Pinned Locked Moved Unsolved
Tuning and tweaking
2
5
575
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
    FairladyZ
    last edited by 4 Jul 2019, 09:06

    I am trying to setup crash detection to determine if the printer has collided with a print or anything else to stop it and prevent significant damage to the printer.

    Using the M915 command I have been changing the S parameter to calibrate the stall detection.

    I am currently running S5 on both X and Y axes but it will not detect a collision with a print. If I lower the S value at all the print stalls before it even starts.

    Is this the right process to calibrate this? What other values should I change and how? The H parameter? Acceleration and Jerk?

    1 Reply Last reply Reply Quote 0
    • undefined
      dc42 administrators
      last edited by 4 Jul 2019, 10:40

      The H parameter determines the minimum full steps/second at which stall detection is activated. So you can't detect collisions at speeds that have a lower number of full steps/second.

      If you are running at a high enough speed, and collisions are not detected, you will need to reduce the M915 S parameter. If that causes false stall reports, try reducing acceleration. If that fixes it except when you print corners, try reducing jerk.

      Collision detection is hard to get working well, and impossible on a delta in my experience.

      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

      1 Reply Last reply Reply Quote 0
      • undefined
        FairladyZ
        last edited by 4 Jul 2019, 13:05

        I lowered the acceleration significantly (from 500mm/s^2 to 100mm/s^2). I was then able to get the print to start at S1 and to detect a collision. I changed the R2 to 3 and set up rehome.g. Next, I raised the S value by 1 until it no longer detected a stall. The highest S value to detect a stall was S7. Surprising since S5 did not detect a stall earlier. I then returned the acceleration to 500mm/s^2 and was shocked to see that I did not get a false stall report and that the collision was still detected. However, when I changed R back to 2, it no longer detected the collision. Should the R value affect detection in this way? Also, when R is set to 3 is there a way to keep it from returning to the location of the collision? I was able to rehome X and Y but when I try to pause or stop it after rehoming the print head still returns to the location of the crash.

        1 Reply Last reply Reply Quote 0
        • undefined
          dc42 administrators
          last edited by 16 Jul 2019, 08:37

          The R value should not affect detection, it should only affect what happens when a stall is detected.

          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

          1 Reply Last reply Reply Quote 0
          • undefined
            FairladyZ
            last edited by 17 Jul 2019, 07:46

            When R is set to 2 should it stop as soon as it detects a crash or does it finish the current move? After more testing I believe that it detects the crash the same regardless of the R value but when R is 2 the printer keeps moving prompting me to shut off the printer to prevent damage. Since the gcode I have been using to test crash detection tells the printer to move far past the location of the crash, I need it to stop as soon as the crash is detected.

            I was able to make crash detection work as I intended by using R3 to rehome and using M291 to inform the web interface of the crash and pause the printer until I am able to monitor the restart of the print.

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