You are on page 1of 3

NOMBRE: Erick Aaron Rodríguez Nuñez

Grado y grupo: 4°A MAR

const int echo=2;

const int trig-3;

volatile unsigned distancia;

const int cerca=15;

const int duraccionMaxPulso=5000;

const int ENA=11;

const int IZQ1=9;

const int IZQ2=8;

const int DER2=7;

const int DER1=6;

const int ENB=10;

void setup() {

pinMode (trig, OUTPUT);

pinMode (echo, INPUT);

pinMode (ENA, OUTPUT);

pinMode (IZQ1, OUTPUT);

pinMode (IZQ2, OUTPUT);

pinMode (DER2, OUTPUT);

pinMode (DER1, OUTPUT);

pinMode (ENB, OUTPUT);

void loop() {

medir();

if (distancia<cerca) (

obstaculo() ;

}
else{//nada

adelante () ;

void medir(){

digitalWrite (trig, LOW);

delayMicroseconds (2) ;

digitalWrite (trig, HIGH);

delayMicroseconds (10);

digitalWrite (trig, LOW);

distancia=(pulseIn (echo, HIGH, duraccionMaxPulso))/29.15/2;

if (distancia==0) {distancia=duraccionMaxPulso;}

void adelante (){

digitalwrite (IZQ1,1);

digitalWrite (IZQ2,0) ;

digitalWrite (DER2,0) ;

digitalWrite (DER1, 1);

analoghrite (ENA, 90) ;

analogirite (ENB, 90);

void derecha () {

digitalWrite (IZQ1,1);

digitalWrite (IZQ2,0);

digitalWrite (DER2,1);

digitalWrite (DER1,0);

analogWrite (ENA, 150) ;

analogWrite (ENB, 200) ;

}
void detenido ()(

digitalWrite (IZQ1,0);

digitalmrite(IZQ2,0);

digitalWrite (DER2, 0);

digitalWrite (DER1, 0);

analogWrite (ENA, 0);

analogWrite (ENB, 0);

void obstaculo()(

detenido ();

delay (300) ;

derecha ();

delay (230);

detenido ();

delay (100);

You might also like