Robots programming, tools and frameworks

Many environments and programming tools are competing to program robots. Even Microsoft, the creator of Visual Studio, is interested in this market and offer a product in its line of development tools.

Programming and simulation tools for robotics

Gazebo

OSRF. Free and open source. Linux Only.

Developed by the OSRF (Open Source Robotics Foundation), Gazebo has its own website. It is an interface to a virtual robotic world where you can control a population of robots. It provides a library of components of virtual worlds.

RDS

Microsoft. Free. Windows.

Robotics Developer Studio is produced by Microsoft for several years and became free in May 2010. It was at that time 60,000 active users.

The Visual Programming Language, VPL, allows to create applications by drag and drop of predefined components. A runtime, CCR (Concurrency and Coordination Runtime), operates asynchronously exchanges between equipment, arms, sensors, etc.. and the software that controls it.

The Visual Simulation Environment (VSE) is the strong point of this tool because it allows to experiment in a 3D virtual world robots interaction with objects, walls, and so programming becomes a game.

List of supported robot

ROS

Willow Garage and OSRF. Free and open source. Windows, Linux, Mac.

Robot Operating System is a system that controls the robot on which we can implement applications. It runs on Linux and seems rather incomplete on Windows, insofar as it contains many tools running under UNIX.
He wants to centralize existing frameworks into a single software. It is not in itself a real time tool, but you could add a module to do this.
The programming languages used are C and Python, while others are developing.


Meka

Arduino

Free and open source.

Arduino is an electronic platform and open source development environment, based on Processing for all kinds of actuators of robots or automated equipment.
The Arduino language development (based on Wiring) is close to the C language
One develops on Arduino in a textual and non-visual way as with RDS.

LabView

National Instruments. $ 1250.

For industry, it provides an interface to program all sorts of instruments including automated and robotic systems.
Widgets are used to control interfaces to the data. Drivers (such as that of graphics cards) are used to identify different materials. Different languages, graphic, containing objects to combine into patterns are translated into C language to run on various platforms.

Frameworks

Interfaces between robots and software.

JavaScript

Vision and object recognition

Machine learning