Varios if

Buenas,

Amigos lo que sucede es que estoy haciendo un caro que cumpa ciertas condiciones en donde debo utilizar 4 sensores, el problema es que lo sensores me miden una distancia y dependiendo si la distancia es menor que 8 cm debe ejecutar una accion en este caso volver la distancia un 1 si esta a menos de 8cm o un 0 si es lo contrario, lo que sucede es que al realizar el codigo solo me lee el primer if que este escrito los demas no los toma, tal ves me podrian ayudar un poco adjunto todo el codigo

int pin_enableMotor1 = 10; //Enable para el motor 1
int pin_contro1_Motor1 = 9; //Pin de control para el motor 1
int pin_contro2_Motor1 = 8; //Pin de control para el motor 1

int pin_enableMotor2 = 13; //Enable para el motor 2
int pin_contro1_Motor2 = 12; //Pin de control para el motor 2
int pin_contro2_Motor2 = 11; //Pin de control para el motor 2

const int TriggerI = 19; //Pin digital para el Trigger del sensor
const int EchoI = 18; //Pin digital para el Echo del sensor
const int TriggerAI = 17;
const int EchoAI = 16;
const int TriggerAD = 4;
const int EchoAD = 5;
const int TriggerD = 6;
const int EchoD = 7;

void setup() {

Serial.begin(9600);//iniciailzamos la comunicación
pinMode(pin_enableMotor1, OUTPUT); //Inicializar como salidas los pines del arduino
pinMode(pin_contro1_Motor1, OUTPUT);
pinMode(pin_contro2_Motor1, OUTPUT);
pinMode(pin_enableMotor2, OUTPUT);
pinMode(pin_contro1_Motor2, OUTPUT);
pinMode(pin_contro2_Motor2, OUTPUT);

pinMode(TriggerI, OUTPUT); //pin como salida
pinMode(EchoI, INPUT); //pin como entrada
digitalWrite(TriggerI, LOW);//Inicializamos el pin con 0
pinMode(TriggerAI, OUTPUT);
pinMode(EchoAI, INPUT);
digitalWrite(TriggerAI, LOW);
pinMode(TriggerAD, OUTPUT);
pinMode(EchoAD, INPUT);
digitalWrite(TriggerAD, LOW);
pinMode(TriggerD, OUTPUT);
pinMode(EchoD, INPUT);
digitalWrite(TriggerD, LOW);

}

void loop()
{

long tI; //timepo que demora en llegar el eco
long dI; //distancia en centimetros
long tAI;
long dAI;
long tAD;
long dAD;
long tD;
long dD;
float Suma1;
float Suma2;
float Suma3;
float Suma4;
float Act1;
float Act2;
float Act3;
float Act4;
float Fsuma1;
float Fsuma2;
float Fsuma3;
float Fsuma4;
float MI11;
float MI12;
float MD11;
float MD12;

digitalWrite(TriggerI, HIGH);
delayMicroseconds(10); //Enviamos un pulso de 10us
digitalWrite(TriggerI, LOW);
digitalWrite(TriggerAI, HIGH);
delayMicroseconds(10);
digitalWrite(TriggerAI, LOW);
digitalWrite(TriggerAD, HIGH);
delayMicroseconds(10);
digitalWrite(TriggerAD, LOW);
digitalWrite(TriggerD, HIGH);
delayMicroseconds(10);
digitalWrite(TriggerD, LOW);

tI = pulseIn(EchoI, HIGH); //obtenemos el ancho del pulso
dI= tI/59;

tAI = pulseIn(EchoAI, HIGH);
dAI= tAI/59;

tAD = pulseIn(EchoAD, HIGH);
dAD= tAD/59; //escalamos el tiempo a una distancia en cm

tD = pulseIn(EchoD, HIGH);
dD= tD/59;

}

// aca es donde tengo el problema

if (dI<8){
dI=1;
}
else{
dI=0;
}

if (dAI<=8){
dAI=1;
}
if (dAI > 8){
dAI = 0;
}

if (dAD<=8){
dAD=1;
}
else{
dAD=0;
}

if (dD<=8){
dD=1;
}
else{
dD=0;
}
Serial.print("Distancia 1: ");
Serial.print(dI); //Enviamos serialmente el valor de la distancia
Serial.print(“cm”);
Serial.println();
Serial.print("Distancia 2: ");
Serial.print(dAI); //Enviamos serialmente el valor de la distancia
Serial.print(“cm”);
Serial.println();
Serial.print("Distancia 3: ");
Serial.print(dAD); //Enviamos serialmente el valor de la distancia
Serial.print(“cm”);
Serial.println();
Serial.print("Distancia 4: ");
Serial.print(dAD); //Enviamos serialmente el valor de la distancia
Serial.print(“cm”);
Serial.println();
delay(10);

