- Componentes requeridos:
- Explicación de trabajo:
- Descripción del circuito:
- Explicación de la programación y configuración de Raspberry Pi:
En el mundo de Internet de las cosas (IoT), cuando tenemos todas las tecnologías para revolucionar nuestra vida, es una gran idea desarrollar un sistema que se pueda controlar y monitorear desde cualquier lugar. Hay muchos tipos de buenos sistemas de seguridad y cámaras para la seguridad del hogar, pero son mucho más costosos, por lo que hoy construiremos un sistema de alerta de intrusos simple y de bajo costo basado en Raspberry Pi, que no solo lo alerta a través de un correo electrónico, sino que también envía la imagen de Intruso cuando detecta alguno.
En este proyecto basado en IoT, construiremos un sistema de seguridad para el hogar utilizando un sensor PIR y una cámara PI. Este sistema detectará la presencia de Intruder y alertará rápidamente al usuario enviándole un correo de alerta. Este correo también contendrá la imagen del intruso, capturada por la cámara Pi. Raspberry Pi se utiliza para controlar todo el sistema. Este sistema se puede instalar en la puerta principal de su hogar u oficina y puede monitorearlo desde cualquier parte del mundo usando su correo electrónico a través de Internet.
Componentes requeridos:
- Frambuesa pi
- Cámara Pi
- Sensor PIR
- LED
- Tabla de pan
- Resistencia (1k)
- Cables de conexión
- Fuente de alimentación
Puede comprar todos los componentes utilizados en este proyecto desde aquí.
Explicación de trabajo:
El funcionamiento de este proyecto es muy sencillo. Se usa un sensor PIR para detectar la presencia de cualquier persona y se usa una cámara Pi para capturar las imágenes cuando la presencia detecta.
Siempre que alguien o un intruso se acerque al alcance del sensor PIR, el sensor PIR activa la cámara Pi a través de Raspberry Pi. Raspberry pi envía comandos a la cámara Pi para hacer clic en la imagen y guardarla. Después, Raspberry Pi crea un correo y lo envía a la dirección de correo definida con las imágenes en las que se hizo clic recientemente. El correo contiene un mensaje y una imagen del intruso como archivo adjunto. Aquí hemos utilizado el mensaje "Por favor, busque el archivo adjunto", puede cambiarlo en consecuencia en el Código que se proporciona al final.
Aquí las imágenes se guardan en Raspberry Pi con el nombre que a su vez contiene la hora y fecha de entrada. Para que podamos verificar la hora y la fecha de la entrada del intruso con solo mirar el nombre de la imagen, verifique las imágenes a continuación. Si es nuevo con Pi Camera, consulte nuestro tutorial anterior sobre el sistema de monitoreo de visitantes con Pi Camera.
También puede ajustar el rango de detección o la distancia de este sistema usando los potenciómetros del sensor PIR. Obtenga más información sobre el sensor PIR aquí para ajustar el rango y verifique la alarma antirrobo basada en el sensor PIR.
Descripción del circuito:
En este sistema de alerta de intrusos, solo necesitamos conectar el módulo de la cámara Pi y el sensor PIR a Raspberry Pi 3. La cámara Pi está conectada a la ranura de la cámara de la Raspberry Pi y el PIR está conectado al pin 18 de GPIO. También se conecta un LED al pin 17 de GPIO a través de una resistencia de 1k.
Explicación de la programación y configuración de Raspberry Pi:
Estamos usando el lenguaje Python aquí para el Programa. Antes de codificar, el usuario debe configurar Raspberry Pi. Debería seguir dos tutoriales para comenzar con Raspberry Pi e instalar y configurar el sistema operativo Raspbian Jessie en Pi:
- Introducción a Raspberry Pi - Introducción
- Introducción a Raspberry Pi - Configuración
Después de instalar con éxito el sistema operativo Raspbian en Raspberry Pi, necesitamos instalar los archivos de la biblioteca de la cámara Pi para ejecutar este proyecto en Raspberry pi. Para hacer esto, debemos seguir los comandos dados:
$ sudo apt-get install python-picamera $ sudo apt-get installpython3-picamera
Después, el usuario debe habilitar la cámara Raspberry Pi mediante la herramienta de configuración del software Raspberry Pi (raspi-config):
$ sudo raspi-config
Luego seleccione Habilitar cámara y Habilitarla.
Luego, el usuario debe reiniciar Raspberry Pi, emitiendo sudo reboot , para que pueda tomar una nueva configuración. Ahora su cámara Pi está lista para usar.
Ahora, después de configurar la cámara Pi, instalaremos el software para enviar el correo. Aquí estamos usando ssmtp, que es una solución fácil y buena para enviar correo usando la línea de comando o usando Python Script. Necesitamos instalar dos bibliotecas para enviar correos usando SMTP:
Sudo apt-get install ssmtp sudo apt-get install mailutils
Después de instalar las bibliotecas, el usuario debe abrir el archivo ssmtp.conf y editar este archivo de configuración como se muestra en la imagen a continuación y luego guardar el archivo. Para guardar y salir del archivo, presione 'CTRL + x', luego 'y' y luego presione 'enter'.
sudo nano /etc/ssmtp/ssmtp.conf
root = YourEmailAddress mailhub = smtp.gmail.com: 587 hostname = raspberrypi AuthUser = YourEmailAddress AuthPass = YourEmailPassword FromLineOverride = YES UseSTARTTLS = YES UseTLS = YES
También podemos probarlo enviando un correo de prueba emitiendo el siguiente comando, recibirá el correo en la dirección de correo electrónico mencionada si todo funciona bien:
echo "Hola Saddam" - mail -s "Probando…" [email protected]
El Programa Python de este proyecto juega un papel muy importante para realizar todas las operaciones. En primer lugar, incluimos las bibliotecas necesarias para el correo electrónico, inicializamos variables y definimos pines para PIR, LED y otros componentes. Para enviar correo electrónico simple, smtplib es suficiente, pero si desea enviar correo de una manera más limpia con línea de asunto, archivo adjunto, etc., debe usar MIME (Extensiones de correo de Internet multipropósito).
importar RPi.GPIO como gpio importar picamera importar tiempo importar smtplib desde correo electrónico.MIMEMultipart importar MIMEMultipart desde correo electrónico.MIMEText importar MIMEText desde correo electrónico.
Después de eso, hemos inicializado el correo y definimos la dirección de correo y los mensajes:
fromaddr = "[email protected]" toaddr = "[email protected]" mail = MIMEMultipart () mail = fromaddr mail = toaddr mail = "Attachment" body = "Busque el archivo adjunto"
Luego hemos creado la función def sendMail (data) para enviar correo:
def sendMail (datos): mail.attach (MIMEText (cuerpo, 'plano')) imprimir datos dat = '% s.jpg'% datos imprimir dat adjunto = open (dat, 'rb') imagen = MIMEImage (adjunto.read ()) adjunto.close () mail.attach (imagen) servidor = smtplib.SMTP ('smtp.gmail.com', 587) servidor.starttls () servidor.login (fromaddr, "su contraseña") texto = correo. as_string () server.sendmail (fromaddr, toaddr, text) server.quit ()
La función def capture_image () se crea para capturar la imagen del intruso con fecha y hora.
def capture_image (): data = time.strftime ("% d_% b_% Y-% H:% M:% S") camera.start_preview () time.sleep (5) imprimir datos camera.capture ('% s. jpg '% datos) camera.stop_preview () time.sleep (1) sendMail (datos)
Luego inicializamos la Picamera con algunas de sus configuraciones:
camera = picamera.PiCamera () camera.rotation = 180 camera.awb_mode = 'auto' camera.brightness = 55
Y ahora, por último, hemos leído la salida del sensor PIR y cuando sube, Raspberry Pi llama a la función capture_image () para capturar la imagen del intruso y enviar un mensaje de alerta con la imagen del intruso como archivo adjunto. Hemos utilizado la función sendmail () insdie capture_image () para enviar el correo.
while 1: if gpio.input (pir) == 1: gpio.output (led, HIGH) capture_image () while (gpio.input (pir) == 1): time.sleep (1) else: gpio.output (led, LOW) tiempo de sueño (0.01)
Entonces, así es como funciona este sistema de seguridad Raspberry Pi, también puede usar un sensor ultrasónico o un sensor IR para detectar la presencia de un ladrón o un intruso. Consulte el código completo y el video de demostración a continuación.