Sommario:

Specchio magico con notizie, meteo, sveglia, timer e Todolist: 9 passaggi
Specchio magico con notizie, meteo, sveglia, timer e Todolist: 9 passaggi

Video: Specchio magico con notizie, meteo, sveglia, timer e Todolist: 9 passaggi

Video: Specchio magico con notizie, meteo, sveglia, timer e Todolist: 9 passaggi
Video: Quando provi a fare un complimento a una ragazza... 2024, Dicembre
Anonim
Specchio magico con notizie, meteo, sveglia, timer e Todolist
Specchio magico con notizie, meteo, sveglia, timer e Todolist
Specchio magico con notizie, meteo, sveglia, timer e Todolist
Specchio magico con notizie, meteo, sveglia, timer e Todolist

Uno specchio magico è uno speciale specchio unidirezionale con un display dietro. Il display, che è collegato a un Raspberry Pi, mostra informazioni come meteo, temperatura ambiente, ora, data, un elenco di cose da fare e molto altro. Potresti anche aggiungere un microfono e configurare un assistente intelligente. Le possibilità sono infinite.

Questo progetto può essere piuttosto costoso, una delle parti più costose di cui avrai bisogno è ovviamente il display. Ecco perché ho riciclato un display da un vecchio laptop. Tuttavia, consiglio di ottenere un display ampio, luminoso e ad alto contrasto per realizzare questo progetto. Ne vale la pena.

Lo specchio che ho realizzato ha queste caratteristiche:

  • Notizie da un feed RSS scelto dall'utente
  • Tempo metereologico
  • Temperatura interna
  • Un sistema di allarme
  • Un sistema di timer
  • un todolista
  • Utenti multipli: il colore del ledstrip e la fonte di notizie cambiano in base all'utente selezionato.

Forniture

Per costruire questo Specchio Magico, avrai bisogno di:

  • Uno specchio unidirezionale
  • Legna
  • Un lampone Pi
  • Una scheda Micro SD (8+GB)
  • Una breadboard
  • Due altoparlanti da 20 W
  • MAX9744 Amplificatore da 20W per alimentare gli altoparlanti
  • Striscia led 1m 30 led WS2801
  • Sensore di temperatura a 1 filo DS18B20
  • HC-SR501 Sensore a infrarossi
  • Un codificatore rotante
  • Un monitor o un vecchio display per laptop

    Se utilizzi un vecchio display per laptop, dovrai acquistare un adattatore per display per laptop. Puoi acquistarli da AliExpress, Ebay o Amazon. Basta cercare il numero di serie del tuo display

Avrai anche bisogno dei seguenti piccoli componenti:

  • un diodo
  • Un resistore da 4,7k Ohm
  • Una resistenza da 470 Ohm
  • Fili per collegare i sensori al Raspberry Pi

E questi alimentatori:

  • 5V 2A per alimentare la striscia led
  • 12V 2A per alimentare il display
  • 12V 2A per alimentare l'amplificatore
  • 5.1V 3A per alimentare il Raspberry Pi (utilizzare un alimentatore RPi ufficiale)

Passaggio 1: installazione di Raspbian

Il display e tutti i componenti dietro lo specchio sono alimentati dal Raspberry Pi. Dovrai installare Raspbian, il sistema operativo predefinito del Pi, sulla scheda SD.

  1. Scarica Win32 Disk Imager. Gli utenti Linux e MacOS possono usare qualcosa come Etcher.
  2. Scarica l'immagine Raspbian più recente dal sito Web Raspberry Pi. Scegli l'opzione "Raspbian Buster con desktop"
  3. Apri Win32 Disk Imager e scrivi il file immagine sulla scheda SD.

La scheda SD è ora quasi pronta. Dobbiamo solo assicurarci di poterci connettere al Raspberry Pi da remoto:

  1. Vai alla partizione di "avvio" della scheda SD utilizzando il file explorer del tuo sistema.
  2. Aggiungi un file chiamato 'ssh' senza estensione.
  3. Aggiungi 'ip=169.254.10.1' (senza virgolette) alla fine della prima riga di 'cmdline.txt'.

Espelli in sicurezza la scheda SD dal tuo computer, inseriscila nel tuo Raspberry Pi e avviala.

Passaggio 2: configurazione Wi-Fi

Per scansionare le reti WiFi, esegui il seguente comando:

sudo iw dev wlan0 scan | grep SSID

Vedrai l'elenco di tutti gli SSID a cui il tuo Raspberry Pi può connettersi.

Crea una voce di rete con una password crittografata eseguendo il comando seguente e inserendo la password della tua rete:

wpa_passphrase "YOUR_NETWORK_SSID_HERE"

Ora incolla l'output del comando precedente in questo file:

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Ora riavvia il Raspberry Pi. Sarai connesso a Internet.

Passaggio 3: installazione e configurazione del software

Per questo progetto, dovrai scaricare questi pacchetti sul tuo Raspberry Pi:

pip3 installa mysql-connector-python flask-socketio flask-cors gevent gevent-websocket adafruit-circuitpython-ws2801 adafruit-circuitpython-max9744

sudo apt install apache2 mariadb-server

Aggiungi questa riga in fondo a /boot/config.txt per abilitare l'audio tramite i pin GPIO 12 (sinistra) e 13 (destra):

dtoverlay=audremap

Usa raspi-config per impostare la risoluzione del tuo display e per abilitare i2c, One-wire e SPI. Imposta anche il metodo di avvio su "Desktop Autologin".

In /etc/xdg/lxsession/LXDE-pi/autostart, aggiungi quanto segue:

@xset s off@xset -dpms@xset s noblank@chromium-browser --kiosk 127.0.0.1/mirror.html # carica chromium dopo l'avvio e apre il sito Web in modalità a schermo intero

Questo apre il browser nella pagina corretta quando viene caricato LXDE (ambiente desktop di Raspbian). Rimuovi o commenta anche la riga @xscreensaver per disabilitare lo screensaver.

Repository Github

Clona il mio repository GitHub e metti il contenuto della cartella Frontend in /var/www/html. Avremo bisogno della cartella Backend in seguito.

Passaggio 4: il database

Il database
Il database

Questo è lo schema del database, ottimizzato per 3NF. Memorizza tutti gli allarmi, le fonti di notizie, gli utenti, i dati dei sensori, i suoni e la lista delle cose da fare.

  1. Usa MySQL Workbench per accedere al server di database del tuo pi (mariadb)
  2. Crea un database utilizzando questo schema e inserisci i tuoi dati.
  3. Modifica config.py nella cartella Backend del mio repository GitHub: cambia il nome del database, il nome utente scelto e la password.
  4. Modifica app.py e cambia l'URL dell'API OpenWeatherMap con il tuo. (Crea il tuo qui)

Passaggio 5: costruire la cornice dello specchio

Costruire la cornice dello specchio
Costruire la cornice dello specchio
Costruire la cornice dello specchio
Costruire la cornice dello specchio
Costruire la cornice dello specchio
Costruire la cornice dello specchio

Ho costruito la cornice attorno allo specchio utilizzando giunti Mitre con angoli in metallo. Le assi di legno che ho usato sono spesse 18 mm e larghe 10 cm. Nelle immagini puoi vedere le misure esatte per uno specchio da 45 cm x 60 cm. Dietro lo specchio c'è tutta l'elettronica, quindi assicurati che le tue tavole siano abbastanza larghe da adattarle.

Ho usato ganci di metallo per fissare gli altoparlanti al telaio. In questo modo non si appoggiano sullo specchio, riducendo lo stress da vibrazione sul vetro.

Passaggio 6: l'elettronica

L'elettronica
L'elettronica
L'elettronica
L'elettronica

Seguire gli schemi sopra per costruire il circuito. Ho usato del nastro adesivo per fissare l'elettronica allo specchio.

Passaggio 7: montaggio dell'elettronica nel telaio

Montaggio dell'elettronica nel telaio
Montaggio dell'elettronica nel telaio
Montaggio dell'elettronica nel telaio
Montaggio dell'elettronica nel telaio

Dopo aver fissato gli altoparlanti ai ganci metallici nella parte superiore, aggiungi il resto dell'elettronica allo specchio. Ho anche messo una sottile tavola di legno tra lo specchio e l'elettronica, quindi invece di attaccare l'elettronica allo specchio, ho attaccato l'elettronica alla tavola di legno. Il display del laptop è un pannello bianco nella parte inferiore dello specchio.

Come puoi vedere nelle immagini, ho collegato tutti gli adattatori di alimentazione all'interno di una presa multipla, quindi c'è solo un cavo che esce dal telaio. Questo è il motivo per cui avevo bisogno di assi abbastanza larghe (10 cm).

Ho praticato un foro largo 2 cm sul lato destro dello specchio per far passare il codificatore rotante. Ciò consente di modificare facilmente il volume (ruotare) o disattivare timer e sveglie (premere).

Ho praticato due fori da 8 mm su entrambi i lati dello specchio per instradare i cavi per le strisce led.

Passaggio 8: ritocchi finali

Finiture
Finiture
Finiture
Finiture
Finiture
Finiture

Ho aggiunto un panno nero sul retro dello specchio per nascondere l'elettronica. Oscura anche l'interno della custodia, il che rende molto più difficile vedere i fili attraverso lo specchio. L'ho attaccato con il velcro, rendendo più facile l'accesso all'elettronica quando necessario.

Copia la cartella Backend dal mio repository Github in un posto che ricorderai.

Aggiungi un'unità systemd in modo che lo script python venga eseguito all'avvio:

sudo nano /etc/systemd/system/magicmirror.service

[Unità]

Description=Il servizio per lo script python magicmirror After=network.target [Service] ExecStart=/usr/bin/python3 -u app.py WorkingDirectory=/home/pi/magicMirror/Backend StandardOutput=inherit StandardError=inherit Restart=sempre Utente =pi [Installa] WantedBy=multi-user.target

Cambia 'WorkingDirectory' nella directory di backend e cambia Utente con il tuo nome utente.

Passaggio 9: interazione con l'app Web

Interagire con la Webapp
Interagire con la Webapp
Interagire con la Webapp
Interagire con la Webapp
Interagire con la Webapp
Interagire con la Webapp
Interagire con la Webapp
Interagire con la Webapp

Naviga fino all'indirizzo IP (che è sul display). Vedrai un sito web mobile-first con le seguenti funzionalità:

  • Un grafico di temperatura interagibile
  • Un tempo. Quando il timer è in funzione, vedrai anche un conto alla rovescia sullo specchio stesso.
  • Un sistema di allarme
  • Una scheda delle impostazioni, in cui è possibile modificare utenti, fonti di notizie e volume degli altoparlanti.
  • Un todolista. Gli elementi da fare verranno visualizzati sullo specchio

Mirror.html è la pagina che viene visualizzata sul Magic Mirror. Ho aggiunto un esempio nelle immagini sopra.

Consigliato: