Innholdsfortegnelse:

Magisk speil med nyheter, vær, alarm, tidtaker og Todolist: 9 trinn
Magisk speil med nyheter, vær, alarm, tidtaker og Todolist: 9 trinn

Video: Magisk speil med nyheter, vær, alarm, tidtaker og Todolist: 9 trinn

Video: Magisk speil med nyheter, vær, alarm, tidtaker og Todolist: 9 trinn
Video: Я работаю в Страшном музее для Богатых и Знаменитых. Страшные истории. Ужасы. 2024, November
Anonim
Magisk speil med nyheter, vær, alarm, tidtaker og Todolist
Magisk speil med nyheter, vær, alarm, tidtaker og Todolist
Magisk speil med nyheter, vær, alarm, tidtaker og Todolist
Magisk speil med nyheter, vær, alarm, tidtaker og Todolist

A Magic Mirror er et spesielt enveis speil med et display bak. Displayet, som er koblet til en Raspberry Pi, viser informasjon som vær, romtemperatur, tid, dato, en todolist og mye mer. Du kan til og med legge til en mikrofon og sette opp en smart assistent. Mulighetene er uendelige.

Dette prosjektet kan være ganske dyrt, en av de dyreste delene du trenger er selvfølgelig displayet. Derfor resirkulerte jeg en skjerm fra en gammel bærbar datamaskin. Jeg anbefaler imidlertid å få et stort, lyst, display med høy kontrast for å lage dette prosjektet. Det er verdt det.

Speilet jeg laget har disse funksjonene:

  • Nyheter fra en brukervalgt RSS-feed
  • Vær
  • Innetemperatur
  • Et alarmsystem
  • Et tidtakersystem
  • En todolist
  • Flere brukere: ledstrip -fargen og ny ressursendring basert på hvilken bruker som er valgt.

Rekvisita

For å bygge dette Magic Mirror trenger du:

  • Et enveis speil
  • Tre
  • En bringebær Pi
  • Et Micro SD -kort (8+GB)
  • Et brødbrett
  • To 20W høyttalere
  • MAX9744 20W forsterker for å drive høyttalerne
  • 1m 30-ledet WS2801 ledstrip
  • DS18B20 1-leder temperatursensor
  • HC-SR501 Infrarød sensor
  • En roterende encoder
  • En skjerm eller en gammel bærbar skjerm

    Hvis du bruker en gammel bærbar skjerm, må du kjøpe en bærbar skjermadapter. Du kan få disse fra AliExpress, Ebay eller Amazon. Bare søk etter serienummeret på skjermen

Du trenger også følgende små komponenter:

  • En diode
  • En motstand på 4,7 k Ohm
  • En 470 Ohm motstand
  • Ledninger for å koble sensorer til Raspberry Pi

Og disse strømforsyningene:

  • 5V 2A for å drive ledstripen
  • 12V 2A for å slå på skjermen
  • 12V 2A for å forsterke forsterkeren
  • 5.1V 3A for å drive Raspberry Pi (bruk en offisiell RPi -strømforsyning)

Trinn 1: Installere Raspbian

Skjermen og alle komponentene bak speilet drives av Raspberry Pi. Du må installere Raspbian, Pi -standardoperativsystemet, på SD -kortet.

  1. Last ned Win32 Disk Imager. Linux- og MacOS -brukere kan bruke noe som Etcher.
  2. Last ned det nyeste Raspbian -bildet fra Raspberry Pi -nettstedet. Velg alternativet 'Raspbian Buster with desktop'
  3. Åpne Win32 Disk Imager og skriv bildefilen til SD -kortet.

SD -kortet er nå nesten klart. Vi trenger bare å sørge for at vi kan koble til Raspberry Pi eksternt:

  1. Gå til SD -kortets oppstartspartisjon ved hjelp av systemets filutforsker.
  2. Legg til en fil som heter 'ssh' uten utvidelse.
  3. Legg til 'ip = 169.254.10.1' (uten anførselstegn) til slutten av den første linjen med 'cmdline.txt'.

Ta ut SD -kortet på en trygg måte fra datamaskinen, legg det i Raspberry Pi og start det.

Trinn 2: WiFi -konfigurasjon

For å skanne WiFi -nettverk, utfør følgende kommando:

sudo iw dev wlan0 scan | grep SSID

Du vil se listen over alle SSID -er som Raspberry Pi kan koble til.

Opprett en nettverksoppføring med et kryptert passord ved å utføre følgende kommando og skrive inn nettverkets passord:

wpa_passphrase "YOUR_NETWORK_SSID_HERE"

Lim inn utdataene fra kommandoen ovenfor i denne filen:

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Start Raspberry Pi på nytt. Du blir koblet til internett.

Trinn 3: Programvareinstallasjon og -konfigurasjon

For dette prosjektet må du laste ned disse pakkene til din Raspberry Pi:

pip3 installer mysql-connector-python kolbe-socketio kolbe-cors gevent gevent-websocket adafruit-circuitpython-ws2801 adafruit-circuitpython-max9744

sudo apt installer apache2 mariadb-server

Legg til denne linjen nederst på /boot/config.txt for å aktivere lyd gjennom GPIO -pinner 12 (venstre) og 13 (høyre):

