Ii robotica

Page 1

Introducci贸n a la Rob贸tica M.C. Juan Carlos Olivares Rojas

1


Agenda Introducci贸n a la Rob贸tica Descripci贸n del Robot Lego Mindstorms NXT Programaci贸n del Robot Lego Mindstorms NXT 2


¿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. 3


¿Qué es la IA? “El estudio de cómo lograr que la computadoras realicen las tareas que, por el momento, los humanos hacen mejor.” Rich, Knight, 1991 La rama de la ciencia de la computación que se ocupa de la automatización de la conducta inteligente.” Luger y Sutublfiel, 1993.

4


¿Qué es un Robot? • Deriva de la palabra checa “robota”. • Literalmente significa “servidumbre forzada”

“esclavitud”,

• Máquina mecánica o autómata capaz de interactuar con el entorno y tomar decisiones propias

5


Características de un Robot • Diseñados para sustituir al humano en algunas tareas.

6


Características de un Robot • Capaces de actuar en función de la información recibida del mundo real.

7


• 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.

8

Características de un Robot


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 entorno 9


Funcionamiento de un Robot • Mecanismo habitual de 3 ruedas: • 2 ruedas motorizadas, independientes. • 1 rueda “muerta” equilibrio.

para

con

motores

soportar

el 10


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.

11


Funcionamiento de un robot • Sonar: Calcula la distancia del robot a otros objetos del entorno. • Infrarrojos: Detección de colores, etc. • Cámaras: visión.

Obtiene

los

datos

mediante 12


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. 13


Problemas Principales de un Robot • Localización ¿Dónde estoy? • Respuesta de los sensores: ¿Hay cuchara? • Respuesta del sistema: ¿Todo ok?

14


Robot Lego RCX

Ejemplos de Robots


Ejemplos de Robots

Sony AIBO


Robot Lego Mindstorms NXT • 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. 17


Robot Lego Mindstorms NXY

18

Ejemplos de Robots


NXT • La unidad central de proceso contiene: • 4 entradas (digital y analógica) • 3 salidas (soporte para los motores) • Pantalla LCD Monocromática de píxeles

100x64


NXT • 4 Botones de control • Sonido • Interfaces USB y Bluetooth

20


Sensores Tacto Luz Servomotor

Sonido

Ultras贸nic o

21


Procesador • Atmel 32-bit ARM, AT91SAM7S256 • 256 KB FLASH • 64 KB RAM • 48 MHz 22


Coprocesador • Atmel 8-bit AVR processor, ATmega48 • 4 KB FLASH • 512 Byte RAM • 8 MHz 23


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). 24


Motores • Contador de rotaciones. • Rotación de 360 grados. • Las posiciones son relativas. • La velocidad máxima es de 200 RPM. 25


Otras características • Utiliza 6 pilas AA. • Utiliza cables RJ-12 parecidos telefónicos (aplanados).

a

los

• Algunos fabricantes realizan otros tipos de piezas y sensores. 26


Herramientas de Programación • LabVIEW NEXT-G • Microsoft Robotics Studio • Otras: – – – –

NXC (and NBC) Robot C pbLua Java

27


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 aplicaciones. Útil para niños.

de 28


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:


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 30


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. 31


Entorno de Desarrollo Construcci贸n Programaci贸n

Ejecuci贸n 32


Gu铆a Zona de Programaci贸n Bloques Propiedade s

Entorno de Desarrollo

33


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 desarrollado por CMU.

no

gratuito 34


Programación con NXC • Se tienen algunas limitaciones como: • No existe pila • Memoria Limitada • Limitado a 256 procesos (task) 35


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 ) ); }

36


Programaci贸n con NXC TextOut( 0, LCD_LINE1, "---------"); while( !Sensor( IN_1 ) ); } }

37


多Preguntas, dudas y comentarios?

38


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.