Upload
rosca-daniel
View
235
Download
0
Embed Size (px)
DESCRIPTION
Clase de modele
Citation preview
RoboticM.C. Juan Carlos Olivares [email protected], 2009
Outline
Introduccin a la Robtica
Descripcin del Robot Lego Mindstorms NXT
Programacin del Robot Lego Mindstorms NXT
Otras aplicaciones de la robtica
Qu es la Robtica?Es el rea de la Inteligencia Artificial (IA) que se encarga de los estudios de los robots.
La robtica no slo incluye elementos de IA sino tambin de mecatrnica, computacin y otras reas de la Ingeniera.*
Qu es un Robot?Deriva de la palabra checa robota.
Literalmente significa esclavitud, servidumbre forzada
Mquina mecnica o autmata capaz de interactuar con el entorno y tomar decisiones propias*
Caractersticas de un RobotDiseados para sustituir al humano en algunas tareas.*
Caractersticas de un RobotCapaces de actuar en funcin de la informacin recibida del mundo real.*
Law of RoboticIsaac 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.
Law of RoboticsA 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.
Caractersticas de un RobotLos robots se clasifican segn su forma en:
Androides: Imitan la forma humana
Mviles: Se desplazan mediante ruedas
Zoomrficos: Con forma de animales
Poliarticulados: Con partes mviles y poco grado de libertad.
*
Caractersticas de un robotUn robot se debe componer de:
Mecanismo para desplazarse
Mecanismo para percibir el mundo exterior
Mecanismo para interactuar con el entorno*
Funcionamiento de un RobotMecanismo habitual de 3 ruedas:
2 ruedas motorizadas, con motores independientes.
1 rueda muerta para soportar el equilibrio.*
Funcionamiento de un RobotPara 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 travs de los sensores del robot:
Choque: Detecta colisiones fsicas del robot.*
Funcionamiento de un robotSonar: Calcula la distancia del robot a otros objetos del entorno.
Infrarrojos: Deteccin de colores, etc.
Cmaras: Obtiene los datos mediante visin.*
Funcionamiento de un RobotInicializar el robot: Situarlo en el mundo.
Recibir informacin por los sensores.
Procesar la informacin recibida.
Desplazar/Activar partes del robot.*
Problemas Principales de un RobotLocalizacin Dnde estoy?
Respuesta de los sensores: Hay cuchara?
Respuesta del sistema: Todo ok?*
Ejemplos de RobotsRobot Lego RCX
Ejemplos de RobotsSony AIBO
Robots FrameworksExist a lot of framework to work with Robot.
We work with NXT Mindstorm of Lego Company. http://mindstorms.lego.com
Other frameworks are:Parallax, http://www.parallax.comXiOR, http://www.xior.comNeoRobotic, http://www.neorobotic.comArduino, http://www.arduino.cc
Constructive GamesExist 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)
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, adems de que es econmico ($250 USD), potente y muy verstil. No es un simple juguete.
Robot Lego Mindstorms NXYEjemplos de Robots*
NXT La unidad central de proceso contiene:
4 entradas (digital y analgica)
3 salidas (soporte para los motores)
Pantalla LCD Monocromtica de 100x64 pxeles
NXT4 Botones de control
Sonido
Interfaces USB y Bluetooth*
SensoresLuzSonidoTactoUltrasnicoServomotor
ProcesadorAtmel 32-bit ARM, AT91SAM7S256
256 KB FLASH
64 KB RAM
48 MHz*
CoprocesadorAtmel 8-bit AVR processor, ATmega48
4 KB FLASH
512 Byte RAM
8 MHz*
Comunicacin Bluetooth y USBBlueCoreTM 4 v2.0 +EDR System
Soporta el Serial Port Profile (SPP) para emulacin de puertos de comunicacin.
USB 2.0 Full speed com port (12 Mbit/s).*
MotoresContador de rotaciones.
Rotacin de 360 grados.
Las posiciones son relativas.
La velocidad mxima es de 200 RPM.*
Otras caractersticasUtiliza 6 pilas AA.
Utiliza cables RJ-12 parecidos a los telefnicos (aplanados).
Algunos fabricantes realizan otros tipos de piezas y sensores.*
Herramientas de ProgramacinLabVIEW NEXT-G
Microsoft Robotics Studio
Otras:NXC (and NBC)Robot CpbLuaJava
*
ProgramacinBasado en un ambiente grfico de desarrollado (programacin en bloques) desarrollado por National Instruments los desarrolladores de LabView.
Permite el desarrollo rpido de aplicaciones. til para nios.*
ProgramacinEst muy limitado para realizar programas ms complejos, por lo que se utilizan otros entornos.
A continuacin se listan los pasos para programar una aplicacin en este Robot:
ProgramacinSe arma el modelo de robot (se pueden seguir los pasos indicados en la gua o se desarrolla por cuenta propia).
Se realiza la programacin en bloques.
Se baja el programa al Robot*
ProgramacinSe 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.*
Entorno de Desarrollo*ConstruccinProgramacinEjecucin
Entorno de DesarrolloPropiedadesZona de ProgramacinBloquesGua
Otros entornosNXC (Not eXactly C) es un lenguaje similar NQC, el cual es la forma ms popular de programar el RCX. Est basado en el ensamblador NBC (Next Byte Code).
RobotC es un entorno no gratuito desarrollado por CMU.*
Programacin con NXCSe tienen algunas limitaciones como:
No existe pila
Memoria Limitada
Limitado a 256 procesos (task)*
Programacin 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 ) ); } *
Programacin con NXC TextOut( 0, LCD_LINE1, "---------"); while( !Sensor( IN_1 ) ); }}*
Construccin de Pistas de Robots
Detalles de la Pista
Competencia de autos
Evaluacin de Obstculos
**