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

    Bio printer tool changer

    Scheduled Pinned Locked Moved
    Gcode meta commands
    6
    14
    690
    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.
    • T3P3Tonyundefined
      T3P3Tony administrators @falco22
      last edited by

      @roken22 interesting! In RRF 3.3 you will have the ability to use variables to store information and you can use the object model to query the extruder drive position. the logic could look something like this as part of each tool change macro:

      1. get and store extruder drive position for tool 1
      2. free tool 1
      3. Set extruder drive position for next extruder, tool 2
      4. pickup tool 2

      Do you need to physically move the extruder motor to the right position to match up with the point that the syringe plunger is at, or simple keep a log of how far down the syringe each tool is at?

      www.duet3d.com

      falco22undefined 1 Reply Last reply Reply Quote 0
      • falco22undefined
        falco22 @T3P3Tony
        last edited by

        @t3p3tony I need to physically move the extruder motor to the last position of the plunger. It would be much easier to have each head with an extrusion system but in this way I reduce the amount of hardware.
        I already built and programmed a core xy system with two bays and the exchange works fine, but I still don't know how to save the information on the advance of the syringes.

        T3P3Tonyundefined 1 Reply Last reply Reply Quote 0
        • T3P3Tonyundefined
          T3P3Tony administrators @falco22
          last edited by

          @roken22

          You need to be running RepRapFirmware version 3.3b2, have a look at:

          https://duet3d.dozuki.com/Wiki/GCode_Meta_Commands#Section_Variables

          along with the object model keys:
          move.extruders[0].position
          and possibly
          echo move.extruders[0].position

          changing the "0" to the extruder drive number you want if its not 0.

          Once you know you can get the right numbers out you can save this number to a variable during the tfreeN.g and restore it during the tpreN.g sequences. You will need one variable per syringe tool.

          www.duet3d.com

          CNCModellerundefined 1 Reply Last reply Reply Quote 0
          • CNCModellerundefined
            CNCModeller @T3P3Tony
            last edited by

            @t3p3tony

            Are the variables persistent through a power cycle? Just thinking that a partly used "plunger" might be used after a reboot.

            Would they also be stored for recovery after a power outage?

            Just interested for now lol.

            Cheers
            Barry M

            Polar Duet3 Mini + 1HCL
            https://youtube.com/playlist?list=PLWjZVEdMv1BY82izahK45qKh-hp3NFkix
            Wanhao D4S: Duet2
            https://forum.duet3d.com/post/296755
            K40 Laser, Duet2
            https://forum.duet3d.com/post/312082
            Wanhao D5S
            https://www.youtube.com/CNCModellerUK

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

              @cncmodeller, variables are not current persistent through a power cycle. I plan to add them to the data saved when resume-after-power-fail is used (see M911).

              To save them always, I would need to add a parameter to M911 to specify that certain parameters are to be saved to SD card even when no SD card print is in progress.

              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

              CNCModellerundefined 1 Reply Last reply Reply Quote 0
              • CNCModellerundefined
                CNCModeller @dc42
                last edited by

                Just a thought, could you use a homing switch to register when the drive plunger contacts the diaphragm in the swappable element?

                Like a homing sequence for the plunger every time a change has occurred.

                I'm imagining a plunger that drives up behind the back of the diaphragm in a large syringe 💉 after you remove the diaphragm stem.

                Interesting stuff!

                Polar Duet3 Mini + 1HCL
                https://youtube.com/playlist?list=PLWjZVEdMv1BY82izahK45qKh-hp3NFkix
                Wanhao D4S: Duet2
                https://forum.duet3d.com/post/296755
                K40 Laser, Duet2
                https://forum.duet3d.com/post/312082
                Wanhao D5S
                https://www.youtube.com/CNCModellerUK

                falco22undefined 1 Reply Last reply Reply Quote 0
                • falco22undefined
                  falco22 @CNCModeller
                  last edited by

                  @cncmodeller It's not a bad idea! you say like in the photo? the active head searches for the start of travel after each exchange, and then begins pressing until endstop B encounters the plunger, then the tool is carried away. Maybe I could use an optical endstop so I don't put pressure on the plunger. It would be a "design solution", this is getting interesting. I will also investigate the function of variables.Sin título.jpg

                  CNCModellerundefined MikeSundefined 2 Replies Last reply Reply Quote 0
                  • CNCModellerundefined
                    CNCModeller @falco22
                    last edited by

                    @roken22

                    Yep that's about it!

                    Not sure how that'd work from a setup / gcode perspective.

                    I've been toying with a clay extruder for ages (just because it's cool lol) but couldn't figure out how to get enough clay in an off the shelf syringe to make it useful. However if I could just pick up the next one off a carousel and carry on printing, that'd work!

                    Please keep us updated I'd love to follow along with your build.

                    All the best
                    Barry M

                    Polar Duet3 Mini + 1HCL
                    https://youtube.com/playlist?list=PLWjZVEdMv1BY82izahK45qKh-hp3NFkix
                    Wanhao D4S: Duet2
                    https://forum.duet3d.com/post/296755
                    K40 Laser, Duet2
                    https://forum.duet3d.com/post/312082
                    Wanhao D5S
                    https://www.youtube.com/CNCModellerUK

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

                      @roken22
                      Wouldn't it be possible to home the tool to top position before changing the tool and after toolchange you home it with sensorless homing to the bottom. With reduced current, you won't push the diaphragm too hard and still "know" your plunger is in contact.

                      1 Reply Last reply Reply Quote 0
                      • T3P3Tonyundefined
                        T3P3Tony administrators
                        last edited by

                        It sounds like there are potential mechanical solutions to this using endstops/sensor less homing that might make saving the positions, certainly through a power cycle, redundant.

                        Another point is you could log the variable on every tool change and pause using M118 L command. While that wont tell you the position of the tool that's currently operating, so some manual intervention will be required in the case of a power cut, In the case of manually advancing extruder until its in contact with the plunger, the other inactive tools positions can be read from the log file and then entered in the console. That would probably be enough of a work around until the power fail resume logic @dc42 mentioned is implemented.

                        www.duet3d.com

                        falco22undefined 1 Reply Last reply Reply Quote 0
                        • falco22undefined
                          falco22 @T3P3Tony
                          last edited by

                          @t3p3tony yes, I think it can be solved mechanically with endstop. How does the sensorless work on a leadscrew? you have to reduce the current a lot, right?

                          1 Reply Last reply Reply Quote 0
                          • MikeSundefined
                            MikeS @falco22
                            last edited by

                            @roken22 maybe use a magnet on each syringe and an hall sensor on the "extruder". That will allow also for adusting the switching distance without mechanical parts.

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