pykin
Python Interface for the robot Kinematics library pykin
This library has been created simply by referring to ikpy.
Features
- Pure python library
- Support only URDF file
- Compute forward, inverse kinematics and jacobian, referred to the Introduction to Humanoid Robotics book.
- Check robot self-collision and collision between objects
- Plot robot kinematic chain and mesh
Installation
Requirements
You need a python-fcl package to do object collision checking.
-
For Ubuntu, using
aptsudo apt install liboctomap-devsudo apt install libfcl-dev -
For Mac, First, Download the source and build it.
-
octomap
git clone https://github.com/OctoMap/octomap.git$ cd octomap $ mkdir build $ cd build $ cmake .. $ sudo make $ sudo make install -
fcl
git clone https://github.com/flexible-collision-library/fcl.gitSince python-fcl uses version 0.5.0 of fcl, checkout with tag 0.5.0
$ cd fcl $ git checkout 0.5.0 $ mkdir build $ cd build $ cmake .. $ sudo make $ sudo make install
-
Install Pykin
pip3 install pykin
Quick Start
You can see various examples in examples directory
-
Robot Info
You can see 7 robot info.
baxter, sawyer, iiwa14, iiwa7, panda, ur5e, doosan$ cd examples $ python robot_info.py $(robot_name) # baxter $ python robot_info.py baxter # saywer $ python robot_info.py sawyer
-
Forward kinematics
You can compute the forward kinematics as well as visualize the visual or collision geometry.
$ cd examples/forward_kinematics $ python robot_fk_baxter_test.py
visual collision -
Inverse Kinematics
You can compute the inverse kinematics using levenberg marquardt(LM) or newton raphson(NR) method
$ cd examples/inverse_kinematics $ python robot_ik_baxter_test.py
-
Sampling based Inverse Kinematics
You can compute the inverse kinematics using geometric-aware bayesian optimization(GaBO) method
For more detailed information, check GaBO module
$ cd examples/inverse_kinematics $ python robot_ik_gabo_test.py
-
Collision check
The below images show the collision result as well as visualize robot using trimesh.Scene class
$ cd examples/trimesh_renders $ python sawyer_render.py
trimesh.Scene Result
Visualization
You can see visualization using matplotlib library or trimesh.Scene class.
-
Visualize
simple urdfusingmatplotlibur5e sawyer iiwa14 panda -
Visualize
visual geometryusingmatplotlibur5e sawyer iiwa14 panda -
Visualize
collision geometryusingmatplotlibur5e sawyer iiwa14 panda -
Visualize mesh about
visual/collision geometryusingtrimesh.Scene class
Metadata
Release files for pykin 1.6.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| pykin-1.6.0.tar.gz | 50.7 MB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pykin-1.6.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 101.5 MB
Release files / pykin-1.6.0.tar.gz
| Download URL | pykin-1.6.0.tar.gz |
|---|---|
| Size | 50.7 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a8f6af2a281be933e386aa0cd8783f61144500fdcdeb81121377a981a51b9677
|
|
BLAKE2b-256 checksum How to use checksums |
a240c4ba5665b97a52c4115b46d664fe5351b237227aafe3aec77ad1cbc8dbab
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.4.2 requests/2.28.1 setuptools/60.2.0 requests-toolbelt/0.8.0 tqdm/4.64.1 CPython/3.8.10
|
Release files / pykin-1.6.0-py3-none-any.whl
| Download URL | pykin-1.6.0-py3-none-any.whl |
|---|---|
| Size | 50.8 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
54f52c3be6c123eab6771810908e9e43b68b2e23af4ca4efe9790445f80f8481
|
|
BLAKE2b-256 checksum How to use checksums |
f87c1c779dcbb965ea4a18ec8d53d89ef1b289463866673ace6262e1751e1abc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.4.2 requests/2.28.1 setuptools/60.2.0 requests-toolbelt/0.8.0 tqdm/4.64.1 CPython/3.8.10
|
Security for pykin 1.6.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.