Other Software & Tools

Robotics Development

Microsoft Robotics Development Studio is a Windows-based environment for hobbyist, academic and commercial developers to create robotics applications for a variety of hardware platforms. The Microsoft Robotics Development Studio includes a lightweight REST-style, service-oriented runtime, a set of visual authoring and simulation tools, as well as tutorials and sample code to help you get started.

Non-programmers can create robot applications using a visual programming environment
The Visual Programming Language enables anyone to create and debug robotics programs very easily. Just drag and drop blocks that represent services, and connect them up. You can even take a collection of connected blocks and reuse them as a single block elsewhere in your program.

Simulate robotics applications in 3D physics-based virtual environments
Simulate your robotics applications using realistic 3D simulated models. The Microsoft Robotics Development Studio simulation tool includes AGEIA? PhysX? Technology from AGEIA Technologies Inc., a pioneer in hardware-accelerated physics, enabling real-world physics simulation for robot models. PhysX simulations can also be accelerated using AGEIA hardware.

Interact with robots using Windows or Web-based interfaces
Create applications that enable you to monitor or control a robot remotely using a Web-browser and send it commands using existing Web technologies, such as HTML forms and JavaScript; mount cameras on the robots and control them to survey a remote location.

Makes Asynchronous Programming Simple
The Concurrency and Coordination Runtime (CCR), makes it simple to write programs to handle asynchronous input from multiple robotics sensors and output to motors and actuators.

Real-time Monitoring of Robotics Sensors and Response to Motors and Actuators
The Decentralized Software Services (DSS) application model makes it simple to access, and to respond to a robot?s state, using a Web-browser or Windows-based application.

Reuse Modular Services Using a Composable model
Build high-level functions using simple components, providing for reusability of code modules as well as better reliability and replaceability. For instance a lower-level sensor service could be integrated into a navigation service.

Scalable and Extensible Platform
The Microsoft Robotics Development Studio programming model can be applied to a variety of robot hardware platforms, enabling users to transfer their skills across platforms. The programming interfaces can be used to develop applications for robots using 8, 16 or 32-bit processors, either single or multi-core.

Easily extend Microsoft Robotics Development Studio Functionality
Third parties can extend the functionality of Microsoft Robotics Development Studio by providing additional libraries and services. Hardware or software vendors can make their products easily compatible with Microsoft Robotics Development Studio.

Supports both remotely connected (PC-based) and robot-based (autonomous) application scenarios
Remotely connected scenarios enable you to communicate from a PC to the robot through a serial port, Bluetooth, 802.11, or RF. Programs can also execute natively on PC-based robots running Microsoft Windows, enabling fully autonomous operation.

Develop using a wide range of programming languages
With Microsoft Robotics Development Studio, robotics applications can be developed using a selection of programming languages, including those in Microsoft Visual Studio and Microsoft Visual Studio Express (C# and VB.NET), as well as scripting languages such as Microsoft Iron Python. Third-party languages that support the Microsoft Robotics Development Studio services-based architecture are also supported.

Useful links:
Microsoft Robotics Development Studio - information, tutorials, forums, downloads and more.
RoboChamps Competition - excellent learning area.