//CAPA OCULTA 4 NEORONAS DE SALIDA
//Suma
Suma1=((dI0.45706)+(dAI-4.1179)+(dAD*-4.5365)+(dD0.58484)+1.3453);
Suma2=((dI
0.1137)+(dAI*-2.9535)+(dAD*-2.6869)+(dD0.20462)+1.1636);
Suma3=((dI
-3.0875)+(dAI*-2.6952)+(dAD3.0855)+(dD5.8599)-1.7056);
Suma4=((dI0.21037)+(dAI-0.13126)+(dAD0.61858)+(dD0.87511)+4.1088);

//Funcion de activacion
Act1=((exp(Suma1))-(exp(-Suma1)))/((exp(Suma1))+(exp(-Suma1)));
Act2=((exp(Suma2))-(exp(-Suma2)))/((exp(Suma2))+(exp(-Suma2)));
Act3=((exp(Suma3))-(exp(-Suma3)))/((exp(Suma3))+(exp(-Suma3)));
Act4=((exp(Suma4))-(exp(-Suma4)))/((exp(Suma4))+(exp(-Suma4)));

//SALIDA DE LA NEURONA
//Suma
Fsuma1=((Act16.1154)+(Act21.332)+(Act3*-7.6822)+(Act42.1707)+5.2348);
Fsuma2=((Act1
-6.1649)+(Act2*-1.2408)+(Act37.6855)+(Act4-4.4856)-2.8806);
Fsuma3=((Act15.6016)+(Act22.055)+(Act37.6532)+(Act43.2039)+4.2857);
Fsuma4=((Act1*-5.6284)+(Act2*-2,0447)+(Act3*-7,6447)+(Act4*-3,3712)+3.81);

//Funciòn de activacion y salida

MI11=((exp(Fsuma1))-(exp(-Fsuma1)))/((exp(Fsuma1))+(exp(-Fsuma1)));
if (MI11>0){
digitalWrite(pin_enableMotor1, HIGH);
digitalWrite(pin_contro1_Motor1, HIGH);}
else{
digitalWrite(pin_enableMotor1, HIGH);
digitalWrite(pin_contro1_Motor1, LOW);
}

MI12=((exp(Fsuma2))-(exp(-Fsuma2)))/((exp(Fsuma2))+(exp(-Fsuma2)));
if (MI12>0){
digitalWrite(pin_enableMotor1, HIGH);
digitalWrite(pin_contro2_Motor1, HIGH);}
else{
digitalWrite(pin_enableMotor1, HIGH);
digitalWrite(pin_contro2_Motor1, LOW);
}
MD11=((exp(Fsuma3))-(exp(-Fsuma3)))/((exp(Fsuma3))+(exp(-Fsuma3)));
if (MD11>0){
digitalWrite(pin_enableMotor2, HIGH);
digitalWrite(pin_contro1_Motor2, HIGH);}
else{
digitalWrite(pin_enableMotor2, HIGH);
digitalWrite(pin_contro1_Motor2, LOW);
}
MD12=((exp(Fsuma4))-(exp(-Fsuma4)))/((exp(Fsuma4))+(exp(-Fsuma4)));
if (MD12>0){
digitalWrite(pin_enableMotor2, HIGH);
digitalWrite(pin_contro2_Motor2, HIGH);}
else{
digitalWrite(pin_enableMotor2, HIGH);
digitalWrite(pin_contro2_Motor2, LOW);
}

}

Aplica "Auto Formato" (Ctrl+T) desde el IDE y te daras cuenta que tus if estan fuera del loop(){}

}  //Estas terminando loop() aqui ***

// aca es donde tengo el problema

Un par de consejos mas: veo que usas muchas variable int (2 bytes) cuando podrian ser tipo byte (1 byte) si su valor estara entre 0~255. Un claro ejemplo son los pines.

Otra cosilla todos los valores que NO cambiaras deberían ser const, como los pines por ejemplo.

Moderador: Lee el privado que te he enviado con instrucciones para postear debidamente tu código.
También hazle caso a @Kike_GL usando autoformato

Yo no respondo consultas con códigos mal posteados.