Índice:

Raspberry Pi - Smart Office: 10 etapas (com imagens)
Raspberry Pi - Smart Office: 10 etapas (com imagens)

Vídeo: Raspberry Pi - Smart Office: 10 etapas (com imagens)

Vídeo: Raspberry Pi - Smart Office: 10 etapas (com imagens)
Vídeo: Step-by-Step : Installing Windows 10 on Raspberry Pi 2024, Dezembro
Anonim
Raspberry Pi - Smart Office
Raspberry Pi - Smart Office

Sobre o que é o aplicativo?

OfficeHelperBOT é um aplicativo voltado para um ambiente de escritório inteligente. 2 Raspberry Pi 3 Modelo B seria configurado para isso.

Raspberry Pi 1 seria a máquina principal que pegaria todos os valores dos sensores, publicando os dados via MQTT, armazenando dados no banco de dados em nuvem que estamos usando DynamoDB e executando o servidor do portal web.

Raspberry Pi 2 seria usado na porta. Isso exigiria que o funcionário verificasse sua identidade antes de ter acesso ao escritório. Existem dois métodos para fazer isso, por meio de uma sequência de código PIN e uma verificação de código QR. Nos casos em que a verificação pode ser mal utilizada, tiraríamos fotos de quem está tendo falhado na verificação e armazenar a imagem da pessoa no AWS S3 Bucket.

Uma página da Web seria capaz de visualizar DHT, luz, fotos detectadas por movimento e vídeo do escritório. A página da Web também seria capaz de controlar as luzes do escritório e também exibir uma transmissão ao vivo do CCTV do escritório.

Haveria também um bot do Telegram que permite controlar as luzes LED no escritório, verificar o valor dos valores do sensor, como a temperatura e também permitir que o funcionário obtenha a imagem do código QR caso perca a imagem do código QR ou esqueça o PIN solicitando e obtendo a imagem do código QR do AWS S3 Bucket.

Etapa 1: vamos dar uma olhada na visão geral

Vamos dar uma olhada na visão geral!
Vamos dar uma olhada na visão geral!
Vamos dar uma olhada na visão geral!
Vamos dar uma olhada na visão geral!
Vamos dar uma olhada na visão geral!
Vamos dar uma olhada na visão geral!

Diagrama de Arquitetura do Sistema

Como as máquinas se comunicarão umas com as outras

Resultado de Hardware

Veja como os dois Raspberry Pi ficariam no final

Portal da internet

Visualize o portal da web feito em Python via Flask

Telegram Bot

Encontrar o bot que criamos

Transmissão ao vivo

Usando uma das PiCam como um CCTV e transmitindo imagens ao vivo

Requisito de Hardware

  • 2x Raspberry Pi
  • 2x placa GPIO
  • 1x LDR
  • 1x DHT11
  • 1x sensor de movimento
  • 4x LED
  • 7x botão
  • 2x Buzzer
  • 2x display LCD
  • 1x webcam

Etapa 2: configuração do Raspberry Pi 1 (escritório)

  1. Crie uma pasta para armazenar seus html chamados templates
  2. Crie uma pasta para armazenar seus arquivos css / javascript chamada estática
  3. Crie uma pasta para armazenar seus arquivos de câmera chamados câmera com 3 subpastas capture_photos, motion_photos, motion_videos

mkdir ~ / ca2

mkdir ~ / ca2 / templates

mkdir ~ / ca2 / static

mkdir ~ / ca2 / static / camera

mkdir ~ / ca2 / static / camera / capture_photos

mkdir ~ / ca2 / static / camera / motion_photos

mkdir ~ / ca2 / static / camera / motion_Videos

Etapa 3: configuração do Raspberry Pi 2 (porta)

  1. Crie uma pasta para armazenar seus arquivos chamada door
  2. Crie uma pasta para armazenar suas imagens de QR Code chamada qr_code

mkdir ~ / door

mkdir ~ / door / qr_code

Etapa 4: Configurar Bot do Telegram

Configurar Bot do Telegram
Configurar Bot do Telegram
Configurar Bot do Telegram
Configurar Bot do Telegram
Configurar Bot do Telegram
Configurar Bot do Telegram
Configurar Bot do Telegram
Configurar Bot do Telegram
  1. Open Telegram
  2. Encontre "BotFather"
  3. Digite "/ start"
  4. Digite "/ newbot"
  5. Siga as instruções, nome do bot, nome de usuário do bot, anote o token de autenticação do bot

Etapa 5: configurar o DynamoDB

Configurar DynamoDB
Configurar DynamoDB
Configurar DynamoDB
Configurar DynamoDB
Configurar DynamoDB
Configurar DynamoDB
  1. Inscreva-se no AWS
  2. Pesquisar DynamoDB no serviço AWS
  3. Clique em "Criar mesa"
  4. Preencha o nome da tabela
  5. Defina a chave de partição como 'id' (String) e adicione a chave de classificação como 'datetime' (String)
  6. Faça isso pelas 4 mesas, dht, luzes, galeria, funcionário

Antevisão das 4 Tabelas

Etapa 6: Configurar o AWS S3 Bucket

Configurar o AWS S3 Bucket
Configurar o AWS S3 Bucket
Configurar o AWS S3 Bucket
Configurar o AWS S3 Bucket
Configurar o AWS S3 Bucket
Configurar o AWS S3 Bucket
  1. Pesquise AWS S3
  2. Clique em "Criar intervalo"
  3. Siga as regras para nomear o intervalo
  4. Siga as capturas de tela
  5. Criar intervalo

Como faço o upload para o intervalo S3?

Não temos um portal de administração, portanto, importaríamos manualmente a imagem do QR Code por meio da interface gráfica do usuário da AWS. Siga as capturas de tela para criar o balde. O snippet do código é a lógica necessária para fazer o upload da imagem para o S3 Bucket

Etapa 7: configurar AWS SNS

  1. Pesquisar por AWS SNS
  2. Seguir Tag do Tópico
  3. Criar novo tópico
  4. Definir o nome do tópico e o nome de exibição
  5. Edite a política para permitir que todos publiquem
  6. Inscreva-se no tópico que é criado
  7. Defina o e-mail no campo do endpoint para receber e-mail quando o valor atingir um determinado valor

Etapa 8: Criação de uma regra

  1. Clique em "Criar uma regra"
  2. Escreva o nome e uma breve descrição
  3. Escolha a versão SQL mais recente para enviar a mensagem MQTT inteira
  4. O mecanismo de regras usa o filtro de tópico para determinar quais regras acionar quando a mensagem MQTT for recebida
  5. Clique em "Adicionar ação"
  6. Selecione o envio de uma mensagem via notificação push SNS

Etapa 9: Criação da interface da web

Crie esses novos arquivos html chamados

  • cabeça
  • Conecte-se
  • Histórico
  • dht
  • luz
  • galeria
  • movimento
  • conduziu

Copie e cole do arquivo do Google Drive no respectivo html.

drive.google.com/file/d/1zd-x21G7P5JeZyPGZp1mdUJsfjoclYJ_/view?usp=sharing

Etapa 10: scripts principais

Existem 3 scripts principais

  • server.py - Crie um portal da web
  • working.py - Lógica para Raspberry Pi 1 (Office)
  • door.py Logic para Raspberry Pi 2 (porta)

Simplesmente executamos todos os 3 códigos para obter o resultado que desejamos

Podemos obtê-lo no Google Drive em Main.zip

drive.google.com/open?id=1xZRjqvFi7Ntna9_KzLzhroyEs8Wryp7g

Recomendado: