Necesito Ayuda Urgente !!!!!

Hola es mi primera vez en el Foro y necesito ayuda !! :frowning:
Estamos intentando preparar con mi equipo un sumo robot para una competencia, nuestro robot no detecta la linea blanca para no salir del judo y el ultrasonido al detectar obstáculo se esquiva y debería de ir hacia ese obstáculo con intención de empujar fuera del judo a cuyo obstáculo

//Declaración de los pines
int sensDel = 12; //sens IR delantero
int sensTras = 13; //sens IR trasero
int enA = 2;
int enB = 3;
int motorR1 = 4;
int motorR2 = 5; //motor derecho
int motorL1 = 7;
int motorL2 = 6; //motor izquierdo
int sensFder = 8; //sens frontal derecho
int sensFizq = 9; //sens frontal izquierdo
int sensTder = 11; //sens trasero derechp
int sensTizq = 10; //sens trasero izquierdo

float distancia,tiempo;

void setup() {
Serial.begin(9600);
pinMode(enA,OUTPUT);
pinMode(enB,OUTPUT);
pinMode (motorR1, OUTPUT);
pinMode (motorR2, OUTPUT);
pinMode (motorL1, OUTPUT);
pinMode (motorL2, OUTPUT);
pinMode (sensFder, INPUT);
pinMode (sensFizq, INPUT);
pinMode (sensTder, INPUT);
pinMode (sensTizq, INPUT);
delay(5000);
}

void loop() {

float buf1, buf2, valord, valort;
valord=analogRead(sensDel);
valort=analogRead(sensTras);
buf1=valord500/1024;
buf2=valort
500/1024;

//Algoritmo para el ultrasonido

digitalWrite(sensFder,LOW);
delayMicroseconds(2);
digitalWrite(sensFder,HIGH);
delayMicroseconds(10);
digitalWrite(sensFder,LOW);
tiempo=pulseIn(sensFizq,HIGH);
distancia=(tiempo/2)/29.1;
Serial.print(distancia);
Serial.print(“cm”);
Serial.println();
digitalWrite(sensTder,LOW);
delayMicroseconds(2);
digitalWrite(sensTder,HIGH);
delayMicroseconds(10);
digitalWrite(sensTder,LOW);
tiempo=pulseIn(sensTizq,HIGH);
distancia=(tiempo/2)/29.1;
Serial.print(distancia);
Serial.print(“cm”);
Serial.println();

//Le damos un valor al PWM
analogWrite(enA,150);
analogWrite(enB,150);

//El bot se activa al presionar cualquier sensor de impacto

//si toca detecta linea blanca adelante retrocede, gira 4s. a la izquierda
//y continua haca atrás

if(buf1 >= 480) //mayor o igual que 480 es negro
{
atras();
izquierda();
delay(400);
atras();
}

//si detecta linea blanca atras avanza, gira 4s a la izquierda
//y continua haca adelante

if(buf2 >= 480) //mayor o igual de 480 es negro
{
adelante();
izquierda();
delay(400);
adelante();
}

//----------- ACCIONES IMPACTO-------------
if(digitalRead (sensFder)==HIGH )
{
golpeFder();
}

if(digitalRead (sensFizq)==HIGH)
{
golpeFizq();
}

if(digitalRead (sensTder)==HIGH)
{
golpeTder();
}

if(digitalRead (sensTizq)==HIGH)
{
golpeTizq();
}
//Colocamos el valor de distancia al PWM, se puede jugar con esto
if(distancia<5)
{
analogWrite(enA,254);
analogWrite(enB,254);
}
delay(500);
}

//---------------MOVIMIENTOS--------------
int adelante()
{
digitalWrite (motorR1, LOW);
digitalWrite (motorR2, HIGH);
digitalWrite (motorL1, HIGH);
digitalWrite (motorL2, LOW);
}

int atras()
{
digitalWrite (motorR1, HIGH);
digitalWrite (motorR2, LOW);
digitalWrite (motorL1, LOW);
digitalWrite (motorL2, HIGH);
}

int izquierda()
{
digitalWrite (motorR1, LOW);
digitalWrite (motorR2, HIGH);
digitalWrite (motorL1, LOW);
digitalWrite (motorL2, HIGH);
delay(100);
}

int derecha()
{
digitalWrite (motorR1, HIGH); //L
digitalWrite (motorR2, LOW);
digitalWrite (motorL1, HIGH);
digitalWrite (motorL2, LOW);//L
delay(100);
}

//--------------GOLPES-------------------

int golpeFder()
{
atras();
delay(1000);
derecha();
delay(300);
adelante();
}

int golpeFizq()
{
atras();
delay(1000) ;
izquierda();
delay(300);
adelante();
}

int golpeTder()
{
adelante();
delay(1000);
izquierda();
delay(300);
atras();
}

int golpeTizq()
{
adelante();
delay(1000);
derecha();
delay(300);
atras();
}

Hola RodyFernandez, bienvenido al foro y lamento tener que llamarte la atención.
Lee las normas del foro para comenzar.
Verás que los códigos no se postean como tu lo has hecho de modo que ve a More, luego Modify y ya puedes editar.
Selecciona todo tu código y luego click en el tag de código </> y listo.

**Luego modifica el título por algo relacionado con tu problema pero: **Necesito Ayuda Urgente !!! no corresponde.

Posteas y ya quedó editado y bien.

Este es tu post tambien Sumo Robot con problemas! no recuerdo pero creo que en las normas tambien hay algo sobre no postear mas de una ves lo mismo. Y ya respondí al titulo que si es interesante pero por curiosidad me metí AQUI y me topo que: es el mismo código, estas en linea en el momento que escribo esto y no respondes a lo que te postie en el otro hilo. Muestras desinterés o quieres todo hecho y ya. Eso molesta ya que uno esta para ayudar y a cambio recibe una respuesta de que si funciono o no funciono y así también se aprende.

Bien, debido a que acá no aprendió a hacerlo pero en el nuevo hilo si, vamos a cerrar este para darle libertad al nuevo. Hasta que sea cerrado FAVOR de no conetestar este Hilo!!

Hilo CERRADO.