PyRobot - Python for Robotics
Written by Nikos Vaggalis   
Thursday, 11 July 2019

We've grown accustomed to hearing about Python being used for pretty much everything, albeit mostly for data science. It's time to consider it for robotics too. 

pyrobotlogo

The same way Python provides a higher level of abstraction over programming concepts, so does PyRobot but for robotics; abstracting away the low-level controls from the high-level motion generation.

It's an open source framework springing out of the collaboration of Facebook's AI Research and the Robotics Institute of Carnegie Mellon University, which aims to make researching for robotics a much easier proposition by providing a much more accessible software development environment.

It's also based on ROS, and while ROS already abstracts many low level controls and encapsulates complex functions, PyRobot ads yet another layer of indirection on top of that, that of Python.

For example you can use PyRobot's Python API's to make the robot grasp objects by using a PyTorch model.This is more important that it sounds. It shows that through PyRobot you can control the robots by using machine learning and not by mere programmatic instructions only!

 

 

Another example of using pretrained models comes in the form of teaching the robot's arm inverse kinematics:

The input is state(joint angles of arm) & goal location(x,y,z) and the control action is the change in each joint angles to achieve the desired goal

There's more like this on the project's web page which has examples that demonstrate the potential of the framework, giving way to the idea of bridging AI over Robotics with Python as the intermediary.

To make this integration easier, PyRobot inherently supports two hardware model robots:

  • LoCoBot, a low cost mobile manipulator robot suitable for both navigation and manipulation

  • Sawyer, a popular 7DoF manipulator.

Most tutorials on the site use LoCoBot extensively, which is a model also used for teaching CS16-662 Robot Autonomy at Carnegie Mellon University. Thus the plentiful resources and the low price make starting out with LoCoBot an approachable proposition, till more hardware models get supported.

You can find the low-level stack for LoCoBot together with instructions on how to use it with PyRobot on the project's Github page.

 pyrobotsq

More Information

PyRobot

PyRobot on Github

LoCoBot

Related Articles

Dashing Diademata, the Future of ROS
 

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

 

Banner


Computer Music - Floppotron 3
19/06/2022

Computer-generated music is an art form in its own right. But what about music made by obsolete computer hardware? The third generation PC hardware orchestra, Floppotron 3.0, from Paweł Zadrożn [ ... ]



Rust Adds Source-based Code Coverage
21/06/2022

Rust 1.61 has been released with improvements including custom exit codes from main, along with source-based code coverage. Rust is now safeguarded by the Rust Foundation, a cross-industry body aimed  [ ... ]


More News

 

pythondata

 



 

Comments




or email your comment to: comments@i-programmer.info

Last Updated ( Thursday, 11 July 2019 )