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

    6XD - AC Servo drive (single-ended and differential signal)

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    6
    38
    2.1k
    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.
    • Zdenkoundefined
      Zdenko @dc42
      last edited by

      @dc42 Hi,

      I will just put 1k on DIR pins also, to be on a safe note. 😊

      Yes, this is my second revision of the Pick and Place machine, I am currently working on a conveyor system for it and later I need to implement feeders.

      Zdenkoundefined Zsevenundefined 2 Replies Last reply Reply Quote 0
      • Zdenkoundefined
        Zdenko @Zdenko
        last edited by

        @dc42 Hi,

        After further testing, it seems that I am actually getting position shifts, it is quite random, sometimes only in X and sometimes only in Y, and sometimes X and Y. Shift warry from 0.02mm to almost 0.2mm on long-distance moves.

        Wires from 6XD to Servo drivers are around 30cm, and both X and Y have pull-up resistors on STEP and DIR.

        For a test, I changed T1.3:1.3:1:1.3 to T1.4:1.4:1:1.4 and T1.5:1.5:1:1.5, it works good but I need to reduce the overall acceleration speed, it seems I will need to change overall precision to 0.02mm in the end If I want to move that fast and in a repeatable way. 🤔

        Thank you,

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

          @Zdenko try leaving rhe first two T values at 1.3 and increasing the last two back to 2.7.

          If that doesn't work, try T1.0:1.6 :2.7:2.7.

          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

          Zdenkoundefined 1 Reply Last reply Reply Quote 1
          • Zdenkoundefined
            Zdenko @dc42
            last edited by Zdenko

            @dc42 Hi,

            T1.3:1.3 :2.7:2.7 is not working, the same random shifts unfortunately.

            T1.0:1.6 :2.7:2.7 works much better, I am getting on Long-distance move around 0.01mm shift on X-Axis in negative (so it is losing steps), so in 10 Long-distance moves I lose around 0.1mm in X axis.

            Long-distance movement is machine Max Diagonal travel, so both X and Y axis are moving at rapid speed.

            The thing I noticed with T1.0:1.6 :2.7:2.7 after around 30mins of testing, 2 times I had like motor "stall", motors on Long-distance rapid speed in the middle of movement lost the acceleration and continued to move which resulted in a position shift, and in all other cases it was like I mentioned above.

            Thank you,

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

              @Zdenko thanks, the fact that 1.0:1.6 works better than 1.3:1.3 confirms that the issue is that the STEP optocoupler in your driver does not turn off fast enough.

              RRF on the 6XD allows you to configure the first value (step pulse width) very precisely, however the second value (step pulse interval) will be rounded up so that the first+second value is a multiple of 1.33us. So you could try e.g. 0.8:1.8 or 0.6:2.0.

              Send M569 P0 to see what the T values you specified have been rounded up to.

              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

              Zdenkoundefined 2 Replies Last reply Reply Quote 1
              • Zdenkoundefined
                Zdenko @dc42
                last edited by Zdenko

                @dc42 Hi,

                I tested:

                0.8:1.8:2.7:2.7 (M569 P0 actual 0.8:1.9:4.0:3.2us) - again some minor shifts
                0.6:2.0:2.7:2.7 (M569 P0 actual 0.6:2.0:4.0:3.4us) - can not even move the X motor, but Y is moving, strange...
                0.8:2.0:2.7:2.7 (M569 P0 actual 0.8:3.2:4.0:3.2us) - just tested to see what would hapen, no improvements.

                Does maybe grace period have anything to with this, I am shooting blind now?

                M595 P120 R3

                I will need to spend a lot of time probably on this during a weekend to try and find sweet spot. 🤠

                Thank you,

                1 Reply Last reply Reply Quote 0
                • Zdenkoundefined
                  Zdenko @dc42
                  last edited by

                  @dc42 Hello,

                  After some time I settled for now on T1.0:1.6:3.0:3.0 on all 6 outputs on 6XD, but I ran into another issue.

                  6XD is controlling two external servo drivers, and over CAN-FD I have two 3HCs where I have a total of 6 stepper motors and this is all working well.

                  I want to implement the conveyor system for the PCBs, There will be 3 zones:

                  • First zone "Loader" - I need two additional stepper motors working in parallel
                  • Second zone "Placement" - I need two additional stepper motors working in parallel
                  • Third zone "Unloader" - I need two additional stepper motors working in parallel
                  • Conveyor Width - one additional motor

                  So a total 7 new stepper motors are needed, my plan was to use three outputs from 6XD to control 6 external drivers for "zones" as they will work in pairs and one output for Conveyor Width.

                  A problem in what I ran was on testing the Conveyor Width is, with all outputs on 6XD setup to T1.0:1.6:3.0:3.0 external driver is too slow to process the step/direction as the signal is too fast, and if I change the settings only of the output that is controlling the external driver for Conveyor Width and get it to work, servo outputs get slow and I can not reach the 3k RPM any more, only around 1750.

                  Is there a way to set it up, or do I need to buy another 6XD just for the complete conveyor system?

                  Thank you,

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

                    @Zdenko the way the step pulse timings work means that you can't set separate timings on each one. One option, for the Conveyor width, is to use a 1XD.

                    www.duet3d.com

                    Zdenkoundefined 1 Reply Last reply Reply Quote 0
                    • Zdenkoundefined
                      Zdenko @T3P3Tony
                      last edited by

                      @T3P3Tony Hi!

                      I was considering that, as all would be on the same COM port in the end:

                      USB COM_1 ---> 6XD ---> 3HC ---> 3HC --->1XD --->1XD --->1XD --->1XD

                      There is an option in OpenPnP to have multiple controllers, in that case, I would go with:

                      USB COM_1 ---> 6XD ---> 3HC ---> 3HC
                      USB COM_2 ---> 6XD ---> External drivers

                      Or even:

                      USB COM_1 ---> 6XD ---> 6XD ---> 3HC ---> 3HC

                      When I compare prices of another 6XD or 4 pieces of 1XD, 6XD would be a better choice as it would be in the end same price but I would get many more options and I/O-s, so I am not smart here what to choose, hmm.

                      Are there any limitations that I do not see?

                      Thank you,

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

                        @Zdenko I recommended a 1XD because it sounded like you only needed 1 output for the conveyor width:

                        and one output for Conveyor Width.

                        www.duet3d.com

                        Zdenkoundefined 1 Reply Last reply Reply Quote 0
                        • Zdenkoundefined
                          Zdenko @T3P3Tony
                          last edited by Zdenko

                          @T3P3Tony Hi!

                          I only tested one output where I discovered that issue and that was for "Conveyor Width".

                          But as mentioned I need a total 7 new stepper motors, my plan was to use three outputs from 6XD to control 6 external drivers for "zones" as these steppers will work in pairs and one output for Conveyor Width, so a total of 4 outputs are needed.

                          I think the most cost-effective solution would be to go with an additional 6XD. 🤔

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

                            @Zdenko yes that does sound like the case, and as you say you get a lot more IO. Each 6XD will have the same set of timings.

                            Regarding controlling each one on its own USB vs using one as a expansion board depends on if you need to synchronise the motion. if you do then use the second 6XD as an expansion board.

                            www.duet3d.com

                            Zdenkoundefined 2 Replies Last reply Reply Quote 0
                            • Zdenkoundefined
                              Zdenko @T3P3Tony
                              last edited by

                              @T3P3Tony Hi!
                              Yes, you are correct, it would give me more options and even connectivity as a separate controller on its own USB or over CAN-FD, so I am positive I will go in that direction.

                              Thank you for your support.

                              1 Reply Last reply Reply Quote 0
                              • Zdenkoundefined
                                Zdenko @T3P3Tony
                                last edited by

                                @T3P3Tony Hi!

                                Quick question, If I would connect one more 6XD on the CAN-FD line as a "slave", I would love to connect it like this:

                                6XD -> 6XD(Slave) ----------- Longer CAN cable to the head of the machine ------------>3HC -> 3HC(Termination)

                                But as mentioned in Duet Documentation, 6XD has only one CAN-FD connection and it should be connected last in line if used as Slave, in that case, I would need to run a new cable from the head of the machine back to the enclosure where the rest of the electronic is and I don't like that, is there any other option?

                                Thank you,

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

                                  @Zdenko it's acceptable to have short stub connections on the CAN bus. You should cut the CAN termination jumper trace on the 6XD that is not at the end of the bus.

                                  Is there a reason why you want to use external drivers for all these motors?

                                  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

                                  Zdenkoundefined 1 Reply Last reply Reply Quote 0
                                  • Zdenkoundefined
                                    Zdenko @dc42
                                    last edited by

                                    @dc42 Hi,

                                    I am looking for a way to connect 7 more steppers, as I can not use the 6XD which has timings set for two axis (X and Y) for external AC Servo Drivers, and as these timings are too fast external stepper motor drivers I need to find another solution that is cost-effective.

                                    Now I basically have 4 STEP/DIR outputs on 6DX that can not be used because of this setup, so I need a way to have at least an additional 4 STEP/DIR outputs that are not "triggered" by those timings for X and Y Servo axis.

                                    I would need 4 STEP/DIR outputs, or some combination of Duet 3 hardware to reach 7 integrated motor drivers, in that case, I would not need 7 external drivers.

                                    If I go in the direction of Duet hardware, I would need two additional 3HC and one 1HC to have 7 integrated motor drivers, and that is in the end more expensive than one additional 6XD and 7 external drivers (where I need to buy 5 more only as I already have two)

                                    With an additional 6XD, I would probably be more flexible, and I would only use 4 STEP/DIR from the board.

                                    3 - Step/Dir outputs for (Two Stepper Drivers in parallel) = 6 drivers
                                    1 - Step/Dir output for Conveyor Width Driver = 1 driver

                                    If there is any other solution, I would be happy to hear. 😊

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

                                      @Zdenko what size stepper motors are they? A Duet 3 Mini and Duet 3 Mini 2+ used as an expansion board to the 6XD might be an option.

                                      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

                                      Zdenkoundefined 1 Reply Last reply Reply Quote 0
                                      • Zdenkoundefined
                                        Zdenko @dc42
                                        last edited by

                                        @dc42 Hi!

                                        6pcs - Nema 17 26Ncm(36.82oz.in) 1.2A 42x42x30mm
                                        1pc - Dual Shaft Nema 17 Nominal Voltage: 4.83V 1.5A 42x42x60mm

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

                                          @Zdenko yes Duet 3 Mini with the Mini2+ expansion can easily drive those.

                                          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

                                          Zdenkoundefined 1 Reply Last reply Reply Quote 0
                                          • Zdenkoundefined
                                            Zdenko @dc42
                                            last edited by

                                            @dc42 Hi,

                                            Thank you, that makes sense, it would be the best solution, all would be integrated into the Duet3 Eco system, no external drivers would be required, space in an enclosure will be saved, and no additional wiring would be needed.

                                            When it comes to connecting Duet 3 Mini 5+ with the rest of the Duet3 hardware in my case with 6XD and 2 pieces of 3HCs, to connect it on the CAN-FD line I would only need a short "stub" for CAN-FD and configure the Duet 3 Mini 5 config.g with M954 and set the CAN-FD ID, all other is then configured in 6XD config.g right?

                                            As I have motors that are working in parallel, in config.g, drivers should have the same "letter of axis" assigned to Drivers that are moving at the same time, is that correct?

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