SentiBotics

SentiBotics
Kit para desarrollo de robótica listo para usar
Descripción

SentiBotics es un equipo para desarrollo de robótica listo para usar diseñado para investigadores y aficionados, que desean concentrarse en la creación de robots. El equipo incluye un robot móvil autónomo con un brazo manipulador, un kit de desarrollo basado en ROS (Sistema Operativo Robot) y el código fuente completo de todos los algoritmos usados en el software del robot.

El hardware robótico sólo requiere ser ensamblado y una configuración sencilla para comenzar a utilizarlo. El robot es capaz de moverse en un entorno común, reconoce objetos 3D, puede agarrarlos y manipularlos. El kit de desarrollo incluye una variedad de ejemplos de programación para las acciones mencionadas.

Descargue aquí el catálogo del producto SentiBotics

Ventajas de SentiBotics
  • El hardware robot se entrega con instrucciones para armarlo y configurarlo.
  • Algoritmos originales propietarios para navegación autónoma, reconocimiento y manipulación de objetos 3D.
  • El Kit de desarrollo está basado en el framework Sistema Operativo Robot que es abierto y versátil (ROS - Robot Operation System).
  • El hardware del robot es duradero y está basado en componentes disponibles en el mercado.Se incluye el código fuente de los algoritmos robóticos.
  • Se puede utilizar VeriLook y VeriSpeak para el reconocimiento biométrico de personas a partir de los datos recogidos por el robot.

Capacidades y características de la tecnología SentiBotics

Comenzamos la investigación y desarrollo en el campo de la robótica autónoma en el año 2004. Diez años después, en 2014, se publicó el Kit de Desarrollo SentiBotics.
El equipo SentiBotics incluye un hardware robótico fácil de configurar y algoritmos originales propietarios para navegación autónoma, reconocimiento y manipulación de objetos 3D:

  • Ensamblaje y configuración simple del hardware robot. El robot SentiBotics se entrega como un conjunto de diversos componentes (plataforma de oruga, brazo robótico, cámaras etc.), que se deben ensamblar y conectar. Se incluyen todas las instrucciones necesarias. El computador interno tiene preinstalado el sistema operativo Ubuntu Linux y el software SentiBotics. Revise las especificaciones de la plataforma robótica para más información.
  • Software basado en el framework ROS (Robot Operating System) El software para la navegación del robot, el reconocimiento y manipulación de objetos utilizando el brazo robótico está basado en el Sistema Operativo ampliamente usado Robot Operating System. Los investigadores y desarrolladores pueden utilizar su experiencia con ROS y su software preexistente basado en ROS para trabajar con el Kit de Desarrollo SentiBotics que incluye una infraestructura basada en ROS, que permite integrar partes y piezas de hardware de otros proveedores o algoritmos robóticos.
  • Navegación Autónoma. SentiBotics utiliza un algoritmo original de navegación basado en el reconocimiento de ciertos elementos de un entorno. En primer lugar el robot necesita explorar el entorno y construir el mapa correspondiente. Los usuarios pueden realizar un proceso de mapeado manual manipulando el robot con el panel de control incluido, o escribiendo una serie de instrucciones simples de movimiento. Además, el robot puede simplemente ser liberado durante un tiempo para explorar el entorno y construir el mapa por su propia cuenta. Una vez que el mapa ha sido creado, el robot será capaz de moverse, navegar y operar en el entorno de forma totalmente autónoma. Revise la sección de navegación para más detalles.
  • Reconocimiento y manipulación de objetos. SentiBotics incluye un conjunto de algoritmos originales, basados en visión computarizada para el aprendizaje y reconocimiento de objetos. Los usuarios podrán enseñar al robot a reconocer objetos previamente desconocidos con simplemente colocarlos frente a la cámara 3D del robot y asignándole un identificador. Luego el robot podrá reconocer el objeto aprendido en el entorno. Los usuarios también pueden especificar, qué objetos deben ser tomados con el brazo del robot, y una vez que el robot tenga el objeto especificado dentro de la distancia adecuada, lo tomará y lo colocará en el recipiente dispuesto. Vea la sección de aprendizaje, reconocimiento y manipulación de objetos para más información.
  • Se incluye el código fuente de los algoritmos. El Kit SentiBotics incluye todo el código fuente de los algoritmos utilizados en el robot junto con ejemplos de software funcionales para navegación autónoma, reconocimiento y manipulación de objetos. Los algoritmos de SentiBotics están escritos en lenguaje in C++ y diseñados para ejecutarse en el hardware robótico especificado, pero puede ser exportado a otras plataformas robóticas, que incluya un computador similar o superior.
  • El hardware robot está basado en componentes disponibles en el mercado. Los usuarios pueden adquirir componentes adicionales para mejorar el robot, cambiar su funcionalidad o construir otros robots, que ejecuten el software SentiBotics.
  • Interoperabilidad con otros de nuestros productos. Los usuarios pueden añadir el reconocimiento biométrico de rostros o voces ejecutando aplicaciones basadas en VeriLook SDK y VeriSpeak SDK respectivamente tanto en el computador interno de SentiBotics o en cualquier otro hardware, que se encuentre en la misma red de SentiBotics.

Especificaciones de la Plataforma Robótica

El hardware robótico de SentiBotics consiste de:

  1. Plataforma de oruga (dos motores de 17 W, 1.72 NM de torsión, Controlador compatible con ARDUINO). La plataforma puede soportar hasta 10 kg (22 libras) de carga útil.
  2. Computador interno Intel NUC i5 (tarjeta RKE53427, Intel Core i5-3427U @ 1.80GHz, 8 GB RAM, 64 GB SSD, tarjeta de red inalámbrica 802.11n).
  3. Batería (20 Ah 4-cell LiFePO4) con cargador de 4 Amperes.
  4. Brazo robótico modular con 8 articulaciones, equipado con servo motores DYNAMIXEL. Cada servo motor cuenta con apoyo de retroalimentación de fuerza. El brazo puede levantar hasta 0.5 kg (1.1 libras) de peso.
  5. Dos sensores 3D:
    1. Softkinetic DS325 de corto alcance para el brazo;
    2. Asus Xtion Pro Live de largo alcance para navegación.
  6. Control para manipulación manual del robot y el brazo robótico.

Note que la plataforma robótica está diseñada para uso en interiores como oficina o laboratorio.

Contenido del Kit de Desarrollo SentiBotics

El Kit de Desarrollo SentiBotics contiene:

  1. • Detalle de todos los algoritmos usados, incluyendo código fuente en C++ y documentación completa.
  2. • Infraestructura basada en ROS que permite a los usuarios integrar rápidamente algoritmos robóticos de terceros, migrar a otro hardware (o modificar el hardware existente) y proporciona un framework unificado para el desarrollo de algoritmos robóticos.
  3. • Ejemplos de programación que pueden ser usados para pruebas o demostraciones de las capacidades del robot, incluyendo:
    1. Conducción de la plataforma robot y control del brazo robótico con un panel de control.
    2. Construcción de un mapa del entorno simplemente haciendo navegar el robot.
    3. Uso del mapa para navegación autónoma del robot.
    4. Enseñar al robot a reconocer objetos.
    5. Manipular un objeto reconocido que se encuentre al alcance del brazo robótico.
    6. Ubicar y tomar un objeto que se encuentre en un lugar visitado previamente.

SentiBotics fue probado en el hardware robot especificado, con ROS versión Groovy Galapagos, sobre Ubuntu 12.04. Los algoritmos SentiBotics se pueden portar a otras plataformas robóticas, que incluyan un computador similar o superior con las mismas versiones de Linux y ROS.

Navegación

El robot SentiBotics necesita explorar el entorno y generar el mapa para poder navegar. El mapa se crea durante un proceso llamado mapeado.

Note, que el hardware robot está diseñado para uso en interiores (ej. Oficina o laboratorio).

Mapeado manual

El usuario debe conducir el robot para pasearlo dentro de un entorno desconocido utilizando comandos simples o el control incluido. En cada momento, el robot puede desplazarse en línea recta cierta distancia o girar en algún lugar el ángulo especificado. El seguimiento de trayectorias no es posible en este modo.

Durante la fase de mapeado, los sensores del robot se utilizan para construir un mapa pseudométrico basado en gráficos, que se puede utilizar para navegación autónoma hacia los lugares predefinidos u otros propósitos. Cada nodo del gráfico representa un destino particular, mientras que las esquinas representan las transiciones entre ellos.

Mapeado autónomo

Durante el mapeado autónomo el robot puede navegar aleatoriamente en el entorno desconocido, o utilizar instrucciones o tareas proporcionadas por el usuario. El mapa se construye igual que en el modo de mapeado manual. El robot está constantemente buscando obstáculos e intentando evitarlos.

Las recomendaciones para el mapeado automático son:

  • Se recomienda una visibilidad de 0.5 m (1'8") o mayor para un movimiento eficiente del robot.
  • La evasión de obstáculos asume que no hay objetos ocultos en menos de 0.3 m (1'0") frente a los obstáculos.
  • Las puertas de vidrio y otros objetos transparentes pueden ser difíciles de reconocer.

El mapeado manual produce mejores resultados en entornos complejos comparado con el mapeado autónomo.

Navegación autónoma

El robot navega en un entorno utilizando un mapa pseudométrico basado en gráficos, que ha sido generado durante el mapeado manual o autónomo:

  • Cada nodo del mapa se asocia con cierto destino del entorno.
  • Dirigirse hacia un destino es una tarea que puede ser designada por un usuario o un evento planificado.
  • Los usuarios pueden añadir indicadores adicionales de objetos/lugares que se pueden utilizar por el robot como destinos hacia los cuales dirigirse.
  • El entorno debe poseer objetos texturizados y superficies estáticas para una navegación eficiente.
  • Se recomiendan giros de 30-45 grados para obtener máxima precisión.

Los usuarios también pueden utilizar paquetes de mapeado ROS adicionales.

Aprendizaje, Reconocimiento y Manipulación de Objetos
En primer lugar es necesario calibrar el brazo y la cámara
Calibración apropiada
del brazo y la cámara
Calibración apropiada del brazo y la cámara SentiBotics
Click para ampliar

El primer paso para usar la manipulación de objetos SentiBotics es calibrar el brazo y la cámara. Este procedimiento permite especificar que el objetivo del brazo esté coordinado con el campo visual de la cámara.

Se le pide al usuario hace clic en el efector final con el puntero del ratón desde 30-40 posiciones diferentes durante la calibración. Si se encuentra una solución correcta, el usuario verá la proyección verde tipo esqueleto correspondiente a las articulaciones del brazo en el video proveniente de la cámara.

Si la calibración no es suficiente, el usuario verá una proyección que no corresponde a la imagen del brazo físico, o no conseguirá una solución. Entonces se deben agregar más pares de puntos de calibración, o se deben eliminar los puntos inválidos. Note que el proceso de calibración incluye correcciones locales, y gracias a eso posee ventajas útiles (ej. es robusto respecto a pequeñas imprecisiones del modelo cinemático del brazo, errores de la cámara, etc.).

Sugerimos probar la calibración en varios segmentos del espacio de trabajo, y agregar más puntos de calibración en las regiones donde la calibración parece insuficiente. Además, si se completa la calibración y es suficientemente correcta, se puede corregir todavía más, haciendo clic sobre las otras articulaciones de la misma forma.

La manipulación de objetos SentiBotics posee algunos requisitos y limitaciones que se describen a continuación.

Requisitos para la escena de captura
Escena de captura adecuada
Escena de captura adecuada SentiBotics
Click para ampliar

La escena de captura debe cumplir ciertas condiciones:

  • La escena de captura debe ser estática y sin obstáculos.
  • El soporte plano de los objetos debe estar hecho de un material no reflectante (ej. espejos).
  • Se recomienda altamente una iluminación uniforme para un mejor reconocimiento de los objetos.

Requerimientos para los objetos en la escena de captura

Los objetos en la escena de captura también deben cumplir con ciertas condiciones:

  1. • Los objetos deben estar ubicados:
    1. En un soporte plano suficientemente amplio (ej. piso, o plataforma tipo mesa);
    2. Frente al robot dentro de 0.2 - 0.4 m (0'9" - 1'4") desde la base del brazo;
    3. No muy cerca entre sí para que puedan ser fácilmente separables como puntos independientes.
  2. • Los objetos deben ser simétricos y aprehensibles desde cualquier ángulo (ej. Actualmente es imposible tomar una taza por el asa).
  3. • Cada objeto puede pesar hasta 0.5 kg (1.1 libras).

Segmentación y aprendizaje de objetos
Reconocimiento de objetos
Reconocimiento de objetos SentiBotics
Click para ampliar

El algoritmo de segmentación de objetos SentiBotics intenta localizar posibles objetos con determinadas propiedades (ej. Grupos puntuales claramente separables que yacen en una plataforma plana) Si está habilitado el reconocimiento de objetos, cada candidato se compara con los modelos de objetos aprendidos, y, si se encuentra una coincidencia, se asigna una etiqueta.

El usuario debe registrar los objetos de interés en el motor de reconocimiento de objetos simplemente colocándolos en la escena de captura y especificando una etiqueta. Durante la fase de aprendizaje, sólo se debe presentar un objeto en el cuadro. Además, se recomienda registrar el objeto desde diferentes posiciones y distancias.

Agarre de objetos
Agarre de objetos
Agarre de objetos SentiBotics
Click para ampliar

El usuario puede ordenar al robot que agarre un objeto específico. Si el objeto es visible por la cámara y se reconoce correctamente, el manipulador del robot lo tomará. Finaliza el agarre cerrando la pinza, y se analiza midiendo la fuerza de retroalimentación del servo motor de los dedos. Si la pinza no está cerrada por completo y la fuerza aplicada está por encima del umbral, se asume que el agarre fue exitoso.

Licenciamiento y Precios de SentiBotics

Por favor contáctenos a nuestro correo electrónico contacto@goit.cl para obtener más información sobre el licenciamiento y compra del Kit SentiBotics.

Precios
  • El Kit SentiBotics tiene un valor de € 24,000.
  • El precio es efectivo a partir del 29 de marzo de 2015
  • Este monto no incluye impuestos locales de importación.
  • El costo del despacho depende del país destino.