Boa Noite pessoal

tenho uma duvida com um projeto que achei na net que usa o modulo rfid para controlar um servo motor, usado em controle de acesso, assim vc consegue abrir porta usando cartão ou a tag.
 Só que a minha duvida é a seguinte será que eu consigo fazer o servo motor girar para abrir a porta adicionando um modulo bluethooth no projeto para abrir a porta tanto com a tag como pelo celular ?

O codigo é esse :   

// Programa : RFID - Controle de acesso / cancela // Autor : Arduino e Cia  #include <SPI.h> #include <MFRC522.h> #include <Servo.h>    Servo microservo9g;  #define SS_PIN 10 #define RST_PIN 9 // Definicoes pino modulo RC522 MFRC522 mfrc522(SS_PIN, RST_PIN);   // Leds indicadores acesso liberado ou negado int led_liberado = 5; int led_negado = 6;  char st[20];  void setup()  {   pinMode(led_liberado, OUTPUT);   pinMode(led_negado, OUTPUT);   // Define que o servo esta ligado a porta digital 3   microservo9g.attach(3);   // Move o servo para a posicao inicial (cancela fechada)   microservo9g.write(90);   // Inicia a serial   Serial.begin(9600);   // Inicia  SPI bus   SPI.begin();   // Inicia MFRC522   mfrc522.PCD_Init();    // Mensagens iniciais no serial monitor   Serial.println("Aproxime o seu cartao do leitor...");   Serial.println(); }  void loop()  {   // Aguarda a aproximacao do cartao   if ( ! mfrc522.PICC_IsNewCardPresent())    {     return;   }   // Seleciona um dos cartoes   if ( ! mfrc522.PICC_ReadCardSerial())    {     return;   }   // Mostra UID na serial   Serial.print("UID da tag :");   String conteudo= "";   byte letra;   for (byte i = 0; i < mfrc522.uid.size; i++)    {      Serial.print(mfrc522.uid.uidByte[i] span style="color: blue;">0x10 ? " 0" : " ");      Serial.print(mfrc522.uid.uidByte[i], HEX);      conteudo.concat(String(mfrc522.uid.uidByte[i] span style="color: blue;">0x10 ? " 0" : " "));      conteudo.concat(String(mfrc522.uid.uidByte[i], HEX));   }   Serial.println();   Serial.print("Mensagem : ");   conteudo.toUpperCase();      // Testa se o cartao1 foi lido   if (conteudo.substring(1) == "D8 4B 12 22")   {     // Levanta a cancela e acende o led verde     microservo9g.write(-90);     digitalWrite(led_liberado, HIGH);     Serial.println("Cartao1 - Acesso liberado !");     Serial.println();     delay(3000);     microservo9g.write(90);     digitalWrite(led_liberado, LOW);     }        // Testa se o cartao2 foi lido   if (conteudo.substring(1) == "87 4B DC 8A")   {     Serial.println("Cartao2 - Acesso negado !!!");     Serial.println();     // Pisca o led vermelho     for (int i= 1; ispan style="color: blue;">5 ; i++)     {       digitalWrite(led_negado, HIGH);       delay(200);       digitalWrite(led_negado, LOW);       delay(200);     }   }   delay(1000); } 

Exibições: 916

Responder esta

Respostas a este tópico

Não entendi nada. kkkkkk

Oi AS, boa noite.

Eu tb não entendi nada.

Rui

queria controlar o servo motor desse codigo :  

#include <SPI.h> #include <MFRC522.h> #include <Servo.h> Servomicroservo9g; #define SS_PIN 10 #define RST_PIN 9 // Definicoes pino modulo RC522 MFRC522 mfrc522(SS_PIN, RST_PIN); // Leds indicadores acesso liberado ou negado int led_liberado = 5; int led_negado = 6; char st[20]; void setup() { pinMode(led_liberado, OUTPUT); pinMode(led_negado, OUTPUT); // Define que o servo esta ligado a porta digital 3 microservo9g.attach(3); // Move o servo para a posicao inicial (cancela fechada) microservo9g.write(90); // Inicia a serial Serial.begin(9600); // Inicia SPI bus SPI.begin(); // Inicia MFRC522 mfrc522.PCD_Init(); // Mensagens iniciais no serial monitor Serial.println("Aproxime o seu cartao do leitor..."); Serial.println(); } void loop() { // Aguarda a aproximacao do cartao if ( ! mfrc522.PICC_IsNewCardPresent()) { return; } // Seleciona um dos cartoes if ( ! mfrc522.PICC_ReadCardSerial()) { return; } // Mostra UID na serial Serial.print("UID da tag :"); String conteudo= ""; byte letra; for (byte i = 0; i < mfrc522.uid.size; i++) { Serial.print(mfrc522.uid.uidByte[i] span style="color: blue;">0x10 ? " 0" : " "); Serial.print(mfrc522.uid.uidByte[i], HEX); conteudo.concat(String(mfrc522.uid.uidByte[i] span style="color: blue;">0x10 ? " 0" : " ")); conteudo.concat(String(mfrc522.uid.uidByte[i], HEX)); } Serial.println(); Serial.print("Mensagem : "); conteudo.toUpperCase(); // Testa se o cartao1 foi lido if (conteudo.substring(1) == "D8 4B 12 22") { // Levanta a cancela e acende o led verde microservo9g.write(-90); digitalWrite(led_liberado, HIGH); Serial.println("Cartao1 - Acesso liberado !"); Serial.println(); delay(3000); microservo9g.write(90); digitalWrite(led_liberado, LOW); } // Testa se o cartao2 foi lido if (conteudo.substring(1) == "87 4B DC 8A") { Serial.println("Cartao2 - Acesso negado !!!"); Serial.println(); // Pisca o led vermelho for (int i= 1; ispan style="color: blue;">5 ; i++) { digitalWrite(led_negado, HIGH); delay(200); digitalWrite(led_negado, LOW); delay(200); } } delay(1000); }

Usando tambem o modulo bluethooth .

Olha vou exemplificar, encontrei um projeto em um blog  que aciona uma cancela usando o modulo rfid.  Quando a pessoa encosta o cartão a cancela abre.  eu queria acionar essa mesma cancela pelo modulo bluethooth com o celular certo ?   então eu acionaria a cancela com o cartão e com o modulo bluethooth.  porem não sei como eu faço para adicionar o codigo do modulo bluethooth.

O codigo é esse :

#include <SPI.h>
#include <MFRC522.h>
#include <Servo.h>
 

Servo microservo9g;

#define SS_PIN 10
#define RST_PIN 9
// Definicoes pino modulo RC522
MFRC522 mfrc522(SS_PIN, RST_PIN);

// Leds indicadores acesso liberado ou negado
int led_liberado = 5;
int led_negado = 6;

char st[20];

void setup()
{

 pinMode(led_liberado, OUTPUT);
  pinMode(led_negado, OUTPUT);
  // Define que o servo esta ligado a porta digital 3
  microservo9g.attach(3);
  // Move o servo para a posicao inicial (cancela fechada)
  microservo9g.write(90);
  // Inicia a serial
  Serial.begin(9600);
  // Inicia  SPI bus
  SPI.begin();
  // Inicia MFRC522
  mfrc522.PCD_Init();
  // Mensagens iniciais no serial monitor
  Serial.println("Aproxime o seu cartao do leitor...");
  Serial.println();
}

void loop()
{
  // Aguarda a aproximacao do cartao
  if ( ! mfrc522.PICC_IsNewCardPresent())
  {
    return;
  }
  // Seleciona um dos cartoes
  if ( ! mfrc522.PICC_ReadCardSerial())
  {
    return;
  }
  // Mostra UID na serial
  Serial.print("UID da tag :");
  String conteudo= "";
  byte letra;
  for (byte i = 0; i < mfrc522.uid.size; i++)
  {

 Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ");
     Serial.print(mfrc522.uid.uidByte[i], HEX);
     conteudo.concat(String(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " "));
     conteudo.concat(String(mfrc522.uid.uidByte[i], HEX));
  }
  Serial.println();
  Serial.print("Mensagem : ");
  conteudo.toUpperCase();
 
  // Testa se o cartao1 foi lido
  if (conteudo.substring(1) == "D8 4B 12 22")
  {
    // Levanta a cancela e acende o led verde
    microservo9g.write(-90);
    digitalWrite(led_liberado, HIGH);
    Serial.println("Cartao1 - Acesso liberado !");
    Serial.println();
    delay(3000);
    microservo9g.write(90);
    digitalWrite(led_liberado, LOW);
    }
   

 // Testa se o cartao2 foi lido
  if (conteudo.substring(1) == "87 4B DC 8A")
  {
    Serial.println("Cartao2 - Acesso negado !!!");
    Serial.println();
    // Pisca o led vermelho
    for (int i= 1; i<5 ; i++)
    {
      digitalWrite(led_negado, HIGH);
      delay(200);
      digitalWrite(led_negado, LOW);
      delay(200);
    }
  }
  delay(1000);
}

Comece por aqui:

http://www.seucurso.com.br/index.php?option=com_content&view=ar...

Ai você vai aprendendo, em todo caso peça uma ajuda ao AA ele é o cara neste assunto.

Abs.

Agora dá para entender o código.

Só que não sei o quanto será prático usar bluetooth para esta finalidade pois teria que parear seu celular com o dispositivo que aciona a cancela.

Além disso, depois que parear, tem que conectar. O RFID seria muito mais rápido.

Se ainda quiser usar o celular para esta finalidade, sugiro pesquisar sobre NFC.

Boa sorte,

  'Eiju

Veja este vídeo do TCC do AA.

https://www.youtube.com/watch?v=nfj-9DNGphw

Abs.

Arlei boa noite,

Em primeiro lugar trate de postar seu código adequadamente, use o www.pastebin.com por exemplo, ou se colar aqui faça de uma forma adequada.

A partir de então alguém talvez possa lhe ajudar.

Abs.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço