Code Monkey home page Code Monkey logo

pypot's Introduction

PyPI Build Status DOI

Pypot: A Python lib for Dynamixel motors control

Pypot is a library developed in the inria FLOWERS team to make it easy and fast to control custom robots based on dynamixel motors. This framework provides different levels of abstraction corresponding to different types of use. More precisely, you can use pypot to:

  • directly control robotis motors (both protocol v1 and v2 are supported) through a USB2serial device,
  • define the structure of your particular robot and control it through high-level commands,
  • define primitives and easily combine them to create complex behavior.

Pypot has been entirely written in Python to allow for fast development, easy deployment and quick scripting by non-necessary expert developers. It can also benefits from the scientific and machine learning libraries existing in Python. The serial communication is handled through the standard library and thus allows for rather high performance (10ms sensorimotor loop). It is crossed-platform and has been tested on Linux, Windows and Mac OS.

Pypot is also compatible with the V-REP simulator. This allows you to seamlessly switch from a real robot to its simulated equivalent without having to modify your code.

Finally, it has been developed to permit an easy and fast extension to other types of motors and sensors.

The Poppy-project: open source

Pypot is part of the Poppy project aiming at developing robotic creations that are easy to build, customize, deploy, and share. It promotes open-source by sharing hardware, software, and web tools.

At the moment we already proposed a few Poppy Creatures:

Poppy Humanoid

All those creatures are based on a combination of standard dynamixel actuators, 3D printed parts and open-source electronics such as Arduino boards. Both the hardware (3D models, electronics...) and software can be freely used, modified and duplicated.

Documentation

The full pypot documentation on a html format can be found here. It provides tutorials, examples and a complete API.

The documentation is slowly moving toward Jupyter Notebooks are they are such a powerful tool for writing and sharing tutorials, experiments or pedagogical contents.

They can be found here with a detailed explanation on how they can be used, installed, and modified.

Installation

Pypot is a library entirely written in Python. It works with Python 2.7, 3.3+ and pypy-2.5. It is crossed platform and has been tested on Windows, Mac, Linux - yet specific usb to serial driver may be required depending on your system (see below).

Pypot also requires the following python package:

You can build and install pypot with the typically python way:

cd pypot
python setup.py install

or directly via pip:

pip install pypot

You will also have to install the driver for the USB2serial port. There are a few devices that have been tested with pypot that could be used:

  • USB2AX - this device is designed to manage TTL communication only
  • USB2Dynamixel - this device can manage both TTL and RS485 communication.
  • Pixl board for RaspberryPi

For more details on the installation procedure, please refer to the installation section of the documentation.

Roadmap

The roadmap of the project can be found here.

pypot's People

Contributors

aristofor avatar barraq avatar bitdeli-chef avatar blackpowder avatar bumblebeefr avatar buschbapti avatar caerbannog avatar clement-moulin-frier avatar dashdashzako avatar dschofie avatar etiennebalit avatar fgolemo avatar jgrizou avatar jjehl avatar manon-cortial avatar matthieu-lapeyre avatar paulmand3l avatar pierre-rouanet avatar rzr avatar sebastien-forestier avatar show0k avatar sonelu avatar stevenguyen avatar tdiazt avatar tibo42 avatar ymollard avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.