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

Robotic kinematics

Scheduled Pinned Locked Moved
MultiAxis Printing
22
389
46.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.
  • undefined
    tony73 @JoergS5
    last edited by 6 Sept 2020, 12:30

    @JoergS5
    good morning ! i was trying duet 3 6ch with 5 stepper motors connected (one test) to see, in config .g gave M669 of your example M669 K13 X20.0: 5.0 Y0.0: 10.0 Z50.0 R0 L300.0: 400.0: 200.0 : 100.0 P0 but I changed R1 to R0 to have 5 stepper motors, duet 3 is connected to the pc with usb and simplify 3d. If I write M699 it responds like this
    simplify m669.JPG

    the lengths of the arms are missing and the parameter (R) if I write M669 L300.0: 400.0: 200.0: 100.0 accepts the arms but for (R0) nothing does not accept! what problem could that be?
    M669 L parametro.JPG

    another thing is the total homing, it should be (home5axisrobot.g) but writing G28 does not accept only (homeall.g) or single axes, example (homex.g) , help !!!!home5axisrobot.JPG

    here is the (config.g) not very accurate fact, for a kidnapped test and little time available! Hello !!
    config 1.JPG

    config 2.JPG

    undefined 1 Reply Last reply 6 Sept 2020, 13:18 Reply Quote 0
    • undefined
      JoergS5 @tony73
      last edited by 6 Sept 2020, 13:18

      @tony73 I cannot detect a bug in the source at the first view. Please let me some time, I can look at it the next days.

      The homeall file is called home5axisrobot.g and homallg is not needed. This was a declaration in
      static constexpr const char *Home5AxisRobotFileName = "home5axisrobot.g";
      but I am not sure whether it is used correctly. I will check it also.

      undefined 1 Reply Last reply 6 Sept 2020, 16:01 Reply Quote 0
      • undefined
        Antomy5
        last edited by 6 Sept 2020, 14:47

        I've used the term kinematics a number of times in this lecture and I haven't really been very clear about what it means. Kinematics is a branch of mathematics ...

        undefined 1 Reply Last reply 6 Sept 2020, 14:56 Reply Quote 0
        • undefined
          JoergS5 @Antomy5
          last edited by 6 Sept 2020, 14:56

          @Antomy5 I don't know the definition, but I know what it means at 3D printers and robots: kinematics are functions of movement from actuators to the cartesian coordinates, and inverse kinematics is the other direction.
          Kinematics in physics describe the motion of points or bodies, I think this is similar.

          1 Reply Last reply Reply Quote 0
          • undefined
            tony73 @JoergS5
            last edited by 6 Sept 2020, 16:01

            @JoergS5

            OK !! you haven't tried to connect a duet card with homing motors and switches, to try it you can, at least see if the parameters type M669 respond (the various R0, R1, R2, P0, P1, P2: nnn, Lnnn: mmm: ppp: qqq, etc .... the parameter (R) seems to me to answer, but it is not seen when calling M669, home5axisrobot.g does not accept it, instead takes homeall.g, anyway thank you !!! and I wait !!!

            undefined 2 Replies Last reply 6 Sept 2020, 16:55 Reply Quote 0
            • undefined
              JoergS5 @tony73
              last edited by 6 Sept 2020, 16:55

              @tony73 the reason why R0 is not visible is clear: I added it short time ago, it's not included in the status message yet. I'll add it.
              I'll fix the other problems soon and tell you when I have a new source checked in in github.

              1 Reply Last reply Reply Quote 0
              • undefined
                JoergS5 @tony73
                last edited by JoergS5 9 Jun 2020, 20:10 6 Sept 2020, 20:09

                @tony73 Hello, I've found the errors and corrected them. I used a method which had unexpected side effects, so now I avoided it. The new release is checked in.

                I changed the homefile name to homeall.g

                Please feel free to report me if you find something else. I'll finish my prototype next, so I can test too (e.g. unusual arm movements).

                undefined 2 Replies Last reply 7 Sept 2020, 00:23 Reply Quote 0
                • undefined
                  tony73 @JoergS5
                  last edited by 7 Sept 2020, 00:23

                  @JoergS5

                  Hello!! you were very fast, I recompiled the changes m669 looks ok! everything is visibleM669 OK.JPG

                  now i have to build a robot arm to try, i know the functions of the arms and the joints counterclockwise positive degrees clockwise negative degrees scara in this and similar, the problem remains that I don't understand this! the function !
                  asse 1 2.JPG

                  I don't understand what to measure and how to build axis 1 and axis 2! what help does this parameter give you? you said you wanted flexibility, referring I believe the imperfections of the construction of the robot, thanks!

                  1 Reply Last reply Reply Quote 0
                  • undefined
                    tony73 @JoergS5
                    last edited by 7 Sept 2020, 02:28

                    @JoergS5
                    ps . good morning! I re-read your help and I think I understand how it works (this feature)asse 1 2.JPG

                    can you just tell me if there is a limit of coordinates x, y, z ? can this be put?
                    M669 K13 X70.0: 70.0 Y70.0: 70.0 Z50.0 .........

                    undefined 1 Reply Last reply 7 Sept 2020, 06:17 Reply Quote 0
                    • undefined
                      JoergS5 @tony73
                      last edited by JoergS5 9 Jul 2020, 06:40 7 Sept 2020, 06:17

                      @tony73 you can simply build your robot as you like. You measure the properties of the robot after building the robot and set the parameters:

                      • measure arm lenghts 2 to 5
                      • measure where axis 1 and axis 2 are located and set parameters X, Y and Z according to the description (arms 2 and 3 parallel to x axis). Those coordinates are the places where you put the axes.
                      • measure and set the angles for all axes by homing or external measuring

                      Just build the robot, I will explain it better soon. From your questions I see that I did not explain it good enough. I will make it clearer with better images when I have a prototype my own and I can make images. The reason why I did not use images from the internet is, I wanted to avoid licensing problems.

                      undefined 1 Reply Last reply 8 Sept 2020, 14:20 Reply Quote 0
                      • undefined
                        tony73 @JoergS5
                        last edited by 8 Sept 2020, 14:20

                        @JoergS5

                        good day! I saw that the updates continue! I found that if the size of the print bed (M208) is not right for the size of the robot arm, it won't move and write this (Error: G1 / G2 / G3: intermediate position outside machine limits). in (M208) should you put only X, Y, Z or also U, V?
                        Is parameter P1 working? can you give me an example how to change the angle of the 5th axis using P1?
                        after homing the robot arm, before moving it, thinks it is stretched along the X axis with all the motors in 0 degree position (is that right or am I wrong?)

                        another question, this is M114 immediately after homing, why does V always mark V 5.005? shouldn't it be zero? in M669 I put (P2: 0.0) thanks!V5.005.JPG

                        undefined 3 Replies Last reply 8 Sept 2020, 15:40 Reply Quote 0
                        • undefined
                          JoergS5 @tony73
                          last edited by JoergS5 9 Aug 2020, 19:46 8 Sept 2020, 15:40

                          This post is deleted!
                          1 Reply Last reply Reply Quote 0
                          • undefined
                            JoergS5 @tony73
                            last edited by JoergS5 9 Aug 2020, 16:25 8 Sept 2020, 16:21

                            This post is deleted!
                            1 Reply Last reply Reply Quote 0
                            • undefined
                              JoergS5 @tony73
                              last edited by JoergS5 9 Sept 2020, 07:39 8 Sept 2020, 20:03

                              @tony73
                              I will finish the prototype next weekend and can then test the issues you have myself. I will tell you when I have fixed the source.

                              If you want to lower the M208 limits to avoid your error, you could lower restrictions in the methods IsReachable and LimitPosition.

                              I will update the current status of development in the https://duet3d.dozuki.com/Wiki/Configuring_RepRapFirmware_for_a_FiveAxisRobot?revisionid=HEAD document near the begin of the document in the Status section. Here you can see that P1 is not supported yet.

                              undefined undefined 2 Replies Last reply 9 Sept 2020, 07:55 Reply Quote 0
                              • undefined
                                droftarts administrators @JoergS5
                                last edited by droftarts 9 Sept 2020, 10:17 9 Sept 2020, 07:55

                                @JoergS5 sounds like it’s nearly time to get my old Armdroid https://collection.sciencemuseumgroup.org.uk/objects/co470742/armdroid-robotic-arm-robotic-arm from the loft, dust it off, and install a Duet! Excited by this development, well done!

                                I did get it going with RAMPS, but only had four (of six five six (I forgot there are two for the wrist, that allows the gripper to either rotate around the wrist joint, or rotate in line with the wrist, which may be a challenge for kinematics)) motors working, and could only move the motors directly (no Kinematics).

                                Ian

                                Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                                undefined 1 Reply Last reply 9 Sept 2020, 08:04 Reply Quote 0
                                • undefined
                                  JoergS5 @droftarts
                                  last edited by 9 Sept 2020, 08:04

                                  @droftarts it would be great if you reactivate it!

                                  The development is not finished yet and I have a lot of ideas in addition. But I want to have a good fundament first (firmware, documentation and hardware DIY description to help others to build a robot).

                                  1 Reply Last reply Reply Quote 0
                                  • undefined
                                    tony73 @JoergS5
                                    last edited by 9 Sept 2020, 12:59

                                    @JoergS5

                                    good morning! I did various tests, and I realized that I had to find the right relationship with lengths of the individual arms, min max angular limits of the joints and min max limits of (M208 in config.g)
                                    I tried with these arms using 5 steppers i.e (R0) (L2 200mm L3 200mm L4 100mm L5 0mm) (X 0.0: 0.0 Y 0.0: 0.0 Z 100.0) or had to modify (from A-45: 45: 0: 75: - 75: -5: -170: 170: -135: 135 in A-45: 45: 0: 140: -140: -5: -170: 170: -135: 135) inside FiveAxisRobotKinematics.h I recompiled the firmware because I did not understand if I could modify them in M669, and I can tell you that with the parameters in equilibrium the motors move reaching more and more printing area.
                                    for the construction of the robot as you told me are you doing this?
                                    ROBOT PARALLELO.JPG

                                    undefined 1 Reply Last reply 9 Sept 2020, 13:37 Reply Quote 0
                                    • undefined
                                      JoergS5 @tony73
                                      last edited by JoergS5 9 Sept 2020, 13:52 9 Sept 2020, 13:37

                                      @tony73 yes, I build it similar to this, but arm 4 longer down and axis 5 and arm 5 attached. The advantage is, that the arm 4 is vertical automatically and the upper and lower parallel arm elements will probably result in a higher precision (as the article described). I think it is similar like the parallel scara robot is more precise than a normal scara robot. I make the inner-arm-elements as wide and high as possible for the same reason, and axis 1 a big (30 cm diameter) plate.

                                      The angle limits you mention can be set with the A parameter, although they are not reported yet. I will add them to the report. The report was so long, so I hesitated, but I compressed them now, so it's an advantage to get confirmation over all settings. It was a joy to use it in DWC while testing the parameters and changing all on-the-fly!

                                      undefined 1 Reply Last reply 9 Sept 2020, 15:27 Reply Quote 0
                                      • undefined
                                        tony73 @JoergS5
                                        last edited by 9 Sept 2020, 15:27

                                        @JoergS5

                                        I would have
                                        I wanted to build the same robot to be able to do the tests, but with my family, work and other things I have little time left, it would take too much to build, so I would have thought of this solution, I would buy this kit to shorten the time just mount it and connect the duet, it would be a thing in acceptable times !!
                                        AR3 KIT.JPG

                                        I would block the joint on arm 3 (L3) see photo !!! because this is a 6-axis and would be used as a 5-axis (a good compromise between price and quality, and in aluminum it should be stable in order to carry out acceptable tests!)
                                        ARTICOLAZIONE LINK 3.JPG

                                        I hope that in the future you will be able to implement the 6th axis in the firmware, can you tell me if it will be possible or if this would complicate the firmware?
                                        tell me if this robot seems like a valid solution to you !! Hello !

                                        undefined 1 Reply Last reply 9 Sept 2020, 16:53 Reply Quote 0
                                        • undefined
                                          JoergS5 @tony73
                                          last edited by JoergS5 9 Sept 2020, 17:32 9 Sept 2020, 16:53

                                          @tony73 before developing, I thought about whether to build this type of robot with the rotating 4th axis (6 in total), but I saw no advantage for a 3D printer, because the hotend holder shall be horizontal, the arm 4 vertical. And arm 5 long enough, so the extruder and other hotend parts can rotate freely around arm 4.

                                          In the future the robot could be used for other tasks, CNC for example, where this flexibility would make sense. If I can master the kinematics/inverse kinematics task, I would like to develop this also. It is more complex of course.

                                          Your robot offer has a relatively low gear ratio (my guess is 1:10 or even less). I suspect the precision is not good enough for 3D printing. But I have no experience, so it's only a guess.

                                          I plan to develop and describe DIY building a robot as easy as possible in the reprap spirit (eg 3D print some of the printer parts*)) and describe it. It is an option for you to wait and decide whether it's better to build instead of buy. I understand your restrictions, but you have no project time deadline.

                                          *) not the stiff parts of course!

                                          undefined 1 Reply Last reply 9 Sept 2020, 18:23 Reply Quote 0
                                          31 out of 389
                                          • First post
                                            31/389
                                            Last post
                                          Unless otherwise noted, all forum content is licensed under CC-BY-SA