¡Cómo construir un espejo inteligente Raspberry Pi!
¡Hola a todos!
Para mi proyecto final de informática, ¡decidí construir un Smart Mirror con un Raspberry Pi 3! ¡Tengo esta idea de Hacker House, un increíble canal de Youtube que tiene muchas ideas interesantes para proyectos creativos que incorporan instrucciones fáciles de seguir! Aunque principalmente me enfoco en la codificación en Java, este Smart Mirror me permitió trabajar una Raspberry Pi codificando en Linux y Python, lenguajes que nunca antes había usado. Además, pude hacer un trabajo en madera interesante construyendo el marco alrededor del monitor, ubicado detrás del espejo de dos vías. Aunque este fue mi primer proyecto de Raspberry Pi, me llevó alrededor de dos fines de semana completarlo, desde la codificación del Pi hasta la pintura del marco. ¡Fue una experiencia increíble construir esto y espero que este tutorial te ayude a crear el tuyo!
Paso 1: lo que necesitarás


Antes de comenzar, aquí hay una lista de todos los elementos necesarios para el proyecto:
- Raspberry Pi (utilicé la versión Raspberry Pi 3 Modelo B, debido a que tiene fácil accesibilidad y una opción inalámbrica fácil de configurar)
- Monitor (utilicé un monitor Samsung de 12 "X 20" con una entrada HDMI)
- Espejo de vidrio acrílico bidireccional (hay algunos en línea, sin embargo, utilicé el más barato recomendado por Hacker House; consulte el enlace al final)
- 4 x soportes impresos en 3D (estos no son necesarios, sin embargo, hacen que sea más fácil alojar el marco. Nuevamente, Hacker House tiene un sitio web que proporciona los archivos STL y zip para el diseño de los soportes; consulte el enlace en la parte inferior)
- Cable HDMI
- Cable Micro HDMI para fuente de alimentación Pi
- Pegamento de madera
- Empulgueras
- Madera (utilicé dos piezas de 8 pies de largo (1 "x 3" y 1 "x 4") para cortar el marco interno y externo)
- Teclado (USB)
- Ratón (USB)
- Abrazaderas
Soportes 3D ~
//www.hackerhouse.site/parts.html
Espejo bidireccional ~
//www.amazon.com/gp/product/B01CZ35XWY/ref=o ...
Paso 2: Configuración de Raspberry Pi




Para que el Pi reciba información de los módulos Magic Mirror que se encuentran en línea, es crucial configurar su Wi-Fi y zona horaria. Una vez que el sistema operativo "Raspbian" esté instalado (usé la versión "Jessie") en su tarjeta micro SD, conecte su teclado y mouse al Pi y conecte el cable HDMI al monitor que va a usar. Espere a que el sistema se inicie, luego puede comenzar a configurar el Pi en su ubicación. Primero, haga clic en el símbolo de Wi-Fi en la esquina superior derecha de la pantalla. Elija su internet e ingrese su contraseña. Entonces debería estar conectado a su Wi-Fi. Una vez que haya hecho eso, acceda a su terminal y escriba lo siguiente:
sudo dpkg-reconfigure tzdata
Luego puede comenzar a acceder a su zona horaria específica a través del menú que muestra Pi. Una vez que haya elegido su zona horaria correcta, guarde y reinicie su Pi. En este punto, el Magic Mirror puede usar su ubicación para mostrar la hora y acceder a la información de Internet usando su Wi-Fi. ¡Ahora puedes comenzar a programar!
Paso 3: Magic Mirror 2





Antes de comenzar a descargar y configurar el programa, probablemente debería saber cómo funciona este programa. MagicMirror es una plataforma descargable creada por Michael Teeuw (también conocido como MichMich), donde se puede acceder a este repositorio en www.github.com. Usando Pi, debe descargar y clonar el repositorio, junto con sus dependencias. Al hacer esto, el Pi puede ejecutar el programa y mostrar ciertos elementos contenidos en el archivo MagicMirror. Para obtener más explicaciones, puede visitar //magicmirror.builders/, un foro en línea con toneladas de módulos útiles y métodos de solución de problemas para cualquier persona que codifique el programa. Para comenzar, acceda a su terminal y escriba el siguiente código:
bash -c "$ (curl -sL //raw.githubusercontent.com/MichMich/MagicMirror/master/installers/raspberry.sh)"
Cuando presionas enter, el Pi comenzará la descarga automática del repositorio, que demora entre 10 y 15 minutos. En el camino, se le pedirá que ingrese "Y" o "N" para ciertas dependencias, como vim. Vim es una dependencia crucial que permite que un editor de texto administre MagicMirror. Además, se descargará un programa llamado pm2, que ejecuta automáticamente el programa cuando se inicia su Pi. Otro indicador será Node.js, que permite que las aplicaciones de red se ejecuten en Pi. Una vez que MagicMirror se haya descargado completamente, reinicie su Pi. Después del reinicio, debería ver un cumplido, la hora y los artículos de noticias (vea la foto de arriba). Desde este punto, puede comenzar a personalizar el programa (agregar nuevos módulos, orientación, cambiar fuentes, etc.).
Paso 4: módulos





Como se mostró anteriormente, MagicMirror debería mostrar automáticamente la hora, un cumplido, feriados en los Estados Unidos y algunos artículos de noticias. Sin embargo, quería agregar algunas características al Pi para hacerlo más estéticamente agradable y tener más información a la que pudiera acceder (por ejemplo: clima, pronóstico del tiempo, una cotización genial, etc.). Para hacer esto, hay varias cosas que debe hacer para que MagicMirror reciba información sobre la ubicación en la que se encuentra. Para hacer esto, debe acceder a la carpeta de módulos. Esta carpeta es la clave para albergar todas las opciones deseadas que desee para MagicMirror. Puede agregar módulos, eliminar módulos (eliminé la lista de vacaciones de EE. UU. Porque vivo en Canadá) y personalizar la configuración. Para hacer esto, acceda a la terminal y escriba:
cd ~ / MagicMirror / modules
Esto debería abrir un archivo donde pueda ver la lista de módulos (busque paréntesis cerrados con información). Comencé agregando el módulo de clima y pronóstico del tiempo. Ya debería ver los módulos predeterminados con opciones climáticas, pero notará que faltan dos claves importantes. El ID de ubicación y el ID de API. Como se indicó anteriormente, MagicMirror utiliza fuentes en línea para mostrar la información. Estas dos identificaciones provienen de un sitio web llamado OpenWeatherMap (ver enlace en la parte inferior). Este sitio proporciona API para el clima, que este módulo necesita. Primero, regístrese gratis en el sitio y acceda a su API gratuita. Escriba este código en la sección "appid" del módulo. Luego, deberá encontrar el ID de ubicación de su ciudad / pueblo. OpenWeatherMap proporciona un archivo ENORME con casi todas las ciudades del mundo y su ID de ubicación a su lado. No conozco un método más fácil, pero es posible que tenga que desplazarse por todo el archivo hasta que encuentre la identificación de su ciudad / pueblo. Una vez que se ha encontrado eso (esta parte es una mierda, me tomó alrededor de 20 minutos encontrar la identificación de mi ciudad), ingresarlo en el módulo de clima y pronóstico del tiempo. Después, guarde y salga. Cuando tu Pi arranca, deberías ver el clima de tu ciudad. Agregué un módulo adicional, donde se muestra una cita inspiradora en la parte inferior de la pantalla (ver foto de arriba). Sin embargo, ¡la lista de módulos depende completamente de usted! ¡Asegúrese de revisar la página web del módulo que el foro MagicMirror2 proporciona en su sitio! ¡Hay algunos módulos realmente geniales que cualquiera puede agregar para hacer que su espejo sea mucho más interesante y divertido!
//openweathermap.org
Paso 5: personalización





