Tartalomjegyzék:

O-R-A RGB Led Matrix Wall Clock and More ** frissítve 2019. július **: 6 lépés (képekkel)
O-R-A RGB Led Matrix Wall Clock and More ** frissítve 2019. július **: 6 lépés (képekkel)

Videó: O-R-A RGB Led Matrix Wall Clock and More ** frissítve 2019. július **: 6 lépés (képekkel)

Videó: O-R-A RGB Led Matrix Wall Clock and More ** frissítve 2019. július **: 6 lépés (képekkel)
Videó: Raspberry Pi LED Matrix Display 2024, November
Anonim
Image
Image
O-R-A RGB Led Matrix Wall Clock and More ** frissítve 2019. július **
O-R-A RGB Led Matrix Wall Clock and More ** frissítve 2019. július **
O-R-A RGB Led Matrix Wall Clock and More ** frissítve 2019. július **
O-R-A RGB Led Matrix Wall Clock and More ** frissítve 2019. július **
O-R-A RGB Led Matrix Wall Clock and More ** frissítve 2019. július **
O-R-A RGB Led Matrix Wall Clock and More ** frissítve 2019. július **

Helló. Itt vagyok egy új O-R-A nevű projekttel

Ez egy RGB LED mátrix falióra, amely a következőket jeleníti meg:

  • óra: perc
  • hőfok
  • páratartalom
  • aktuális időjárási állapot ikon
  • Google Naptár -események és 1 órás emlékeztető értesítések

egy adott időpontban azt mutatja:

  • A Google Naptár ma és holnap eseménylistája
  • időjárás előrejelzés
  • friss hírek

Függőségi funkciók:

  • mostani dátum
  • Magic 8 labda
  • Konyhai időzítő

Bármilyen funkció esetén a készülék más hangriasztást játszik le. Mindenféle időjárási körülményhez a megfelelő audio fájlt kell lejátszani a funkció hívásakor.

Az olyan funkciók, mint a Google Naptár listája, Időjárás -előrejelzés, RSS friss hírek az előre kiválasztott időpontban kezdődnek, amikor a készülék "óra üzemmódban" van, ezeket a kapcsolók közvetlen működtetésének is nevezhetjük. Egy másik funkció az "óra mód" alatt az aktuális napot/hónapot/évet jeleníti meg. Az ENTER gombbal futtatható. Ha megnyomja a CHANGE STATE gombot, majd az ENTER gombot 3 másodpercen belül "óra módban", akkor lépjen be az opciók menübe. A CHANGE STATE gomb a menüben való görgetésre, az ENTER gomb a kiválasztott opció megerősítésére szolgál.

Ez a projekt az eddigi LEGOLED és TEMPO fejlesztésem. Az RGB led mátrix panel 32x64 felbontású, így érthetőbb grafikákat, rögzített és görgethető szövegeket jeleníthet meg egyszerre. A TEMPO funkciók használatával a készülék automatikusan be- és kikapcsol, gomb vagy külső időzítő nélkül. A PIR modul érzékeli a személyek jelenlétét, ezért kapcsolja be/ki a kijelzőt.

Az időjárás -előrejelzést és a naptáradatokat a Google Naptár és a Nyitott időjárási térkép által biztosított percenként gyűjtik.

Ez a projekt teljesen testreszabható egy Raspberry PI B+, 2 modulos 16x64 rgb led mátrixból és tápegységből kiindulva. Bővíthető, mint én, USB hangkártyák, hangszórók, be- és kikapcsolási áramkör hozzáadásával.

1. lépés: Amire szüksége van

  • Raspberry Pi B+ (beépített wifivel vagy hardverkulccsal)
  • 2 x 16x64 RGB led mátrix vagy 2 x 32x32
  • általános keret (40x50 cm és körülbelül 3 cm mélység)
  • matt műanyag lap
  • ablak szolárfilm
  • PS 5V 10A
  • kábeleket
  • hőre keményedő hüvely (*)
  • relé modul (*)
  • extra PS az audioerősítőhöz (*)
  • 3 W -os erősítő modul (*)
  • hangszórók (*)
  • USB hangkártya (*)
  • 2 x mikrokapcsoló (*)
  • PIR (*)
  • Attiny85 (*)
  • DS3231 (*)
  • Mosfet IRF540 (*)
  • Ellenállások: 3x1K, 2x10K, 1x2K (*)
  • sorkapocs (*)
  • fejléc hüvely (*)
  • fejcsík hím (*)

(*) választható

2. lépés: A Raspberry Pi beállítása

Ez az útmutató alapvetően a Hzeller Github felhasználó Raspbian Jessie Lite, Python 2.7 és RGB LED MATRIX könyvtárán alapul.

Először is frissítse és frissítse az RPI -t

Telepítse a git programot

~ $ sudo apt-get install git

Töltse le az RGB LED MATRIX könyvtárat a Github webhelyről

~ $ git klón

~ $ cd rpi-rgb-led-mátrix

~ $ sudo make

fekete lista RPI belső hangkártya

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

feketelista snd_bcm2835

EOF

~ $ sudo update -initramfs -u

Állítsa be a külső hangkártya -paramétereket, ha hangképességre van szüksége:

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

változás:

alapértelmezett.ctl.card 0

alapértelmezett.pcm.card 0

nak nek

defaults.ctl.card 1

alapértelmezett.pcm.kártya 1

majd indítsd újra.

Most telepítse a mátrixkönyvtárat

~ $ cd/home/pi/rpi-rgb-led-mátrix

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

~ $ make build-python

~ $ sudo make install-python

és telepítse a többi szükséges könyvtárat:

~ $ sudo easy_install pip

~ $ sudo pip telepítse a httplib2 fájlt

Másolja a samplebase.py szkriptet a ~/rpi-rgb-led-matrix/bindings/python/sample/könyvtárból a saját könyvtárba

Ingyenesen regisztrálhat API -kulcsot az Időjárási térkép megnyitásához

Telepítse most az OWM Python csomagolót a PYthon 2.7 -hez (a CSPARPAGithub felhasználónak köszönhetően)

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

Szerezze be a Google Naptár hitelesítő adatait a Google naptár API -n található utasítások követésével

Hanglejátszáshoz telepítse a Pygame programot

~ $ sudo apt-get install python-pygame

Az RSS -hírcsatornákhoz Feedparser telepítve van

~ $ sudo pip install feedparser

másolja a szkriptemet ORAeng_131.py (angol verzió) vagy ORAita_131.py (olasz verzió) a saját könyvtárba

mappa létrehozása hangokhoz és képekhez:

mkdir dbhangzik

mkdir owm

töltse le és másolja át az összes-p.webp

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

adja hozzá OWM hitelesítő adatait a 69. sorhoz (API_key)

állítsa be a várost az időjárás -előrejelzéshez (ellenőrizze, hogy az OWM lefedi -e, és a helyes név elfogadott -e) a 213, 215 sorokban

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

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

********************************* FRISSÍTÉS 2019.07.28. ********** *******************

Az új Google Naptár API problémákat okoz. Megoldottam néhány modul eltávolítását:

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

~ $ sudo apt-get autoremove python-pyasn1

próbálja meg futtatni a szkriptet

~ $ sudo python ORAeng_150.py # vagy ORAita_150.py az olasz verzióhoz

az első alkalommal a szkript GCAL engedélyt kér. Kattintson a linkre a Google API hitelesítő adatainak megtekintéséhez. Adja meg az engedélyt, ha minden rendben van, látni fogja az óra indulását.

a túlzott RAM -használat miatt több óra elteltével írtam egy szkriptet, amely egyszerűen újraindítja a python -parancsfájlt, ha a RAM -felhasználás meghaladja a küszöbértéket. Ezután másolja a saját könyvtárba a memcheck nevű szkriptet, nevezze át a memcheck.sh címre, és adja hozzá a crontab -e fájlhoz a fő szkriptet

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

3. lépés: A forgatókönyvek

A fő szkriptet szükség szerint módosítani kell. Feltéve, hogy az OWM és a Goggle Calendar hitelesítő adatai vannak megadva a megfelelő API utasításként, a legfontosabb paraméterek a következők:

naptáresemények listája óránként, a 2., 32. percben (lásd a szkript 65. sorát)

az időjárási viszonyok és az előrejelzés minden órában a 7., 37. percben (lásd a szkript 66. sorát)

friss hírek óránként a 11. percben (lásd a szkript 67. sorát)

friss hírek rss csatorna. A belső szkript beállítása Instructable RSS, de megváltoztatható. (lásd a szkript 366. sorát)

Nyilvánvaló, hogy a szkript elsőbbséget biztosít a beérkező naptári eseményeknek vagy emlékeztető értesítéseknek. Néha az óra nem teljesíti funkcióit, hogy elkerülje a funkciók keresztezését.

Az Attiny85 be- és kikapcsolási időzítőt be kell programozni a Tempo_V1_9_1Mhz_bugfix.ino vázlat feltöltésével.

Ez lehetővé teszi, hogy reggel 8 -kor bekapcsolja a készüléket, majd 23 -kor. Lásd az oktatóanyagot.

4. lépés: Az áramkör

Az áramkör
Az áramkör
Az áramkör
Az áramkör
Az áramkör
Az áramkör

Az áramkör alapvetően 3 szakaszból áll

- be- és kikapcsolás időzítő, amelyet DS3231 modul, Attiny85 és Mosfet kezel

- kapcsoló az óra funkcióinak kézi vezérléséhez

- Csatlakozási rész, ahol az RGB LED Matrix adatok és a tápellátás, az audioerősítő és a Raspberry Pi kábelei vannak

Nem említett egy rezisztív feszültségosztót, amely lehetővé teszi, hogy az RPI HIGH/LOW 5V jelet olvasson az Attiny85 -ből

A kapcsolók közvetlenül a belső ellenállások segítségével csatlakoznak az RPI csaphoz és egy GND -hez

Az Attiny85 időzítő az előző TEMPO nevű projektemből származik. Alapvetően a DS3231 LOW jelet küld az Attiny85 megszakító tűnek, amely felébreszti alvó üzemmódból. Ébredéskor az Attiny85 HIGH jelet küld a Mosfet tranzisztornak, aktiválva az RPI, a LED mátrix és az audioerősítő tápáramkörét (ha nem volt csatlakoztatva extra PS -hez egy relén keresztül, az utolsó konfigurációm).

Az RPI leállításához a szkriptem azt fontolgatja, hogy az RPI digitális jelet hallgat a 14 -es tűn, amikor MAGAS, leállítási parancsnak nevezik. Ezután az RPI elvégzi a megfelelő leállítási folyamatot, majd egy perc múlva az Attiny85 visszatér alvó üzemmódba, és a Mosfet LOW jelzést kap, amely kikapcsolja az egész készüléket. Ez a folyamat durva, de hatékony.

A PIR modul opcionális és közvetlenül az RPI GPIO -hoz csatlakoztatható.

A konfigurációm megköveteli, hogy a következő RPI GPIO csapok legyenek csatlakoztatva:

15 -től a PIR -ig

14 -től Attiny85 3 -as érintkezőig feszültségosztón keresztül

21 a relé modulhoz

2 a váltáshoz (ENTER BUTTON)

3 váltáshoz (ÁLLAPOTVÁLTÓ GOMB)

Problémák:

- zaj a LED Matrix tápegység miatt, amelyet csak egy kis erősítővel oldanak meg az audio erősítőhöz. Az opcionális relé csak szükség esetén teszi lehetővé az erősítő bekapcsolását. Ez be-/kikapcsoláskor hangzúgást okozhat.

Az áramkört rézlemez, 3D nyomtató, marker és vas -klorid segítségével maratják.

5. lépés: Összeszerelés

Összeszerelés
Összeszerelés
Összeszerelés
Összeszerelés
Összeszerelés
Összeszerelés
Összeszerelés
Összeszerelés

ehhez a projekthez egy általános 40x50 cm -es keretet igazítottam, 3D nyomtatott alkatrészekkel és néhány opcionális extrával együtt.

Az üveget napelemes fólia és matt műanyag lemez árnyékolja. A LED mátrixot körülbelül 1 cm -re kell tartani az üvegtől, hogy ne látszódjanak a fehér belső ledek. Kis csavarokra van szükség, mint M3 anyák és csavarok. Kötelező a kábelek és a hőre keményedő hüvely.

Led mátrixokat csavaroznak a keret hátlapjára.

6. lépés: És most?

És most ?
És most ?
És most ?
És most ?

A következő lépés a hőmérsékletérzékelő, a Bluetooth funkciók aktiválása és - miért ne - egy internetes rádiólejátszó hozzáadása a Raspberry Pi maximális potenciáljáig.

Viszlát

Órák verseny
Órák verseny
Órák verseny
Órák verseny

Második helyezett az órák versenyében

Ajánlott: