Carrito evita obstáculos

 ¿Qué y cómo aprendí?

Esta semana trabajamos en la programación de motores para que avancen o retrocedan dependiendo de la distancia del objeto que detecte el sensor. 

Código:

int EN1=8 ;
int EN2=9 ;
int EN3=11 ;
int EN4=12 ;
int act12=10;
int act34=5;
const int trigger=3; 
const int echo=2; 
float dist;
const int buzzer =13;
void setup()
{
  pinMode(EN1, OUTPUT);
  pinMode(EN2, OUTPUT);
  pinMode(EN3, OUTPUT);
  pinMode(EN4, OUTPUT);
  
  Serial.begin(9600);
  pinMode(trigger,OUTPUT);
  pinMode(echo,INPUT);
  
}
void loop()
{
  digitalWrite(trigger,LOW);
  delayMicroseconds(5);         
  digitalWrite(trigger,HIGH);   
  delayMicroseconds(10);        
  digitalWrite(trigger,LOW);
  
  dist=pulseIn(echo,HIGH);                                                              
  dist = dist/58;               
  Serial.print ("Distancia = ");                            
  Serial.print (dist);          
  Serial.print (" cm");         
  Serial.write (10);            
  delay (200);
  
  if(dist<150){
    //atrás
  digitalWrite(EN1, LOW); digitalWrite(EN2, HIGH);
  analogWrite (act12,100);//0-100
  analogWrite (act34,100);//0-100
  digitalWrite(EN3, LOW); digitalWrite(EN4, HIGH);
  digitalWrite(buzzer, HIGH);
    }
    else{
      //adelante
  digitalWrite(EN1, HIGH); digitalWrite(EN2, LOW);
  analogWrite (act12,255);//0-255
  analogWrite (act34,255);//0-255
  digitalWrite(EN3, HIGH); digitalWrite(EN4, LOW);
  digitalWrite(buzzer,LOW);
      }
  }

¿Cuáles fueron sus dificultades?

Al inicio, me sentí bastante perdido realizando el código, pero luego, con ayuda de mi grupo, fue un poco más sencillo y pudimos lograrlo.

¿Cómo las superó?

Fui a otros grupos y revisé páginas o conexiones similares.

¿Qué me falta por aprender?

Quisiera poder programar con el buzzer, ya que no lo agregué a la conexión.

Comentarios

Entradas populares