Este paso depende totalmente de usted, dependiendo de si desea que el espejo aparezca en una perspectiva vertical en lugar de horizontal. Para personalizar el Pi para que gire (vea la última foto), acceda al terminal y escriba lo siguiente:
sudo nano /boot/config.txt
Esto abrirá ciertas preferencias del sistema, donde puede agregar la "opción de rotación de pantalla". Para hacer esto, desplácese hasta la parte inferior del archivo y agregue:
#rotatethescreen
display_rotate = 1
Guardar y Salir. Cuando reinicia su Pi, MagicMirror debería iniciarse y mostrarse horizontalmente. Además, debería ver todos los módulos que ha agregado retratados en perspectiva vertical. Otra cosa que debe agregar para personalizar su Pi es el inicio de pm2. Después de instalar pm2, descubrí que MagicMirror no se iniciará a menos que acceda al terminal y escriba algunas líneas de código. Para eliminar este problema, haga lo siguiente:
Acceda al terminal y escriba: inicio pm2
Luego, escriba:
sudo env PATH = $ PATH: / usr / bin / usr / lib / node_modules / pm2 / bin / pm2 startup systemd -u pi --hp / home / pi
Después, acceda a un script escribiendo:
nano mm.sh
Luego, agregando:
DISPLAY =: 0 npm startGuardar y Salir. Ahora, cuando se inicia su Pi, MagicMirror debería iniciarse automáticamente
También fue difícil encontrar cómo deshabilitar el protector de pantalla, solo porque desea ver continuamente la pantalla detrás del espejo. Para hacer esto, deberá acceder al terminal y escribir:
sudo nano /boot/config.txt
Luego añade:
# eliminacreensaverhdmi_blanking = 1Guarde y salga, luego acceda a otro archivo en la terminal escribiendo:
sudo nano ~ / .config / lxsession / LXDE-pi / autostart
Luego añade:
@xset s 0 s s dpms 0 0 0Guarde y salga, luego reinicie su Pi
Paso 6: el marco



Aunque el marco es relativamente fácil de construir, hay algunas cosas cruciales que debes hacer para prepararte. En primer lugar, tratar con el espejo de dos vías. Dependiendo del tamaño de su monitor, es probable que necesite cortar el espejo a una media pulgada más grande (ancho y largo) que el monitor. Para hacer esto, mida y marque el tamaño en el espejo (usé un Sharpie, ¡no se preocupe! Hay una capa protectora de plástico en el marco que se despega cuando está listo) y coloque un poco de cinta adhesiva en la línea. Utilicé cinta de pintores, simplemente porque no es súper fuerte y puede desprenderse fácilmente. Corte CUIDADOSAMENTE a lo largo de la cinta (notará que el espejo se rompe en el borde al cortar. Intente limitar estas roturas, ya que estas grietas pueden dañar la vida útil de su espejo). Una vez que el espejo se corta a medida, puede comenzar a hacer el marco. Con el marco, necesitarás hacer dos porciones. La carcasa interior y el marco exterior. Para hacer esto, mida el monitor y corte las dos piezas de madera alrededor de 1, 5 pulgadas más grandes que la longitud del monitor (vea la foto de arriba). Después, corte otras dos piezas que quepan entre las piezas más grandes. Use pegamento para madera y abrazaderas para configurarlo. Para acelerar el proceso, puede perforar un tornillo en las esquinas para mantenerlo unido mejor. Para hacer el marco exterior (vea la segunda foto), corte cuatro piezas con cortes de 45 grados en cada extremo (recuerde, cuando coloque el marco exterior en la carcasa interior, debe colocarlo de modo que el punto medio del corte 45 descanse sobre el alojamiento). Una vez que el marco se ha establecido y es estable, coloque su espejo entre el marco y el monitor. Atornille sus soportes 3D, asegurándose de que estén firmemente colocados. En este punto, puede enchufar su Pi y su fuente de alimentación, y MagicMirror debería iniciarse. Debería ver una pantalla detrás del espejo (fecha, hora, lo que sea que ponga en el programa). ¡Felicitaciones, ahora tienes tu propio Smart Mirror!
Paso 7: terminar

Si tiene alguna pregunta, por favor deje un comentario! ¡Me encantaría ayudarlo con cualquier problema o idea que tenga! Este fue un proyecto increíble para participar, ¡todo gracias a Hacker House! Una cosa que me gustaría señalar es que le recomiendo que compre un disipador de calor para el Pi. Dado que este programa está diseñado para ejecutarse continuamente, su procesador se calentará increíblemente. La compra de un disipador de calor permitirá que su Smart Mirror funcione de manera más segura y aliviará el estrés que sufre el Pi mientras se ejecuta. Espero que pruebes este proyecto, puede ser realmente útil y es una estética interesante que puedes colgar en cualquier habitación. Muchas gracias por visitar mi página, espero poder agregar algunos módulos geniales al espejo con los que pueda ayudarlos (AI, sensor de movimiento, alarma, etc.).