Tartalomjegyzék:
- Kellékek
- 1. lépés: Jellemzők
- 2. lépés: Kábelezés
- 3. lépés: 3D nyomtatás és az üldözés felépítése
- 4. lépés: A Raspberry PI beállítása
- 5. lépés: Szoftver
- 6. lépés: IOT irányítópult
- 7. lépés: Az alapvető funkciók bemutatása
Videó: Sávszélesség -monitor: 7 lépés (képekkel)
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:40
Mivel gyakran megkérdeztem magamtól, hogy jelenleg milyen sávszélességet biztosít az internetszolgáltatóm (LTE modemet használok az internetkapcsolathoz), gondoltam egy sávszélesség -figyelő rendszerre. Mivel a rendszernek kompaktnak és energiatakarékosnak kell lennie, a Raspberry Pi Zero-t választottam központi elemként. A Raspberry WLAN -on keresztül csatlakozik a modemhez, ezért WLAN -problémák is észlelhetők.
Kellékek
- Raspberry Pi Zero WH
- Waveshare e-ink kijelző (2,9 hüvelykes e-papír modul)
- DC-DC átalakító (pl. DEBO DCDC 20W)
- RGB LED (régi készülékből kivéve)
- Nyomógomb
- Kapcsoló
- Relais modul (pl. 2 utas relé modul 2 utas relé modul)
- Férfi csatlakozó + női csatlakozó (mindkettő illeszkedik a modem tápkábeléhez)
- 3D nyomtatott tok
1. lépés: Jellemzők
- A Raspberry Pi Zero WLAN-on keresztül csatlakozik, teszteli a feltöltési és letöltési sebességet, és félóránként ping mérést végez. A speedtest.net parancssori verziója szolgál a mérések alapjául.
- A sávszélesség és a ping mérés eredménye egy e-ink kijelzőn jelenik meg. A mérés ideje is megjelenik.
- Ha a letöltési sebesség egy meghatározott küszöbérték alá esik, a relé rövid időre kikapcsolja és bekapcsolja a modemet. A modem tehát a készülék minden módosítása nélkül visszaáll (csak az áramellátás szakad meg).
- A készülék elején található gomb lehetővé teszi a sávszélesség mérésének manuális elindítását.
- A mért értékek egy Ubidots műszerfalon (IOT Portal) jelennek meg. Az áttekintésben láthatja a mért értékek időtörténetét és az utolsó visszaállítások okait is.
- Az IOT portálon talál egy gombot a modem távoli alaphelyzetbe állításához.
- A sávszélesség -monitor a modem tápellátását használja. Nincs szükség további ellátásra. A relé megszakítja a tápegység továbbítását a modemhez - a málna bekapcsolva marad.
2. lépés: Kábelezés
Az első képen a sávszélesség -monitor belső kialakítása látható:
A fő összetevők a következők:
- Nyomógomb
- E-ink kijelző
- Raspberry Pi Zero
- Relé modul
- RGB LED + ellenállások (az Ön által használt RGB LED -től függően)
- Kapcsoló
- DC-DC átalakító
- Női csatlakozó
A második képen a huzalozás vázlata látható. A tápfeszültség pozitív pólusa a kapcsolón keresztül az egyenáramú feszültségátalakítóhoz (amely az útválasztó 12 V-os tápfeszültségét 5 m-re alakítja a málna számára), és a relén keresztül (a normál csatlakoztatású tűn keresztül) vissza a tápfeszültséghez kimeneti csatlakozó. Így a modem áramellátást kap, amikor a sávszélesség -monitor ki van kapcsolva.
A sávszélesség mérése manuálisan indítható el egy gombbal. Az RGB LED a különböző működési állapotok megjelenítésére szolgál.
A Raspberry Pi és az e-ink kijelző közötti kapcsolat nem látható a kapcsolási rajzon. Csatlakoztassa a kijelzőt a táblázatnak és a fenti tűnek megfelelően.
3. lépés: 3D nyomtatás és az üldözés felépítése
A tokhoz a következő alkatrészekre van szükség (lásd a fenti képet):
- alsó rész
- felső rész
- elülső
- vissza
- 4x tartó
Minden alkatrész kinyomtatható támaszok nélkül. A fájlokat és néhány más tervemet is megtalálhatja a Thingiverse webhelyen:
A kijelző a tartókkal és egy kétoldalas szalaggal rögzíthető az előlapra. A gombos kapcsoló és a femal csatlakozó a hátsó és a hátsó panelhez van csavarozva. 3x20 mm -es csavarokkal kötöttem össze a ház két felét. Az elülső és a hátsó panel hornyainak tűrései viszonylag szűkek. Szükség esetén az elülső és a hátsó panelt a szélükön (belülről meg kell csiszolni a felület megsemmisülése érdekében).
4. lépés: A Raspberry PI beállítása
Ez a telepítési útmutató több telepítési utasítás összeállításán alapul különböző forrásokból (e-Ink kijelző gyártók, stb.). Számomra az utasítások a kívánt eredményhez vezettek. Mivel nem vagyok Linux szakértő, nem végeztek optimalizációkat vagy hasonlókat. Tisztában vagyok vele, hogy biztosan vannak jobb és hatékonyabb megoldások.
Tegyük fel, hogy a Raspbian már telepítve van a Pi -re (sok oktatóanyag található az alapvető operációs rendszer telepítéséről), és van egy kijelzője (miniHDMI -n keresztül), egér és billentyűzet csatlakoztatva. Feltételezzük a routerhez vagy az internethez megfelelően beállított WLAN -kapcsolatot is. Eltérő rendelkezés hiányában minden telepítési eljárást a terminálon végeznek.
Telepítse a Távoli asztalt (a PI eléréséhez a számítógépről):
sudo apt-get update
sudo apt-get
telepítsd az xrdp -t
vagy fej nélkül is dolgozhat az ssh-n keresztül (lásd pl.
Jelszó módosítása:
www.raspberrypi.org/forums/viewtopic.php?t=193620
Speedtest telepítése:
sudo
apt-get install python-pip
sudo pip install speedtest-cli
a sikeres telepítés teszteléséhez futtassa a Speedtestet a terminálon:
speedtest-cli
ha minden helyes, akkor valami olyat kell kapnia, mint a fenti első képen.
Telepítse a wiringPI -t
sudo apt-get install git-core
git klón git: //git.drogon.net/wiringPi
cd huzalozásPi
./épít
(lásd még:
Alternatív megoldás:
sudo apt-get install wiringpi
(lásd:
Telepítse a BCM2835 programot
(lásd:
Letöltés bcm2835-1.60.tar.gz (vagy újabb verzió, ha elérhető)
tar zxvf bcm2835-1.60.tar.gz
cd bcm2835-1.60
./Beállítás
készíteni
sudo ellenőrizze
sudo make install
Telepítse a Python képalkotó könyvtárat
sudo apt-get install python-imaging
Alternatív megoldás:
sudo apt-get install python-pil
Engedélyezze az I2C funkciót.
Futtassa a következő parancsot a Raspberry Pi tábla konfigurálásához:
sudo raspi-config
Válassza az Interfészbeállítások-> I2C -> igen lehetőséget az I2C magvezérlőjének elindításához. Ezután módosítania kell a konfigurációs fájlt is. Futtassa a következő parancsot a konfigurációs fájl megnyitásához:
sudo nano /etc /modules
Adja hozzá a következő két sort a konfigurációs fájlhoz
i2c-bcm2708
i2c-dev
Lásd még:
Engedélyezze az SPI funkciót
Futtassa a következő parancsot a Raspberry Pi tábla konfigurálásához:
sudo raspi-config
Válassza az Interfészbeállítások-> SPI -> igen lehetőséget az SPI core driver elindításához.
További betűtípusok telepítése:
sudo apt-get install ttf-mscorefonts-installer
Betűtípusok letöltése és telepítése (Roboto + Droid)
gksudo
pcmanfm
A filemanager elindítása root jogosultságokkal, és a truetype betűtípusok másolása a/usr/share/fonts/truetype mappába
Alternatív megoldás:
Másolja a betűtípusokat a Letöltések mappába WinSCP -vel (az ssh -t engedélyezni kell a WinSCP használatához)
sudo cp -r/home/pi/Letöltések/droid/usr/share/fonts/truetype
sudo cp -r/home/pi/Letöltések/roboto/usr/share/fonts/truetype
A betűtípus mappa eléréséhez root jogosultságokra van szüksége. Talán vannak jobb módszerek is erre (mint már említettem, nem vagyok Linux -szakértő), de mindkét módszer bevált.
Python fájlok:
A filemanger segítségével hozzon létre egy új "bandwidth_monitor" mappát
Másolja az összes fájlt a bandwidth_monitor könyvtárba
Tegye futtathatóvá a python fájlokat és a szkriptet
chmod +x *.py
chmod +x speedtest-cron.sh
A crontab beállítása
crontab -e
A Crontab a program végrehajtásának ütemezésére szolgál pl. sebességteszt 30 percenként. Adja hozzá a következő sorokat a crontabhoz (lásd a második ábrát is):
@reboot/usr/bin/python /home/pi/bandwidth_monitor/post_restart_message.py &
@reboot sleep 30 &&/usr/bin/python /home/pi/bandwidth_monitor/poll_test_now_button.py */30 * * * * /home/pi/bandwidth_monitor/speedtest-cron.sh */3 * * * */usr/ bin/python /home/pi/bandwidth_monitor/poll_killswitch.py 13 03 * * */usr/bin/python /home/pi/bandwidth_monitor/refresh_display.py
Az ütemezett feladatok leírása:
- újraindításkor az újraindítás üzenet íródik az IOT műszerfalra
- újraindításkor a teszt_now_button elindul
- 30 percenként sávszélesség -mérést végeznek
- 3 percenként ellenőrzik a távoli visszaállítás gomb (az IOT műszerfalon) állapotát
- naponta egyszer elindul a kijelző frissítési ciklusa.
A programok rövid leírását lásd a szoftver részben.
5. lépés: Szoftver
A szoftver több fájlra / programra van felosztva:
A bandwidth_monitor_0_4.py a fő program, amelyet a Crontab félóránként meghív. Sávszélesség -tesztet hajt végre (a speedtest.net parancssori verzióján keresztül). A teszt során az RGB LED kék színű. Ha a sávszélesség meghaladja a kiválasztott küszöbértéket, akkor az érték megjelenik az e-ink kijelzőn (időbélyeggel együtt), és exportálásra kerül az Ubidots műszerfalba. Ha a sávszélesség a küszöbérték alatt van, a LED pirosan világít, és a mérést rövid késleltetés után megismétlik. 3 negatív kísérlet után a relé aktiválódik, és így a modem áramellátása megszakad. A visszaállítási kód (érték = 2) be van írva a napló részbe.
poll_killswitch.py beolvassa a logikai változó állapotát az irányítópulton. Ha a killswitch_state igaz, akkor a relé aktiválódik, és a modem áramellátása megszakad. Az RGB LED zöldre vált a killswitch lekérdezése közben. A visszaállítás után a killswitch_state értéke hamis, és egy bejegyzés jön létre a műszerfal napló részében (érték = 1).
poll_test_now_button.py várja a tok előlapján található nyomógomb megnyomását. A gomb aktiválásával a sávszélesség mérése manuálisan aktiválódik. A program indításakor (a Raspberry Pi újraindításakor) az RGB LED pirosan villog.
A post_restart_message.py írja a visszaállítási kódot (érték = 3) a műszerfal napló részébe. Ez azt jelzi, hogy a sávszélesség -figyelő újraindult. A program indításakor az RGB LED kéken villog.
A test_LED.py és a test_relay.py egyszerű parancsfájlok, amelyekkel tesztelhető az RGB LED és a relé hardver funkciója.
Az epdconfig.py és az epd2in9.py az illesztőprogram a Waveshare által biztosított e-ink kijelzőhöz.
Annak érdekében, hogy a programok hozzáférhessenek az Ubidots irányítópulthoz, hozzá kell adnia egyéni tokeneket és eszköz- vagy változóneveket (ha különböző jelöléseket használ). Keresse meg a fenti képhez hasonló részt (cserélje le XXXXXXXX jelszavával).
Az irányítópult felépítéséről és a műszerfal Python programba történő integrálásáról szóló átfogó oktatóanyagok közvetlenül az Ubidots oldalon (https://help.ubidots.com/en/) vagy a Google -on találhatók.
6. lépés: IOT irányítópult
Az Ubidots által üzemeltetett irányítópult (lásd: https://ubidots.com) számos olyan területet tartalmaz, amelyeket az alábbiakban röviden ismertetünk.
- A feltöltési és letöltési sebesség időbeli sorrendje. Félóránként új érték kerül be a diagramba.
- A mért ping idő időbeli lefolyása. Félóránként új érték kerül be a diagramba.
- Az átlagos letöltési sebesség időbeli sorrendje. A 24 óra átlagértékét kiszámítják és a diagramba írják.
- Az aktuális mérési értékek táblázatos ábrázolása, beleértve az időbélyeget.
- Távirányító gomb a modem visszaállításához az interneten keresztül. A lekérdezés 3 percenként történik, azaz eltarthat egy ideig, amíg a műveletet végrehajtják.
- Az utolsó nullázás naplózása, beleértve a visszaállítás okát (távoli aktiválás, kikapcsolás vagy feszültségkiesés, a minimális sávszélesség alá csökken)
Az irányítópult felépítéséről és a műszerfal Python programba történő integrálásáról szóló átfogó oktatóanyagok közvetlenül az Ubidots oldalon (https://help.ubidots.com/en/) vagy a Google -on találhatók.
Ajánlott:
DIY 37 LED Arduino rulett játék: 3 lépés (képekkel)
DIY 37 Leds Arduino Roulette Játék: A rulett egy kaszinójáték, amelyet a francia szóról neveztek el, jelentése kis kerék
Covid védősisak 1. rész: Bevezetés a Tinkercad áramkörökbe!: 20 lépés (képekkel)
Covid védősisak 1. rész: Bevezetés a Tinkercad áramkörökbe!: Helló, barátom! Ebben a kétrészes sorozatban megtanuljuk használni a Tinkercad áramköreit - ez egy szórakoztató, hatékony és oktató eszköz az áramkörök működésének megismerésére! A tanulás egyik legjobb módja, ha megteszed. Tehát először megtervezzük saját projektünket:
Útmutató: A Raspberry PI 4 fej nélküli (VNC) telepítése Rpi-képalkotóval és képekkel: 7 lépés (képekkel)
Útmutató: A Raspberry PI 4 fej nélküli (VNC) telepítése Rpi-képalkotóval és képekkel: Ezt a Rapsberry PI-t tervezem használni egy csomó szórakoztató projektben a blogomban. Nyugodtan nézd meg. Vissza akartam kezdeni a Raspberry PI használatát, de nem volt billentyűzetem vagy egér az új helyen. Rég volt, hogy beállítottam egy málnát
Bolt - DIY vezeték nélküli töltő éjszakai óra (6 lépés): 6 lépés (képekkel)
Bolt - DIY vezeték nélküli töltés éjszakai óra (6 lépés): Az induktív töltés (más néven vezeték nélküli töltés vagy vezeték nélküli töltés) a vezeték nélküli áramátvitel egyik típusa. Elektromágneses indukciót használ a hordozható eszközök áramellátásához. A leggyakoribb alkalmazás a Qi vezeték nélküli töltő
A számítógép szétszerelése egyszerű lépésekkel és képekkel: 13 lépés (képekkel)
A számítógép szétszerelése egyszerű lépésekkel és képekkel: Ez az utasítás a számítógép szétszereléséről szól. A legtöbb alapvető alkatrész moduláris és könnyen eltávolítható. Fontos azonban, hogy szervezett legyen ezzel kapcsolatban. Ez segít elkerülni az alkatrészek elvesztését, és az újra összerakást is