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

    Support for dual carriage CoreXY with shared x-axis

    Scheduled Pinned Locked Moved
    Firmware wishlist
    5
    19
    3.5k
    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.
    • larsundefined
      lars
      last edited by

      Hi, I’m building a corexy printer with two carriages sharing the x-axis and four steppers for xy drive much like the project described over at the reprap forum:
      http://forums.reprap.org/read.php?397,737863

      David, you expressed interest in supporting this kind if kinematics in that thread and discussed a bit about what would need doing in the firmware. I hope you still are interested in adding support for this? My project has progressed enough to be able to test it when its implemented.

      A bit more about the project. Outer dimensions (without top enclosure mounted) are 7507501200mm built using 4040 alu extrusion, bed size 500500mm. I’m planning on an enclosed design and have put all steppers and electronics at the bottom. I’ll use two Zesty Nimbles for remote direct extruder drive and duet wifi + duex5 for controller board. I’m planning on a bed with three steppers using the upcoming true bed levelling feature.

      The xy-axis is up and running, I have uploaded a short recording to youtube for anyone who is interested:
      https://youtu.be/nfgzNGWNkbI

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

        I am currently reworking the kinematics code in RRF to make it more modular. When I have finished that, it should be straightforward to implement support for that configuration.

        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
        • larsundefined
          lars
          last edited by

          Sounds good, I’m excited to try it out!

          1 Reply Last reply Reply Quote 0
          • DjDemonDundefined
            DjDemonD
            last edited by

            Along similar lines would it be possible to control using Duet electronics, a dual x carriage corexy, with one corexy mechanism, rather than the dual mechanisms in Lars' design, with a second x-carriage attached to it in a more conventional cartesian style with a motor stacked onto the axis? X and Y moves for the first head would be as a standard corexy, but for the second head A, B and C motors (as per diagram) would have to move.

            I have no idea yet if such a mechanism is practical but it seems less complex than a dual corexy.

            I figure the kinematics for the second carriage would involve parking the 1st (corexy) carriage at the left for example, then using the A and B motors to control the Y position of the x axis, with the third (C) motor controlling the x position of the 2nd carriage.

            I'd have to figure out the belt paths so that the A and B belts could pass through the 2nd carriage.

            The x axis would still be constrained by the balanced tension of the A and B belts whilst the 2nd carriage moved back and to, not inducing any unwanted forces on the whole assembly.


            Sorry for back-of-fag-packet diagram.

            Simon. Precision Piezo Z-Probe Technology
            www.precisionpiezo.co.uk
            PT1000 cartridge sensors NOW IN, just attach to your Duet board directly!

            1 Reply Last reply Reply Quote 0
            • larsundefined
              lars
              last edited by

              Adding a stepper to the gantry might be a simple way to add an extra hotend to an existing printer. Using four steppers in a dual corexy with shared gantry do in my opinion have a few advantages even through you could argue its more complex. You get more effective belt width moving the y-grantry. There will be more torque available for moving the y-gantry. If the active hotend moves 45degres, only one stepper will drive it in a single corexy setup. In the configuration discussed here there will be 3 motors as the inactive carriage will move only in y parked at one end of x. Adding a stepper to the gantry will add a lot of weight to the gantry, especially if you use bowden or remote drives for extruders.

              1 Reply Last reply Reply Quote 0
              • larsundefined
                lars
                last edited by

                Btw, would not the asymmetric nature of mass of the stepper one one side of the gantry cause problems? Maybe cause biding on y movements?

                1 Reply Last reply Reply Quote 0
                • larsundefined
                  lars
                  last edited by

                  @DjDemonD: I would recommend considering a design with a single carriage with dual extruders picked up with electromagnetics instead.

                  1 Reply Last reply Reply Quote 0
                  • DjDemonDundefined
                    DjDemonD
                    last edited by

                    I am just curious and I think the parallel discussion on reprap forum says it all.

                    Its not that I don't admire the effort and ingenuity to make a dual corexy mechanism, I am just interested to see if it can be done quicker and cheaper, and whether doing so will result in much lower quality or utility?

                    Talking on the other thread about a race between you and prototypical to make the first IDEX corexy. All I need is a redesigned R y-slide, a nema 14 motor, a 12H rail carriage and some belts 🙂 and most critically a little help from DC42 with getting the firmware to move the right motors when the second carriage is active.

                    Simon. Precision Piezo Z-Probe Technology
                    www.precisionpiezo.co.uk
                    PT1000 cartridge sensors NOW IN, just attach to your Duet board directly!

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

                      Firmware version 1.19 has a refactored movement system that makes adding new kinematics much easier than before. But I need to get a new beta out with some further improvements, then I have some OEM firmware requests to attend to. After that I should be able to look at this again. Or, if you have some familiarity with C++ programming, you could do it yourself, and I will provide guidance.

                      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
                      • DjDemonDundefined
                        DjDemonD
                        last edited by

                        Thanks David. I will wait, I'm not a programmer. Though I might be underestimating the difficulty, in my proposed scheme I presume it would just be using the corexy kinematics only in y-movement mode when the 2nd carriage was active, with x position determined by its own dedicated motor.

                        Simon. Precision Piezo Z-Probe Technology
                        www.precisionpiezo.co.uk
                        PT1000 cartridge sensors NOW IN, just attach to your Duet board directly!

                        1 Reply Last reply Reply Quote 0
                        • larsundefined
                          lars
                          last edited by

                          @DjDemonD:

                          Talking on the other thread about a race between you and prototypical to make the first IDEX corexy. All I need is a redesigned R y-slide, a nema 14 motor, a 12H rail carriage and some belts 🙂 and most critically a little help from DC42 with getting the firmware to move the right motors when the second carriage is active.

                          Damn, now I'll have to pay David not to implement your control scheme 😉

                          @dc42:

                          Firmware version 1.19 has a refactored movement system that makes adding new kinematics much easier than before. But I need to get a new beta out with some further improvements, then I have some OEM firmware requests to attend to. After that I should be able to look at this again. Or, if you have some familiarity with C++ programming, you could do it yourself, and I will provide guidance.

                          Joking aside I might have a look at the code, although it was 15 years since I did much c/c++. Doing mostly java and a bit of javascript at work now days. But need to finish the bed design and build first so you might be supporting this kinematics before I get there 🙂

                          1 Reply Last reply Reply Quote 0
                          • larsundefined
                            lars
                            last edited by

                            I was waiting for some components to arrive so I thought I give this feature a go.
                            The implementation is pretty much done, I will put the final touches on it when David has implemented “invisible axis” and reworked homing. Once the Is done I’ll make a pull request to get it included into Davids version.

                            Everything looks to be working, a short clip of my yet unfinished printer homing and starting to print: https://youtu.be/74-8pjNVYNI

                            1 Reply Last reply Reply Quote 0
                            • Whitewolfundefined
                              Whitewolf
                              last edited by

                              Nice,

                              Do you think independant xyz carriages will be possible after digging into the code?

                              Exploring the universe wherever the tech blows

                              1 Reply Last reply Reply Quote 0
                              • larsundefined
                                lars
                                last edited by

                                Adding corexyz was pretty easy, David have done some work to make that kind of task simple. It would be easy to define a kinematics with two independent carriages (xyz and uvw) but I guess you would need to create a new slicer to use them concurrently…

                                1 Reply Last reply Reply Quote 0
                                • prot0typ1calundefined
                                  prot0typ1cal
                                  last edited by

                                  Registered here just for this thread 🙂

                                  Lars, any chance sharing your code?
                                  Been looking through the Repetier files and cannot for the life of me find the section for coreXY to modify for coreXYU.

                                  Just got my 7" PanelDue to flash, and am working on flashing the arduino Due (mine is a RADDS+Due, sorry not Duet).

                                  Cheers,

                                  Tom
                                  AKA Hlidskjalf maker

                                  1 Reply Last reply Reply Quote 0
                                  • larsundefined
                                    lars
                                    last edited by

                                    Hiya Tom, I posted on your reprap thread with a link to my github repo, hope you can make it work for you!

                                    1 Reply Last reply Reply Quote 0
                                    • prot0typ1calundefined
                                      prot0typ1cal
                                      last edited by

                                      Got it,
                                      Thanks man.
                                      Your rig is looking pretty sweet, love the youtube vid!

                                      1 Reply Last reply Reply Quote 0
                                      • prot0typ1calundefined
                                        prot0typ1cal
                                        last edited by

                                        I see dc42 just released 1.19beta9 on GitHub 🙂

                                        1 Reply Last reply Reply Quote 0
                                        • larsundefined
                                          lars
                                          last edited by

                                          Yep, will give it a go this evening. Also excited to start testing bed levelling using multiple independent Z motors. Hope you have solved your controller issues Tom and can start testing your printer!

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