Está en la página 1de 16

Manual de ROBOTICA LEGO MINDSTORMS NXT

Engranajes : tipos de engranajes

rela!iones Qu es un engranaje? Es una rueda dentada que encaja con otros engranajes Para qu sirven? Los engranajes sirven para cambiar: velocidad torque (fuerza de rotaci n! direcci n de los ejes"

#iferentes tipos de engranajes

Engranaje $E%&'

Engranajes L()$E* o (+&E$,E#('* Engranaje -.*/+' o *(+ 0(+

.so del engranaje -.*/+' o *(+ 0(+

Engranaje %1+(%' o )(*EL/#' )/+#/* 2 P'LE/*

P(3'+ 2 %$E,/LLE$/ $elaciones de engranajes La relaci n de engranaje es la relaci n entre el n4mero de dientes en un engranaje respecto al n4mero de dientes en otro"

Engranaje c5ico con 6 dientes (eje de entrada! 7 engranaje grande con 89 dientes (eje de salida!
Por ejemplo: La relaci n de engranaje en el ejemplo de arriba es de 89 a 6 o: simplificando ; a <"

Esto significa que le lleva ; revoluciones (vueltas! al engranaje m=s peque>o alcanzar < revoluci n del engranaje m=s grande"

La relaci n de engranaje proporciona el cambio en la velocidad 7 torque de los ejes de rotaci n" *i le lleva ; vueltas al engranaje de 6 dientes por cada vuelta del engranaje de 89 dientes: significa que el engranaje de 89 dientes girar= ; veces m=s lento que el de 6 dientes" Pero: tambin significa que el eje del engranaje de 89 dientes tiene ; veces el torque (fuerza de rotaci n! del eje con el engranaje de 6 dientes Quiere decir que si en en el eje de engranaje c5ico (engranaje de entrada! pusieramos el motor? 7 en el eje de engranaje grande (engranaje de salida! pusieramos la rueda? lo que estariamos logrando en nuestro robot es que sea ; veces m=s fuerte en la rotaci n de la rueda pero a su vez ; veces m=s lento@ Co"uni!ando NXT en #or"a inal$"%ri!a La forma de comunicarse en forma inal=mbrica en los robots mindstorms +A& es a travs del dispositivo )L.E&''&B" /ntes de que podamos enviar mensajes de un robot a otro: 5a7 que configurarlos" En el robot CmaestroC que configuraremos para enviar mensajes a otro: debemos entrar al men4 bluetoot5 de la pantalla: 7 elegir Csearc5C para que busque otros robots con bluetoot5 5abilitados" .na vez encontrados le tenemos que asignar al robor CeDclavoC un n4mero de coneDi n (<: E o F!" La primera vez que la coneDi n es establecida entre dos +A&: un aviso para ingresar el P/**G'$# ser= presentado en las pantallas: 7 deber= ser aceptados por ambos" /5ora cuando navegamos por la categorHa CconectionC del robot CmaestroC +A&: el nombre del robot CesclavoC debe ocupar el n4mero de coneDi n establecida" Es necesario pasar por este proceso una 4nica vez: el +A& de recepci n pondr= al dHa autom=ticamente su coneDi n cuando el robot CmaestroC +A& est fijando su n4mero de coneDi n" &ara sa%er !o"o en'iar re!i%ir "ensajes entre ro%ots( de%e"os ir al lin) MAN*AL DEL &ROGRAMADOR NXT + COM*NICACIONES NXT disponi%le en este %log, Los ejer!i!ios para !o"uni!a!iones son los del -er NI.EL,

E/ERCICIOS DE &ROGRAMACI0N -er, NI.EL + COM*NICACIONES NXT Los ejercicios deben ser 5ec5os por equipos de a E: en el que el primer grupo programa el $')'& ,/E*&$' 7 el segundo el $')'& E*%L/I' Programar los robots para: <! $')'& ,/E*&$' %uando el sensor de movimiento sense alg4n objeto a menos de treinta centHmetros: debe enviar al otro robot el mensaje JataqueK" *i no sensa objeto alguno debe enviar el mensaje JquietoK $')'& E*%L/I' %uando se reciba el mensaje JataqueK el escorpi n debe atacar con el motor )" *i se recibe el mensaje JquietoK debe permanecer inm vil" E! $')'& ,/E*&$' %uando el sensor de sonido sensa un grito: este debe enviar el mensaje JmoverseK" *i no sensa ning4n sonido este debe enviar el mensaje JquietoK" $')'& E*%L/I' %uando se recibe el mensaje JmoverseK el robot debe moverse durante F segundos 5acia delante 7 luego dar media vuelta" *i recibe el mensaje JquietoK debe permanecer inm vil" F! $')'& ,/E*&$' ,over el robot 5acia adelante" *i el sensor de ultrasonido sensa alg4n obst=culo a menos de 89 cm el robot debe detenerse: atacar con su defensa 7 enviar el mensaje JauDilioK" $')'& E*%L/I' ,over el robot 5acia adelante" *i se recibe el mensaje JauDilioK el robot debe detenerse 7 reproducir la voz grabada /&&E+&('+ F veces" 8! $')'& ,/E*&$' P$ogramaci n libre $')'& E*%L/I' #ebe copiar todos los movimientos del $')'& ,/E*&$'" E/ERCICIOS DE &ROGRAMACION 1do NI.EL P$'-$/,/%('+ #EL $')'& %'+ #(0E$E+&E* *E+*'$E* $')'& &$()'&

Programar el $obot para que: Ejercicios por tiempo

<! *e mueva 5acia adelante durante ; segundos: de medio giro: 7 se mueva por otros <9 segundos m=s a m=Dima velocidad" .tilizar para mover los motores: la opcion $'&/%(1+ de ruedas calculando cuantas vueltas se necesita de una rueda para cumplir el medio giro E! Bacer que el robot se mueva 5acia adelante a velocidad intermedia" *i sensa alg4n obst=culo con el sensor de ultrasonido a menos de F9 cm: 5acer que el $obot se detenga" .so de la 5erramienta LOO& S2ITC3

F! Bacer que el robot se mueva 5acia adelante a velocidad intermedia" *i sensa alg4n obst=culo con el sensor de ultrasonido debe dar <L8 de vuelta 7 continuar su camino" Este proceso se debe 5acer indefinidamente" .tilizar en el motor la 5erramienta -$/#'* para calcular el cuarto de giro del $obot 8! Bacer que el robot se mueva 5acia adelante a velocidad m=Dima" .tilizando el sensor de sonido debemos 5acer que el robot de medio giro en cuanto se produzca un aplauso" Este proceso se debe repetir indefinidamente" ;! .tilizando el sensor de luz debemos programar al robot para que no caiga de la mesa M! .tilizando el sensor de luz 5acer un seguidor de linea negra" .so de la 5erramienta L''P 7 *G(&%B dentro de otro *G(&%B N! ,anteniendo el robot sin que caiga de la mesa: 5acer que el mismo agarre las pelotas con sus pinzas al producirse un aplauso" 6! ,anteniendo el robot sin que caiga de la mesa: 5acer que el mismo esquive obstaculos que se encuentran a menos de <9 cm de distancia: 5aciendo que el robot de <L8 de giro 7 continuando su marc5a" O! Bacer un seguir de linea negra que se detenga cuando tenga un obstaculo a menos de <; cm"

<9! Bacer que el robot ubique las pelotas 7 las arroje fuera de la mesa" %on un aplauso el programa debe finalizar" E/ERCICIOS DE &ROGRAMACION 4er NI.EL EPE$%(%('* #E P$'-$/,/%('+ %'+ $')'&* &E,P'$(Q/#'*

Programar el robot para que: <! Que se mueva 5acia delante durante <9 segundos (a m=Dima velocidad! E! Que se mueva 5acia delante durante ; segundos 7 luego de marc5a atr=s durante <; segundos" F! Que se mueva 5acia atr=s durante ; segundos a la velocidad m=s lenta 7 luego durante ; segundos 5acia adelante a m=Dima velocidad" 8! / velocidad baja: calcular cu=nto tarda el robot en recorrer < metro" ;! %alcular cu=l es el largo en metros del anc5o del pasillo: sabiendo cu=nto tarda en recorrer un metro nuestro robot M! %alcular cu=l es el largo de nuestra mesa" N! Que se mueva 5acia delante durante 8 segundos: de media vuelta 7 avance otros ; segundos" 6! Que se mueva a 5acia a delante durante F segundos: de media vuelta 7 avance E segundos 7 de otra media vuelta para avanzar durante ; segundos" O! Bacer que el robot recorra en forma de J*K la distancia de un metro aproDimadamente" EPE$%(%('* #E P$'-$/,/%(1+ #E $')'&* %'+ *E+*'$E* para reaccionar al ambiente" Programar el $obot para que: <! *e mueva 5acia delante a velocidad media 7 cu=ndo el sensor de tacto sea presionado: retroceda un segundo 7 luego de media vuelta E! (gual al anterior pero que lo 5aga indefinidamente" F! *e mueva 5acia delante esquivando obst=culos indefinidamente" 8! *e mueva 5acia delante esquivando en forma de *: 8 obst=culos" ;! Programar el robot para que no se caiga de la mesa: utilizando el sensor de luz M! Programar un robot seguidor de linea utilizando el sensor de luz"

Sensores Los sensores son un componente crucial a cualquier m=quina que se denomine un robot" Los sensores entregan informaci n sobre el robot 7 el ambiente en el cual est= interactuando: al computador (cerebro! del robot" El programa computacional del robot decide que 5acer bas=ndose en esa informaci n 7 en sus propias instrucciones de tareas de alto nivel" En el Rit ,ind*torms +A& encontrar=s 5asta 8 tipos de sensores" Sensor de !onta!to: dispone de un interruptor que al ser presionado envia una se>al al +A&" Este sensor es 4til para detectar obst=culos"

Sensor de ultrasonido: al igual que los murcilagos: este sensor emite un ultrasonido imperceptible para el oido 5umano: que 5ace rebotar en los objetos m=s proDimos 7 con el cu=l calcula la proDimidad de los mismos"

Sensor de Lu5: se utiliza para sensar la luz ambiente o para medir el rebote de su propia luz como por ejemplo contra el piso" &ambien se lo utiliza para sensar colores en un piso 7a que cada color emite un reflejo diferente"

Sensor de sonido: se lo utiliza para reaccionar a sonidos del ambiente" Por ejemplo para que accione sus motores cuando percibe un aplauso"

Clasi#i!a!i6n de ro%ots .na clasificaci n un tanto general: de acuerdo a la utilidad social de los robots serHa la siguiente: $obots manipuladores para uso industrial: Por ejemplo en la industria automotriz" Por lo general tienen forma de brazo mec=nico al que se le agrega una 5erramienta" *irven para pintar: soldar: cortar: etc " Ie5Hculos a control remoto: Que se usan para transportar 5erramientas o acceder a lugares de difHcil o imposible acceso para el 5ombre" %onstru7en t4neles: apagan incendios: recorren superficies de un planeta: etc" $obots did=cticos: *on los utilizados para el aprendizaje de la rob tica: como el mindstorms nDt Cuales son las partes de un ro%ot Qu partes componen un robot La estructura Es el esqueleto o c5asis del robot" Le da forma 7 sostiene al resto de las partes" Los mecanismos *on los elementos que permiten transmitir el movimiento entre sus partes" Los movimientos de giro: de desplazamiento" Por ejemplo los engranajes: las poleas: las correas: las ruedas: etc" Las fuentes de energHa /quH podemos distinguir la energHa elctrica: que en nuestro caso ser=n las baterHas: 7 la energHa mec=nica: que es entregada al robot por el motor" El motor convierte energHa elctrica en energHa mec=nica

Los elementos de control: *on los elementos que permiten controlar las acciones del robot: eDisten diferentes modelos" El nuestro es el ladrillo +A&

Los sensores: *on lo elementos que le entregan informaci n al robot para que ste pueda conocer la situaci n eDterior" Por ejemplo sensores de tacto: de luz: de temperatura: etc" La programaci n: El programa (softSare! le indica al elemento de control que debe 5acer" EDisten varios lenguajes de programaci n" +osotros utilizamos el ,(+#*&'$,* +A& Generalidades % mo se cre la palabra $obot La palabra JrobotK la utiliz por primera vez el escritor Tarel %apeR quien: en <O<N denomin a unas m=quinas construidas por el 5ombre 7 dotadas de inteligencia" #eriva de JrobotniRK que define al Jesclavo de trabajoK" %u=les son las le7es rob ticas En su libro J( $')'&K en el a>o <O;9: el escritor (saac /simov enuncia las &$E* LE2E* $')1&(%/*: <" .n robot no debe da>ar a un ser 5umano o: por su inacci n: dejar que un ser 5umano sufra da>o" E" .n robot debe obedecer las rdenes que le son dadas por un ser 5umano: eDcepto cuando estas rdenes est=n en oposici n con la primera Le7" F" .n robot debe proteger su propia eDistencia: 5asta donde esta protecci n no est en conflicto con la primera o segunda Le7" % mo se define 5o7 un $obot El (nstituto +orteamericano de $ob tica define $obot de la siguiente forma: ,anipulador multifuncional 7 reprogramable: dise>ado para mover materiales: piezas: 5erramientas o dispositivos especiales: mediante movimientos programados 7 variables que permiten llevar a cabo diversas tareas MAN*AL DEL &ROGRAMADOR NXT 7u8 es un progra"a

Es una secuencia de J rdenesK que debemos organizar l gicamente para que cumplan determinado prop sito" En nuestro caso: para que el $obot cumpla con la funci n que queremos" / continuaci n te vamos a eDplicar c mo se agrupan estas rdenes (en nuestro caso gr=ficas! para que el robot se mueva 7 reaccione al ambiente de acuerdo a los enunciados dados" Ejemplos de programas en el ,(+#*&'$,* +A& Que el robot: <! *e mueva 5acia delante durante E segundos 7 luego se detenga"

#ebemos 5acer mover los motores conectados en los puertos / 7 ) 7 pasados los dos segundos 5acer que se detengan"

La direcci n: los puertos 7 el tiempo se indican en el panel de abajo

#ebemos puertos en los que est=n los dos motores: indicar la direcci n 7 el tiempo

tildar

los

E! *e mueva 5acia delante durante E segundos 7 luego de marc5a atr=s durante 8 segundos 7 se detenga"

En derec5a le cambiamos la direcci n 7 el tiempo

el

bloque

de

la

<! *e mueva 5acia delante durante 8 segundos: de media vuelta 7 avance otros M segundos 7 se detenga" (/tenci n: para 5acer dar media vuelta al robot: debes 5acer girar a un solo motor en direcci n contraria 7 estimar cuanto tardarHa en completar el medio giro" La otra forma de dar medio giro es 5acer girar los dos motores en sentido contrario durante un tiempo determinado!

EPE$%(%('* #E P$'-$/,/%(1+ #E $')'&* %'+ *E+*'$E* para reaccionar al ambiente

8! *e mueva 5acia delante a velocidad media 7 cu=ndo el sensor de contacto sea presionado: retroceda un segundo 7 luego de media vuelta

%omo 4ltimo paso se mueve el motor J/K 5acia atr=s durante < segundo para dar medio giro"

*so de la 9erra"ienta LOO&

S2ITC3

La 5erramienta *Sitc5 se utiliza para tomar decisiones en base a los resultados de los sensores que pusimos" *i por ejemplo utilizamos el sensor de luz para saber si es de dia o de noc5e: debemos ubicar qu rdenes queremos que se cumplan cuando es de dHa 7 qu rdenes queremos que el robot cumpla cuando es de noc5e" #e esta forma estaremos tomando una decision cuando se sensa oscuridad 7 otra decision cuando se sensa luz" #e la misma manera estaremos tomando siempre diferentes decisiones para los demas sensores (sonidos: ultrasonido 7 contacto! La 5erramienta LOO& la utilizaremos siempre que necesitemos repetir muc5as veces o indefinidamente rdenes" *i por ejemplo: nuestro robot debiera evitar caer al vacio arriba de una mesa: debemos repetir indefinidamente la rutina en la que el sensor de luz sense el piso para no caernos (el piso siempre da un reflejo de luz superior al vacio!: 7 s lo se podrHa mover cuando encuentre determinado reflejo en el piso" Ejemplo de la 5erramienta L''P 7 *G(&%B

En el ejercicio siguiente el robot debe responder al sensor de sonido" *i el sensor de sonido sensa algun ruido este debe retroceder con <L8 de giro con el motor %" *i no sensa ningun ruido debe seguir avanzando con los motores / 7 %"

La primer 5erramienta que envuelve a todo el programa es la 5erramienta L''P" En este caso este programa se repetir= indefinidamente (como lo indica el sHmbolo infinito! Luego se utiliza la 5erramienta *G(&%B con el sensor de sonido: el cual toma dos caminos diferentes de acuerdo al sonido que sensa del ambiente" El camino de arriba es el que se toma si sensa ruido (un grito o aplauso! : 5aciendo girar 5acia atras un cuarto de giro al motor %" El camino 5acia abajo es el que se toma cuando el sensor de sonido no sensa ningun ruido ambiente? 5aciendo que en este caso el robot avance 5acia adelante con los motores / 7 %" En definitiva este $')'& 5ace lo siguiente: si sensa ruido retrocede desvi=ndose un poco 7 si no sensa ruido: avanza" En el ejercicio siguiente debemos 5acer que el robot no caiga de la mesa utilizando en sensor de luz: 7 5acer cerrar las pinzas para agarrar objetos cuando el sensor de sonido sensa ruido"

Primero sensamos el rebote de luz que produce la l=mpara del sensor para saber si estamos saliendo de la mesa" *i sensa oscuridad (el sensor est= fuera de la mesa 7 no recibe rebote de luz! seguimos los pasos de abajo: retrocedemos con los dos motores 7 5acemos un giro con un solo motor para desviarnos" *i sensa luz (estamos dentro de la mesa 7a que 5a7 rebote de luz! seguimos los pasos de arriba: avanzamos 7 si sensa ruido detenemos los motores / 7 % : luego cierra la pinza con el motor ) para agarrar el objeto: da un cuarto de giro con el motor / 7 abre las pinzas para soltar el objeto" *i no sensa ruido continua el camino" %omo todo est= envuelto en un L''P infinito: al terminar cualquiera de los dos caminos el programa vuelve a empezar" MAN*AL DEL &ROGRAMADOR BL*ETOOT3 NXT + COM*NICACIONES &OR

.na vez que los dos robots est=n conectados por bluetoot5 comenzamos con la programaci n de cada uno" .no ser= el $obot ,/E*&$': quin ser= el encargado de mandar los mensajes ( rdenes! al robot esclavo: quin a su vez recibir= los mensajes 7 actuar= de acuerdo a ellos" $ecordemos que la manera de enviar rdenes es mediante mensajes de teDto" Por ejemplo si el $obot ,/E*&$' envHa el mensaje JmoveteK: en el $obot E*%L/I' deberemos programar para que cuando recibamos la palabra JmoveteK este mueva los motores para que realmente se mueva" Iamos a mostrar la programaci n del $')'& ,/E*&$'

Esta programaci n funciona de la siguiente manera: Primero toda la programaci n est= encerrada en un L''P infinito: por lo que los comandos que est=n dentro: siempre vuelven a repetirse" El primer comando es un *G(&%B: el que nos permite saber si el sensor de contacto est= o no siendo presionado" El dibujo nos muestra que la programaci n por la parte de arriba est= 5ec5a por si el bot n est= siendo presionado 7 la de abajo la 5ace cuando el bot n no es presionado " *i el sensor es presionado pone en funcionamiento el comando de bluetoot5 para E+I(/$ ,E+*/PE*: 7 envia el teDto JmoveteK" %uando el sensor no es presionado envia el mensaje JquietoK /5ora observemos la programaci n del $')'& E*%L/I'

&ambin en este caso: todos los comandos se encuentran dentro de un L''P infinito" El primer comando dentro del L''P: es es comando $E%()($ ,E+*/PE en el cu=l 5acemos uso de una nueva 5erramienta de programaci n" En este casillero unimos el comando E+I(/$ ,E+*/PE mediante una lHnea: con el comando *G(&%B" Esta lHnea es la encargada de enviarle el teDto que viene del $')'& ,/E*&$' 7 transferirlo al *G(&%B siguiente" Este *G(&%B act4a de dos maneras" *i la palabra enviada desde el $')'& ,/E*&$' es JmoveteK observemos que los comandos que act4an son los de los motores / 7 % en movimiento" Por el contrario: si desde el $')'& ,/E*&$' el teDto enviado es JquietoK: los motores se detienen" En definitiva: si en el $')'& ,/E*&$' es presionado es sensor de contacto: entonces el $')'& E*%L/I' se mueve 7 por el contrario: si en el $')'& ,/E*&$' no es presionado el sensor de contacto: entonces el $')'& E*%L/I' detiene sus motores"

También podría gustarte