INHOUDSOPGAWE:
- Stap 1: Vereistes
- Stap 2: Opstel
- Stap 3: Koppel die NanoPi aan Ubidots met behulp van Python
- Stap 4: Dit is nou tyd om te kodeer
- Stap 5: Opsionele stappe: hernoem die toestel en veranderlikes
- Stap 6: Skep 'n Crontab om die script elke minuut uit te voer
- Stap 7: Ubidots -dashboard
- Stap 8: Kennisgewings van stadig/geen internet
- Stap 9: Gevolgtrekking
2025 Outeur: John Day | [email protected]. Laas verander: 2025-01-13 06:56
Raspberry Pi het 'n wyd gebruikte toestel geword, nie net vir prototipering en opvoedkundige doeleindes nie, maar ook vir industriële produksieprojekte binne besighede.
Behalwe die grootte van die Pi, die lae koste en die volledig bedryfstelsel Linux -bedryfstelsel, kan dit ook met ander randapparatuur kommunikeer deur middel van GPIO -penne (Input/Ourput Pins), sodat u redelik robuuste hardeware -toepassings kan kodeer sonder om 'n kenner te wees van ingebedde elektronika.
Na aanleiding van hierdie artikel leer u hoe u u internetsnelheid kan meet met behulp van 'n Raspberry Pi en die parameters na die Ubidots -wolk stuur om die waarskuwings te skep vir die monitering van u internetverbinding gedurende die dag!
Stap 1: Vereistes
Om hierdie tutoriaal te voltooi, benodig u:
- 'N Framboos Pi wat aan die internet gekoppel is
- Ubidots -rekening - of - STEM -lisensie
Stap 2: Opstel
Hierdie gids veronderstel dat u Raspberry Pi gekonfigureer is en reeds aan die internet gekoppel is. As dit nie gekonfigureer is nie, kan u dit vinnig doen met behulp van hierdie snelstartgids van die Raspberry Pi Foundation.
OPMERKING: as u 'n WiFi -dongle gebruik, stel ons voor dat u Wicd gebruik om u WiFi -verbinding te bestuur.
Stap 3: Koppel die NanoPi aan Ubidots met behulp van Python
As u Raspberry Pi aan die internet gekoppel is, verifieer u die IP -adres wat aan die kaarttoegang toegeken is met behulp van ssh in u rekenaarterminal:
ssh pi@{IP_Address_assigned}
Gebruikersnaam: piWagwoord: framboos
Soos u die prent hierbo kan sien, was u toegang suksesvol, en die gebruiker is nou pi@raspberrypi.
Laat ons nou 'n paar pakkette opgradeer en pip, Python se pakkiebestuurder, installeer:
sudo apt-get update> sudo apt-get upgrade
sudo apt-get install python-pip python-dev build-essential
Installeer die onderstaande biblioteke:
- versoeke: om HTTP -versoeke van Python na Ubidots te rig
- pyspeedtest: om die internetspoed van Python te meet
pip installeer versoeke pyspeedtest
Pro -tip: algemene vrae en probleemoplossing - as u 'n toestemmingsprobleem ondervind wanneer u die nodige pakkette installeer, verander die gebruikersmodus na root met behulp van die volgende opdrag:
sudo su
Stap 4: Dit is nou tyd om te kodeer
Skep 'n Python -script in die rekenaar se terminale:
nano ubi_speed_tester.py
En kopieer die kode in hierdie artikel. Maak seker dat u u Ubidots -rekeningtoken in die versoek -URL vervang. As u nie weet hoe u u Ubidots -token kan kry nie, lees die onderstaande artikel:
Soek u TOKEN uit u Ubidots -rekening
Laat ons nou die script toets:
python ubi_speed_tester.py
As u behoorlik werk, sien u 'n nuwe toestel in u Ubidots -rekening met drie veranderlikes: Laai af, Laai op en Ping.
Stap 5: Opsionele stappe: hernoem die toestel en veranderlikes
Die name van die veranderlikes wat geskep is, is dieselfde as die API -etikette, wat die ID's is wat die API gebruik. Dit beteken nie dat hul name nie verander kan word nie, daarom beveel ek aan dat u die name van die toestelle en veranderlikes verander om dit vriendeliker te maak. Sien die onderstaande artikel om te weet hoe u die veranderlikes se name hernoem:
Hoe om die toestelnaam en veranderlike naam aan te pas
U kan ook die eenhede by elke veranderlike voeg.
Stap 6: Skep 'n Crontab om die script elke minuut uit te voer
Noudat ons die script getoets het, kan ons dit elke N minute outomaties laat loop. Vir hierdie doel gebruik ons die Linux Cron -instrument vir doeltreffendheid.
1.- Maak die lêer uitvoerbaar in die rekenaar se terminale:
chmod a+x ubi_speed_tester.py
2.- Skep 'n voorblad:
Om een of ander rede werk die opdrag "crontab -e" nie uit die boks nie, dus is die oplossing om cron handmatig te installeer met die onderstaande opdragte:
sudo apt-get install cron
tik dan:
crontab -e
en voeg die reël by:
* * * * * python /home/pi/ubi_speed_tester.py
om die skrip elke minuut uit te voer.
3- Herlaai en kyk na u data in Ubidots
Om die Raspberry Pi te herlaai, moet u as wortel vir hierdie tipe gebruik:
sudo su
Tik dan die onderstaande opdrag om die Raspberry Pi te herlaai:> herlaai
Wag 'n minuut en gaan dan na Ubidots om die resultate elke minuut te sien bywerk
Stap 7: Ubidots -dashboard
Noudat u data in Ubidots is, kan u dashboards en geleenthede met u data skep. Hier is 'n voorbeeld:
Staafgrafiek -widget
Raadpleeg die hulpsentrum vir meer inligting oor Ubidots -dashboards.
Stap 8: Kennisgewings van stadig/geen internet
Om die spoed van u internet te monitor as u weg is, het ons 'n paar geleenthede bygevoeg om 'n gebruiker daarvan in kennis te stel: as die internet stadig is of as daar geen internet is nie.
- Waardegebaseerde gebeurtenis (internet is stadig)
- Gebeurtenis op aktiwiteit (internet is onaktief)
Raadpleeg hierdie artikel in die hulpsentrum vir meer inligting vir meer inligting oor Ubidots -geleenthede.
Stap 9: Gevolgtrekking
Ek het net 'n paar minute 'n maklike DIY -internetsnelheidstoetser gebou. Plaas nou u Raspberry Pi op 'n veilige plek agter u router en wonder nooit weer die snelheid van u internet nie.
Gelukkige inbraak:)