Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Fechadura Inteligente Wi-Fi com Arduino e ESP8266 - Desbloqueio via Celular

Componentes e Materiais

Arduino UNO R3 1
Módulo WiFi ESP8266 com Antena PCB (ElectroPeak) 1
Transistor Darlington de Alta Potência 1
Solenoide Tipo Fechadura 1

Aplicativos e Serviços Online

Sobre o Projeto

Você pode ler este e outros tutoriais incríveis no site oficial da ElectroPeak

Neste tutorial, você aprenderá como criar uma fechadura inteligente baseada em Arduino; esta fechadura tem a capacidade de ser desbloqueada pelo seu celular. Ao final deste projeto:

Portas Seguras com Fechadura Inteligente

Hoje em dia, você pode melhorar a segurança da sua casa ou escritório usando tecnologia de ponta. O uso de smartphones e dispositivos inteligentes torna-se mais fácil e acessível para todas as pessoas, sendo uma boa opção para tornar nossas coisas mais inteligentes. A cada dia, engenheiros e técnicos produzem novos sistemas e ferramentas que permitem automação residencial mais inteligente e criam novas maneiras de tornar sua vida mais segura e fácil. Provavelmente você já viu fechaduras inteligentes para portas que têm teclado ou usam impressão digital para trancar ou destrancar a porta.

Fechadura Inteligente Wi-Fi com Arduino e ESP8266 - Desbloqueio via Celular

Neste projeto, queremos criar um sistema baseado em Arduino que ajude você a criar uma seção de login para uma porta por WiFi e fechadura solenoide. Não usamos teclado ou elementos mecânicos complicados, e essas são vantagens deste sistema. Apenas colamos um QR code na porta e as pessoas autorizadas podem escaneá-lo para ver a página de login e digitar sua senha. Após digitar a senha, a fechadura solenoide será ativada. Usamos apenas uma placa Arduino e um driver para o solenoide e um ESP8266 para fazer a conexão com o WiFi local. Vamos lá.

Circuito

Fechadura Inteligente Wi-Fi com Arduino e ESP8266 - Desbloqueio via Celular

Código

Primeiro, escrevemos um código para o ESP-01 criar uma página de login e receber a senha do usuário e depois enviá-la ao Arduino pela porta Serial. Depois, escrevemos outro código para o Arduino receber dados do ESP-01 e controlar o motor servo. Você pode usar a Arduino IDE para compilar ambos os códigos e carregá-los nas placas.

Você deve adicionar a biblioteca e depois carregar o código. Se é a primeira vez que executa uma placa Arduino, não se preocupe. Siga estes passos:

  1. Acesse www.arduino.cc/en/Main/Software e baixe o software do seu SO. Instale a IDE Arduino conforme instruído.
  2. Execute a Arduino IDE, limpe o editor de texto e copie o código a seguir no editor.
  3. Escolha a placa em Tools > Boards, selecione sua placa Arduino.
  4. Conecte o Arduino ao PC e defina a porta COM em Tools > Port.
  5. Pressione o botão Upload (seta).
  6. Pronto!

Código do Arduino

String inputString = ""; // String para armazenar dados recebidos
bool stringComplete = false; // Se a string está completa

void setup() {
  Serial.begin(115200); // Inicializa serial
  inputString.reserve(200); // Reserva 200 bytes
  pinMode(9, OUTPUT); // Pino 9 como saída para o solenoide
}

void loop() {
  // Imprime a string quando chega newline
  if (stringComplete) {
    if (inputString == "your_password") { // Substitua pela sua senha
      digitalWrite(9, HIGH); // Ativa solenoide
      delay(300); // Mantém ativo por 300ms
      digitalWrite(9, LOW); // Desativa solenoide
      Serial.println(inputString);
      // Limpa a string
      inputString = "";
      stringComplete = false;
    }
  }
}

void serialEvent() {
  while (Serial.available()) {
    char inChar = (char)Serial.read(); // Lê novo byte
    inputString += inChar; // Adiciona à string
    // Se caractere é newline, marca flag para loop principal processar
    if (inChar == '\n') {
      stringComplete = true;
    }
  }
}

Código do ESP8266 (ESP-01)

Agora, hora de carregar o código do ESP-01. Use a Arduino IDE para carregar o sketch no ESP. Antes de carregar, você deve selecionar a placa ESP na IDE.

  1. Vá em File > Preferences e adicione https://arduino.esp8266.com/stable/package_esp8266com_index.json em Additional Boards Manager URLs.
  2. Baixe e instale pelo Board Manager. Agora você verá as placas ESP em Tools > Board.
  3. Selecione "Generic ESP8266 Module" e copie o código em um novo sketch.
  4. Configure o conversor USB-TTL como hardware de upload. Conecte o conversor e defina a porta correta em Tools > Port.
  5. Pronto para Upload.
#include <ESP8266WiFi.h>
#include <ESP8266WebServer.h>

// Rede WiFi
const char* ssid = "YourSSID";
const char* password = "YourPASSWORD";

ESP8266WebServer server(80);
char htmlResponse[3000];

void handleRoot() {
  snprintf(htmlResponse, 3000,
    "<!DOCTYPE html>\
    <html lang=\"en\">\
    <head>\
    <style>\
    body {background-color: rgb(160, 0, 53);}\
    h3 {color: white;text-align:center;}\
    p {color: white; text-align:center;}\
    div {color: white; text-align:center;}\
    ID {text-align:center;}\
    input {text-align:center;}\
    </style>\
    <meta charset=\"utf-8\">\
    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\
    </head>\
    <body>\
    <h3><center>Electropeak Smart Security Door</center></h3>\
    <p><center>Please type your ID</center></p>\
    <div>ID: <input type='text' name='pass_word' id='pass_word' align='center' size=10 autofocus></div>\
    <div>\
    <br><button id=\"save_button\">Log In</button>\
    </div>\
    <script src=\"https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js\"></script>\
    <script>\
    var pass;\
    $('#save_button').click(function(e){\
      e.preventDefault();\
      pass = $('#pass_word').val();\
      $.get('/save?pass=' + pass, function(data){\
        console.log(data);\
      });\
    });\
    </script>\
    </body>\
    </html>");
  server.send(200, "text/html", htmlResponse);
}

void handleSave() {
  if (server.arg("pass") != "") {
    Serial.println(server.arg("pass")); // Envia senha para Arduino via Serial
  }
}

void setup() {
  Serial.begin(115200);
  delay(10);
  
  // Conectando à rede WiFi
  Serial.println();
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(ssid);
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected");
  Serial.println("IP address: ");
  Serial.println(WiFi.localIP());
  
  server.on("/", handleRoot);
  server.on("/save", handleSave);
  server.begin();
  Serial.println("HTTP server started");
}

void loop() {
  server.handleClient();
}

Após carregar o código, abra o Serial Monitor da Arduino IDE e obtenha seu IP. Agora, se você digitar o IP na barra de URL do navegador, verá a interface do servidor web. Digite seu ID na caixa de texto e, se fizer corretamente, o Arduino ativará a fechadura. Note que você deve estar conectado ao mesmo roteador WiFi que o ESP8266.

Fechadura Inteligente Wi-Fi com Arduino e ESP8266 - Desbloqueio via Celular

Agora é hora de criar um QR code e tornar mais simples o acesso a esta página. Existem muitas ferramentas online para gerar um QR code específico. Sugerimos esta.

Basta copiar seu IP na barra e clicar em "Create QR Code".

Fechadura Inteligente Wi-Fi com Arduino e ESP8266 - Desbloqueio via Celular

Imprima e cole perto da porta. Para desbloquear, você deve conectar ao WiFi, escanear o QR code e digitar seu ID.

Fechadura Inteligente Wi-Fi com Arduino e ESP8266 - Desbloqueio via Celular

O Que Vem A Seguir?

Aqui estão algumas sugestões:

Você pode ler este e outros tutoriais incríveis no site oficial da ElectroPeak

Processo de manufatura

  1. Dentro dos Cofres Bancários: História, Design e Futuro da Segurança
  2. Construa Robô Raspberry Pi Controlado por Wi-Fi com Python – Guia Passo a Passo
  3. Crie um Sistema Ambilight Impressionante para Monitor com Arduino
  4. Crie uma Fechadura RFID Segura com Arduino – Guia Passo a Passo
  5. Persianas Inteligentes: Controle Automático de Luz com Arduino e Energia Solar
  6. Construa um Voltímetro Inteligente com Arduino e Smartphone – Projeto DIY Fácil
  7. Monitor de Frequência Cardíaca IoT em Tempo Real com Arduino e MAX30100
  8. Construa um Pote Inteligente IoT com ESP8266, Arduino e Sensor Ultrassônico – Monitoramento em Tempo Real
  9. Servidor Web Arduino Uno WiFi: Controle LED via Navegador
  10. Fechadura Inteligente Wi-Fi com Arduino e ESP8266 - Desbloqueio via Celular