prueba tutor

45
Automatas Programables tutor virtual

Upload: jhoan-laverde

Post on 10-Jul-2015

385 views

Category:

Automotive


0 download

TRANSCRIPT

Page 1: Prueba tutor

Automatas Programables

tutor virtual

Page 2: Prueba tutor

Outline

Introducción a la Robótica

Descripción del Robot Lego Mindstorms NXT

Programación del Robot Lego Mindstorms NXT

Otras aplicaciones de la robótica

Page 3: Prueba tutor

¿Qué es la Robótica?

• Es el área de la Inteligencia Artificial (IA) que

se encarga de los estudios de los robots.

• La robótica no sólo incluye elementos de IA

sino también de mecatrónica, computación y

otras áreas de la Ingeniería.

Actividad: Realice una opinion personal sobre

el significado de la robotica.3

Page 4: Prueba tutor

¿Qué es un Robot?

• Deriva de la palabra checa “robota”.

• Literalmente significa “esclavitud”,

“servidumbre forzada”

• Máquina mecánica o autómata capaz de

interactuar con el entorno y tomar decisiones

propias

Actividad: Realice una opinion personal sobre

el significado de la robot.4

Page 5: Prueba tutor

Características de un Robot

• Diseñados para sustituir al humano en

algunas tareas.

5

Page 6: Prueba tutor

Características de un Robot

• Capaces de actuar en función de la

información recibida del mundo real.

6Actividad: comparta 3 cualidades del un robot diferentes a las expuestas

Page 7: Prueba tutor

Law of Robotic• Isaac Asimov in 1942 defined the following

rules:

• A robot may not injure a human being or,

through inaction, allow a human being to come

to harm.

• A robot must obey orders given to it by human

beings, except where such orders would conflict

with the First Law.

Page 8: Prueba tutor

Law of Robotics• A robot must protect its own existence as long

as such protection does not conflict with the

First or Second Law.

• Exist other laws related with the idea of a Robot

must know it is a Robot.

Page 9: Prueba tutor

Características de un Robot

• Los robots se clasifican según su forma en:

• Androides: Imitan la forma humana

• Móviles: Se desplazan mediante ruedas

• Zoomórficos: Con forma de animales

• Poliarticulados: Con partes móviles y poco

grado de libertad.

9

Page 10: Prueba tutor

Características de un robot

• Un robot se debe componer de:

• Mecanismo para desplazarse

• Mecanismo para percibir el mundo exterior

• Mecanismo para interactuar con el entorno10

Page 11: Prueba tutor

Funcionamiento de un Robot

• Mecanismo habitual de 3 ruedas:

• 2 ruedas motorizadas, con motores

independientes.

• 1 rueda “muerta” para soportar el equilibrio.

11

Page 12: Prueba tutor

Funcionamiento de un Robot

• Para hacer girar el robot, se modificará la

velocidad y el sentido del giro de cada uno

de los motores por separado.

• Se puede captar el entorno a través de los

sensores del robot:

• Choque: Detecta colisiones físicas del

robot.12

Page 13: Prueba tutor

Funcionamiento de un robot

• Sonar: Calcula la distancia del robot a otros

objetos del entorno.

• Infrarrojos: Detección de colores, etc.

• Cámaras: Obtiene los datos mediante visión.

13

Page 14: Prueba tutor

Funcionamiento de un Robot

1. Inicializar el robot: Situarlo en el mundo.

2. Recibir información por los sensores.

3. Procesar la información recibida.

4. Desplazar/Activar partes del robot.14

Page 15: Prueba tutor

Problemas Principales de un

Robot• Localización ¿Dónde estoy?

• Respuesta de los sensores: ¿Hay cuchara?

• Respuesta del sistema: ¿Todo ok?

15

Page 16: Prueba tutor

Ejemplos de Robots

Robot Lego

RCX

Page 17: Prueba tutor

Ejemplos de Robots

Sony AIBO

Page 19: Prueba tutor

Constructive Games• Exist some games like Meccano,

http://www.meccano.com, which main objective

is build machines like Robots with

electromechanism components. One example

is Spykee (http://www.spykeeworld.com)

• In general, Robots must be constructed by

specialized Engineers.

• Some kind of Robots are arms and no

neccesary are similar to Movie Robots (R2D2)

Page 20: Prueba tutor

Robot Lego Mindstorms NXT

20

• Es un Robot construido por la marca de

juegos Lego.

• Se caracteriza por que este robot se puede

armar en diversos modelos, además de que

es económico ($250 USD), potente y muy

versátil. No es un simple juguete.

Page 21: Prueba tutor

Robot Lego Mindstorms NXY

Ejemplos de

Robots

21

Page 22: Prueba tutor

NXT

• La unidad central de proceso contiene:

• 4 entradas (digital y analógica)

• 3 salidas (soporte para los motores)

• Pantalla LCD Monocromática de 100x64

píxeles

Page 23: Prueba tutor

NXT

• 4 Botones de control

• Sonido

• Interfaces USB y Bluetooth

23

Page 24: Prueba tutor

Sensores

Luz

Sonido

Tacto

Ultrasónico

Servomotor

Page 25: Prueba tutor

Procesador

• Atmel 32-bit ARM, AT91SAM7S256

• 256 KB FLASH

• 64 KB RAM

• 48 MHz25

Page 26: Prueba tutor

Coprocesador

• Atmel 8-bit AVR processor, ATmega48

• 4 KB FLASH

• 512 Byte RAM

• 8 MHz26

Page 27: Prueba tutor

Comunicación Bluetooth y USB

• BlueCoreTM 4 v2.0 +EDR System

• Soporta el Serial Port Profile (SPP) para

emulación de puertos de comunicación.

• USB 2.0 Full speed com port (12 Mbit/s).

27

Page 28: Prueba tutor

Motores

• Contador de rotaciones.

• Rotación de 360 grados.

• Las posiciones son relativas.

• La velocidad máxima es de 200 RPM.28

Page 29: Prueba tutor

Otras características

• Utiliza 6 pilas AA.

• Utiliza cables RJ-12 parecidos a los

telefónicos (aplanados).

• Algunos fabricantes realizan otros tipos de

piezas y sensores.

29

Page 30: Prueba tutor

Herramientas de Programación

• LabVIEW NEXT-G

• Microsoft Robotics Studio

• Otras:

– NXC (and NBC)

– Robot C

– pbLua

– Java 30

Page 31: Prueba tutor

Programación

• Basado en un ambiente gráfico de

desarrollado (programación en bloques)

desarrollado por National Instruments’ los

desarrolladores de LabView.

• Permite el desarrollo rápido de aplicaciones.

Útil para niños.

31

Page 32: Prueba tutor

Programación

• Está muy limitado para realizar programas

más complejos, por lo que se utilizan otros

entornos.

• A continuación se listan los pasos para

programar una aplicación en este Robot:

Page 33: Prueba tutor

Programación

• Se arma el modelo de robot (se pueden

seguir los pasos indicados en la guía o se

desarrolla por cuenta propia).

• Se realiza la programación en bloques.

• Se baja el programa al Robot

33

Page 34: Prueba tutor

Programación

• Se corre el programa en el Robot y se ven los

resultados obtenidos.

• No se cuenta con un emulador para probar

los desarrollos lo que dificulta un poco el

proceso de desarrollo.

34

Page 35: Prueba tutor

Entorno de Desarrollo

35

Construcción

Programación

Ejecución

Page 36: Prueba tutor

Entorno de Desarrollo

Propiedade

s

Zona de Programación

Bloques

Guía

Page 37: Prueba tutor

Otros entornos

• NXC (Not eXactly C) es un lenguaje similar

NQC, el cual es la forma más popular de

programar el RCX. Está basado en el

“ensamblador” NBC (Next Byte Code).

• RobotC es un entorno no gratuito

desarrollado por CMU.

37

Page 38: Prueba tutor

Programación con NXC

• Se tienen algunas limitaciones como:

• No existe pila

• Memoria Limitada

• Limitado a 256 procesos (task)38

Page 39: Prueba tutor

Programación con NXC

#include "NXCDefs.h“

task main() {SetSensor( IN_1, SENSOR_TOUCH );

while( true ) {

if( Sensor( IN_1 ) ) {

PlayToneEx(440, 100, 3, false);

TextOut( 0, LCD_LINE1, "TOUCHING!");

while( Sensor( IN_1 ) );

}39

Page 40: Prueba tutor

Programación con NXC

TextOut( 0, LCD_LINE1, "---------");

while( !Sensor( IN_1 ) );

}

}

40

Page 41: Prueba tutor

Construcción de Pistas de Robots

Page 42: Prueba tutor

Detalles de la Pista

Page 43: Prueba tutor

Competencia de autos

Page 44: Prueba tutor

Evaluación de Obstáculos

Page 45: Prueba tutor

Questions?