RotLine - Fase 5

 


Fase 5

En esta fase se presenta la plataforma final del robot, el algoritmo de su funcionamiento, el diagrama de flujo de su programación, el diagrama de bloques de sus conexiones, y las conclusiones de este proyecto.


    Diagrama de bloques

A continuación, se presenta el diagrama de bloques, el cual muestra las conexiones entre los componentes del robot. En el robot no se implementaron nuevos elementos.

Diagrama de bloques con las conexiones del robot



Programación en Arduino

 Se presenta la programación final del robot.

//motor izquierdo

int mi1=5;
int mi2=6;

//motor derecho
int md1=8;
int md2=9;

//declaración de variables (sensores y botón)
int sen1=2;        //sensor izquierdo
int sen2=3;        //sensor medio 
int sen3=4;         //sensor derecho

//declaración de estados de sensores
int ActivarSen1 = HIGH;
int ActivarSen2 = HIGH;
int ActivarSen3 = HIGH;
int comienzo=0;

void setup() {

pinMode(mi1,OUTPUT); //motor izquierdo
pinMode(mi2,OUTPUT);

pinMode(md1,OUTPUT); //motor derecho
pinMode(md2,OUTPUT);

pinMode(sen1,INPUT);  //sensor izquierdo
pinMode(sen2,INPUT);  //sensor medio 
pinMode(sen2,INPUT);  //sensor derecho


}

void loop() {

//asociación de estados a los sensores
ActivarSen1 = digitalRead(sen1);
ActivarSen2 = digitalRead(sen2);
ActivarSen3 = digitalRead(sen3);

  if ((comienzo == 0 ) && (ActivarSen1==LOW) && (ActivarSen2==LOW) && (ActivarSen3==LOW))//sensor derecho (funcionar el motor izquierdo, gira hacia la derecha)
{
  for (comienzo=0;comienzo<2;)
  {
    comienzo++;
  }
  //activar el motor izquierdo
digitalWrite(mi1,HIGH);
digitalWrite(mi2,LOW);
 //desactivar el motor derecho
digitalWrite(md1,LOW);
digitalWrite(md2,LOW);
}

 if ((ActivarSen1==LOW) && (ActivarSen2==LOW) && (ActivarSen3==HIGH))//sensor derecho (funcionar el motor izquierdo, gira hacia la derecha)
{
  //activar el motor izquierdo
digitalWrite(mi1,HIGH);
digitalWrite(mi2,LOW);
 //desactivar el motor derecho
digitalWrite(md1,LOW);
digitalWrite(md2,LOW);
delay(50);
}

if ((ActivarSen1==HIGH) && (ActivarSen2==LOW) && (ActivarSen3==LOW)) //sensor izquierdo (funcione el motor derecho, gira hacia la izquierda)
{
  //desactivar el motor izquierdo
digitalWrite(mi1,LOW);
digitalWrite(mi2,LOW);
 //activar el motor derecho
digitalWrite(md1,HIGH);
digitalWrite(md2,LOW);
delay(50);
}
if ((ActivarSen1==LOW) && (ActivarSen2==HIGH) && (ActivarSen3==LOW))//sensor medio (funcionar los dos motores, hacia delante)
{
 //activar el motor izquierdo
digitalWrite(mi1,HIGH);
digitalWrite(mi2,LOW);
 //activar el motor derecho
digitalWrite(md1,HIGH);
digitalWrite(md2,LOW);
delay(50);
}
if((ActivarSen1==HIGH) && (ActivarSen2==HIGH) && (ActivarSen3==HIGH))//sensores al aire(no funcionar los motores)
{
 //activar el motor izquierdo
digitalWrite(mi1,LOW);
digitalWrite(mi2,LOW);
 //activar el motor derecho
digitalWrite(md1,LOW);
digitalWrite(md2,LOW);
}
}



Diagrama de flujo


Se presenta el diagrama de flujo, el cual muestra el funcionamiento de la programación implementada en el robot.


Diagrama de flujo del algoritmo del robot







Imágenes del montaje final del robot



Imagen de costado del robot



Imagen frontal del robot





    Video del funcionamiento del robot

Se presenta al robot completando la trayectoria de la pista.

Video del funcionamiento del robot



Conclusiones


En la fase final se hizo cambios en la programación, no se agregaron elementos al montaje del robot y se implementa la pista para probar su funcionamiento. 

El proyecto se realizó de manera organizada, iniciando con la definición de su estructura,  la selección de los componentes electrónicos que contribuyen al funcionamiento del robot y las baterías que alimentan a estos elementos, finalizando con la programación de los sensores y del driver que controla a los motores, teniendo como resultado el algoritmo que rige el funcionamiento del robot. Así terminan las fases para la realización de este proyecto.
                                                                                  





                                                                  Integrantes

                                                  Danny Aviles Lúligo - 202127034
         
                                          Nicol Vanessa Serna Gómez - 202125825




Comentarios

Entradas populares de este blog

Robot laberinto Kastelean

Fase 4 Robot seguidor de linea

FASE 2 ROBOT SEGUIDOR DE LINEA