Készítsen LED-jelzőt egy Raspberry Pi-vel (e-mailhez, időjáráshoz vagy bármi máshoz)

Oct 30, 2025
Hardver
BETŰTELEN TARTALOM

A Raspberry Pi egy kompakt platformot kínál, amelyhez jelzőlámpát csatolhat mindenféle projekthez - időjárás-értesítés, új e-mailek stb. .

Miért akarom ezt megtenni?

Mert vicces. Ellentétben sok oktatóanyagunkkal, ahol egy kis részletet tartalmazunk a tetején, pontosan meghatározva, hogy milyen előnyökkel jár a projekt, a kivonat ebben az esetben elég rövid, mert az előny egyszerűen szórakozás.

A Raspberry Pi tökéletes eszköz, amellyel játszhatsz, kísérletezhetsz az elektronikával és megtanulhatsz programozni. Senki igények például a konyhájukban lévő környezeti esőjelző, de az egyik felépítése szórakoztató gyakorlat és remek emlékeztető arra, hogy viharos napokon magával vigye az esernyőt.

Mire van szükségem?

A bemutató nélkül néhány dologra van szükség. Először feltételezzük, hogy már követte korábbi oktatóanyagunkat: A HTG útmutató a Raspberry Pi használatának megkezdéséhez (és így áttekinthetők a Raspbian telepítése a Raspberry Pi-re).

Ha ezt a projektet költségvetéssel kívánja megvalósítani, magabiztosan elmondhatjuk, hogy a Raspberry Pi legújabb modellje jelentős túlterhelést jelent a munkához, és javasoljuk, hogy fújja le a port egy régi Raspberry Pi-ről, amelyet betolt a szekrényben, vagy vegyen fel egy olcsó használt egyszeri eBay-t vagy hasonlót. Költségvetési szempontból az a hosszú fogazat, hogy az eBay-ről 10-15 dollárért lekapott Raspberry Pi 1 A vagy B modell tökéletesen megfelel ennek a projektnek, mint egy teljesen új, 35 dolláros jelenlegi generációs Pi vásárlása.

Amellett, hogy egy funkcionális Pi egységet telepített Raspbian-ra, a következő dolgokra lesz szüksége:

Jegyzet: A tiszta / matt Pi tok teljesen opcionális, de ha jelenleg átlátszatlan tokot használ, akkor a LED-je el lesz rejtve. Vagy ki kell vágnia egy lyukat a tokjába, hogy kialudjon a lámpa, vagy GPIO hosszabbító kábelt kell használnia kitörőkészlettel - például ez az Adafruit Industries-től - hogy összekösse a LedBorg-ot Raspberry Pi-jével. Míg a kitörő kábel használata körülbelül 8 dollárral jár a projekt költségén, nagyobb lehetőséget kínál a végtermék testreszabására, mivel könnyebben elhelyezheti a LED-et a dolgok belsejében vagy valami alatt, amelyet meg szeretne világítani.

A LedBorg telepítése

Bár minden bizonnyal fel tudna építeni magának egy teljesen a semmiből származó LED-jelzőt (és a keresőmotor megkeresése rengeteg embert keres fel, akik ezt megtették), a Piborg szervezete olyan kompakt és olcsó LED-modulot, a LedBorg-ot gyárt, amelyet nem tudtunk megtenni. Ne álljon ellen, hogy Raspberry Pi LED indikátor projektünk alapjául használja.

A modul telepítése gyors, mivel úgy tervezték, hogy közvetlenül illeszkedjen a Pi GPIO-csapjaihoz. Először kapcsolja ki a Pi-t, és nyissa ki a tokot.

A telepítési folyamat legfontosabb része az, hogy a modult úgy orientálja, hogy a LedBorg ikon legközelebb álljon a Raspberry Pi táblán található RCA modulhoz (és így a LedBorg éle egy szintben legyen a Pi tábla széleivel a túlnyúlóval. a LedBorg része a Pi tábla felett lóg, és nem a szélétől). Lásd a fenti fényképet.

