Tabla de contenido:

Abridor de puerta de garaje con Raspberry Pi: 5 pasos (con imágenes)
Abridor de puerta de garaje con Raspberry Pi: 5 pasos (con imágenes)

Video: Abridor de puerta de garaje con Raspberry Pi: 5 pasos (con imágenes)

Video: Abridor de puerta de garaje con Raspberry Pi: 5 pasos (con imágenes)
Video: ADIOS A LOS MANDOS DE GARAJE (Tutorial para abrir tu garaje con el móvil) 2024, Mes de julio
Anonim
Abridor de puerta de garaje con Raspberry Pi
Abridor de puerta de garaje con Raspberry Pi

Controle el motor del garaje desde un teléfono inteligente o cualquier dispositivo que pueda navegar por una página web (¡con AJAX!). El proyecto se inició porque solo tenía un control remoto para mi garaje. ¿Qué tan divertido fue comprar un segundo? No es suficiente. Mi objetivo era poder controlar y monitorear la puerta de mi garaje desde mi teléfono inteligente con una sola página. No le he puesto ninguna seguridad elegante ya que el RPi no está expuesto fuera de mi LAN. Por lo tanto, confío en VPN para acceder a la página web. Con un teléfono inteligente Android es muy fácil configurar una VPN y agregar una página web a mi pantalla de inicio. Todo lo que necesitaba era el software para ello.

Si desea ayudarme a escribir otros instructivos, compre hardware en los enlaces patrocinados por Amazon.

Además, este instructivo ahora también está disponible en mi página personal:

Paso 1: algunos antecedentes

Lo que encontré en línea

Como programador, me gusta reutilizar los tutoriales o el código que ya está en "nivel de producción". En este caso, no estaba contento con lo que encontré:

  • Abre-puerta de garaje Raspberry Pi de quartarian. Donde comencé, un simple botón para comandar el relé. Sin botones de apertura / cierre, sin comentarios. De todos modos, fue muy útil comprender el concepto de RPi dedicado para controlar un motor desde un relé. El cableado que uso ahora sigue siendo el mismo para la parte de comando.
  • Abre-puerta de garaje Raspberry Pi con GaragePi de Chase Chou. El mismo tipo de configuración pero con un control remoto inalámbrico adicional. No estaba dispuesto a matar a mi único control remoto. De todos modos, demostró utilizar el mismo tipo de configuración eléctrica para la parte de mando. En el camino, aprendí sobre WebIOPi para verificar mi GPIO en una página web. Allí también aprendí sobre cómo poner un acceso directo a la pantalla de inicio de mi Android. También empezó a iluminar la idea de depender de los servicios, después de todo, quiero que sea confiable.
  • Hacer su correo electrónico, tuit o SMS en la puerta de su garaje: Parte 1 Por Richard L. Lynch. Este agregó la idea de usar un sensor magnético para controlar el estado de la puerta. Sin embargo, no he usado mucho, ya que no estaba construyendo un sistema de alarma, sino un sistema de comando / monitorización.
  • Abridor de puerta de garaje / cámara de seguridad completamente inalámbrico de DeckerEgo. Esto me hizo más consciente de la transmisión de la cámara web para monitorear la puerta. Todavía tengo que esforzarme en eso. Tal vez tendría que reciclar un concentrador USB o buscar otra cámara web.
  • Control de Raspberry Pi desde un dispositivo móvil o un navegador web de escritorio por Frédérick Blais. Esta es ahora mi base para la pila de software. Utiliza Flask para ejecutar una página web muy simple junto con AJAX. Esto es premium para mí, ya que proporciona opciones de comando y monitoreo en tiempo real. Lee abajo.

Sobre mi RPi

Como todavía estoy aprendiendo sobre RPi y cosas electrónicas en general, compré una serie de cosas para mi Raspberry Pi recién adquirida: algunos cables, un T-cobbler, algunos leds, un módulo de un relé, un ocho relés. módulo, una pantalla LCD y así sucesivamente. De ninguna manera soy un especialista en electrónica y esto resultó muy instructivo. Para comprar el hardware adicional, Amazon y Ebay son tus mejores amigos.

El estado actual del proyecto incluye el siguiente hardware:

  • Una Raspberry Pi (FR / DE) con Raspbian Wheezy 2014-09-09 con las últimas actualizaciones
  • Una tarjeta micro SD de 8GB (FR / DE) o 16GB (FR / DE) o 32GB (FR / DE) Clase 10 para almacenar el sistema operativo, archivos, etc.
  • Dos interruptores de láminas de garaje de aleación de zinc (FR / DE) para detectar el estado de apertura / cierre
  • Un módulo de relé de 3v (FR / DE) para enviar comandos al motor de la puerta (el mío tiene un LED incorporado para monitorear el estado del relé, ¡muy útil!)
  • Una placa de pruebas sin soldadura (FR / DE) y 2 interruptores momentáneos (FR / DE) para simular la puerta de mi escritorio (o conseguir un kit de inicio (FR / DE))
  • Un dongle wifi (FR / DE) para eliminar el cableado adicional cuando esté colgado del techo del garaje

Una limitación que todavía tengo es que no sé cuándo la puerta está a mitad de camino, detenida o aún en movimiento. Esta es también la razón por la que me gustaría agregar más tarde una vieja cámara web para transmitir desde el interior del garaje. Probablemente agregaré algún sensor para monitorear el motor en sí.

Paso 2: Pila de software

Pila de software
Pila de software

Cosas generales

El software se basa en el módulo Python Python, Flask y WiringPi GPIO. Como se explicó en segundo plano, comencé desde el tutorial de control de Raspberry Pi desde un dispositivo móvil o un navegador web de escritorio publicado por Frédérick Blais. El software actual está compuesto por:

  • Un archivo de plantilla HTML que contiene algunos controles y código de jQuery Mobile
  • Un módulo Python Pins para acceder al GPIO de la Raspberry Pi
  • Un módulo de Python go para ejecutar Flask y admitir las consultas AJAX

Lo que está presente en el repositorio es el software en bruto. De ninguna manera es sofisticado o abrumador de características. Es solo lo que pude lograr con lo que aprendí.

Interfaz actual

Actualmente, el estado de las puertas se lee cada 0,5 segundos. Se utilizan dos interruptores para el estado abierto / cerrado. Se utiliza un relé para controlar el motor. El código actual todavía genera algo de depuración. La siguiente captura de pantalla es de un Nexus 5.

Paso 3: Hardware - Alfa

Hardware - Alfa
Hardware - Alfa
Hardware - Alfa
Hardware - Alfa

Banco de pruebas

Mi banco de pruebas es bastante simple, un RPi, un relé y dos interruptores. Para sujetar las cosas con fuerza, todo lo que necesita es un par de bridas (FR / DE). Aqui hay una foto de eso. El cable LAN RJ45 (FR / DE) es para depuración de escritorio y llave WIFI para uso en garaje.

Sistema en vivo

RPi está conectado al motor de la puerta solo por ahora, los interruptores seguirán. Debo esperar un poco para obtener mi tubo termorretráctil (FR / DE). También debería ser más estable. Perdón por el desenfoque.

Los cables azul, amarillo y verde de la izquierda son para los interruptores magnéticos.

  • El azul es el GND
  • El amarillo y el verde son los pines 18 (estado abierto) y 27 (estado cerrado).

Paso 4: Hardware - Beta

Hardware - Beta
Hardware - Beta
Hardware - Beta
Hardware - Beta
Hardware - Beta
Hardware - Beta

Banco de pruebas

Esto ahora es un cartón directo con bridas. La pantalla LCD y el relé también están incluidos. La pantalla LCD es de 20x4 (20 caracteres para filas, 4 líneas) (FR / DE) sobre I²C.

Las primeras 2 líneas muestran la bienvenida y la fecha / hora. Las últimas 2 líneas alternan entre los estados de los pines y el estado de la red (IP eth0 / wan0). La línea de estado de la puerta es un buen GFX para decir:

  • | | Esta abierto
  • | - | está operando
  • |. | está cerrado

Esquemas fritzing

Esquema de Fritzing con LCD I2C de 20x4, interruptores de apertura / cierre y relé. La única adición es la pantalla LCD I2C. Lo preferí al 18x2 que tenía.

Sistema en vivo

El HW beta está ahora en "nivel de producción", ya que encaja perfectamente en una caja de tornillos vieja. Mantuve un separador para alojar cables de relé y misceláneos, mientras que RPi se encuentra en el nivel inferior. Es posible que observe el Synology NAS (FR / DE) en el lado derecho, se utiliza para alimentar el RPi directamente. De noche con módem, conmutador y NAS.

Vista cercana de la caja de tornillos, la pantalla LCD muestra el estado de la puerta y el pin de apertura / cierre / relé.

Por la noche, vista interior desde arriba.

Paso 5: código fuente y recursos

Puede encontrar todos los recursos en este repositorio de GitHub:

github.com/amayii0/GarageOpenerR1

Recomendado: