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

    Bed leveling using strain gauges as endstops/probes

    Scheduled Pinned Locked Moved
    General Discussion
    5
    11
    1.6k
    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.
    • Visionaryundefined
      Visionary
      last edited by Visionary

      I am trying to figure out best way level print bed on my printer (Duet 3 6hc board). I was wondering if it was possible to use strain gauges at each contact point of the bed to sense touching of a nozzle. Measuring the actual force would not be necessary. Instead use of the strain gauges as simple adjustable LOW/HIGH switch would be enough. I would still use regular mehcanical endstops at max to roughly level the bed.

      Adafruit Industries LLC 4543:
      https://www.digikey.fi/en/products/detail/adafruit-industries-llc/4543/13148777

      Some benefits of this kind of setup:

      • Automatic bed leveling is possible
      • Doesn't matter what kind of hotend is used or what height it is.
      • Hitting the bed can always be sensed

      Some problems:

      • How to connect/wire strain gauges (cant be directly connected to Duet)?
      • Strain gauges use low voltages
      • Price and finding suitable strain gauge

      printer272022.jpg

      My printer has (or will have at some point) two extruders and 3 leadscrew bed setup that allows true bed leveling. The bed itself is machined aluminum plate with glass sheet as print surface so it can be assumed to be flat. I was thinking of placing the strain gauges at each arm plate (between ball joint and linear rail blocks in the picture).

      Main printer: 3-5 Axis, 400x400x450 Duet 6HC || https://grabcad.com/eetu-4/models

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

        @visionary strain gauges need to be used with amplifiers. There are some standard strain gauge ICs available, however many of them have slow sample rates because they are intended for use in digital scales.

        To detect nozzle contact with the bed, you don't need to read absolute values of load, just sudden changes. You could use a circuit similar to the one we use in the Smart Effector version 3, which you can find at https://github.com/Duet3D/SmartEffector/tree/master/SmartEffector/SmartEffector_v3.0. With a little modification you could feed the output from the three op amps to a single attiny microcontroller.

        An alternative would be to use force sensitive resistors, which have been used for many years on delta printers. See https://reprap.org/wiki/FSR for an overview. You can buy a board that interfaces three FSRs to a controller, see https://github.com/JohnSL/FSR_Endstop.

        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
        • oliofundefined
          oliof
          last edited by

          an alternative strain gauge design that uses resistors like Smart Effector is available at https://github.com/IvDm/Z-probe-on-smd-resistors-2512 and may be easier to adapt for a typical box style printer.

          <>RatRig V-Minion Fly Super5Pro RRF<> V-Core 3.1 IDEX k*****r <> RatRig V-Minion SKR 2 Marlin<>

          1 Reply Last reply Reply Quote 0
          • Visionaryundefined
            Visionary
            last edited by

            Using actual strain gauges seems hard. FSR mounting is not easy either, but it is much easier to wire/connect to Duet if I can just make use of voltage dividers.

            Main printer: 3-5 Axis, 400x400x450 Duet 6HC || https://grabcad.com/eetu-4/models

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

              @oliof said in Bed leveling using strain gauges as endstops/probes:

              an alternative strain gauge design that uses resistors like Smart Effector is available at https://github.com/IvDm/Z-probe-on-smd-resistors-2512 and may be easier to adapt for a typical box style printer.

              I advise against using the electronics in that design because the HX711 chip it uses suffers from the slow sample rate that I mentioned.

              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 1
              • samlogan87undefined
                samlogan87
                last edited by

                @Visionary on a complete side note, I really like you implementation of your bed setup. I have been looking for a way to do that without printing parts. Given me some food for thought

                Custom Core-XY

                Visionaryundefined 1 Reply Last reply Reply Quote 0
                • lord binkyundefined
                  lord binky
                  last edited by

                  I used the FSR and johnsl board on my delta for awhile and it did pretty well after working out some kinks in my mounting. Mapping a bed for delta autocal isn't so great since there is some deviation in response simply since the force varies between 3 sensors based on where you touch, but for leveling it was more than sufficient. Main reason i went contact-less on any sensor i could. Using a brass nozzle to touch the bed would deform the hole eventually, enough to irk me on a calibration cube (well, immediately if i crashed as you'd expect). The johnsl board would likely do great on sensitivity if the fsr's weren't loaded by a weight like the bed depending how you arrange it too.

                  Visionaryundefined 1 Reply Last reply Reply Quote 0
                  • Visionaryundefined
                    Visionary @samlogan87
                    last edited by

                    @samlogan87
                    If I did another printer like this I would use belts instead of screws on z-axis. However, Use of screws allowed me to not have any printed parts on z.

                    Main printer: 3-5 Axis, 400x400x450 Duet 6HC || https://grabcad.com/eetu-4/models

                    1 Reply Last reply Reply Quote 0
                    • Visionaryundefined
                      Visionary @lord binky
                      last edited by

                      @lord-binky
                      I just ordered some fsr resistors. I was thinking of adding potentiometers in series with them or correcting z height with g-code commands if necessary. If adding fsr resistors to bed wont work I will try putting them on extruder instead.

                      Main printer: 3-5 Axis, 400x400x450 Duet 6HC || https://grabcad.com/eetu-4/models

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

                        @visionary if you are using FSRs then I suggest you get the JohnSL board.

                        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

                        Visionaryundefined 1 Reply Last reply Reply Quote 0
                        • Visionaryundefined
                          Visionary @dc42
                          last edited by Visionary

                          @dc42

                          I couldn't find European supplier for them, but I will try ordering one from the US.

                          Main printer: 3-5 Axis, 400x400x450 Duet 6HC || https://grabcad.com/eetu-4/models

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