I have a 6 DOF robot arm that I am programming. I want to be able to move the arm's claw to a 3D point in space. In order to do that, it needs to know the best combination of movements that will take the arm to that position.
I am programming in Java, if anyone has any language specific suggestions.
The design of the claw is shown below:
My Research
The best existing code template have found is Processing.org's Reach example (https://processing.org/examples/reach2.html)
I have made a few attempts to adapt this code to my needs, but I have not been able to fully do so: (https://editor.p5js.org/codeLink100/full/EuZAnpQfz)
I like the example code because it moves the front of the tentacle (smallest components in my case) first, therefore saving the robot some energy.
However, there are a few things with that I will need to change before I can use it as my code:
- Each segment needs to be a different length.
- The segments should not cross thru each other.
- The segments should only be allowed to go within a specific angle range.
- The example does not consider the 3D rotation of the base motor.
- The program should tell me if the claw cannot reach the point.
Update:
I understand that this problem is best solved using inverse kinematics. Does anyone know any good tutorials for absolute beginners. I have looked around quite a bit and haven't found much.