Leitor RFID HW-147

Olá pessoal! estou com um problema aqui com meu sensor rfid, estou começando na programação ainda, gostaria de uma ajuda, eu preciso acionar um rele quando aproxima a tag, do leitor, o rele ficara atracado todo o tempo que a tag estimer próxima do leitor, e desatraca quando afastar do leitor, até agora só consegui fazer ele atracar, mas fica pulsando, não consigo deixa ele só ligado de forma constante.

#include <Wire.h>
#include <PN532_I2C.h>
#include <PN532.h>
#include <NfcAdapter.h>
#define Rele 8

PN532_I2C pn532_i2c(Wire); //instancia criada para comunicação i2c.
NfcAdapter nfc = NfcAdapter(pn532_i2c); // instancia nfc que recebe pn532_i2c criada anteriormente

String tags[] = {"CC 63 D3 2F"}; //entre as aspas fica o id do tag, precisa identificar o id do tag e colar aqui
boolean autorizado = false; // compara se o tag confere ou não
int timer = 1;
int Led = 0;
void setup(void) {
pinMode(Rele, OUTPUT); // pino de sinal de saida para acionar uma carga caso seja verdadeiro ou falço o tag

nfc.begin(); // inicia nfc
delay(20);
}//end setup

void loop(void) {

if (nfc.tagPresent()) { // faz a leitura para ver se tem um tag proximo, para ser lido
NfcTag tag = nfc.read(); // variavel nfctag para receber as leituras

for (int i = 0; i < sizeof(tags); i++) { // arrai com todos os id dos tags para serem comparados no sistema

  if ( tag.getUidString() == tags[i]) { // compara os id e verifica se o id cadastrado se encontra no arrai
    autorizado = true; // se o id se encontra no sistema, variavel boolean passa para verdadeiro

    if (autorizado ) timer = 1;

    if (timer == 1 && Led == 0 )  { // variavel altorizado em verdadeiro aciona pino 8 caso contrario apaga pino 8
      digitalWrite(Rele, 1);
      delay(300);
      digitalWrite(Rele, 0);
      Led = 1;
    } else {
      if (timer == 1) {
        digitalWrite(Rele, 0);
        
        Led = 0;
      }
    }
    //}

  }

}

}
//autorizado = 0;
//}

}// end loop

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.