Sadržaj:

O-R-A RGB matrični zidni sat i više ** ažurirano jula 2019. **: 6 koraka (sa slikama)
O-R-A RGB matrični zidni sat i više ** ažurirano jula 2019. **: 6 koraka (sa slikama)

Video: O-R-A RGB matrični zidni sat i više ** ažurirano jula 2019. **: 6 koraka (sa slikama)

Video: O-R-A RGB matrični zidni sat i više ** ažurirano jula 2019. **: 6 koraka (sa slikama)
Video: Kanto Ora Magnetically Shielded Speakers 2024, Juli
Anonim
Image
Image
O-R-A RGB matrični zidni sat i više ** ažurirano jul 2019 **
O-R-A RGB matrični zidni sat i više ** ažurirano jul 2019 **
O-R-A RGB matrični zidni sat i više ** ažurirano jul 2019 **
O-R-A RGB matrični zidni sat i više ** ažurirano jul 2019 **
O-R-A RGB matrični zidni sat i više ** ažurirano jul 2019 **
O-R-A RGB matrični zidni sat i više ** ažurirano jul 2019 **

Zdravo. Evo me s novim projektom pod nazivom O-R-A

To je RGB LED Matrix zidni sat koji prikazuje:

  • sat: minut
  • temperaturu
  • vlažnost
  • ikona trenutnog vremenskog stanja
  • Događaji Google kalendara i 1h obavještenja podsjetnika

u određeno vrijeme pokazuje:

  • Google Kalendar za danas i sutra listu događaja
  • vremenska prognoza
  • najnovije vijesti

Funkcije zavisnosti:

  • trenutni datum
  • Magična lopta 8
  • Kuhinjski mjerač vremena

Za bilo koju funkcionalnost uređaj reproducira drugi zvučni alarm. Za sve vremenske uvjete postoji odgovarajuća audio datoteka koja se može reproducirati kada se pozove funkcija.

Funkcionalnosti poput liste Google kalendara, vremenske prognoze, novosti o RSS -u počinju u unaprijed odabrano vrijeme kada je uređaj u "načinu rada sata", a mogu se nazvati i izravnim upravljanjem prekidačima. Još jedna funkcija u "načinu rada sata" prikazuje trenutni dan/mjesec/godinu. Može se pokrenuti pritiskom na tipku ENTER. Pritiskom na tipku CHANGE STATE, a zatim tipku ENTER u roku od 3 sekunde u "načinu rada sata", ulazite u izbornik opcija. Dugme CHANGE STATE je podešeno za kretanje unutar menija, dugme ENTER za potvrdu izabrane opcije.

Ovaj projekt je evolucija mojih prethodnih LEGOLED i TEMPO. RGB LED matrični panel sada ima rezoluciju 32x64, pa je moguće istovremeno prikazivati razumljiviju grafiku, fiksni i listajući tekst. Koristeći TEMPO funkcije, uređaj se automatski uključuje i isključuje bez ikakvog dugmeta ili vanjskog tajmera. PIR modul detektuje prisustvo osoba, pa uključuje/isključuje ekran.

Vremenska prognoza i podaci kalendara prikupljaju se svake minute putem Google kalendara i otvorene vremenske karte.

Ovaj projekt je potpuno prilagodljiv počevši od Raspberry PI B+, 2 modula 16x64 rgb led matrice i napajanja. Može se proširiti, kao što sam ja učinio, dodavanjem USB zvučnih kartica, zvučnika, strujnog kruga za uključivanje/isključivanje.

Korak 1: Šta vam treba

  • Raspberry Pi B+ (sa ugrađenim wifi ili ključem)
  • 2 x 16x64 RGB LED matrica ili 2 x 32x32
  • generički okvir (40x50 cm i približno 3 cm dubine)
  • matirana plastična folija
  • solarni film na prozoru
  • PS 5V 10A
  • kablovi
  • termoreaktivni omotač (*)
  • relejni modul (*)
  • dodatni PS za audio pojačalo (*)
  • Modul audio pojačala 3W (*)
  • zvučnici (*)
  • USB zvučna kartica (*)
  • 2 x mikroprekidač (*)
  • PIR (*)
  • Attiny85 (*)
  • DS3231 (*)
  • Mosfet IRF540 (*)
  • Otpornici: 3x1K, 2x10K, 1x2K (*)
  • priključni blok (*)
  • zaglavlja ženska (*)
  • zaglavlja muški (*)

(*) opcionalno

Korak 2: Postavljanje Raspberry Pi

Ovaj vodič je u osnovi zasnovan na Raspbian Jessie Lite, Python 2.7 i RGB LED MATRIX biblioteci korisnika Hzeller Github -a.

Prije svega ažurirajte i nadogradite RPI

Instalirajte git

~ $ sudo apt-get install git

Preuzmite RGB LED MATRIX biblioteku sa Githuba

~ $ git klon

~ $ cd rpi-rgb-led-matrica

~ $ sudo make

Interna zvučna kartica sa crne liste RPI

~ $ cat << EOF | sudo tee /etc/modprobe.d/blacklist-rgb-matrix.conf

crna lista snd_bcm2835

EOF

~ $ sudo update -initramfs -u

Postavite parametre vanjske zvučne kartice ako su vam potrebne audio mogućnosti:

~ $ sudo nano /usr/share/alsa/alsa.conf

promjena:

defaults.ctl.card 0

defaults.pcm.card 0

to

defaults.ctl.card 1

defaults.pcm.card 1

zatim ponovo pokrenite sistem.

Sada instalirajte matričnu biblioteku

~ $ cd/home/pi/rpi-rgb-led-matrica

~ $ sudo apt-get update && sudo apt-get install python2.7-dev python-pillow -y

~ $ make build-python

~ $ sudo napravi install-python

i instalirajte druge potrebne biblioteke:

~ $ sudo easy_install pip

~ $ sudo pip install

Kopirajte samplebase.py skriptu iz ~/rpi-rgb-led-matrix/bindings/python/uzorci/u početni direktorij

Besplatno se registrirajte za API ključ za otvaranje karte vremena

Instalirajte sada OWM Python omot za PYthon 2.7 (zahvaljujući korisniku CSPARPAGithub)

~ $ sudo pip install git+https://github.com/csarpa/[email protected]

Nabavite vjerodajnice za Google kalendar slijedeći upute na API -ju Google kalendara

Za reprodukciju zvuka instalirajte Pygame

~ $ sudo apt-get instalirajte python-pygame

RSS feedovi trebaju instalirati Feedparser

~ $ sudo pip install feedparser

kopiraj moju skriptu ORAeng_131.py (engleska verzija) ili ORAita_131.py (talijanska verzija) u početni direktorij

stvorite mape za zvukove i slike:

mkdir dbsounds

mkdir owm

preuzmite i kopirajte sve-p.webp

www.dropbox.com/sh/nemyfcj1a1i18ic/AAB1W7I6lg5EgqL1gJZPWVTxa?dl=0

dodajte svoje vjerodajnice za OWM u red 69 (API_key)

postavite grad za vremensku prognozu (provjerite pokriva li ga OWM i je li prihvaćen ispravan naziv) na linijama 213, 215

obs = owm.weather_at_place ('Napoli, IT')

fc = owm.three_hours_forecast ('Napoli, IT')

********************************** Ažurirano 28.7.2019 ********** ******************

Novi API Google kalendara stvara probleme. Riješio sam uklanjanje nekih modula:

~ $ sudo apt-get remove --purge python-setuptools

~ $ sudo apt-get automatsko uklanjanje python-pyasn1

probajte pokrenuti skriptu

~ $ sudo python ORAeng_150.py # ili ORAita_150.py za talijansku verziju

skripta će prvi put zatražiti ovlaštenje GCAL -a. Kliknite vezu za akreditiv google api. Dajte dozvolu tada, ako je sve u redu, vidjet ćete kako počinje sat.

zbog prekomjerne upotrebe RAM -a nakon nekoliko sati, napisao sam skriptu koja jednostavno ponovo pokreće python skriptu kada upotreba RAM -a pređe prag. Zatim kopirajte u kućni direktorij skriptu pod nazivom memcheck preimenovanjem u memcheck.sh i dodajte u crontab -e zajedno glavnu skriptu

*/5 * * * * * bash /home/pi/memcheck.sh@reboot sudo python /home/pi/ORAeng_150.py

Korak 3: Skripte

Glavnu skriptu je potrebno izmijeniti u skladu s vašim potrebama. Pod pretpostavkom da su vjerodajnice OWM -a i Goggle kalendara postavljene kao odgovarajuće API upute, najvažniji parametri su:

lista kalendarskih događaja izvodi se svaki sat u minuti 2, 32 (vidi red 65 skripte)

vremenski uslovi i prognoza koji se izvode svaki sat u 7, 37 minuti (vidi redak skripte 66)

najnovije vijesti izvode se svakog sata u 11. minuti (vidi red 67)

najnovije vijesti na rss kanalu. Unutar skripte je postavljen Instructable RSS, ali se može promijeniti. (vidi red skripte 366)

Očigledno, skripta daje prioritet dolaznim događajima u kalendaru ili podsjetnicima. Ponekad sat ne izvršava svoje funkcije kako bi izbjegao ukrštanje funkcija.

Attiny85 tajmer za uključivanje/isključivanje treba programirati učitavanjem skice Tempo_V1_9_1Mhz_bugfix.ino.

Ovo omogućava uključivanje uređaja u 8 ujutro i isključivanje u 23. Za više informacija pogledajte vodič.

Korak 4: Krug

The Circuit
The Circuit
The Circuit
The Circuit
The Circuit
The Circuit

Krug u osnovi ima 3 dijela

- mjerač vremena za uključivanje/isključivanje kojim upravlja DS3231 modul, Attiny85 i Mosfet

- prekidač za ručno upravljanje funkcijama sata

- odjeljak za povezivanje gdje se nalaze kabeli za RGB LED Matrix podatke i napajanje, audio pojačalo i Raspberry Pi

Nije spomenut otpornički razdjelnik napona koji omogućava RPI -u čitanje VISOKOG/NISKOG 5V signala iz Attiny85

Prekidači su spojeni na RPI pin i GND izravno pomoću unutarnjih otpornika

Attiny85 timer dolazi iz mog prethodnog projekta pod nazivom TEMPO. U osnovi, DS3231 šalje LOW signal signalu za prekid Attiny85 koji ga budi iz stanja mirovanja. Prilikom buđenja Attiny85 šalje VISOKI signal na Mosfet tranzistor, aktivirajući krug napajanja za RPI, LED matricu i audio pojačalo (ako nije priključeno na dodatni PS preko releja, kao moja posljednja konfiguracija).

Za isključivanje RPI -a, moja skripta razmišlja o tome da RPI sluša digitalni signal na pinu 14, kada je HIGH, naziva se naredba za isključivanje. Zatim RPI izvodi ispravan proces isključivanja, a zatim se nakon jedne minute Attiny85 vraća u stanje mirovanja i Mosfet prima NISKI signal koji isključuje cijeli uređaj. Ovaj proces je grub, ali efikasan.

PIR modul je opcionalan i povezan je direktno na RPI GPIO.

Moja konfiguracija zahtijeva da su sljedeći RPI GPIO pinovi povezani na:

15 do PIR

14 do Attiny85 pina 3 kroz razdjelnik napona

21 na relejni modul

2 za prebacivanje (ENTER BUTTON)

3 za prebacivanje (PROMJENI DRŽAVNO DUGME)

Problemi:

- šum zbog LED Matrix napajanja, riješen korištenjem male PS samo za audio pojačalo. Opcijski relej dopušta uključivanje pojačala samo kada je to potrebno. To može uzrokovati buku pri uključivanju/isključivanju.

Krug je urezan pomoću bakrene ploče, 3D štampača, markera i željeznog klorida.

Korak 5: Sklapanje

Sklapanje
Sklapanje
Sklapanje
Sklapanje
Sklapanje
Sklapanje
Sklapanje
Sklapanje

Prilagodio sam generički okvir 40x50cm ovom projektu zajedno sa 3D štampanim dijelovima i nekim opcionalnim dodacima.

Staklo je zaštićeno prozorskom solarnom folijom i matiranom plastičnom folijom. Led matricu morate držati oko 1 cm do stakla kako biste izbjegli bijelu boju unutar LED dioda. Mali vijci su potrebni kao M3 matice i vijci. Obavezni su kabeli i termoreaktivni omotač.

Led matrice su pričvršćene na zadnju ploču okvira.

Korak 6: A sada?

I sada ?
I sada ?
I sada ?
I sada ?

Sljedeći korak bit će dodavanje temperaturnog senzora, aktiviranje bluetooth mogućnosti i, zašto ne, internetski radio player do maksimalnog potencijala Raspberry Pi.

Bye

Takmičenje u satovima
Takmičenje u satovima
Takmičenje u satovima
Takmičenje u satovima

Drugoplasirani na takmičenju Satovi

Preporučuje se: