Tabla de contenido:
- Paso 1: ¡Veamos la descripción general
- Paso 2: Configurar para Raspberry Pi 1 (Office)
- Paso 3: Configurar para Raspberry Pi 2 (puerta)
- Paso 4: Configura Telegram Bot
- Paso 5: configurar DynamoDB
- Paso 6: configurar AWS S3 Bucket
- Paso 7: configurar AWS SNS
- Paso 8: creación de una regla
- Paso 9: creación de la interfaz web
- Paso 10: Guiones principales
Video: Raspberry Pi - Oficina inteligente: 10 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:44
¿De qué se trata la aplicación?
OfficeHelperBOT es una aplicación dirigida a un entorno de oficina inteligente. 2 Raspberry Pi 3 Model B se configuraría para esto.
Raspberry Pi 1 sería la máquina principal que tomará todos los valores de los sensores, publicará los datos a través de MQTT, almacenará los datos en la base de datos en la nube que estamos usando DynamoDB y ejecutará el servidor del portal web.
Raspberry Pi 2 se usaría en la puerta. Requeriría que el empleado verifique su identidad antes de que se le permita el acceso a la oficina. Hay dos métodos para hacerlo, que son a través de una secuencia de código PIN y una verificación de código QR. En los casos en que se pueda hacer un uso incorrecto de la verificación, tomaríamos una fotografía de la persona que haya fallado en la verificación y almacenaremos la imagen de la persona en AWS S3 Bucket.
Una página web podría ver DHT, luz, fotos y videos de detección de movimiento de la oficina. La página web también podría controlar las luces de la oficina y también ver una transmisión en vivo de CCTV de la oficina.
También habría un bot de Telegram que permitiría controlar las luces LED en la oficina, verificar el valor de los valores del sensor, como la temperatura, y también permitiría al empleado obtener su imagen de código QR si pierden la imagen de su código QR o olvidan su pin. solicitando y obteniendo su imagen de código QR de AWS S3 Bucket.
Paso 1: ¡Veamos la descripción general
Diagrama de arquitectura del sistema
Cómo se comunicarán las máquinas entre sí
Resultado del hardware
Mira cómo se verían las dos Raspberry Pi al final
Portal web
Ver el portal web creado con Python a través de Flask
Bot de Telegram
Encontrar el bot que creamos
Transmisión en vivo
Uso de una de las PiCam como CCTV y transmisión de imágenes en vivo
Requisito de hardware
- 2x frambuesa Pi
- 2x placa GPIO
- 1x LDR
- 1x DHT11
- 1x sensor de movimiento
- LED 4x
- Botón 7x
- 2x zumbador
- 2x pantalla LCD
- 1x cámara web
Paso 2: Configurar para Raspberry Pi 1 (Office)
- Cree una carpeta para almacenar sus plantillas html llamadas
- Cree una carpeta para almacenar sus archivos css / javascript llamada estática
- Cree una carpeta para almacenar los archivos de su cámara llamada cámara con 3 subcarpetas 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
Paso 3: Configurar para Raspberry Pi 2 (puerta)
- Crea una carpeta para almacenar tus archivos llamada puerta
- Cree una carpeta para almacenar sus imágenes de código QR llamada qr_code
mkdir ~ / puerta
mkdir ~ / puerta / qr_code
Paso 4: Configura Telegram Bot
- Telegrama abierto
- Buscar "BotFather"
- Escriba "/ inicio"
- Escribe "/ newbot"
- Siga las instrucciones, nombre del bot, nombre de usuario del bot, anote el token de autenticación del bot
Paso 5: configurar DynamoDB
- Regístrese en AWS
- Buscar DynamoDB en AWS Service
- Haga clic en "Crear tabla".
- Complete el nombre de la tabla
- Establezca la clave de partición como 'id' (cadena) y agregue la clave de clasificación como 'fecha y hora' (cadena)
- Hazlo por las 4 mesas, dht, luces, galería, empleado
Vista previa de las 4 tablas
Paso 6: configurar AWS S3 Bucket
- Buscar AWS S3
- Haga clic en "Crear depósito".
- Siga las reglas para nombrar el depósito
- Seguir capturas de pantalla
- Crear depósito
¿Cómo puedo cargar en el bucket de S3?
No tenemos un portal de administración, por lo que estaríamos importando manualmente la imagen del código QR a través de la interfaz gráfica de usuario de AWS. Siga las capturas de pantalla para crear el depósito. El fragmento del código es la lógica necesaria para cargar la imagen en S3 Bucket
Paso 7: configurar AWS SNS
- Buscar AWS SNS
- Seguir etiqueta de tema
- Crear nuevo tema
- Establecer el nombre del tema y el nombre para mostrar
- Editar la política para permitir que todos publiquen
- Suscríbete al tema que se crea
- Configure el correo electrónico en el campo de punto final para recibir correo electrónico cuando el valor alcance un cierto valor
Paso 8: creación de una regla
- Haga clic en "Crear una regla".
- Escriba el nombre y una breve descripción
- Elija la última versión de SQL para enviar el mensaje MQTT completo
- El motor de reglas utiliza el filtro de temas para determinar qué reglas se activarán cuando se reciba un mensaje MQTT
- Haga clic en "Agregar acción"
- Seleccione enviar un mensaje a través de notificaciones push de SNS
Paso 9: creación de la interfaz web
Cree estos nuevos archivos html llamados
- cabeza
- acceso
- registros
- dht
- luz
- galería
- movimiento
- dirigió
Copie y pegue desde el archivo de Google Drive en el html respectivo.
drive.google.com/file/d/1zd-x21G7P5JeZyPGZp1mdUJsfjoclYJ_/view?usp=sharing
Paso 10: Guiones principales
Hay 3 guiones principales
- server.py: crea un portal web
- working.py - Lógica para Raspberry Pi 1 (Office)
- door.py Logic para Raspberry Pi 2 (puerta)
Simplemente ejecutamos los 3 códigos para obtener el resultado que queremos
Podemos obtenerlo de Google Drive en Main.zip
drive.google.com/open?id=1xZRjqvFi7Ntna9_KzLzhroyEs8Wryp7g
Recomendado:
Luz LED de escritorio inteligente - Iluminación inteligente con Arduino - Espacio de trabajo de Neopixels: 10 pasos (con imágenes)
Luz LED de escritorio inteligente | Iluminación inteligente con Arduino | Espacio de trabajo de Neopixels: Hoy en día pasamos mucho tiempo en casa, estudiando y trabajando virtualmente, así que ¿por qué no ampliar nuestro espacio de trabajo con un sistema de iluminación personalizado e inteligente basado en Arduino y LEDs Ws2812b? Aquí te muestro cómo construir tu Smart Luz LED de escritorio que
Convierta un teléfono inteligente sin usar en una pantalla inteligente: 6 pasos (con imágenes)
Convierta un teléfono inteligente sin usar en una pantalla inteligente: el tutorial de Deze está en het Engels, voor de Nederlandse versie klik hier. ¿Tiene un teléfono inteligente (antiguo) sin usar? Conviértalo en una pantalla inteligente usando Google Sheets y algo de lápiz y papel, siguiendo este sencillo tutorial paso a paso. Cuando hayas terminado
Reloj despertador inteligente: un reloj despertador inteligente hecho con Raspberry Pi: 10 pasos (con imágenes)
Reloj despertador inteligente: un reloj despertador inteligente hecho con Raspberry Pi: ¿Alguna vez has querido un reloj inteligente? Si es así, ¡esta es la solución para usted! Hice Smart Alarm Clock, este es un reloj que puede cambiar la hora de la alarma de acuerdo con el sitio web. Cuando suene la alarma, habrá un sonido (zumbador) y 2 luces
Báscula inteligente de bricolaje con reloj despertador (con Wi-Fi, ESP8266, Arduino IDE y Adafruit.io): 10 pasos (con imágenes)
Báscula inteligente de bricolaje con reloj despertador (con Wi-Fi, ESP8266, Arduino IDE y Adafruit.io): En mi proyecto anterior, desarrollé una báscula de baño inteligente con Wi-Fi. Puede medir el peso del usuario, mostrarlo localmente y enviarlo a la nube. Puede obtener más detalles sobre esto en el siguiente enlace: https: //www.instructables.com/id/Wi-Fi-Smart-Scale-wi
Cómo controlar el interruptor inteligente básico Sonoff basado en ESP8266 con un teléfono inteligente: 4 pasos (con imágenes)
Cómo controlar el interruptor inteligente básico Sonoff basado en ESP8266 con un teléfono inteligente: Sonoff es una línea de dispositivos para Smart Home desarrollada por ITEAD. Uno de los dispositivos más flexibles y económicos de esa línea es Sonoff Basic. Es un conmutador habilitado para Wi-Fi basado en un gran chip, ESP8266. Este artículo describe cómo configurar el Cl