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

    Configuring Jerk and Acceleration for Laser Rastering (SLS)

    Scheduled Pinned Locked Moved
    Using Duet Controllers
    2
    4
    402
    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.
    • DrDFloundefined
      DrDFlo
      last edited by

      Bear with me on this question, this project is a doozy.

      I retrofitted a Sintratec SLS printer with a CO2 laser. This conversion required new analog mirror galvanometers (to reflect the correct wavelength), which unfortunately were not compatible with the stock microcontroller. This was purely a software issue. The original board would command a field jump (i.e., tell the galvo to instantaneously move to an extreme position) at the end of a scan move. Not good. These full-field jumps were fine with stock galvanometers because they were much smaller, but to get the correct spot size with the CO2 laser I had to use larger mirrors that cannot be moved as quickly and do not tolerate infinite velocities. It was not possible to work with the OEM to remove these field jumps.

      Before discovering this problem, I had always wanted to use a configurable board, such as the Duet Wifi to have control over every aspect of the sintering process for research.

      Obviously, the Duet WiFi does not support analog galvanometers, so I created a small circuit that uses an Arduino Due, DAC and Op-amps to sum or substract step pulses into an analog voltage depending on the direction pin. With just a little optimization, the circuit can convert 90k steps/sec to analog voltage for both the X and Y galvos (180k total). This is less than the max step/rate of the Duet, but should fit my needs.

      To make it easier to ask my questions, I have converted all of my units into the surface speed of the laser. I am targeting a scan speed rate of 1,000 mm/s. The step/mm conversion is 32. Therefore, 32,000 step pulses would need to be sent per second to reach my scan rates which is possible with my system. The acceleration to these scan rates is a critical parameter because the laser power remains constant, so long accelerations results in some material receiving more energy than others, which I am trying to minimize.

      The max velocity of my QS20XY galvanometers is 150V/s which works out to be 3300 mm/s. I have not be able to find a specification that gives a maximum acceleration value for the galvos, so for better or worse I want to have the highest acceleration as possible.

      My question is how to achieve this. Should I set the jerk value to 120,000 mm/min (2,000 mm/s) to allow the mirrors to instantly change speed from -1,000 mm/s to 1,000 mm/s when changing directions? I am not sure if the M566 could handle this high of a value. The documentation only specifies a minimal value, but the RRF configurator says the max value is 1200 mm/min. The other option is max out M201. What is the maximum acceleration value allowed?

      Thank you for taking the time to read my long post and provide any input if you are able!

      o_lampeundefined 1 Reply Last reply Reply Quote 0
      • DrDFloundefined
        DrDFlo
        last edited by

        To simplify my question, what is the maximum jerk value (M566) allowed?

        1 Reply Last reply Reply Quote 0
        • o_lampeundefined
          o_lampe @DrDFlo
          last edited by

          @drdflo
          I can't help you with the question, but want to share my solution of a similar problem with a Diode laser.
          The laser power is also constant when changing directions. That's especially annoying for raster/gray sclae engraving.
          I also had ringing issues with too high jerk and accel value, which might not bother you.

          I found a workaround by simply adding a rectangular frame around the image I wanted to engrave. That way the turning point and all the issues related to it happened outside of the image borders. Just have to figure out the required gap between frame and object and then choose a pale white color for the frame, so it doesn't get burned. (non-white, or it is ignored)

          DrDFloundefined 1 Reply Last reply Reply Quote 0
          • DrDFloundefined
            DrDFlo @o_lampe
            last edited by

            @o_lampe Thank you for your response!

            Your problem with ringing (and other design constraints) is why I went with mirror galvanometers. They can change direction almost instantaneously, so constant laser power should not be as much of a concern if I can use high jerk values.

            1 Reply Last reply Reply Quote 0
            • DrDFloundefined DrDFlo referenced this topic
            • Phaedruxundefined Phaedrux referenced this topic
            • First post
              Last post
            Unless otherwise noted, all forum content is licensed under CC-BY-SA