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

    Robotic kinematics

    Scheduled Pinned Locked Moved
    MultiAxis Printing
    22
    389
    47.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.
    • tony73undefined
      tony73 @JoergS5
      last edited by

      @JoergS5
      OK, see you soon!

      JoergS5undefined 1 Reply Last reply Reply Quote 0
      • JoergS5undefined
        JoergS5 @tony73
        last edited by

        This post is deleted!
        1 Reply Last reply Reply Quote 0
        • JoergS5undefined
          JoergS5
          last edited by

          @dc42 I have two short questions and hope you can easily answer them:

          The M208 XYZ, are they cartesian coordinates, and when using U it is meant as a second X? For rotational actuators, I would use the result of the kinematics world coordinates for the M208 values, not the angles? Do I understand this correctly?

          I have to inform the kinematics in advance before the G0/G1 move starts, what the complete movement will be. I added a seperate method for this in the kinematics. Where shall I add the call? (DDA/Move/...Init/Spin?) and are there additional parts where I have to add it (mesh compensation eg).

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

            It's entirely up to you what you use the U axis for. In the CNC world, conventionally UVW behave like a second XYZ system, and ABC are rotational axes. But RRF doesn't require that.

            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

            JoergS5undefined 1 Reply Last reply Reply Quote 0
            • JoergS5undefined
              JoergS5 @dc42
              last edited by

              @dc42 I meant are M208 values cartesian coordinates or stepper positions?

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

                @JoergS5 said in Robotic kinematics:

                @dc42 I meant are M208 values cartesian coordinates or stepper positions?

                They are in whatever units your kinematics assumes for U parameters in G1 commands.

                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

                JoergS5undefined 1 Reply Last reply Reply Quote 0
                • JoergS5undefined
                  JoergS5 @dc42
                  last edited by

                  @dc42 ok thanks, I try to use it correctly.

                  tony73undefined 1 Reply Last reply Reply Quote 0
                  • tony73undefined
                    tony73 @JoergS5
                    last edited by tony73

                    @JoergS5

                    good morning ! I took the two files with the latest changes FiveAxisRobotKinematics.h and FiveAxisRobotKinematics.cpp I put them in rrf 3.1.0 as I always did, I tried to in eclipse to recompile the .bin gives me this error,
                    axis 5 angle error.JPG

                    could you help me ? I don't know where I'm wrong!
                    axis 5 angle error 2.JPG

                    JoergS5undefined 1 Reply Last reply Reply Quote 0
                    • JoergS5undefined
                      JoergS5 @tony73
                      last edited by JoergS5

                      @tony73 you're right, I missed checking it in into github. I'll do this in a minute. The variables are a prepration to support P3 (hotend in the direction of the movement) and a new P4.

                      Sorry that I overlooked it.

                      1 Reply Last reply Reply Quote 0
                      • tony73undefined
                        tony73
                        last edited by tony73

                        @JoergS5

                        OK! eclipse firmware reloaded works! I would like to start building a robot that looks like this
                        k1.JPG

                        with example link 1 /150mm, link 2/ 200mm, link 3/ 200mm, link 4/ 100mm, link 5/ 80mm
                        the (link 4 could be 100mm? considering that I don't know if link 2 can go to less than 0 degrees (type arm 2 max 75 degrees min -45 degrees? and could you say reduction ratio would serve on the basis of these arms, for the 5 engines?

                        maybe I made a wrong speech!
                        if link 1 is 150mm, I can make link 4 of 100mm that is 50mm less than link 1, can there be a problem or can it be done? can create problems at link 2 for min angle 0?

                        JoergS5undefined 1 Reply Last reply Reply Quote 0
                        • JoergS5undefined
                          JoergS5 @tony73
                          last edited by JoergS5

                          @tony73 I think you confuse some of the distances, What you mark as link 1 distance has no meaning. Only how much it can rotate is important.
                          => to answer your question, different axis lengths are no problem. Longer will probebly be more stable. I will use between 100 and 200 also.

                          Link 2 min angle 0 is no problem. You must calibrate the angle at a different angle (eg 90 degree).
                          Your question according reduction ratio: which ratio do you plan?
                          At the 5 you must assemble something horizontal to hold a hotend if you want to use it for 3d printing.
                          The robot as such looks very stiff and will be precise (if the ratio is ok) imho. In axis 5 could be a harmonic drive. A planetoid gear could have backlash, but you could run it in P0 mode.

                          Axis 1 is very important to be precise (exactly horizontal rotation eg), you should consider making the rotating plate as big/good/stiff as possible.

                          tony73undefined 2 Replies Last reply Reply Quote 0
                          • tony73undefined
                            tony73 @JoergS5
                            last edited by

                            This post is deleted!
                            JoergS5undefined 1 Reply Last reply Reply Quote 0
                            • tony73undefined
                              tony73 @JoergS5
                              last edited by

                              @JoergS5
                              ok! I take note of all the advice! and thank you for your help! if these were the lengths of the robot arms ((X0.0: 0.0 Y0.0: 0.0 Z100.0 L200.0: 200.0: 100.0: 80.0)) what reduction ratio would you use so that the 5 motors have excellent precision?

                              about the second robot you are building how long do you need to finish it?

                              JoergS5undefined 1 Reply Last reply Reply Quote 0
                              • JoergS5undefined
                                JoergS5 @tony73
                                last edited by

                                @tony73 I don't exactly know the best ratio, the commercial robots often have 1:30 for every axis. My approach will be to calculate mathematically which is the best ratio:
                                high ratio means higher precision and more torque, but slower. So there will be an optimal ratio for the desired speed. Regarding the maximal extruder speed, the robot has a maximum speed. More speed (= low ratio) is not necessary and would result in lower precision. High ratio would be slow. The arm lengths are also important.

                                To calculate is on my long todo list...

                                1 Reply Last reply Reply Quote 0
                                • JoergS5undefined
                                  JoergS5 @tony73
                                  last edited by

                                  @tony73 said in Robotic kinematics:

                                  about the second robot you are building how long do you need to finish it?

                                  My recent firmware changes are the result of this building. The axis5offset (Xo, Yo) is to ease construction of axis 4 and 5. The main problem is axis 1. A few days left.

                                  tony73undefined 1 Reply Last reply Reply Quote 0
                                  • tony73undefined
                                    tony73 @JoergS5
                                    last edited by

                                    @JoergS5

                                    ok! could you write me what are the mandatory parameters from the last update, in M669?

                                    Is the 5 axis offset a help for robot construction problems (I think accuracy) or is it about something else?

                                    JoergS5undefined 1 Reply Last reply Reply Quote 0
                                    • JoergS5undefined
                                      JoergS5 @tony73
                                      last edited by

                                      @tony73 The documentation is current, just use the sample at the end. The parameters which are not mentioned in the example are all optional or have a default value. P3 /P4 implementation is not finished.

                                      The axis 4 must be exactly above axis 5. The axis5offset allows axis 5 to be outside this. This allows me to place axis 5 in front of arm 4. You'll see what I mean when I explain my construction. This is not documented yet (only the parameter, and it's already in the source and tested). Axis5offset has defaults 0.0/0.0.

                                      tony73undefined 1 Reply Last reply Reply Quote 0
                                      • tony73undefined
                                        tony73 @JoergS5
                                        last edited by

                                        @JoergS5

                                        I continue to follow your updates, thanks for the clarification and wait to see your robot!

                                        JoergS5undefined 2 Replies Last reply Reply Quote 0
                                        • JoergS5undefined
                                          JoergS5 @tony73
                                          last edited by

                                          @tony73 the robot you have shown could use a toolchanger at point 5 easily and should be a solid connection (like for CNC). But think about how to guide the wires and filament. I route it inside of the arms.

                                          1 Reply Last reply Reply Quote 0
                                          • JoergS5undefined
                                            JoergS5 @tony73
                                            last edited by JoergS5

                                            @tony73 I think I have understood M208 now after analyzing the firmware. The values are the axis values, not coordinates.
                                            So M208 will have X, Y, Z, U, V values for the 5 axes and an optinal W value for a rail. Parameter A is not necessary any more then, I changed the source and documentation.

                                            I've made a little try with Openscad to illustrate axis5offset in the documentation.

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