16
Microsoft Robotics Microsoft Robotics Studio Studio Marco Petrucco Marco Petrucco [email protected] Microsoft Student Partner - Udine Microsoft Student Partner - Udine

Microsoft Robotics Studio Marco Petrucco [email protected] Microsoft Student Partner - Udine

Embed Size (px)

Citation preview

Page 1: Microsoft Robotics Studio Marco Petrucco petrucco.marco@student-partners.com Microsoft Student Partner - Udine

Microsoft Robotics StudioMicrosoft Robotics Studio

Marco PetruccoMarco [email protected]

Microsoft Student Partner - UdineMicrosoft Student Partner - Udine

Page 2: Microsoft Robotics Studio Marco Petrucco petrucco.marco@student-partners.com Microsoft Student Partner - Udine

Microsoft Robotics StudioMicrosoft Robotics Studio

Una piattaforma di sviluppo per la robotica, che Una piattaforma di sviluppo per la robotica, che supporta varie tipologie di utenti, hardware e supporta varie tipologie di utenti, hardware e scenari applicativiscenari applicativi

RuntimeRuntime Concurrency Concurrency Services infrastructureServices infrastructure

Services and SamplesServices and Samples Samples and tutorialsSamples and tutorials Robot servicesRobot services Robot modelsRobot models Technology servicesTechnology services

Microsoft Robotics StudioMicrosoft Robotics Studio

Authoring ToolsAuthoring Tools Simulation ToolSimulation Tool Visual Programming Visual Programming

Language Language

Page 3: Microsoft Robotics Studio Marco Petrucco petrucco.marco@student-partners.com Microsoft Student Partner - Udine

Microsoft Robotics StudioMicrosoft Robotics StudioStruttura di una tipica applicazione robotica:Struttura di una tipica applicazione robotica:

Composta da componenti debolmente accopiati Composta da componenti debolmente accopiati eseguiti concorrentemente:eseguiti concorrentemente:

Gestione di sensori/attuatoriGestione di sensori/attuatori

Interfaccia utenteInterfaccia utente

MotorMotor

OrchestratorOrchestrator

Bumper Bumper (Sensor)(Sensor)

Infrared Detector Infrared Detector (Sensor)(Sensor)

Bumper Bumper (Sensor)(Sensor)MotorMotor

Message BoxMessage Box(Actuator)(Actuator)

Page 4: Microsoft Robotics Studio Marco Petrucco petrucco.marco@student-partners.com Microsoft Student Partner - Udine

Microsoft Robotics StudioMicrosoft Robotics StudioIn breveIn breve

Robotics Studio usa una libreria concorrente basata usa una libreria concorrente basata su .NETsu .NET

Semplifica lo sviluppo di applicazioni asincrone Semplifica lo sviluppo di applicazioni asincrone

Ha un'architettura di messaggistica modulare orientata ai Ha un'architettura di messaggistica modulare orientata ai serviziservizi

usata per determinare lo stato dei sensori/attuatori tramite usata per determinare lo stato dei sensori/attuatori tramite browser.browser.

Page 5: Microsoft Robotics Studio Marco Petrucco petrucco.marco@student-partners.com Microsoft Student Partner - Udine

Microsoft Robotics StudioMicrosoft Robotics StudioDSS (Decentralized System Services)DSS (Decentralized System Services)

Fornisce i servizi di runtimeFornisce i servizi di runtime

Scambio di messaggi asincroni fra i nodi Scambio di messaggi asincroni fra i nodi

Un meccanismo di isolamento garantisce:Un meccanismo di isolamento garantisce:

l'affidabilità l'affidabilità

il parallelismo dei componentiil parallelismo dei componenti

Page 6: Microsoft Robotics Studio Marco Petrucco petrucco.marco@student-partners.com Microsoft Student Partner - Udine

Microsoft Robotics StudioMicrosoft Robotics StudioComponenti del DSS Componenti del DSS

Common Concurrency Runtime (CCR) Common Concurrency Runtime (CCR) libreria di costrutti di programmazione usati per coordinare le libreria di costrutti di programmazione usati per coordinare le operazioni fra applicazioni sviluppate con Robotics Studiooperazioni fra applicazioni sviluppate con Robotics Studio

Web Services Application Protocol (WSAP)Web Services Application Protocol (WSAP)

Gestore dei ServiziGestore dei Servizi

Page 7: Microsoft Robotics Studio Marco Petrucco petrucco.marco@student-partners.com Microsoft Student Partner - Udine

Un servizioUn servizioDispone di stati con proprietà definiteDispone di stati con proprietà definite

Interagisce tramite scambio di messaggiInteragisce tramite scambio di messaggi

Operazioni di baseOperazioni di baseRecupero/manipulazione degli stati Recupero/manipulazione degli stati

Notifica di eventiNotifica di eventi

PortPort

ServiceServiceServiceService

StateState

HandlersHandlers

FIFOFIFO

Microsoft Robotics StudioMicrosoft Robotics StudioI ServiziI Servizi

Page 8: Microsoft Robotics Studio Marco Petrucco petrucco.marco@student-partners.com Microsoft Student Partner - Udine

Robotics Studio Runtime

Joystick serviceUI service

Microsoft Robotics StudioMicrosoft Robotics StudioInterazioneInterazione

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

Page 9: Microsoft Robotics Studio Marco Petrucco petrucco.marco@student-partners.com Microsoft Student Partner - Udine

Microsoft Robotics StudioMicrosoft Robotics Studio Scenari di elaborazione Scenari di elaborazione

Supporta l'elaborazione locale e distribuita Supporta l'elaborazione locale e distribuita

DisconnectedDisconnectedautonomous operation autonomous operation (con monitoraggio opzionale via rete)(con monitoraggio opzionale via rete)

DistributedDistributed executionexecution(esecuzione distribuita tra le varie (esecuzione distribuita tra le varie unità di elaborazione )unità di elaborazione )

Connected operationConnected operation(esecuzione remota su PC)(esecuzione remota su PC)

Page 10: Microsoft Robotics Studio Marco Petrucco petrucco.marco@student-partners.com Microsoft Student Partner - Udine

Microsoft Robotics StudioMicrosoft Robotics StudioAdattabile ad un’ampia varietà di hardware

Page 11: Microsoft Robotics Studio Marco Petrucco petrucco.marco@student-partners.com Microsoft Student Partner - Udine

Microsoft Robotics StudioMicrosoft Robotics StudioSimulatoreSimulatore

SimulazioneSimulazioneRendering 3D in XNARendering 3D in XNA

Motore fisico ad alte prestazioniMotore fisico ad alte prestazioniPhysX™ by Ageia TechnologyPhysX™ by Ageia Technology

Rapida prototipizzazione Rapida prototipizzazione

Debugging facilitatoDebugging facilitato

AggiornabileAggiornabile

Page 12: Microsoft Robotics Studio Marco Petrucco petrucco.marco@student-partners.com Microsoft Student Partner - Udine

Microsoft Robotics StudioMicrosoft Robotics Studio Strumenti Strumenti

Controllo tramite Web browserControllo tramite Web browserScripting (e.g., JScript)Scripting (e.g., JScript)

Windows GadgetsWindows Gadgets

IDE e linguaggi di programmazioneIDE e linguaggi di programmazioneMicrosoft Visual Studio and VS Express Microsoft Visual Studio and VS Express

Microsoft C#, VB.Net, Iron Python, JscriptMicrosoft C#, VB.Net, Iron Python, Jscript

Page 13: Microsoft Robotics Studio Marco Petrucco petrucco.marco@student-partners.com Microsoft Student Partner - Udine

Microsoft Robotics StudioMicrosoft Robotics Studio Programmazione visuale Programmazione visuale

Visual Programming ToolVisual Programming ToolDataflow editingDataflow editing

Simple connectionsSimple connections

Building blocksBuilding blocks

Model checkingModel checking

Code generationCode generation

Per novizi ed espertiPer novizi ed esperti

Page 14: Microsoft Robotics Studio Marco Petrucco petrucco.marco@student-partners.com Microsoft Student Partner - Udine

Microsoft Robotics StudioMicrosoft Robotics StudioTutorial ed esempiTutorial ed esempi

Decine di tutorialDecine di tutorialVB.Net, C#, JScriptVB.Net, C#, JScript

Basic input and outputBasic input and output

Autonomous navigationAutonomous navigation

Supporto perSupporto perLEGO® Mindstorms® RCXLEGO® Mindstorms® RCX

LEGO® Mindstorms® NXTLEGO® Mindstorms® NXT

Page 15: Microsoft Robotics Studio Marco Petrucco petrucco.marco@student-partners.com Microsoft Student Partner - Udine

Microsoft Robotics StudioMicrosoft Robotics StudioCommunityCommunity

Robotics Developer Center websiteRobotics Developer Center websitewww.msdn.microsoft.com/robotics www.msdn.microsoft.com/robotics

DownloadsDownloads

Bug reportingBug reporting

BlogsBlogs

NewsgroupsNewsgroups

Channel 9 videos and wikiChannel 9 videos and wiki

Page 16: Microsoft Robotics Studio Marco Petrucco petrucco.marco@student-partners.com Microsoft Student Partner - Udine