Noha nyitva van a Pi tábla, most kiváló alkalom lenne fedélzeti LED-jelzőket lefedni (az USB-portok mellett), különösen, ha tiszta tokot használ. Nem akarja, hogy zavaró legyen a LedBorg jelzőjének elolvasása, mert az áramellátás és a hálózat jelzőfényei olyan erősek.

A mieinket fehér elektromos szalag réteggel borítottuk be. Ez eléggé elhomályosította őket ahhoz, hogy még mindig hivatkozhassunk rájuk, de annyira halványabbak voltak, mint a LedBorg, és ez már nem zavarta el a figyelmüket.

Miután telepítette a LedBorg-ot, és opcionálisan lefedte a Pi LED-jelzőit elektromos szalaggal, ideje lezárni a tokot. Indítsa el a Pi-t, mielőtt áttérne az oktatóprogram következő szakaszára.

A LedBorg szoftver telepítése

A PiBorg nagyszerű szoftvercsomagot kínál a LedBorg számára, amely tartalmaz egy GUI vezérlőt, valamint illesztőprogramokat a LedBorg parancssorból történő eléréséhez.

Mielőtt nekilátnánk, meg kell győződnie arról, hogy a Rasbian verziójának megfelelő csomagot és a Raspberry Pi kártya verziójának # változatát kapja meg.

Ha a Raspberry Pi kártyán nincsenek rögzítési lyukak, akkor ez az 1. verzió. Ha a Raspberry Pi-nek vannak rögzítő furatai (az USB-portoknál, valamint a táp- és a HDMI-port között), akkor ez a 2. verzió. Ismernie kell a kernel verzióját is. a Rasbian telepítésének. Nyissa meg a terminált, és írja be a következő parancsot az ellenőrzéshez:

uname -r

Miután megvan a Revision és a kernel száma, megteheti keresse fel itt a Csomagok részt hogy megragadd a csomagod linkjét. Esetünkben a Revision 1 táblát használjuk a 3.6.11 kernellel, így megragadjuk a raspbian-2013-02-09-rev1.zip fájlt.

Az összes finomság telepítéséhez meg kell nyitnunk a terminált a Pi-n. majd írja be a következő parancsokat a LedBorg csomag telepítéséhez.

Jegyzet: A harmadik parancs URL-jét a fórum / kernel kombináció csomagjának URL-jével kell kicserélnie.

mkdir ~ / ledborg-setup
cd ~ / ledborg-setup
wget -O setup.zip http://www.piborg.org/downloads/ledborg/raspbian-2013-02-09-rev1.zip
kicsomagolja a setup.zip fájlt
chmod + x install.sh
./install.sh

Ekkor már telepítve van a LedBorg illesztőprogramok és maguk az illesztőprogramok GUI burkolója. A Raspbian asztalon megjelenik egy ikon a GUI burkolóhoz:

Menj előre, és kattints a LedBorg ikonra a GUI burkoló elindításához. A színválasztó kezelőfelületét így kezeljük:

Itt az alkalom, hogy megbizonyosodjon a modul működőképességéről. Válassza ki a színt, kivéve a feketét, és próbálja ki. Tesztelni fogjuk néhány szín kiválasztásával:

Jól néz ki! Világos, és a projektbe megrendelt tok matt műanyagja mérsékelt diffúziót kínál. Ha tovább szeretne játszani a LED-modullal, mielőtt továbblépne, kattintson a Bemutató mód gombra:

Bemutató üzemmódban az összes színt különféle sebességgel lapozhatja, megnézheti a magas / alacsony kimenetet, és máskülönben a LED modult át tudja tenni.

