Problema sensores HC-SR06 en carro radar (sensor no funciona correctamente)

Hola a todos. Hice un proyecto de un carro que usa 3 sensores para mapear todo un cuarto. Usa dos para medir las distancias a los lados y graficarlas en una app de android, y el de enfrente para girar cuando esta a menos de 50 cm de la pared. El codigo es el siguiente y hasta donde he probado funciona, con una libreria con la que solo tengo que leer la distancia del sensor:

#include<Servo.h>
#include <Ultrasonic.h>
 
Servo ESC; //Crear un objeto de clase servo
Servo servo;
 
int vel = 1300; //amplitud del pulso
Ultrasonic ultizq (2, 3);
Ultrasonic ultder (4, 5);
Ultrasonic ultfot (11, 12);
int direc = 1;
int x = 50;
int y = 50;
int z = 1;
int w = 1;
int r = 1;
int o = 1; 
 
void setup()
{
  //Asignar un pin al ESC
  ESC.attach(9);
  servo.attach(6);

   //Activar el ESC
  ESC.writeMicroseconds(1000); //1000 = 1ms
  //Cambia el 1000 anterior por 2000 si
  //tu ESC se activa con un pulso de 2ms
  delay(5000); //Esperar 5 segundos para hacer la activacion
  //Iniciar puerto serial
  Serial.begin(9600);
  Serial.setTimeout(10);
   
   
}
 
 
void loop()
{
  Serial.print(x);
  Serial.print("a");
  Serial.print(y);
  Serial.print("a");
  Serial.print(z/4);
  Serial.print("a");
  Serial.print(w/4);
  Serial.print("a");
  Serial.print(r/4);
  Serial.print("a");
  Serial.print(o/4);
  Serial.println();
  if (direc==1){
    y++;
    z=(ultizq.distanceRead());
    w=(ultder.distanceRead());
    r=1;
    o=1;
  }
  if (direc==2){
    x++;
    z=1;
    w=1;
    r=(ultizq.distanceRead());
    o=(ultder.distanceRead());
  }
  if (direc==3){
    y--;
    z=(ultder.distanceRead());
    w=(ultizq.distanceRead());
    r=1;
    o=1;
 }
  if (direc==4){
    x--;
    z=1;
    w=1;
    r=(ultder.distanceRead());
    o=(ultizq.distanceRead());
  }
  if (ultfot.distanceRead()<50){
    servo.write(135);
    delay(300);
    servo.write(90);
        direc++;
        }
  if (direc==5){
    ESC.writeMicroseconds(1200);
  }
  if (direc<5){
    ESC.writeMicroseconds(1400);
  }
  
}

El codigo usa un motor brushless que impusa el carro y un esc que alimenta el arduino por gnd y 5v. Usa un servo para girar. Todo funcionaba bien hasta que lo monte y empece a experimentar problemas. El sensor de adelante del vehiculo falla y registra algo en frente aun cuando no lo haya, pero no todo el tiempo y no es constante, en algunos puntos si el carro esta quieto falla, se detiene y funciona bien un momento para luego volver a fallar. He intentado cambiar el sensor con los de los lados, cambiar los cables que en realidad son cortos, probar la continuidad, pero no me ha dado resultado.
No se si alguno me pueda decir si hay alguna interferencia o falla posible.

Gracias.