Este documento presenta AWS RoboMaker, un servicio que facilita el desarrollo, simulación e implementación de aplicaciones robóticas inteligentes a escala. RoboMaker proporciona un entorno de desarrollo integrado, simulaciones y herramientas para administrar flotas de robots que se conectan a servicios en la nube de AWS como Amazon Lex y Amazon Polly. El documento también cubre ROS 2 y las contribuciones de AWS a ROS para mejorar la calidad y seguridad de los sistemas robóticos.
4. Marco de desarollo mas utilisado en la robotica para enseñar y desarollar robots.
Mas de 16 milliones de (Linux Debian) paquetes descargados in 2018, un 400% incremento desde 2014.
RobotOperatingSystem (ROS)
ROS
Un conjunto de librerias, herramientas y utilidades. Desde algorismos hasta controladores que
ayudan a desarrolladores a crear aplicaciones para robots.
LTS May 2016
Ubuntu 16.04
LTS May 2018
Ubuntu 18.04
1st ROS2 LTS
Q3 2019
Noetic Ninjemys
2020
5. Conceptos deDesarrollo Fundamentales en ROS
Topics Services Actions
https://www.ros.org/core-components/
• Canales de mensajes
de un tipo definido
• Mecanismo de
suscripción y
publicación
• Llamadas síncronisadas
de procedimientos remoto
• Permiten que un nodo
llame a una función que se
ejecuta en otro nodo
• llamadas
asincrónicas, de
mas tiempo y
orientadas a
metas
• Suministran
realimentación
11. AWS RoboMaker
Entorno de desarrollo SimulaciónExtensiones en la
nube para ROS
Administración de
flotas
12. AWS RoboMaker
Entorno de desarrollo
Empieza el desarollo con zero esfuerzo de
configuracion
Crea un entorno de desarollo en RoboMaker
con un solo clic
Automaticamente descarga, compila y
configura el systema operativo, software de
desarollo y ROS
14. AWS RoboMaker
Extensiones en lanube para ROS
Extensiones para la nube escritas como paquetes de ROS automaticamente crean conexión y
hacen llamadas a las APIs de servicios como Amazon Lex, Amazon Polly, Amazon Kinesis
Video Streams, Amazon Rekognition, and Amazon CloudWatch
LEX
reconocimiento de
voz
POLLY
generación
de habla
KINESISVIDEO
STREAMS
transmisiones
de video
REKOGNITION
análisis de imagen
y video
CLOUDWATCH
registro y monitoreo
16. Futuro Motorizado por la Nube
RoboMaker: Simulaciones y ajuste de parámetros
RoboMaker-Kinesis: Transmisión de datos en tiempo real
RoboMaker-Lex-Polly: Interactividad mejorada
EC2/S3: Portal remoto y despliegue
Análisis
Predicción
Learn to pronounce
Transmisión de datos en tiempo real
17. ROS Nodes
and topics
AWS Cloud
Node logic
Temporary
security
credential
Stored
credential
Robot
… or …
AWS RoboMaker
CloudWatch Extension para ROS
18. AWS RoboMaker
Simulación
Mundos 3D pre-ensamblados, trae tu propio
Sin necesidad de provisionar, configurar o
mantener infraestructura
Corre multiples simulaciones en parralelo
Scala automatica, pague por lo que use en
termino de consumo
23. AWS RoboMaker
Administración de flotas
Integrado con AWS Greengrass
Seguridad & tolerancia de fallos
Gemelo digital de tus robots
Despliegue de aplicaciones por el aire con
solo unos clics en la consola deAWS
24. 👍 👎👍 👍 👍 👍 👍👎
Despliegue
concurrente 20%
Umbral de falla 15%
Trabajos de Despliegue (10 Robots)
Umbral de falla15%
AWS RoboMaker
Administración de flotas
28. ROS
ROS 2 Metas
Calidad de diseño y
Implementación
Validación,Verificación y
Certificación
Flexibilidad en
Comunicación
Soporte para Sistemas
embebidos
Confiabilidad del Sistema
Control enTiempo-Real y
Ejecución Deterministica
30. AWS Robomaker Contribuciones a ROS 2
En ROS 2 D, resolvimos:
• 4 pérdidas de memoria que afectan la producción
• 17 pérdidas de memoria que impactan las pruebas
• 2 Carreras de datos impactando Fast RTPS
• Arreglamos 89% of ASan defectos detectados.
Algunas de nuestras contribuciones:
• Hemos contribuido implementacion para calidad de
servicios en mensajeria
• Control de Calidad del Codigo
• Mejoras de infrastructura
• GCC sanitizer (ASan/TSan)
Mas informacion acerca del sanitizer: bit.ly/ros2-sanitizer
31. ROS 2 Modelo de Amenaza
bit.ly/ros2-threat-model
32. Esta listo ROS 2?
Diseñado para aplicaciones de grado de producción
Multi-Plataforma (Linux, Windows, Android, FreeRTOS, etc.)
Sin bloqueo de proveedor
Desarrollado con standares libres
Licencia de código abierto permisiva (BSD and Apache)
Communidad global
Notas del editor
Primero que todo, muchas gracias a los organizadores por traernos a esta cumbre tan maravillosa. Es un honor para nostros ser parte de este evento
Hoy vamos a conversar acerca de tres temas interesantes, introducion básica de ROS, versiones herramientas etc
Introduccion a las capacidades de AWS RoboMaker, y para cerrar les voy a contar un poco acerca de la iniciativa de ROS2
Topicos son canales de mensajes publicados por nodos, sensores oh algorismos desarrollados
Servicios son otra forma de pasar mensajes entre nodos, pero mas de estilo syncornizado. Las entradas y salidas de estas funciones se definen de la misma manera que definimos mensajes para tópicos. Sever/client. Request/response. Acciones discretas, fuciones de computación.
Acciones, mejores para comandos de tiempo largo, como goto_position, blocking calls. Preben feedback de actualizascion. Son en si higher level protolo set de topics. Goal, result, feeback
ROSCORE es processor principal que sirve de broker para todo en ros
3 herramientas fundamentals en el ecosystema de ROS. Gazebo para simulacion, Rviz para visualisacion y rqt para analysis de parametros
Gazebo prober Open Dynamics Engine como motor de fisica, pero se puede intercambiar con bullet, graficos fideles de alto nivel y programtico
Rviz te permite visualizer los mensajes de sensors, mapa y navegacion en tiempo real
Rqt permite tramar los mensajes y parametros en tiempo real o pre grabados
Develop
Test
Deploy applications and updates onto robotics
Monitor and manage robots in production
Allow robots to connect to cloud services
Los cuatro aspectos mas importantes de la utilidad AWS RoboMaker que les present hoy
One complaint we heard was the time to set up a consistent environment for the entire team
Provision compute, shared storage for applications
Consistent development environment for ROS
all dependencies built-in for ROS and cloud extensions
Enhanced menu for most often used commands and development steps
Additions to build and bundle and push apps to S3
Iterative development
Recognize Speech
Talk in response
Stream video and video like data (radar, lidar)
Stream it to Amazon Recognition Video
Other image processing software
CloudWatch to collect metrics and log records from robots in production
17
RoboMaker simulation provides robotics simulation as a service
Large scale and parallel simulations.
Our service scales and manages your simulation
Top Right upload to S3 bucket
From Console, create a simulation job for the application
Left hand side, tools for you to interact with the simulation
Visualize the simulation while it is running
Visualize data coming off a specific sensor
Visualize message passing
Command line tools to interact with the simulation while it is running
Connection to CloudWatch to monitor when you are running hundreds of simulation, monitor with CloudWatch
Go to S3 bucket and find the logs for that simulation
You can spin up thousands of simulations, log files are archived and you can see aggregated metrics from all the simulations.
B9 fleet management service is integrated with AWS IoT Greengrass
Robot registry, security, and fault-tolerance built-in.
Over the air updates
Can set thresholds for how many robots should be deployed to at one time (concurrent) and what failure threshold sound indicate a failed deployment.
UDPROS TCPROS vs ROS2 middleware DDS/ Fast RTPS
Open Robotics very open to the proposal for industrial steering committee
Companies like
The ask of these companies…
Let me tell you a few projects we are leading
Somos contribuidores activos en ROS2
3a/ QA Improvement
Using modern C++ tooling, we contributed to ROS 2 CI jobs which can detect automatically memory and concurrency bugs.
A specificity of robots is that a single bug is enough to break your hardware. Bugs are very critical in robots and it is easy to write incorrect code in C++. Building community trust into the ROS 2 communication layer (which was rewritten from scratch in ROS 2) is crucial to enable ROS 2 adoption.
Impact:
•eProsima is interested in using the same approach than us (ASAN/TSAN) to validate FastRTPS (no source, heard in a meeting with their engineers)
• Acutronic wants to enable ASAN/TSAN in MoveIt CI
• Acutronic fixes bug found by ASAN/TSAN (proving that 1/ ASAN/TSAN find real bugs 2/ the community looks at ASAN/TSAN nightly report and act on it)
•ASAN/TSAN is part of Acutronic Cybersecurity Tutorial. Listed as a way to identify vulnerabilities in robots (ASAN can identify a memory bug like e.g. a potential buffer overflow which can then potentially be turned into a security exploit).
3b/ ROS 2 Threat Model
Contributed a ROS 2 threat model.
Impact:
• Community was very engaged in the PR, demonstrating interest: https://github.com/ros2/design/pull/218
•Acutronic built on our threat model and use it to validate their robotic product (MARA arm section was contributed by them to our doc): https://design.ros2.org/articles/ros2_threat_model.html#threat-analysis-for-the-mara-robotic-platform
Casi 100 porciento en termino de paridad de caracterisca con ros1