Microsoft Robotics Studio Marco Petrucco Microsoft Student Partner - Udine
Microsoft Robotics Studio Una piattaforma di sviluppo per la robotica, che supporta varie tipologie di utenti, hardware e scenari applicativi Runtime Concurrency Concurrency Services infrastructure Services infrastructure Services and Samples Samples and tutorials Samples and tutorials Robot services Robot services Robot models Robot models Technology services Technology services Microsoft Robotics Studio Authoring Tools Simulation Tool Simulation Tool Visual Programming Language Visual Programming Language
Microsoft Robotics Studio Struttura di una tipica applicazione robotica: Composta da componenti debolmente accopiati eseguiti concorrentemente: Gestione di sensori/attuatori Interfaccia utente Motor Orchestrator Bumper (Sensor) Infrared Detector (Sensor) Bumper (Sensor) Motor Message Box (Actuator)
Microsoft Robotics Studio In breve Robotics StudioRobotics Studio usa una libreria concorrente basata su.NET Robotics Studio Semplifica lo sviluppo di applicazioni asincrone Ha un'architettura di messaggistica modulare orientata ai servizi usata per determinare lo stato dei sensori/attuatori tramite browser.
Microsoft Robotics Studio DSS (Decentralized System Services) Fornisce i servizi di runtime Scambio di messaggi asincroni fra i nodi Un meccanismo di isolamento garantisce: l'affidabilità il parallelismo dei componenti
Microsoft Robotics Studio Componenti del DSS Common Concurrency Runtime (CCR) libreria di costrutti di programmazione usati per coordinare le operazioni fra applicazioni sviluppate con Robotics Studio Web Services Application Protocol (WSAP) Gestore dei Servizi
Un servizio Dispone di stati con proprietà definite Interagisce tramite scambio di messaggi Operazioni di base Recupero/manipulazione degli stati Notifica di eventi Port ServiceService State Handlers FIFO Microsoft Robotics Studio I Servizi
Robotics Studio Runtime Joystick service UI service Microsoft Robotics Studio Interazione Lo stato dei servizi è osservabile a tutti i livelli dell'applicazione I servizi possono fornire una ricca rappresentazione dei dati Robot Motor services Sensor services
Microsoft Robotics Studio Scenari di elaborazione Supporta l'elaborazione locale e distribuita Disconnected autonomous operation (con monitoraggio opzionale via rete) Distributed execution (esecuzione distribuita tra le varie unità di elaborazione ) Connected operation (esecuzione remota su PC)
Microsoft Robotics Studio Microsoft Robotics Studio Adattabile ad unampia varietà di hardware
Microsoft Robotics Studio Simulatore Simulazione Rendering 3D in XNA Motore fisico ad alte prestazioni PhysX by Ageia Technology Rapida prototipizzazione Debugging facilitato Aggiornabile
Microsoft Robotics Studio Strumenti Controllo tramite Web browser Scripting (e.g., JScript) Windows Gadgets IDE e linguaggi di programmazione Microsoft Visual Studio and VS Express Microsoft C#, VB.Net, Iron Python, Jscript
Microsoft Robotics Studio Programmazione visuale Visual Programming Tool Dataflow editing Simple connections Building blocks Model checking Code generation Per novizi ed esperti
Microsoft Robotics Studio Tutorial ed esempi Decine di tutorial VB.Net, C#, JScript Basic input and output Autonomous navigation Supporto per LEGO® Mindstorms® RCX LEGO® Mindstorms® NXT
Microsoft Robotics Studio Community Robotics Developer Center website Downloads Bug reporting BlogsNewsgroups Channel 9 videos and wiki