int motA0=8; int motA1=9; int motB0=10; int motB1=11; int sen0=4; int sen1=5; int echo=6; int triger=7; int vel=80; void setup() { pinMode(sen0,INPUT); pinMode(sen1,INPUT); pinMode(motA0,OUTPUT); pinMode(motA1,OUTPUT); pinMode(motB0,OUTPUT); pinMode(motB1,OUTPUT); pinMode(echo,INPUT); pinMode(triger,OUTPUT); digitalWrite(triger,LOW); digitalWrite(motA0,LOW); digitalWrite(motA1,LOW); digitalWrite(motB0,LOW); digitalWrite(motB1,LOW); } void loop() { if(distancia()<=15) { stopP(); delay(1000); atras(); delay(300); derecha(); delay(200); } else{ { adelante(); } } } long distancia() { long t; long d; digitalWrite(triger, HIGH); delayMicroseconds(10); digitalWrite(triger, LOW); t = pulseIn(echo, HIGH); d = t/59; if (d<=3 || d>=25) { d=1000; } delay(10); return d; } void stopP() { digitalWrite(motA0,HIGH); digitalWrite(motA1,HIGH); digitalWrite(motB0,HIGH); digitalWrite(motB1,HIGH); } void atras() { digitalWrite(motA0,HIGH); digitalWrite(motA1,LOW); digitalWrite(motB0,HIGH); digitalWrite(motB1,LOW); } void adelante() { digitalWrite(motA0,LOW); digitalWrite(motA1,HIGH); digitalWrite(motB0,LOW); digitalWrite(motB1,HIGH); } void derecha() { digitalWrite(motA0,LOW); digitalWrite(motA1,HIGH); digitalWrite(motB0,HIGH); digitalWrite(motB1,LOW); } void izquierda() { digitalWrite(motA0,HIGH); digitalWrite(motA1,LOW); digitalWrite(motB0,LOW); digitalWrite(motB1,HIGH); }