Microsoft RoboticsDeveloper Studio<br />2010 04 08<br />Bruno Capuano<br />MVP – Visual Studio ALM<br />b.capuano@gmail.co...
Agenda<br />
A donde queremos llegar<br />
Donde estamos<br />
Qué nos puede suceder<br />
Microsoft RoboticsDeveloper Studio<br />
Microsoft Robotics<br />LEGO Mindstorm NXT<br />fishertechnik<br />iRobotRoomba<br />Parallax Boe-Bot BASIC Stamp Robot<br...
Microsoft Robotics<br />LEGO Mindstorm NXT<br />Boe-Bot Kit for <br />Microsoft Robotics Studio<br />iRobotRoomba<br />
Microsoft Robotics<br />
Retos a superar por Simulation Engine<br />Beneficios del Simulation Engine<br />MRDS - Simulation Engine<br />
MRDS - Simulation Engine<br />
ROBOCHAMPSwww.robochamps.com<br />
Demo – SimulationEngine<br />
Visual Programming<br />
Visual Programming<br />
Demo – VisualProgramming<br />
¿Cómofuncionaunaaplicación de robótica?<br />Estácompuestaporunaserie de componentesdesacopladosqueproveen:<br />“Orquesta...
Microsoft Robotics Necesidades en Robotics<br />Necesidades<br />Asíncrono<br />Concurrente<br />Pocoacoplamiento<br />Des...
Microsoft Robotics Necesidades en Robotics<br />¡No solo en aplicaciones de Robots!<br />Runtime<br />Services<br />Author...
Distributed Services Framework (DSS)
Visual Simulation Runtime and Editor
Visual Programming Language  (VPL)
Visual Studio templates
Samples and tutorials
Robot services
Robot models
Infrastructure services</li></li></ul><li>Robotics Runtime<br />Custom/Application Services<br />Sensors<br />Actuators<br...
Robotics Runtime<br />Port<br />Handlers<br />State<br />Los servicios con losbloquesprincipales<br />Gestionanestados<br ...
Robotics Runtime<br />
Upcoming SlideShare
Loading in...5
×

2010 10 25 Universidad Autonoma de Madrid - Microsoft Robotics

1,157