Itt van a Bemutató mód részben, ahol a LedBorg-ot is a sok mutató közül az elsővé teheti. Ha kiválasztja a CPU-t a Színek részben, akkor a LED zöldről sárga-pirosra változik, jelezve a Raspberry Pi ARM processzorának terhelését. Javasoljuk, hogy változtassa a sebességet lassúvá, miközben Ön itt van - Gyorsan túl gyorsan frissíti a LED-et, és a CPU jelzője figyelemelterelővé teszi a hasznos helyett.

Amellett, hogy a GUI felületen keresztül választja ki a színeket, az RGB-értékek segítségével kiválaszthatja a színeket a terminálból. Nyissa meg a terminált, és írja be a következő parancsot a LED kikapcsolásához:

echo "000"> / dev / ledborg

A LedBorg RGB-értékeinek kezelése az, hogy 0 azt jelenti, hogy a csatorna ki van kapcsolva, az 1 azt jelenti, hogy a csatorna félenergiás, és 2 azt jelenti, hogy a csatorna teljes teljesítményű. Tehát például a 001 a vörös csatornát 0% -ra, a zöld csatornát 0% -ra, a kék csatornát pedig 50% -ra állítja.

Módosítsa az értéket 002-re, és a LED kimenete kék marad, de világosabb lesz, mert a kék csatorna most 100% -os kimenettel rendelkezik. Változtassa az értéket 202-re, és a vörös és a kék teljes energiával együtt bíborvörös színt kap.

Most, hogy tudjuk, hogyan kell manuálisan kezelni a LED-et, nézzük meg a szkriptek használatát, hogy LED-jünket egyszerű lámpából tényleges jelzővé alakítsuk.

A LedBorg konfigurálása esőjelzőként

Az oktatóanyag ezen részén több dolgot fogunk átfésülni annak érdekében, hogy a LedBorg LED modulunkat esőjelzővé alakítsuk a helyünk időjárás-előrejelzése alapján. Python szkript használatával meghívjuk az időjárás API-t, amely viszont felolvassa az eső esélyét a napra, majd a LED-et kikapcsolja élénkkékre az előrejelzett eső jelzésére.

Először is meg kell szereznünk egy API hozzáférési kulcsot a Weather Undergroundhoz. Személyes használatra és kis fejlesztési projektekre az API ingyenes. Itt keresse fel a Weather API regisztrációs oldalát és regisztráljon egy API kulcsra.

Miután megkapta az API kulcsát, látogasson el a Weather Undergroundba, és keresse meg a megfigyelni kívánt várost. Esetünkben figyelni fogjuk a San Fransisco-t, Kalifornia. A San Fransisco előrejelzési oldalának URL-je:

http://www.wunderground.com/US/CA/San_Francisco.html

Céljaink szempontjából fontos rész az URL utolsó része: /CA/San_Francisco.html. Ezt fogjuk használni az API eszköz előrejelzési URL-jének szerkesztéséhez. Az alap URL a következő:

http://api.wunderground.com/api/OUR API KEY / előrejelzés / q / STATE / CITY.json

Bármelyik amerikai városra elkészítheti az előrejelzést az API-kulcs, a kétbetűs államkód és a városnév megadásával abból az URL-ből, amelyet a Weather Underground keresési eredményekből kapott.

Miután megadta az API URL-t az API kulcsával és az állapot / város beillesztésével, akkor szerkesztheti a következő Python szkriptet úgy, hogy a Leafpad segítségével létrehoz egy új szöveges dokumentumot a Pi-n, és beilleszti a következő kódot:

az urllib2 import urlopenből
import json

req = urlopen ('http://api.wunderground.com/api/OUR API KEY / előrejelzés / q / STATE / CITY.json ')
parsed_json = json.load (req)
pop = int (parsed_json['forecast']['txt_forecast']['forecastday'][0]['pop'])

# A következő egy hibakereső érték.
# Szerkessze ki a kivonatot és változtassa meg
# az egész szám 0-100-ig tesztelni
# a LED válasz.

# pop = 0

print 'A csapadék jelenlegi esélye {}.'. formátum (pop)

# Az alapértelmezett beállítás a LED bekapcsolása
# 20% feletti eső esetén. Beállíthatja
# az "if pop> 20:" érték a kívánt módon.

ha pop> 20:
LedBorg = nyitott ('/ dev / ledborg', 'w')
LedBorg.write ('002')
írta: LedBorg
nyomtatás ('Eső!')
más:
LedBorg = nyitott ('/ dev / ledborg', 'w')
LedBorg.write ('000')
írta: LedBorg
nyomtatás ('Nincs eső!')

Mentse a fájlt wunderground.py néven a / home / pi / könyvtárba. Nyissa meg a terminált, és írja be a következő parancsot:

python wunderground.py

Ha megfelelően adta meg az API kulcsát és az állam / város kódjait, akkor annak vissza kell állítania a következőket:

Ha az Ön területére csapadékot jósolnak, akkor a LedBorg kimenetének így kell kinéznie:

Most fárasztó lenne várni egy esős napot a szkript megfelelő tesztelésére. Ha ma nincs esély az esőre a környéken, és azt szeretné, hogy a LED kigyulladjon, szerkessze a wunderground.py parancsfájlt, és a 13. sor „pop = pop” átereszt értékét cserélje le 20-nál nagyobb értékre, például a 60-ra. hogy előrejelzésünk visszatért. Csak ne felejtsen el visszaváltani a sort „pop = pop” -ra, ha kész.

Az utolsó lépés egy cron-feladat beállítása, amely az imént mentett szkriptet rendszeres időközönként automatikusan futtatja a LED-jelző áramának fenntartása érdekében. Mivel erre a feladatra szükség van mind a szkript, mind a következő e-mail indikátor számára, kitérünk egy cron job beállítására, miután megmutattuk, hogyan állíthatja be a másik szkriptet.

A LedBorg beállítása Gmail-mutatóként

Kinek nem tetszik az a dopaminjavítás, amely az új e-mailek bejövő üzeneteinek megtekintésével jár? Az oktatóanyag ezen részében bemutatjuk, hogyan használhatja a LedBorg-ot új Gmail-mutatóként. Csakúgy, mint legutóbb, a LED-ek vezérléséhez külső bemenetet (ebben az esetben Atom-hírcsatornát API helyett) és egy egyszerű szkriptet fogunk kombinálni.

Kicsit bővítenünk kell a Python telepítésünk funkcionalitását a telepítéssel FeedParser , egy Python RSS / Atom hírolvasó eszköz. Nyissa meg a terminált, és írja be a következő parancsot:

sudo easy_install feedparser

Miután a telepítés befejeződött, beállíthatjuk, hogy létrehozzuk a Gmail ellenőrző szkriptünket. Ismét a Leafpad segítségével illessze be a következő szöveget a szerkesztőbe. Módosítsa a felhasználónevet és a jelszót, hogy megfeleljen az ellenőrizni kívánt Gmail-fiók felhasználónevének és jelszavának.

import feedparser

# Írja be Gmail felhasználónevét
# és jelszó. Ne tartalmazzon
# a @ gmail.com része
# felhasználóneved.

felhasználónév = "felhasználónév"
password = "jelszó"

mail = int (feedparser.parse ("https: //" + felhasználónév + ":" + jelszó + "@ mail.google.com/gmail/feed/atom")["feed"]["fullcount"])

# A következő egy hibakereső érték.
# Szerkessze ki a kivonatot és változtassa meg
# a tesztelni kívánt 0 vagy 1 egész szám
# a LED válasz.

# mail = 0

ha mail> 0:
LedBorg = nyitott ('/ dev / ledborg', 'w')
LedBorg.write ('020')
írta: LedBorg
nyomtatás ('Mail!')
más:
LedBorg = nyitott ('/ dev / ledborg', 'w')
LedBorg.write ('000')
írta: LedBorg
nyomtatás ('Nincs levél!')

Mentse a szkriptet gmailcheck.py néven. Nyissa meg a terminált, és írja be a következő parancsot:

python gmailcheck.py

Ha e-mail ül a Gmail postaládájában, a LED zöldre vált, és ilyen választ kap:

Ha van e-mail a Gmail postaládájában, akkor a LedBorg így fog kinézni:

Csakúgy, mint az esőellenőrző szkript, itt is szerepel egy hibakeresési érték. Ha nincs új e-mailje, akkor küldhet magának egy e-mailt, amellyel 1-re emelheti a beérkező levelek számát, vagy szerkesztheti a megjegyzés kivonatát, és a szkript teszteléséhez módosíthatja a hibakeresési sort "mail = 1" -re. Ne felejtse el visszaállítani a sort, amikor végzett a teszteléssel.

Ugorjon az oktatóanyag következő szakaszába, és állítsa be a Gmail szkriptjének ütemezés szerinti futtatását.

Cron job beállítása a szkript futtatásához

Most, hogy van két szkriptünk, amikkel játszhatunk, be kell állítanunk egy cron feladatot annak érdekében, hogy a nap folyamán futtassuk őket, hogy a LED jelzője folyamatosan áramban legyen.

Az első dolog, amit meg akarunk tenni, a LED kikapcsolása, ha az jelenleg be van kapcsolva a korábbi kísérleteinkből. A terminál típusánál:

echo „000”> / dev / ledborg

Amíg még mindig a parancssorban tartózkodik, megnyithatja a cron szerkesztőt. Ha még soha nem állított be cron munkát, javasoljuk itt olvashatja el a használati útmutatónkat . Ez azt jelenti, hogy végigvezetjük Önt egy alapvető menetrend beállításán.

A terminál típusánál:

sudo crontab –e

Ez megnyitja a Raspbian cron táblázatot a Nano szövegszerkesztőben. A nyílbillentyűkkel görgessen le a legalsó részig. Itt állítjuk be a Python-szkriptjeink visszatérő cron-feladatát.

Ha fel akarja állítani az rain scriptet, írja be a következő sort a cron táblába:

* / 5 * * * * python /home/pi/wunderground.py

A kilépéshez nyomja meg a CTRL + X gombot; válassza az igen lehetőséget a meglévő cron tábla mentéséhez és felülírásához. A cron táblába beírt „* / 5 * * * *” érték úgy állítja be a parancsfájlt, hogy 5 percenként, örökké futjon.

Minden 5 perc jó időtartam egy szkript számára, amely ellenőrzi az előrejelzett esőt - akár azt is állíthatná, hogy ez egy kicsit túl agresszív -, de ha az e-mailje tetején akar lenni, akkor ez egy kicsit túl hosszú az értesítésre . Ha beállítja a Gmail értesítési parancsfájljának ütemezését, írja be a következő sort a cron táblázatba:

* / 1 * * * * python /home/pi/wunderground.py

Ez a bejegyzés percenként futtatja a gmailcheck.py parancsfájlt, sokkal gyorsabb értesítésért.


Ennyi van benne! Kísérletezhet saját Python-szkriptjeivel úgy, hogy kiemeli az if / else utasításokat a mieinkből, és vadonatúj változókkal próbálja ki őket. Ha talál egy bemeneti forrást az adatokhoz, akkor azt a Python szkriptben változóvá alakíthatja - tőzsdei átlagok, pollenszámok, a Twitter megemlíti, ha van rá API, akkor azt környezeti LED-jelzővé alakíthatja.

