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


pg_parquet - Postgres To Parquet Interoperability
28/11/2024

pg_parquet is a new extension by Crunchy Data that allows a PostgreSQL instance to work with Parquet files. With pg_duckdb, pg_analytics and pg_mooncake all of which can access Parquet files, is  [ ... ]



OpenSilver Adds XAML Designer For Visual Studio Code
12/12/2024

OpenSilver 3.1 has been released. This version adds a drag-and-drop XAML designer for Visual Studio Code (VS Code), a new modern UI theme, and expanded support for WPF features. The open-source altern [ ... ]


More News

 

espbook

 

Comments




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

Last Updated ( Thursday, 11 July 2019 )