Sereno:
La función setup solo se ejecuta una sola vez.
Cuando llega a tu for, Linea_izq no se actualiza, linea_der no se actualiza, distancia_der nunca se acutualiza y distancia_izq nunca se actualiza, eso lo hace dentro del loop.
Con eso ya sabes donde está en problema.
Deberia volver a escribir la actualizacion de dichos sensores (o sea el "void sensores(){") antes del loop? Es decir, al final del setup y antes del loop. Lo intente y es lo mismo.
De todos modos modifique una pequeña parte del for (la colocare en esta respuesta), y sí, tenés razon. Son los sensores que no se actualizan. Seguiré pensando y buscando. Gracias por darme la orientacion!!
for(x=0;x<5;x=x+1){
if((linea_izq>700)&&(linea_der>700)&&(distancia_der>20)&&(distancia_izq>20)) {
derecha_f();
Serial.println("derecha inicial");
delay(3000);
izquierda_f();
Serial.println("izquierda inicial");
delay(3000);
}else{
break;
}
}