
Microsoft Robotics Studio umożliwia tworzenie oprogramowania dla robotów, zarówno prawdziwych jak i symulowanych. Program jest kompatybilny z rozwiązaniami sprzętowymi takimi jak Roomba i Lego Mindstorms NXT. Robotics Studio zawiera trójwymiarowe narzędzie do symulowania robotów (bazujące na silniku symulatora fizyki w środowisku 3D), środowisko uruchomieniowe zorientowane na usługi, które pozwala na komunikację z różnymi rodzajami sprzętu, a także język programowania pozwalający nawet początkującym programistom w prosty i intuicyjny sposób tworzyć aplikacje. Dostępne jest wsparcie dla Windows Embedded CE 6.0 i Windows Mobile, a także funkcje rozpoznawania mowy i obrazów.
Microsoft Robotics Studio składa się z trzech podstawowych elementów:

Te trzy elementy to:
- Runtime, czyli silnik całego rozwiązania, który pozwala na oprogramowanie robota
- Narzędzia, które pozwalają oprogramować nasze urządzenie
- Usługi i przykłady, czyli pełna dokumentacja wraz z przykładami jak należy pracować i jak korzystać z dostarczonych usług oraz same usługi.
Sam runtime składa się z dwóch najważniejszych elementów:
- CCR - Concurrency and Coordination Runtime - upraszcza pisanie asynchronicznych aplikacji dzięki możliwości uniknięcia ręcznego sterowania wątkami, blokadami, semaforami, itd.
- DSS - Decentralized Software Services - lekki model aplikacji opartych na usługach (SOA - services oriented application), który wspiera model programowania REST (Representational State Transfer)
Dla osoby piszącej aplikacje, która ma symulować pracę robota usługi zdefiniowane są na pewnym poziomie abstrakcji, gdzie usługi mogą reprezentować dowolny z elementów jak:
- sprzęt - sensory, aparaty, etc.
- oprogramowanie - interfejs użytkownika, miejsce składowania danych, etc.
- agregacje - mash-upy, połączenie sensorów, etc.
Jednocześnie separuje stan usługi od jej zachowania i to co najważniejsze ma możliwość ponownego użycia poprzez kompozycję. Aplikacja dla robota jest zestawem kilku elementów. Z jednej strony mamy jakieś urządzenia, które zachowują się w określony sposób (orkiestracja) i odpowiednio prezentowane są użytkownikowi.

Przykładowa orkiestracja tworzona przy pomocy Robotics Studio wygląda następująco:

A buduje się ją przy pomocy Visual Programing Language, którego pulpit wygląda następująco:
Programowanie zachowań robotów możliwe jest przy wykorzystaniu Visual Studio (w tym również wersji Express). Wspierane są wszystkie języki .NET (C++, C#, VB.NET) oraz dodatkowo IronPython. Usługi dostępne dla poszczególnych robotów można konfigurować przy pomocy przeglądarki internetowej, dzięki czemu możliwe jest również konfigurowanie urządzeń zdalnie. Przeglądarka internetowa pozwala na oglądanie stanów, w jakim są usługi, przekonfigurowanie ich, włączenie czy też wyłączenie.
Środowisko do wizualnej symulacji pozwala na tworzenie wizualizacji 3D wraz z zachowaniem wszelkich praw fizycznych. Dodatkowo na rynku jest wiele firm, które tworzą różne dodatki, aby rozszerzyć standardowe zachowania fizyczne. Do całego zestawu oprogramowania dołączona jest bardzo obszerna pomoc w tym ponad 30 tutoriali, zestaw usług dla najbardziej popularnych robotów, zestaw bibliotek i funkcjonalności do obsługi przechwytywania obrazu z kamer, syntezy mowy czy obsługi GPS.
Wśród standardowych robotów wspierane są między innymi:
- LEGOR MindstormsR RCX
- LEGOR MindstormsR NXT
- fischertechnikR
- MobileRobots Pioneer P3T
ale to nie wszystko. Dodatkowo po zainstalowaniu sterowników możemy pracować między innymi z następującymi robotami:
Robosoft robuLAB10 - oparty na procesorach Celeron 600 Mhz i Pentium 1.4 GHz,

CoroWare CoroBot - oparty na procesorach 1.2 GHz wraz z WiFi oraz ramieniem, czy też iRobot Create - z wbudowanymi 32 sensorami oraz gniazdem rozszerzeń:
źródło: wp.pl
ostatnia aktualizacja: 2011

Ściągnij Microsoft Robotics Studio