Ajuda com programa para assionamento de cofre!!!

Estou utilizando esse programa abaixo, no caso o led azul seria o comando de abertura. E com o RTC não sei como eu faria.

int ledAzul = 13; // escolha o pino para o LED (comando do motor, ira mudar para um pino PWM
int ledVerm = 12; // escolha o pino para o LED
int ledVerd = 11; // escolha o pino para o LED
int bot1 = 2; // escolha o pino para botão
int bot2 = 3; // escolha o pino para botão
int bot3 = 4; // escolha o pino para botão
int bot4 = 5; // escolha o pino para botão
int val01 = 0; // variável para ler o estado do botão
int val02 = 0; // variável para ler o estado do botão
int val03 = 0; // variável para ler o estado do botão
int val04 = 0; // variável para ler o estado do botão
int potPin = 2; // escolha o pino do potenciômetro
int val = 0; // variável para ler o potenciometro

void setup() {
pinMode(ledVerm, OUTPUT); // declara-se o LED como saída
pinMode(ledAzul, OUTPUT); // declara-se o LED como saída
pinMode(ledVerd, OUTPUT); // declara-se o LED como saída
pinMode(bot1, INPUT); // declara-se o interruptor como entrada
digitalWrite(bot1, HIGH); // coloca a entrada em nivel alto, dispensando o resistor
pinMode(bot2, INPUT); // declara-se o interruptor como entrada
digitalWrite(bot2, HIGH); // coloca a entrada em nivel alto, dispensando o resistor
pinMode(bot3, INPUT); // declara-se o interruptor como entrada
digitalWrite(bot3, HIGH); // coloca a entrada em nivel alto, dispensando o resistor
pinMode(bot4, INPUT); // declara-se o interruptor como entrada
digitalWrite(bot4, HIGH); // coloca a entrada em nivel alto, dispensando o resistor
}

void loop() {
INICIO:
val01 = digitalRead(bot1); // le o estado do botão
if (val01 == LOW) goto BOTAO1;

val02 = digitalRead(bot2); // le o estado do botão
if (val02 == LOW) goto BOTAO2;

val03 = digitalRead(bot3); // le o estado do botão
if (val03 == LOW) goto BOTAO3;

val04 = digitalRead(bot4); // le o estado do botão
if (val04 == LOW) goto TESTE;

goto INICIO;

BOTAO1: // 3 vezes ao dia
digitalWrite(ledVerm, HIGH);
val = analogRead(potPin); // ler o valor do potenciômetro
digitalWrite(ledAzul, HIGH); // ligar LED
delay(val20);
digitalWrite(ledAzul, LOW); // desligar LED
delay(7000-(val
20));
digitalWrite(ledAzul, HIGH); // ligar LED
delay(val20);
digitalWrite(ledAzul, LOW); // desligar LED
delay(7000-(val
20));
digitalWrite(ledAzul, HIGH); // ligar LED
delay(val20);
digitalWrite(ledAzul, LOW); // desligar LED
delay(10000-(val
20));
goto BOTAO1;

BOTAO2: // 2 vezes ao dia
digitalWrite(ledVerd, HIGH);
val = analogRead(potPin); // ler o valor do potenciômetro
digitalWrite(ledAzul, HIGH); // ligar LED
delay(val20);
digitalWrite(ledAzul, LOW); // desligar LED
delay(12000-(val
20));
digitalWrite(ledAzul, HIGH); // ligar LED
delay(val20);
digitalWrite(ledAzul, LOW); // desligar LED
delay(12000-(val
20));
goto BOTAO2;

BOTAO3: // 1 vez ao dia
digitalWrite(ledVerd, HIGH);
digitalWrite(ledVerm, HIGH);
val = analogRead(potPin); // ler o valor do potenciômetro
digitalWrite(ledAzul, HIGH); // ligar LED
delay(val20);
digitalWrite(ledAzul, LOW); // desligar LED
delay(24000-(val
20));
goto BOTAO3;

TESTE:
val = analogRead(potPin); // ler o valor do potenciômetro
digitalWrite(ledAzul, HIGH); // ligar LED
delay(val*20);
digitalWrite(ledAzul, LOW); // desligar LED

}