Mi Primer Trabajo en NXC "Robot Turista"


Autor: Daniela Muñoz Muñoz
Competencia: Desarrollo de Software (Nivel 1)
Palabras Clave: Programación, NXC, robótica, Lego

Descripción de la Actividad: A continuación les daré a conocer mi grata experiencia como estudiante de primer año de ingeniería civil en informatica, en mi primera experiencia del programa de lenguaje NXC, para el kit de robots de Lego NXT.
El proposito del laboratorio consistia en programar un robot que pudiera hacer un recorrido(tour), dentro de un parque de atracciones, esquivando los obstaculos que puedan dañar a los pasajeros, ademas existen paradas en la cual los pasajeros pueden tomar fotografias y el guía pueda indicar las atracciones del lugar. La ruta debe ser recorrida 2 veces.

Solución
La solución al problema es crear el  pseudocódigo que nos facilitara el desarrollo del código.

                        -Avanzar por 7 seg.
                        -Detenerse por 2 seg,
                        -Avanzar por 1,7 seg.
                        -Girar Izq 90º.
                        -Avanzar por 2,9 seg.
                        -Detenerse por 2 seg.
                        -Girar Izq 100º. 
                        -Avanza por 7,4 seg.
                        -Detenerse por 2 seg.
                        -Girar Izq 45º.
                        -Avanzar por 1,8 seg.
                        -Girar Izq 135º  

                        -Parar en inicio



El pseudocódigo anteriormente mencionado, corresponde al siguiente código:

task main () { 
  repeat(2){
  OnFwd(OUT_A, 60);
  OnFwd(OUT_C, 56);
  Wait(7000);//el robot avanza en linea recta hasta la estacion 1
  Off(OUT_AC);
  Wait(2000);//se detiene 2 segundos en la estacion 1
  OnFwd(OUT_A, 61);
  OnFwd(OUT_C, 56);
  Wait(1700);//avanza en linea recata durante 1.7 segundos
  OnRev(OUT_C, 56);
  Wait(380);//dobla para dirijirse a ala estacion 2
  OnFwd(OUT_A, 61);
  OnFwd(OUT_C, 56);
  Wait(2900);//avanza hasta llegar a la estacion 2
  Off(OUT_AC);
  Wait(2000);//se detiene 2 segundos en la estacion 2
  OnRev(OUT_C, 53);
  Wait(780);//gira para ponerse en marcha a ala estacion 3
  OnFwd(OUT_A, 61);
  OnFwd(OUT_C, 59);
  Wait(7400);//avanza hasta llegar a la estacion 3
  Off(OUT_AC);
  Wait(2000);//se detiene 2 segundos en la estacion 3
  OnRev(OUT_C, 56);
  OnFwd(OUT_A, 61);
  Wait(70);//se endereza
  OnFwd(OUT_A, 61);
  OnFwd(OUT_C, 56);
  Wait(1800);//avanza 1.8 segundos en linea recta
  OnRev(OUT_C, 56);
  Wait(350);//gira y se pone en posicion hacia la linea final
  OnFwd(OUT_A, 61);
  OnFwd(OUT_C, 56);
  Wait(3100);//avanza hasta llegar a la linea de inicio/final
  Off(OUT_AC);
  Wait(2000);//se detiene 2 segundos antes de comenzar la segunda vuelta
  OnRev(OUT_C, 56);
  OnFwd(OUT_A, 61);
  Wait(350);//se endereza y pone en posicion para la segunda vuelta
  Off(OUT_AC);
 }
          }



El vídeo que muestra la actividad es el siguiente:




Reflexión:


A nivel de programar y entretener,  por ser mi primera experiencia fue muy satisfactoria, ya  que pude mezclar conocimientos con entretencion, imaginarse que realmente el  robot hacia el tour, pensar que al chocar una pared podía dañar a una persona, tener la capacidad de hacer el trabajo imaginándose que pasaría si de verdad fuera un robot turista, me aporto mucho, por ser un conocimientos basico y previo, hace que uno se inspire en el desarrollo del la actividad.