Problema Em Acionar Saidas Temporizadas

Eu Inclui o pinMode (sensorPin,INPUT_PULLUP) , e mudei a entrada digital do sensor , uma coisa que reparei foi que quando aproximo a mão ou algum objeto do sensor as saídas, digitais ficam acionando e desacionando até eu colocar a mão ou outro objeto próximo do sensor, ai essas saídas ficam acionadas e não desacionam,será que tem algum erro no código.?

#include <Crescer.h>
int sensorPin = 3;   
int rele1 =  30;
int rele2 =  23;
int rele3 =  24;
int rele4 =  25;
int rele5 =  26;    
unsigned long tempo = 0; // variável para receber valores do millis()
unsigned long temp1 = 0;
unsigned long temp2 = 0;
unsigned long temp3 = 0;
unsigned long temp4 = 0;
int temporizador = 0;// variável para indicar quando o temporizador está operando
int tempor1 = 0;
int tempor2 = 0;
int tempor3 = 0;
int tempor4 = 0;
int sensorState = 0;

void setup() {
  pinMode(rele1, OUTPUT);
  pinMode(rele2, OUTPUT);    
  pinMode(rele3, OUTPUT);
  pinMode(rele4, OUTPUT);
  pinMode(rele5, OUTPUT);
  pinMode(sensorPin,INPUT_PULLUP);   
}

void loop(){

sensorState = digitalRead(sensorPin); // lê o estado do botão

if (sensorState == HIGH && temporizador == 0) {  // se botão acionado
           temporizador = 1; // inicia o temporizador
           tempo = millis(); // passa à variável o valor de millis()
}  

if (sensorState == HIGH && tempor1 == 0) {  // se botão acionado
           tempor1 = 1; // inicia o temporizador
           temp1 = millis(); // passa à variável o valor de millis()
}

if (sensorState == HIGH && tempor2 == 0) {  // se botão acionado
           tempor2 = 1; // inicia o temporizador
           temp2 = millis(); // passa à variável o valor de millis()
}

if (sensorState == HIGH && tempor3 == 0) {  // se botão acionado
           tempor3 = 1; // inicia o temporizador
           temp3 = millis(); // passa à variável o valor de millis()
}

if (sensorState == HIGH && tempor4 == 0) {  // se botão acionado
           tempor4 = 1; // inicia o temporizador
           temp4 = millis(); // passa à variável o valor de millis()
}

if (millis() - tempo >= 1000 && temporizador == 1){ // após 1 segundo e temporizador
                                                                                 // ligado
           digitalWrite(rele1, HIGH); // aciona o LED
}

 if (millis() - temp1 >= 1200 && tempor1 == 1){ // após 1 segundo e temporizador
                                                                                 // ligado
           digitalWrite(rele2, HIGH); // aciona o LED
}

if (millis() - temp2 >= 1400 && tempor2 == 1){ // após 1 segundo e temporizador
                                                                                 // ligado
           digitalWrite(rele3, HIGH); // aciona o LED
}

if (millis() - temp3 >= 1600 && tempor3 == 1){ // após 1 segundo e temporizador
                                                                                 // ligado
           digitalWrite(rele4, HIGH); // aciona o LED
}

if (millis() - temp4 >= 1800 && tempor4 == 1){ // após 1 segundo e temporizador
                                                                                 // ligado
           digitalWrite(rele5, HIGH); // aciona o LED
}

if (millis() - tempo >= 2000 && temporizador == 1){ // após 2 seg. e temporizador 
                                                                                 //desligado

     digitalWrite(rele1, LOW); // apaga o LED 
     temporizador = 0; // desliga o temporizador
}

 if (millis() - temp1 >= 2200 && tempor1 == 1){ // após 2 seg. e temporizador 
                                                                                 //desligado

     digitalWrite(rele2, LOW); // apaga o LED 
     tempor1 = 0; // desliga o temporizador
}
if (millis() - temp2 >= 2400 && tempor2 == 1){ // após 2 seg. e temporizador 
                                                                                 //desligado

     digitalWrite(rele3, LOW); // apaga o LED 
     tempor2 = 0; // desliga o temporizador
}
if (millis() - temp3 >= 2600 && tempor3 == 1){ // após 2 seg. e temporizador 
                                                                                 //desligado

     digitalWrite(rele4, LOW); // apaga o LED 
     tempor3 = 0; // desliga o temporizador
}

if (millis() - temp4 >= 2800 && tempor4 == 1){ // após 2 seg. e temporizador 
                                                                                 //desligado

     digitalWrite(rele5, LOW); // apaga o LED 
     tempor4 = 0; // desliga o temporizador
}

}