Skip to main content

Robotics Framework using Dynamixel SDK, I2C, SPI

Project description

Roboglia

Master Version PyPI version GitHub issues

Build Status Documentation Status codecov CodeFactor

roboglia is a framework that helps developers with the setup of robots in a more reusable fashion. Most of the times the creation of robots involve integrating actuators, sensors, cameras and microphones, periodically accessing the information provided by these or supplying commands according to the desired activities.

The name roboglia is derived from the glial cells present in the brian. Their role is to support the neurons' functions by supplying them with nutrients, energy and disposing of waste. The analogy is that roboglia provides this boring, but very complex activity of putting together the specific functions of the physical devices used in robots in order to provide a more accessible high-level representation of the robot for the use of the "smart" control logic that sits at the top.

With roboglia, low level functionality, currently split across multiple libraries and frameworks are put together and integrated in an extensible way, making it easier for developer to focus on the higher level functionality, rather than gritty details.

Installation

You can install roboglia with pip as follows:

pip install roboglia

By default this will only install the roboglia package and the core dependencies (like PyYAML) and will not include any hardware access libraries. As different projects require different hardware communication it is up to yu to decide which of the extra dependencies need to be installed.

If you need to use Dynamixel devices, then install the dynamixel_sdk library like this:

pip install roboglia[dynamixel]

If you need to work with I2C devices, install it the following way:

pip install roboglia[i2c]

If you need SPI devices, install the extra libraries with:

pip install roboglia[spi]

If you need to install a combination of libraries, then enter them separated by commas as follows:

pip install roboglia[dynamixel,i2c]

If you wish to install all the hardware access packages then use:

pip install roboglia[all]

The all option for extras will be updated if additional hardware channels are added to the library.

Please read carefully the installation instructions from the documentation. As roboglia needs to interact with a lot of hardware devices, it is very sensitive to the platform and OS version used. The documentation provides more details about avoiding the installation of packages that are not needed for you particular robot.

Documentation

For a quick start in roboglia have a look at a practical introduction here. We present the core concepts like device, register, sync and joint as well as some primer in setting up the robot definition file.

You can access the detailed documentation on the readthedocs.io website. If you want to access the documentation in PDF format you can get it from here. There is also an epub version that can be accessed here.

Devices

An up to date list of devices across the communication buses is maintained here.

Contribution

We are very receptive for contributions. There are many ways you can contribute on roboglia, so please check our dedicated contributing page for details about the way you can do this.

Showcasing your robot

If you use roboglia in your project we will like to hear about it and we will showcase it on this page. Please open an issue with title "Showcase of robot" and provide us with information about your robot. You can send us links to the documentation or code of the robot and one picture (link to an public one) that we could use in the showcase. If you want to provide an email address for contact we will be more than happy to include that too.

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

roboglia-0.1.0.tar.gz (54.2 kB view details)

Uploaded Source

Built Distribution

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

roboglia-0.1.0-py3-none-any.whl (110.5 kB view details)

Uploaded Python 3

File details

Details for the file roboglia-0.1.0.tar.gz.

File metadata

  • Download URL: roboglia-0.1.0.tar.gz
  • Upload date:
  • Size: 54.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.6.7

File hashes

Hashes for roboglia-0.1.0.tar.gz
Algorithm Hash digest
SHA256 7370dd43f4f3e9aec0dc65c15e9dc541136508912fe8e4546ba70a9834b9806c
MD5 646520dc8bc1f37a736fdb8d4f201b1a
BLAKE2b-256 53c3c75af075f74e414900a4c970a39931ff93b4d23a9a3899a8b11108205a71

See more details on using hashes here.

File details

Details for the file roboglia-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: roboglia-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 110.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.6.7

File hashes

Hashes for roboglia-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6d03748ba844955a9ed87476f09b7e9851e48d8c145906f095626ab1fe860197
MD5 63daf5b8474e07b812a11804db7bcab7
BLAKE2b-256 e522f8c0d0cbdd6fbe1194b874251b9e4199eef99d1918d37ea1e308f9b4aa00

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