Closed-form Inverse Kinematic Solutions, Forward Kinematics, and Trajectory Generation in one repository
Project description
A catalogue of robot kinematics
In the branch "RobotKinematicsMaths" lies a comprehensive guide on how the used Robot Kinematics have been derived.
Class UML diagram of repository
Introduction
This repository is an attempt to assemble the many aspects of robot kinematics into one repository - a catalogue. Ideally, this entails the repository being able to do robot kinematics on any industrial manipulator (robotic arm).
As of now, the repository is able to do forward kinematics (FK) on pretty much any robotic arm and inverse kinematics (IK) using most of the commercially available types of robotic arms such as:
- 6 degrees of freedom (6DOF) robots
- Industrial robots (IK has flaws, go to branch "RobotKinematicsMaths" for details)
- Includes 7DOF industrial robots (FK only)
- Includes 5DOF industrial robots
- "Collaborative" robots
- Industrial robots (IK has flaws, go to branch "RobotKinematicsMaths" for details)
- 4 degrees of freedom (4DOF) robots
- Palletizing robots
- SCARA robots
- 3D delta robots (Made using: https://github.com/tinkersprojects/Delta-Kinematics-Library)
This repository also includes a way to do symbolic FK, which is particularly useful for less complex robotic arms such a those with 1DOF, 2DOF, and even 3DOF. Anymore than that most likely provides results too large to be readable symbolically.
How to use example files
Using the python program "IK_Validate.py", any robot which has an attached inverse Kinematics method to it may have its IK solution be validated. It is recommended to do this before further use in case any bugs occur.
Using RoboDK, it is possible to visualize the obtained IK solutions and to compare results as multiple sources of error can occur. This is where "IK_Validate_RoboDK.py" comes into play.
Install RoboDK using the link: https://robodk.com/download
The RoboDK-API for python can be installed using cmd:
$ pip install robodk
RoboDK robot Library link: https://robodk.com/library
The used data has been obtained via. the above link by opening the files of each robot model in RoboDK and inspecting their "parameters", such as DHM-parameters and joint range, needed to simulate each of these robots.
As of now, the kinematics-related data of all of the accessible 7DOF, 6DOF, 5DOF, and 4DOF (excluding delta robots) robots via the above link have been imported including:
- 26 7DOF robots
- 903 6DOF robots
- 121 "collaborative" robots
- 782 industrial robots
- 13 5DOF robots (12 industrial robots and 1 PPPRR robot)
- 4DOF robots
- 34 palletizing robots
- 108 SCARA robots
25 delta robots
- Misc.
- A couple 1DOF & 2DOF rotational mechanisms
- A couple 1DOF, 2DOF, and 3DOF translational mechanisms
This list excludes robots with 2 arms (dual wielding robots).
All the data of each of these robots are available in the subfolders "robotkinematicscatalogue/inversekinematics/.../".
Test results
Out of all the imported robots from the RoboDK robot Library, the robots with the most pitfalls, in terms of IK, is the 6DOF industrial robots (go to branch "RobotKinematicsMaths" for details). The comments put in the file "robotkinematicscatalogue/inversekinematics/industrialRobots.py" go through these pitfalls. Other types of robots to pay attention to, in terms of such pitfalls are palletizing robots and collaborative robots (go to "robotkinematicscatalogue/inversekinematics/ ... .py" for details).
The intended result of using "IK_Validate_RoboDK.py" on a SCARA, palletizing, "collaborative", and industrial robot 5 times on each can be seen below:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file robotkinematicscatalogue-1.1.2.tar.gz.
File metadata
- Download URL: robotkinematicscatalogue-1.1.2.tar.gz
- Upload date:
- Size: 122.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
804ee46569aa1d545aa49c741072166d81bee8c4d04baa3ef8732ba161bd6038
|
|
| MD5 |
5fced28a69241be3d70868efafb5d8cf
|
|
| BLAKE2b-256 |
ccaa2130b20f3200de25eab5bcc50f3ce899a334196c90cceaa6f34cd84716fe
|
File details
Details for the file robotkinematicscatalogue-1.1.2-py3-none-any.whl.
File metadata
- Download URL: robotkinematicscatalogue-1.1.2-py3-none-any.whl
- Upload date:
- Size: 992.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cdc9e677c40c634db10316eae21c952207d46f45ec6e0a2a9711f04b873b014d
|
|
| MD5 |
e34af576258296f55308e2221818a73f
|
|
| BLAKE2b-256 |
56e904bd62483c4cad143fcb40052a4965e6b95c43d278d8973ea129669a0b83
|