Végül szeretnék köszönetet mondani mindazon nagy erőforrásokért, amelyeket a projekten dolgoztam. Kicsit több mint egy évtized telt el azóta, hogy aktívan írtam programokat, és néhány kopogás kellett ahhoz, hogy a por és a rozsda kiszabaduljon. A közreműködők itt: / r / LearnPython segített elmozdulnom a Weather Underground API kimenetén, és tanulmányoztam, hogy Michael hogyan lépett át a Mitch Technél a Gmail Atom hírcsatornával foglalkozott megkönnyítette a LedBorg számára történő elemzést, és a Code Academy Python tanulási moduljainak tanulmányozása nagyszerű módja annak, hogy felvegyem egy olyan nyelv alapvető szintaxisát és felépítését, amelyet még soha nem használtam.

.entry-tartalom .entry-footer

Raspberry Pi Email Tutorial (Sending & Receiving With SendGrid)

Raspberry Pi Tutorial - Gmail LED Email Notifier

#255 Node-Red, InfluxDB, And Grafana Tutorial On A Raspberry Pi

Raspberry Pi Project: Online Weather Data Log With MySQL And PHP With Sense Hat.

Raspberry Pi: How To Turn On A Light With Your Phone

Raspberry Pi IoT Tutorial Series Part-3

Make A Raspberry Pi Gmail Notification Light

Top 5 Raspberry Pi DIY Projects Of All Time

Raspberry Pi DHT11 DHT22 Temperature And Humidity Sensor

5 Arduino Project Ideas That Could Be Used As Raspberry Pi Project Ideas


Hardver - Most Popular Articles

Hogyan lehet leküzdeni a koronavírust a Folding @ home és egy játék PC segítségével

Hardver Mar 20, 2025

CDC / NVIDIA Szeretne segíteni az új koronavírus elleni harcban? A PC grafikus processzorát működtetheti a Folding @ home alkalmazással. Csatlakozni fo..


Tényleg drága kábeleket kell vásárolnia?

Hardver Sep 28, 2025

Nevethet a „prémium” kábelek magas kiskereskedelmi árain a nagy dobozos kiskereskedelmi üzletekben. De lehetséges, hogy egy jobb minőségű kábel jobb digitális jelet ad..


Miért olyan drága a nyomtató tinta?

Hardver Sep 22, 2025

BETŰTELEN TARTALOM A nyomtató tinta drága, cseppenként drágább, mint a finom pezsgő vagy akár az emberi vér. Ha nem ment papír nélkül, akkor észreveszi, hogy sokat fi..


Az iPad használatának második monitorja a PC vagy a Mac számára

Hardver Jul 3, 2025

Több monitor is fantasztikus . Két egymás melletti képernyőn könnyebben láthatja az összes ablakot egyszerre, így produktív maradhat. Van iPaded? Használhatja..


Az Apple Watch néhány perc gyors beállítása

Hardver Jan 22, 2025

BETŰTELEN TARTALOM Nagy eséllyel nagyon mozgalmas életet élsz, és a dolgok nagyon időigényesek. Ha Ön azok közé tartozik, akik szeretik előre állítani az órákat, ho..


Az Apple Watch időjárási szövődményének alapértelmezett városának módosítása

Hardver Dec 9, 2024

BETŰTELEN TARTALOM Az Apple Watch szövődményei lehetővé teszik különféle információk megjelenítését és az alkalmazások gyors elérését az órán. Az Időjárás ..


Indítás USB-meghajtóról a VirtualBox-ban

Hardver Jul 4, 2025

A VirtualBox nem tudja elindítani a virtuális gépeket USB flash meghajtókról, így lehetővé teszi indítson egy élő Linux rendszert vagy indító USB-eszköz..


Kérdezd meg a HTG-t: A Windows 8 CP lejáratának kezelése, a Nintendo DS mentési mentései, az összetévesztett hangsávok a Windows Media Playerben

Hardver Mar 26, 2025

BETŰTELEN TARTALOM Hetente egyszer összegyűjtünk néhány nagyszerű olvasói kérdést, és mindenkivel megosztjuk a válaszokat. Ezen a héten megvizsgáljuk, hogy mit tegy�..


Kategóriák