Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
Nakon dugog razmišljanja došao sam do zaključka da napravim pametno ogledalo. Imam običaj imati nepravilan raspored spavanja pa sam htio da mi ovo ogledalo pomogne i zabilježi moje vrijeme budnosti itd. Htio sam biti jednostavan i implementirati 3 senzora i naravno pozadinsko osvjetljenje.
Provest ću vas kroz proces izgradnje moje ideje.
Pribor
Senzori
- Senzor temperature jedne žice (DS18S20)
- DHT11 Senzor vlage i temperature
- Infracrveni senzor pokreta
Ostalo
- Malina Pi 3
- Dvosmjerno ogledalo od akrila.
- Monitor računala
- Drvene palete
- LED traka
- LED traka 120LED/m 5050
- HDMI kabel
- Mosfets IRFZ44N
- Oglasne ploče
- Žice
- SD kartica
- 4, 7K, 1K, 2K otpornici
Korak 1: Ožičenje
Ovo je ožičenje sa potrebnim senzorima i otpornicima. Za korištenje ovoga na matičnoj ploči potreban nam je 12V naponski utikač. U ovoj shemi to je na istoj matičnoj ploči, ali u stvarnosti je sigurnije to učiniti na zasebnoj ploči.
Korak 2: Baza podataka
Struktura
Baza podataka može pohraniti podatke 2 senzora koji isporučuju podatke. Ima jedinstveni ID za identifikaciju mjerenja zajedno s vrijednošću i ID senzora. Pohranjuje se i vrijeme mjerenja. Senzori imaju stranu tablicu koja ih identificira u matičnoj tablici.
Učitaj:
Morat ćemo učitati ovu bazu podataka u pi, ali prvo moramo instalirati MariaDB.
sudo apt install mariadb-server
zatim:
mysql_secure_installation
Samo pritisnite enter. Zatim Y i 2 puta unesite lozinku.
Samo pritisnite Y za cijeli proces.
Zatim upišite:
mysql -u korijen -p
Unesite svoju lozinku za povezivanje.
Zatim učitajte bazu podataka u PI i spremni ste.
Ovdje možete pronaći moju SQL bazu podataka.
Korak 3: Zrcalna zgrada
Za izradu ovog ogledala koristio sam MDF drvo. Prvo sam stvorio kvadrat za postavljanje ogledala i još jedan kvadrat za monitor i elektroniku. Zrcalo sam pričvrstio izolacijom tako da se više nije moglo micati. Koristio sam ljepilo za drvo za lijepljenje 2 woos kvadrata.
Izbušio sam rupu u koju sam stavio LED traku i pričvrstio je sa strane ogledala. LED traka je pričvršćena izolacijskom trakom.
Obojila sam ogledalo za lijepu završnu obradu. Također se dobro uklapa sa trakom.
Monitor sam pričvrstio dvosmjernom trakom. Srećom, ovo je bila greška jer možete vidjeti bijelu traku kroz ogledalo. Ostatak stražnjeg dijela zrcala zalijepio sam crnom trakom tako da svjetlost nije mogla proći.
Zalijepila sam ploče i pi na stražnju stranu monitora.
Korak 4: Kodirajte
HTML, css i javascript kodirao sam u Visualstudio Code -u, a pozadinu u Pycharmu s Pythonom.
Koristio sam mnogo utičnica za podatke uživo na svojoj web stranici i nekoliko preuzimanja za mjerenja svaki dan. Kad ogledalo radi, prikazat će se vrijednosti senzora za taj trenutak i lokalno vrijeme.
Moj kôd možete pronaći ovdje: GitHub spremište
Korak 5: Pokretanje ogledala na PI -u
Zaslon
Da biste rotirali zaslon kako biste ga objesili bočno, morate se pomaknuti do:
sudo nano /boot/config.txt
i pri dnu dodajte sljedeći redak:
display_rotate = 1
Apač
Instaliranje apache web poslužitelja:
sudo apt install apache2 -y
Prenesite sve datoteke sa sučelja na/var/www/html/sa filezilla i ona će se izvoditi na sebserveru.
Pozadina
Automatski pokrenite pozadinu u rc.local:
sudo nano /etc/rc.local
Dodajte sljedeći redak koda prije 'exit 0', ali upotrijebite lokaciju svoje pozadinske datoteke:
sudo python /home/gilles/mirror.py
Sada PI pokreće web poslužitelj i pozadinu pri pokretanju.
Pokrenite zrcalnu stranicu
Sada želimo da pi pokrene html stranicu localhosta na cijelom ekranu (naša zrcalna stranica)
stvorite skriptu na željenoj putanji s ovim kodom:
#!/bin/bashsleep 20DISPLAY =: 0 chromium --noerrdialogs --kiosk https://localhost/mirror.html --incognito
Sada spremite datoteku i idite na:
sudo nano lxsession/LXDE-pi/autostart
zatim umetnite ovaj red koda pri dnu:
@sh script.sh
Ogledalo će se sada automatski pokrenuti pri pokretanju i vidjet ćete svoje vlastito pametno ogledalo!
Samo surfajte do IP adrese na ekranu i možete pristupiti web stranici na svom telefonu, prijenosnom računalu …