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.2.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.2-py3-none-any.whl (20.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pybotron-1.2.2.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.2.tar.gz
Algorithm Hash digest
SHA256 edf09f028588cda032fffc64af30e3e17d69d0304b21dda12bcf370a8779607b
MD5 8ed3b22965cf650225d8cd3fae8e55cc
BLAKE2b-256 a7a6a80d04515dd217b3eb140a5d43e363245a29fbcf0735d8a41b92c31745b9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pybotron-1.2.2-py3-none-any.whl
  • Upload date:
  • Size: 20.1 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 69989b9d5ab8c964318a87f88763a023effba5ac6f530f4863e9edae7a97017b
MD5 3ea7e3f207734c7ced7d869f9fb23515
BLAKE2b-256 8865eb9fdf1cf12054d0680b4a197436adc2d55c2975740ee87fe51fd17e2158

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