dtoverlay = audremap

Bruk raspi-config for å angi skjermens oppløsning og for å aktivere i2c, One-wire og SPI. Sett også oppstartsmetoden til 'Desktop Autologin'.

I/etc/xdg/lxsession/LXDE-pi/autostart, legg til følgende:

@xset s off@xset -dpms@xset s noblank@chromium -browser -kiosk 127.0.0.1/mirror.html # last krom etter oppstart og åpne nettstedet i fullskjermmodus

Dette åpner nettleseren på riktig side når LXDE (Raspbian -skrivebordsmiljø) lastes. Fjern eller kommenter @xscreensaver -linjen for å deaktivere skjermspareren.

Github -depot

Klon GitHub -depotet mitt og legg innholdet i Frontend -mappen i/var/www/html. Vi trenger Backend -mappen senere.

Trinn 4: Databasen

Databasen
Databasen

Dette er databaseskjemaet, optimalisert til 3NF. Den lagrer alle alarmer, nye kilder, brukere, sensordata, lyder og todolist.

  1. Bruk MySQL Workbench for å få tilgang til pis databaseserver (mariadb)
  2. Lag en database ved hjelp av dette skjemaet og sett inn dine egne data.
  3. Rediger config.py i Backend -mappen i GitHub -depotet mitt: endre databasenavnet, det valgte brukernavnet og passordet.
  4. Rediger app.py og endre URL -adressen til OpenWeatherMap API til din egen. (Lag din egen her)

Trinn 5: Bygg speilrammen

Bygg speilrammen
Bygg speilrammen
Bygg speilrammen
Bygg speilrammen
Bygg speilrammen
Bygg speilrammen

Jeg bygde rammen rundt speilet ved hjelp av gjæringsledd med metallhjørner. Treplankene jeg brukte er 18 mm tykke og 10 cm brede. På bildene kan du se de eksakte målingene for et 45cm x 60cm speil. Bak speilet er all elektronikk, så sørg for at planker er brede nok til å passe dem.

Jeg brukte metallkroker for å feste høyttalerne til rammen. På den måten hviler de ikke på speilet, og reduserer vibrasjonsspenning på glasset.

Trinn 6: Elektronikken

Elektronikken
Elektronikken
Elektronikken
Elektronikken

Følg skjemaene ovenfor for å bygge kretsen. Jeg brukte tape for å feste elektronikken til speilet.

Trinn 7: Montering av elektronikken i rammen

Montering av elektronikken i rammen
Montering av elektronikken i rammen
Montering av elektronikken i rammen
Montering av elektronikken i rammen

Etter å ha festet høyttalerne til metallkrokene på toppen, legger du til resten av elektronikken i speilet. Jeg la også en tynn treplank mellom speilet og elektronikken, så i stedet for å teppe elektronikken til speilet, teipet jeg elektronikken til treplanken. Den bærbare datamaskinens skjerm er hvitt panel nederst i speilet.

Som du kan se på bildene, koblet jeg til alle strømadaptere i en stikkontakt, så det er bare en kabel som forlater rammen. Derfor trengte jeg brede nok planker (10 cm).

Jeg boret et 2 cm bredt hull i høyre side av speilet for at den roterende encoderen skulle passe gjennom. Dette lar deg enkelt endre volum (sving) eller avvise timere og alarmer (push).

Jeg boret to 8 mm hull på hver side av speilet for å føre kablene for ledstripene.

Trinn 8: Etterbehandling

Finpuss
Finpuss
Finpuss
Finpuss
Finpuss
Finpuss

Jeg la en svart klut på baksiden av speilet for å skjule elektronikken. Det mørkner også innsiden av saken, noe som gjør det mye vanskeligere å se ledningene gjennom speilet. Jeg festet den med borrelås, noe som gjorde det lettere å få tilgang til elektronikken ved behov.

Kopier Backend -mappen fra Github -depotet mitt til et sted du vil huske.

Legg til en systemd -enhet slik at python -skriptet kjører ved oppstart:

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

[Enhet]

Beskrivelse = Tjenesten for magicmirror python script Etter = network.target [Service] ExecStart =/usr/bin/python3 -u app.py WorkingDirectory =/home/pi/magicMirror/Backend StandardOutput = arver StandardError = arver Restart = alltid Bruker = pi [Install] WantedBy = multi-user.target

Endre 'WorkingDirectory' til Backend -katalogen, og endre User til ditt eget brukernavn.

Trinn 9: Samhandle med Webapp

Samhandler med Webapp
Samhandler med Webapp
Samhandler med Webapp
Samhandler med Webapp
Samhandler med Webapp
Samhandler med Webapp
Samhandler med Webapp
Samhandler med Webapp

Surf til IP -adressen (som er på displayet). Du får se et mobilnettsted med følgende funksjoner:

  • En interagerbar temperaturgrap
  • En gang. Når timeren kjører, ser du også en nedtelling på selve speilet.
  • Et alarmsystem
  • En innstillingsfane, der du kan redigere brukere, nye kilder og høyttalervolum.
  • En todolist. Todo -elementer vises på speilet

Mirror.html er siden som vises på Magic Mirror. Jeg la til et eksempel på bildene ovenfor.

Anbefalt: