Download - Programación Aplicada - Tema 3

Transcript
Page 1: Programación Aplicada - Tema 3

PROGRAMACIÓ

N

APLIC

ADA

TEMA 3

– PR

OGRAMACIÓN A

PLIC

ADA A L

A ROBÓTI

CA

Pontificia Universidad Católica Madre y MaestraVicerrectoría AcadémicaFacultad Ciencias de las IngenieríasIngeniería en Sistemas y Computación - ISC

Page 2: Programación Aplicada - Tema 3

PROGRAMACIÓN APLICADA A LA ROBÓTICA

La Robótica es una ciencia o rama de la tecnología, que estudia el diseño y construcción de máquinas capaces de desempeñar tareas realizadas por el ser humano o que requieren del uso de inteligencia.

El conjunto de conocimientos teóricos y prácticos que permiten concebir, realizar y automatizar sistemas basados en estructuras mecánicas poli articuladas, dotados de un determinado grado de "inteligencia" y destinados a la producción industrial o a la sustitución del hombre en muy diversas tareas.

ConceptoConcepto

Page 3: Programación Aplicada - Tema 3

PROGRAMACIÓN APLICADA A LA ROBÓTICA

La palabra robot fue usada por primera vez en el año 1921, cuando el escritor checo Karel Capek (1890 - 1938) estrena en el teatro nacional de Praga su obra Rossum's Universal Robot (R.U.R.). Su origen es de la palabra eslava robota, que se refiere al trabajo realizado de manera forzada. La trama era sencilla: el hombre fabrica un robot, luego el robot mata al hombre.

Muchas películas han seguido mostrando a los robots como máquinas dañinas y amenazadoras. Sin embargo, películas más recientes, como la saga de "La Guerra de las Galaxias" desde 1977, retratan a robots como "C3PO" y "R2D2" como ayudantes del hombre. "Número 5" de "Cortocircuito" y "C3PO" realmente tienen apariencia humana. Estos robots que se fabrican con look humano se llaman ‘androides’.

EtimologíaEtimología

Page 4: Programación Aplicada - Tema 3

PROGRAMACIÓN APLICADA A LA ROBÓTICA

1ª Generación.

Manipuladores. Son sistemas mecánicos multifuncionales con un sencillo sistema de control, bien manual, de secuencia fija o de secuencia variable.

2ª Generación.

Robots de aprendizaje. Repiten una secuencia de movimientos que ha sido ejecutada previamente por un operador humano. El modo de hacerlo es a través de un dispositivo mecánico. El operador realiza los movimientos requeridos mientras el robot le sigue y los memoriza.

3ª Generación.

Robots con control sensorizado. El controlador es una computadora que ejecuta las órdenes de un programa y las envía al manipulador para que realice los movimientos necesarios.

4ª Generación.

Robots inteligentes. Son similares a los anteriores, pero además poseen sensores que envían información a la computadora de control sobre el estado del proceso. Esto permite una toma inteligente de decisiones y el control del proceso en tiempo real.

Tipos de Robot por su CronologíaTipos de Robot por su Cronología

Page 5: Programación Aplicada - Tema 3

PROGRAMACIÓN APLICADA A LA ROBÓTICA

Móviles

Los robots móviles están provistos de patas, ruedas u orugas que los capacitan para desplazarse de acuerdo a su programación. Elaboran la información que reciben a través de sus propios sistemas de sensores y se emplean en determinado tipo de instalaciones industriales, sobre todo para el transporte de mercancías en cadenas de producción y almacenes. También se utilizan robots de este tipo para la investigación en lugares de difícil acceso o muy distantes, como es el caso de la exploración espacial y de las investigaciones o rescates submarinos.

Industriales

Los robots industriales son artilugios mecánicos y electrónicos destinados a realizar de forma automática determinados procesos de fabricación o manipulación.

Médicos

Los robots médicos son, fundamentalmente, prótesis para disminuidos físicos que se adaptan al cuerpo y están dotados de potentes sistemas de mando. Con ellos se logra igualar con precisión los movimientos y funciones de los órganos o extremidades que suplen.

Teleoperadores

Los teleoperadores se controlan remotamente por un operador humano. Son generalmente muy sofisticados y extremadamente útiles en entornos peligrosos tales como residuos químicos y desactivación de bombas.

Tipos de Robots por su ArquitecturaTipos de Robots por su Arquitectura

Page 6: Programación Aplicada - Tema 3

PROGRAMACIÓN APLICADA A LA ROBÓTICA

Poliarticulados

Bajo este grupo están los robots de muy diversa forma y configuración cuya característica común es la de ser básicamente sedentarios. En este grupo se encuentran los manipuladores y algunos robots industriales.

Móviles

Cuentan con gran capacidad de desplazamiento, basados en carros o plataformas y dotados de un sistema locomotor de tipo rodante. Siguen su camino por telemando o guiándose por la información recibida de su entorno a través de sus sensores.

Androides

Estos intentan reproducir total o parcialmente la forma y el comportamiento cinemático del ser humano. Actualmente los androides son todavía dispositivos muy poco evolucionados y sin utilidad práctica, y destinados, fundamentalmente, al estudio y experimentación.

Zoomórficos

Los robots zoomórficos, que considerados en sentido no restrictivo podrían incluir también a los androides, constituyen una clase caracterizada principalmente por sus sistemas de locomoción que imitan a los diversos seres vivos.

Híbridos

Estos robots corresponden a aquellos de difícil clasificación cuya estructura se sitúa en combinación con alguna de las anteriores ya expuestas, bien sea por conjunción o por yuxtaposición. Por ejemplo, un dispositivo segmentado, articulado y con ruedas, tiene al mismo tiempo uno de los atributos de los robots móviles y de los robots zoomórficos.

Tipos de Robots por su ArquitecturaTipos de Robots por su Arquitectura

Page 7: Programación Aplicada - Tema 3

PROGRAMACIÓN APLICADA A LA ROBÓTICA

Manipulación en fundición 

Manipulación en moldeado de plásticos 

Manipulación en tratamientos térmicos 

Manipulación en la forja y estampación

Soldadura.

Aplicación de materiales

Mecanización

Montaje.

Medición, inspección, control de calidad

Manipulación de materiales

Formación, enseñanza e investigación

Otros

Aplicaciones de los RobotsAplicaciones de los Robots

Page 8: Programación Aplicada - Tema 3

PROGRAMACIÓN APLICADA A LA ROBÓTICA

Avances Recientes en la RobóticaAvances Recientes en la Robótica

Page 9: Programación Aplicada - Tema 3

LEGO MINDSTORMS - INTRODUCCIÓN

Es una serie de componentes hardware y software que permite crear robots pequeños y personalizables a través de bloques ensamblables, una unidad central programable, sensores, motores y un lenguaje de programación propietario.

¿Qué es LEGO ¿Qué es LEGO Mindstorms?Mindstorms?

Page 10: Programación Aplicada - Tema 3

LEGO MINDSTORMS - HISTORIA

Surgió en el 1998 como una integración de tres organizaciones:

1- Papert’s Epistemology and Learning research group: perseguía crear y diseminar nuevos enfoques de aprendizajes constructivistas. En honor a su libro “MindStorms: Children, Computers and Powerful Ideas” fue nombrado este producto.

2- Corporación LEGO: Además de lo anterior, hacer de la marca “la más fuerte en el mundo entre las familias con niños.

3- MIT Media Laboratory: Crear un públicamente nuevo modelo de investigación educativa que se enfatice en el impacto de ideas y el fomento de intercambio de ideas con patrocinadores corporativos.

Concepción, ideologíaConcepción, ideología

Page 11: Programación Aplicada - Tema 3

LEGO MINDSTORMS - NXT

Microcontrolador de 32-bits, ARM7, 48MHz, 256KB Flash, 64KB RAM.

Microcontrolador AVR 8-bit, 4KB Flash, 512B RAM.

Bluetooth clase II.

Puerto USB 12Mb/s.

4 puertos de entrada, 3 de salida.

1 pantalla LCD 100x64 píxeles.

Bocinas de 8kHz, 8-bit de resolución.

6 baterías AA.

• El NXT es la pieza principal que contiene el sistema de comandos para robots. Es una microcomputadora integrada en un ladrillo LEGO que se puede programar con una PC.

Page 12: Programación Aplicada - Tema 3

LEGO MINDSTORMS - SENSORES

De contacto: Para detectar colisiones con algún objeto. Al tocar una superficie una pequeña cabeza se contrae, permitiendo que una pieza dentro del bloque cierre un circuito eléctrico y comience a circular energía de 0 a 5v (mostrado en el LCD como una medida estandar de 450).

• De temperatura.• De luz.• De sonido (hasta

90dB)• Acelerómetro (para

conocer el nivel de inclinación en función de tres ejes).

Page 13: Programación Aplicada - Tema 3

LEGO MINDSTORMS - SENSORES

Ultrasónico: Utiliza ondas de sonido para calcular la distancia que tiene de un objeto. Va de 0 a 255 centímetros (aprox. 0 a 100 pulgadas). Se puede combinar con otros sensores (como el de luz) para detectar la proximidad con algún objeto de algún color.

• Brújula.• De color (valores

RGB que van desde 0 a 255).

Page 14: Programación Aplicada - Tema 3

LEGO MINDSTORMS - MOTORES

Motores Servo

El kit viene con tres motores de tipo standard para darle la habilidad al robot de moverse. Traen un sensor de rotación incluido, de 1 a 360 grados.

• Tres tipos distintos:Motor Velocidad

Normal (RPM)

Torque (kg/cm)

Estándar 3240 1.760

9 voltios 370 3.840 (240 pzs. de 8x8)

Micro 36 0.128

Page 15: Programación Aplicada - Tema 3

LEGO MINDSTORMS - PROGRAMACIÓN

Para darle vida al robot, es necesario utilizar un lenguaje de programación. En el empaque original se encuentra el Robo Center, en el cual se puede programar el robot con el lenguaje llamado “Robolab”

Page 16: Programación Aplicada - Tema 3

LEGO MINDSTORMS - ROBOLAB

Es un entorno de programación gráfico, para controlar el LEGO NXT. Utiliza una versión adaptada del LabVIEW de National Instruments. Está basado en íconos para crear diagramas.

Este lenguaje permite las instrucciones a modo estructurado, trabajando con un modo top-down, instrucciones de ciclos e instrucciones lineales, tomando como entrada los datos de los sensores.

Page 17: Programación Aplicada - Tema 3

LEGO MINDSTORMS

http://www.legoengineering.com/

http://es.wikipedia.org/wiki/Lego_Mindstorms

http://mindstorms.lego.com

http://us.mindstorms.lego.com/en-us/Community/NXTLog/default.aspx

http://www.robotc.net/index.php

Page 18: Programación Aplicada - Tema 3

LEGO MINDSTORMS - EJERCICIO

Empleando los tutoriales contenidos en el disco de LEGO Mindstorms, construya los 4 robots e implemente el código para darle vida en el lenguaje de programación indicado.

Page 19: Programación Aplicada - Tema 3

LEGO MINDSTORMS – LLUVIAS DE IDEAS

Realicemos una lluvia de ideas sobre tareas que podríamos tratar de programar sobre el robot “ShooterBot”.

¿Qué podemos ponerlo a ¿Qué podemos ponerlo a hacer?hacer?

1- Seguir un camino.2- Encestar bolas de cada color en su correspondiente canasta.

3- ¿Algunas otras ideas…?

Page 20: Programación Aplicada - Tema 3

LEGO MINDSTORMS – LLUVIAS DE IDEAS

Realicemos una lluvia de ideas sobre tareas que podríamos tratar de programar sobre el robot “Robogator”.

¿Qué podemos ponerlo a ¿Qué podemos ponerlo a hacer?hacer?

1- Emitir un sonido al identificar un color.2- Que siga una ruta determinada.3- Que cambie de dirección al ver un obstáculo. 4- Que se apague y prenda por voz.

5- Ser mensajero, para entregar un objeto y un mensaje.6- ¡Varios Robogator bailando la fila india!7- ¿Algunas otras ideas…?

Page 21: Programación Aplicada - Tema 3

LEGO MINDSTORMS – LLUVIAS DE IDEAS

Realicemos una lluvia de ideas sobre tareas que podríamos tratar de programar sobre el robot “Color Sorter”.

¿Qué podemos ponerlo a ¿Qué podemos ponerlo a hacer?hacer?

1- ¿Algunas ideas…?