Skip to main content

a package that makes simulating robots on python more like matlab

Project description

pybotron

Welcome to pybotron! Yet another Python robotics library.

But this one is different! It was built around one idea:

How to make coding animations in Python as fast as MATLAB

So you can test your algorithms in an isolated environment without the complexity and setup time of things like ROS, while also leveraging the power of Python's libraries and creating a code that can be directly plugged into ROS.

Features

Custom classes with animation friendly methods, including:

  • SimpleRobot: a minimal robot class that allows you to create the wireframe of a revolute joint robot. With convenient functionalities such as calculating the Jacobian and plotting. Includes a UR3e subclass as an example.
  • Camera: a minimal class that allows for simulating the projection behavior of a camera to test image-based visual servoing methods.
  • PluckerLine: with convenient methods for constructing and transforming.
  • Quaternion: with extremely convenient and short operations syntax.
  • DualQuaternion: with extremely convenient and short operations syntax, as well as methods for change of form

Mathematical functions (mainly linear algebra) that should have had a simple one-word function in some famous package (but they don't... ) including:

  • Skew symmetric matrix (axiator) of a vector
  • Rodrigues formula
  • Adjoint transform of a matrix
  • Vector to Matrix form of a twist and vice-versa
  • Image Jacobian (Interaction matrix)

And much much more!

NEW: pybotron now has a line's interaction matrix!

Examples

The package includes a handful of demos under the /examples folder.

I will be working on and off on a more thorough documentation. Feel free to dig into the code since it's really simple.

Installation

From PyPI

pip install pybotron

From source

Position yourself in the folder where you want to clone the repo and do:

git clone https://github.com/higifnr/pybotron.git

Then do:

pip install ./pybotron

Enjoy.

Roadmap

  • Better documentation
  • ROS1/2 implementation (this would be EXTREMELY convenient)
  • Universal functions that work on all entities

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pybotron-1.2.1.tar.gz (21.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pybotron-1.2.1-py3-none-any.whl (20.2 kB view details)

Uploaded Python 3

File details

Details for the file pybotron-1.2.1.tar.gz.

File metadata

  • Download URL: pybotron-1.2.1.tar.gz
  • Upload date:
  • Size: 21.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.10

File hashes

Hashes for pybotron-1.2.1.tar.gz
Algorithm Hash digest
SHA256 bf4715f3e9d3af1e024e77457c8453bbb3b79325eb0340964ee239628611540d
MD5 af968c4d30f9754154abd020787d24cb
BLAKE2b-256 6b825cbb8742f1475d4b6047d4aeb583909b5fcf4362a661e0c2d04b16a752ef

See more details on using hashes here.

File details

Details for the file pybotron-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: pybotron-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 20.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.10

File hashes

Hashes for pybotron-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9c92e1ac8776e3958e6fa29ed4cbf69e3a782da37ea387d1decdbb8da7901acf
MD5 442301396d9723f3da3302f87fa97177
BLAKE2b-256 507fb1c2992f70fb1fcb80a001f115f3fabfdbed4547a3ea12203b493958e36e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page