Published on

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,157
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide
  • Cambio a estilo 2007 ¿?
  • IntroducciónMs lo anuncia el 20 de Junio de 2006 en la Robotics Business ConferenceCTP Agosto, Septiembre, Octubre, NoviembreRTM 13 Diciembre 2006 Plataforma de desarrollo de robots de End-to-End posee una herramienta para la generación de servicios que interactúan con piezas de hardware estos servicios son genéricos y pueden ser accedidos desde una interfaz web o win posee una herramienta para la simulación de aplicación en un entorno que soporta modelos 3D Utilizando the AGEIA PhysiscsTechnologyEl Runtime posee un engine para la ejecución concurrente de servicios (lo veremos mas adelante cuando tengamos que rotar un motor)Esto hace que la creación de aplicación asincronas sea mas facilSe puede acceder al estado de cualquier servicio a traves de una interfaz web para consultar su estado y para interactuar con el mismoVisual Studio y VS Express además de IronPhytonLa version RTM soporta interfaces para interactuar con LEGO Mindstorms, Irobot; aspiradoras inteligentes, ahora con bluetoothel mando de la XBox360
  • Boe-Bot Kit for Microsoft Robotics StudioUsing Microsoft Robotics Studio, you can easily program the Boe-Bot Parallax kit over Bluetooth and best of all, the Robotics Studio team has negotiated a 15% discount on the BoeBot.  Cost: $178.77 after 15% discountGet it:Head over to ParallaxCode it: You can use Microsoft Robotics Studio which exposes services to control your Parallax Boe-Bot Kit using Bluetooth.iRobotRoombaBesides being a great way to vacuum your house, you can program your roomba to help you take over the world!  I suggest making it bark like a dog and &quot;attack&quot; people that get too close to your Xbox.Cost: $229 or $339 depending on modelGet it:Roomba Red + RooTooth bundle, Roomba Discovery + RooTooth BundleCode it: You can use Microsoft Robotics Studio which includes built-in services for Roomba programming.LEGO Mindstorm NXTLEGO Mindstorms NXT is Lego’s newest release of their popular Mindstorms robotics and includes built-in three motor support and multiple sensor support including motion, touch, sound, and light.  Heck, you may even be able to solve the most evil puzzle ever created.Cost: $249.99Get it:LEGO Mindstorms on Amazon.comCode it: You can use Microsoft Robotics Studio which includes built-in services for LEGO Mindstorms NXT programming.  Or check out Mind Squall&apos;s .Net 2.0 library for remote controlling your NXT.
  • Hardware costoso, el LEGO cuesta mas de 200€Una parte importante del desarrollo y pruebas con elementos de robotica es la capacidad de emulacionEs diferente al desarrollo convencional (no hay Nunit :P)El equipo de Robotics, despues de investigar un poco, pensó que el punto de partida ideal para brindar capacidades de emulacion era un entorno de emulacion como el de los videojuegos; con base en visualizaciones realistasfisica aplicada a los objetos con restricciones basadas en el mundo realUtiliza AGEIA PhysxTechnologyManejado y renderizado con DirectXNo es necesario Hardware para comenzarSe pueden diseñar y coordinar proyectos interdisciplinarios para equipos distribuidos con roles diferentesEsto permite ajustar los valores de las variables que afectan al robot en tiempo real
  • Proyecto de ejemplo de Demo&quot;C:\\Microsoft Robotics Studio (1.5)\\samples\\SimulationTutorials\\Tutorial1\\SimulationTutorial1.sln“Descomentar y explicar como se agregan entidadesprivate void PopulateWorld() { //AddSky(); //AddGround(); //AddBox(new Vector3(1, 1, 1)); //AddTexturedSphere(new Vector3(3, 1, 0)); }F1 - Hides help text. F2 - Toggles display/rendering of the physics primitive visualization. Useful for debugging your physics geometry. Camera Movement: A - Strafe Left (lateral move left) D - Strafe Right (lateral move right) W - Move Forward S - Move Backward Q - Move Up on the Y-axis (vertically) E - Move Down in the Y-axis (vertically) Proyecto 2&quot;C:\\Microsoft Robotics Studio (1.5)\\samples\\SimulationTutorials\\Tutorial2\\SimulationTutorial2.sln&quot;Referencias a The tutorial requires the following additional references: SimulatedBumper.Y2006.M05.Proxy SimulatedDifferentialDrive.2006.M06.Proxy SimulatedLRF.Y2006.M05.Proxy SimulatedWebcam.Y2006.M09.Proxy Para controlar el lego y el Bot grandeHay ademas un sensor laser en la mesa para controlar las distanciasMostrar y descomentar el siguiente código para mostrar como se puede montar una webcam sobre un robot (lina 108)//CreateService(// simwebcam.Contract.Identifier,// Microsoft.Robotics.Simulation.Partners.CreateEntityPartner(// &quot;http://localhost&quot; + cam1.State.Name)//);
  • En realidad el nombre es Microsoft Visual Programming LanguageEs un entorno de desarrollo visual basado en procesos “de datos”Esta pensado para nodesarrolladores, personas sin conocimientos de programación, pero con conocimientos basicos de conceptos como variables, flujos y logica.OJO, no está limitado para principiantes se pueden hacer app potentes con VPLPosee una toolbox con los componentes que se pueden utilizar en el proceso, y esta toolbox es extensibleNo se utiliza WWF, porque el engine de ejecución de VPL, para los procesos sincrónicos es parecido, pero tiene características propias de la programacion concurrente que no aplican a WWF
  • Lanzar VPLDemos en c:\\YoRobot\\Source\\MRDS\\Ejemplo de un simple hola MundoLoop con text to speechMovimiento de un Lego, configurar el “GenericDifferentialDrive” para que utilice la interfaz de acceso del LEGO.
  • Este es el esquema grafico principal de una aplicación robotica, compuesta por actires, sensores, y usuariosEs necesario una entidad que actue como un orquestador y que sea la encargada de
  • Actua como un orquestador
  • 2010 10 25 Universidad Autonoma de Madrid - Microsoft Robotics

    1. 1. Microsoft RoboticsDeveloper Studio<br />2010 04 08<br />Bruno Capuano<br />MVP – Visual Studio ALM<br />b.capuano@gmail.com<br />Avanade<br />www.elbruno.com<br />
    2. 2. Agenda<br />
    3. 3. A donde queremos llegar<br />
    4. 4. Donde estamos<br />
    5. 5. Qué nos puede suceder<br />
    6. 6. Microsoft RoboticsDeveloper Studio<br />
    7. 7. Microsoft Robotics<br />LEGO Mindstorm NXT<br />fishertechnik<br />iRobotRoomba<br />Parallax Boe-Bot BASIC Stamp Robot<br />Kondo KH-1<br />Trasxter<br />MobileRobotsPioneer P3 DX<br />
    8. 8. Microsoft Robotics<br />LEGO Mindstorm NXT<br />Boe-Bot Kit for <br />Microsoft Robotics Studio<br />iRobotRoomba<br />
    9. 9. Microsoft Robotics<br />
    10. 10. Retos a superar por Simulation Engine<br />Beneficios del Simulation Engine<br />MRDS - Simulation Engine<br />
    11. 11. MRDS - Simulation Engine<br />
    12. 12. ROBOCHAMPSwww.robochamps.com<br />
    13. 13. Demo – SimulationEngine<br />
    14. 14. Visual Programming<br />
    15. 15. Visual Programming<br />
    16. 16. Demo – VisualProgramming<br />
    17. 17. ¿Cómofuncionaunaaplicación de robótica?<br />Estácompuestaporunaserie de componentesdesacopladosqueproveen:<br />“Orquestación” de los sensores y actores<br />Interacción con el usuario<br />Control de la lógica del proceso<br />Robotics Runtime<br />Actores<br />Orquestación<br />User Exp (UI)<br />Behavior<br />Sensores<br />
    18. 18. Microsoft Robotics Necesidades en Robotics<br />Necesidades<br />Asíncrono<br />Concurrente<br />Pocoacoplamiento<br />Descentralizado<br />…<br />MultiCore/ManyCore<br />Distributed Computing<br />
    19. 19. Microsoft Robotics Necesidades en Robotics<br />¡No solo en aplicaciones de Robots!<br />Runtime<br />Services<br />Authoring Tools<br /><ul><li>Coordination and Concurrency library (CCR)
    20. 20. Distributed Services Framework (DSS)
    21. 21. Visual Simulation Runtime and Editor
    22. 22. Visual Programming Language (VPL)
    23. 23. Visual Studio templates
    24. 24. Samples and tutorials
    25. 25. Robot services
    26. 26. Robot models
    27. 27. Infrastructure services</li></li></ul><li>Robotics Runtime<br />Custom/Application Services<br />Sensors<br />Actuators<br />Orchestration<br />Control<br />Services<br />Algorithms<br />Simulation<br />Sensors<br />Authoring<br />Services<br />Reference<br />Services<br />…<br />Visualization<br />Actuators<br />Runtime<br />Concurrency<br />and coordination<br />runtime<br />Activation<br />UX<br />Diagnostics<br />Decentralized<br />System<br />Services<br />Discovery<br />Storage<br />Monitoring<br />
    28. 28. Robotics Runtime<br />Port<br />Handlers<br />State<br />Los servicios con losbloquesprincipales<br />Gestionanestados<br />Behavior<br />Respetan uncontratopredefinido<br />Service<br />Las operaciones<br />Administran los estados<br />Crean y destruyen nuevos servicios<br />Son lasencargardas de gestionarlasnotificaciones<br />
    29. 29. Robotics Runtime<br />
    30. 30. Demo – RoboticsRuntime<br />
    31. 31. Tribot + WebCam<br />
    32. 32. Lego NXT# / MindSqualls.Net<br />Una alternativa interesante<br />
    33. 33. Lego NXT# / MindSqualls.Net<br />Código más limpio<br />
    34. 34. Demo – Lego NXT Sharp<br />
    35. 35. Referencias<br />Microsoft Robotics Studio http://msdn.microsoft.com/robotics/<br />Microsoft Robotics Studio Blog <br />http://blogs.msdn.com/MSRoboticsStudio/<br />Wiimote Controlled Car<br />http://blogs.msdn.com/coding4fun/archive/2007/07/16/3902344.aspx<br />NXT# (Librería opcional para controlar Lego Mindstorm desde .NET Framework)http://nxtsharp.fokke.net/<br />NXTMindSqualls.Net(otra Librería opcional)http://www.mindsqualls.net/<br />Managed Library for Nintendo's Wiimotehttp://blogs.msdn.com/coding4fun/archive/2007/03/14/1879033.aspx<br />WiiEarth -- Wiimote Interface for Virtual Earthhttp://blogs.msdn.com/coding4fun/archive/2007/10/18/5506286.aspx<br />Wiimote Controlled Carhttp://blogs.msdn.com/coding4fun/archive/2007/10/18/5506286.aspx<br />
    36. 36. Microsoft RoboticsDeveloper Studio<br />Bruno Capuano<br />MVP – Visual Studio ALM<br />bcapuano@gmail.com<br />Avanade<br />www.elbruno.com<br />

    ×