Tabla de contenido:

Interruptor de luz Wifi Servidor web Raspberry Pi: 8 pasos (con imágenes)
Interruptor de luz Wifi Servidor web Raspberry Pi: 8 pasos (con imágenes)

Video: Interruptor de luz Wifi Servidor web Raspberry Pi: 8 pasos (con imágenes)

Video: Interruptor de luz Wifi Servidor web Raspberry Pi: 8 pasos (con imágenes)
Video: Control remoto de un led con Raspberry Pi Video 3 2024, Mes de julio
Anonim
Interruptor de luz Wifi Servidor web Raspberry Pi
Interruptor de luz Wifi Servidor web Raspberry Pi

Quería controlar el interruptor de la luz en mi habitación sin tener que levantarme de la cama, así que quería poder controlarlo desde mi teléfono. Tenía algunas limitaciones adicionales, quería poder controlarlo fácilmente desde cualquier dispositivo, quería poder usar el interruptor de luz como de costumbre y no podía hacer muchas modificaciones en el hardware mientras alquilaba el apartamento.

Decidí usar una Raspberry Pi para controlar un servomotor que movería el interruptor. La Raspberry Pi ejecutaría un servidor web al que podría acceder mientras estaba en la red local. Los enlaces en el sitio web de este servidor me permitirían encender y apagar el interruptor. Al desenergizar el servo entre conmutaciones, también podría seguir usando el interruptor de luz como de costumbre.

Paso 1: Materiales

Rasperry Pi

Servo motor:

smile.amazon.com/gp/product/B0015H2V72/ref…

Tuercas de alambre

Cables de puente

Paso 2: Paso 1: Configura la Raspberry Pi

Hay varias formas de hacer esto. Si tiene un monitor HDMI y un teclado USB a mano, creo que es un poco más fácil. De lo contrario, puede realizar una configuración "sin cabeza".

Aquí hay un buen tutorial sobre cómo realizar una configuración sin cabeza en Windows:

www.circuitbasics.com/raspberry-pi-basics-…

Y uno para Mac:

www.circuitbasics.com/raspberry-pi-basics-…

Pero lo más fácil es cargar una tarjeta SD con NOOBS, arrancar el pi mientras está conectado a un monitor y teclado y simplemente pasar por la configuración. Este tutorial lo explica bastante bien:

www.circuitbasics.com/raspberry-pi-basics-…

Si no realizó una configuración sin cabeza, aún debe preparar SSH, es necesario para el resto de esto. Para hacer esto utilizo Putty. Consiguelo aqui:

www.circuitbasics.com/raspberry-pi-basics-…

Y si no conoce la dirección IP de su Pi, puede usar un escáner IP avanzado:

Luego simplemente ingrese la dirección IP para el pi en la entrada para Nombre de host / dirección IP, deje el puerto en 22 y haga clic en Abrir. Se le pedirá que inicie sesión.

Paso 3: Paso 2: Configurar el servidor web

Paso 2: configurar el servidor web
Paso 2: configurar el servidor web

Para ejecutar el servidor web utilicé Apache. Puedes instalar esto usando el comando:

sudo apt-get install apache2

De forma predeterminada, esto debería darle una página de inicio cuando navegue a la dirección IP de su pi. Debería verse como la imagen de abajo.

Paso 4: Paso 3: Cree el sitio web

Paso 3: Cree el sitio web
Paso 3: Cree el sitio web
Paso 3: Cree el sitio web
Paso 3: Cree el sitio web

Querrá reemplazar la página de inicio predeterminada con su sitio web que puede controlar el servomotor. Lo primero que debe reemplazar es el archivo de índice. Su archivo de índice para el sitio web debe estar en / var / www / html. Use su editor de texto favorito para crear el archivo o simplemente copie el archivo aquí usando algo como winscp. Agregue "index.php" en esta ubicación, tendrá que volver a guardarlo como archivo php ya que no podría cargarlo como tal. Este archivo php crea un sitio web muy básico con dos enlaces, uno a "cgi-bin / off.py" y otro a "cgi-bin / on.py". Estos son dos scripts de Python que cambian la posición del servomotor.

Los scripts de Python deben colocarse en una ubicación diferente para que Apache los permita ejecutar. Deberán colocarse en el cgi-bin. Aquí es donde van los archivos si se van a ejecutar en la Interfaz de puerta de enlace común, que permite que se ejecuten los scripts en el pi. Navegue a / usr / lib / cgi-bin y agregue los dos archivos "on.py" y "off.py".

Paso 5: Paso 4: Monte el motor

Paso 4: monte el motor
Paso 4: monte el motor

Encontré una gran parte de otro fabricante para montar un servo de modo que pueda accionar un interruptor de luz estándar. Puede encontrar los archivos 3D aquí:

github.com/suyashkumar/smart-lights

Esto es para un servo de tamaño estándar como se indica en la sección de piezas. Imprima esto o imprímalo y luego móntelo en su interruptor de luz.

Paso 6: Paso 5: Cablee el Pi y el motor

Paso 5: Cablee el Pi y el motor
Paso 5: Cablee el Pi y el motor

Encendí el pi con un micro usb. Corté otro micro usb y conecté la tierra y la energía para el servo a este. Compartí el suelo entre el pi y el servo. Luego conecté el pin de señal para el servo a GPIO18 en el Pi.

Paso 7: Paso 6: configurar los scripts

Paso 6: configurar los scripts
Paso 6: configurar los scripts

Tendrá que jugar un poco con su configuración para averiguar qué valores corresponden a Activado y Desactivado para usted. El Pi te permite escribir en gpio desde la línea de comandos usando comandos bastante simples. para hacer gpio 18 un pin pwm use el comando:

modo gpio -g 18 pwm

luego configure el pwm con:

gpio pwm-ms

gpio pwmc 192

gpio pwmr 2000

Estos son valores razonables para la configuración de frecuencia pwm. Siguiente uso:

gpio -g pwm 18 120

Donde cambia 120 para encontrar los valores apropiados para la posición de encendido y apagado.

Una vez que haya encontrado los valores apropiados para apagado y encendido, use un editor de texto para cambiar estos valores en los scripts respectivos para las dos posiciones. El lugar para realizar el cambio está resaltado en la imagen.

Paso 8: Paso 7: ¡Pruébelo

Image
Image
Concurso inalámbrico
Concurso inalámbrico

Vaya a la dirección IP del pi, debería ver una página web con un enlace para activar y desactivar. Cada página también tendrá un enlace a la otra página.

Es útil agregar un acceso directo a estas páginas en la pantalla de inicio de su teléfono para facilitar el acceso.

Recomendado: