lunes, 14 de noviembre de 2011

Robot NXT Destructor

Autor: Gabriel Pereira
Competencia: Gestión en TI.
Palabras Clave: NXT,NXC,Lego.

Descripción: 
Se Nos pide la programación de un robot destructor, que deambule un área delimitada en donde se simulen paredes y pilares reales. El fin es que el robot al chocar con una pared o pilar retroceda sonando un tono similar a la detonación de una bomba, en este caso un pito, para esto debemos ocupar un sensor de tacto.

El objetivo de esto es que podamos recopilar los datos de cuantos pilares destruyó el robot, tomando en cuenta que este cuenta con 5 explosivos y que al detonarlos todos, debe avisar este hecho y desactivarse.



Pseudocodigo del robot:

Setear el sensor touch
Cueta choques =0
Avanzar
Hacer siempre
{
    Si sensor touch se activa
    {
         cuenta choques = cuenta choques + 1
         Retroceder ½ segundo
         Detonar explosivo (sonido)
         Esperar 2 seg
         Girar a la derecha entre 90° y 720°
         Avanzar }
         Si cuebta choques = 5  
         {
              detenerse 
             Tocar melodía
              Matar todas las tareas
         }
     }
}






Codigo del Robot:


int Nchoque;
int Tgiro;
task main()
{
            Nchoque = 0;
             SetSensor(IN_1,SENSOR_TOUCH);
            OnFwd(OUT_AC, 75);
            while (Nchoque <= 4)
            {
                 OnFwd(OUT_AC, 75);
                 if (SENSOR_1 == 1)
                 {
                                 Tgiro = Random (1440)+360;
                       OnRev(OUT_AC,75);
                       Wait(250);
                       PlayTone(4000,1000);
                       Wait(250);
                       Off(OUT_AC);
                       Wait(2000);
                       OnRev(OUT_A,75);
                       Wait(Tgiro);
                       Nchoque++;
                }
                Off(OUT_AC);
           }
            PlayTone(4000,4000);
            Wait(3000);
   }

Video del Robot:


Conclusión:

Al finalizar nuestro proyecto robot destructor aprendimos nuevos comandos en Bricx Comman Center utilizando un sensor de tacto, incluimos: ciclos con el comando While y frecuencias con PlayTone, cálculos matemáticos y ocupamos el lenguaje de programación de robots NXC. En el proyecto Robot destructor programamos a nuestro robot para que detonara 5 pilares, al chocarlos colocaba una bomba, retrocedía medio segundo y reproducía una frecuencia la cual significaba que la bomba fue colocada en el pilar, al finalizar el quinto pilar la frecuencia fue distinta y nuestro robot termino la detonación, logramos una solución efectiva del problema utilizando el conocimiento aportado por las clases atendidas y la creatividad del grupo.

No hay comentarios:

Publicar un comentario