Satura rādītājs:
Video: Interneta ātruma mērītājs: 4 soļi (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:57
Pārskats
Šis "interneta ātruma mērītājs" ļaus jums gandrīz reālā laikā pārraudzīt tīkla izmantošanu. Šī informācija ir pieejama lielākās daļas mājas maršrutētāju tīmekļa saskarnē. Tomēr, lai piekļūtu tai, jums jāpārtrauc pašreizējais uzdevums, lai to meklētu.
Es vēlējos apskatīt šo informāciju, nepārtraucot manu pašreizējo uzdevumu, parādīt to formātā, kas bija saprotams tikai ar ātru skatienu, un iegūt informāciju tādā veidā, kas darbotos pēc iespējas vairāk maršrutētāju, lai citi varētu potenciāli arī to izmantot.
Kā tas dara lietas
Es nolēmu izmantot SNMP (vienkāršu tīkla pārvaldības protokolu) kā veidu, kā iegūt informāciju no maršrutētāja. SNMP tiek plaši izmantots tīkla iekārtās, un, ja jūsu ierīce to pēc noklusējuma neatbalsta, SNMP ieviešanai var izmantot DDWRT (atvērtā pirmkoda maršrutētāja programmaparatūru).
Lai parādītu informāciju viegli saprotamā veidā, es izmantoju automašīnas mērierīci. Automobiļu mērinstrumenti ir paredzēti, lai sniegtu jums informāciju, netraucējot un nesajaucot, tāpēc vadītājs var paturēt acis uz ceļa. Arī man bija daži, kas apkārt.
Tā kā tas būtu uz mana galda, es nolēmu izveidot arī aizmugurējo apgaismojumu RGB, jo datoru piederumiem vajadzētu būt RGB. Taisnība?
Izaicinājumi
Manie mērinstrumenti izmantoja Air-Core izpildmehānismu. Pirms šī projekta es par tiem nebiju dzirdējis.
No Wikipedia: Gaisa kodola mērītājs sastāv no divām neatkarīgām, perpendikulārām spolēm, kas ieskauj dobu kameru. Adatas vārpsta izvirzās kamerā, kur pie vārpstas ir piestiprināts pastāvīgais magnēts. Kad strāva plūst caur perpendikulārajām spolēm, to magnētiskie lauki pārklājas, un magnēts var brīvi izlīdzināties ar kombinētajiem laukiem.
Es nevarēju atrast Arduino bibliotēku, kas pārvaldnieka konfigurācijā atbalstītu SNMP. SNMP ir divas galvenās formas - aģents un vadītājs. Aģenti atbild uz pieprasījumu, un vadītāji nosūta pieprasījumu aģentiem. Man izdevās panākt pārvaldnieka funkcionalitāti, modificējot 0neblock izveidoto Arduino_SNMP bibliotēku. Es nekad neesmu programmējis C ++, izņemot to, ka LED mirgo Arduino, tāpēc, ja rodas problēmas ar SNMP bibliotēku, informējiet mani, un es mēģināšu tās novērst, pagaidām tas darbojas.
Turklāt SNMP nav paredzēts reāllaika skatīšanai. Paredzētais lietojums ir statistikas izsekošanai un pārtraukumu noteikšanai. Šī iemesla dēļ maršrutētāja informācija tiek atjaunināta tikai aptuveni ik pēc 5 sekundēm (jūsu ierīce var atšķirties). Tas ir iemesls kavējumam starp skaitli ātruma testā un adatas kustību.
1. darbība: instrumenti un materiāli
Mums būs nepieciešami 3 pilni H tilti. Manis izmantotie modeļi ir Dual TB6612FNG un Dual L298N.
Katram Air-Core izpildmehānismam ir nepieciešami 2 pilni H tilti, jo spoles ir jākontrolē neatkarīgi.
Vienam no manis izmantotajiem mērinstrumentiem ir viena spole, kas īsslēgta zemē ar diodi un rezistoru. Es neesmu pārliecināts par zinātni, kas ir aiz tā, bet tas ļauj tai pagriezties aptuveni 90 grādus, ja tiek darbināta tikai viena spole.
Es izmantošu 12v līdz 5v regulatoru, kas ir daļa no L298N plates, kuru izvēlējos ESP32 barošanai.
Visas LED shēmas nav pieejamas, kā arī JST savienotāji. Jūs varētu viegli lodēt vadus tieši uz ESP32 un motora draiveri.
3. solis: koda dizains
Koda iestatīšana
Mums būs jāiestata Arduino, lai varētu izmantot ESP32 plati. Šeit ir labs ceļvedis, kas palīdzēs jums veikt ESP32 Arduino iestatīšanu.
Jums būs nepieciešama arī Arduino_SNMP bibliotēka, kas atrodas šeit.
Lai konfigurētu kodu, jums būs jāapkopo informācija.
- Maršrutētāja IP
- Maksimālais augšupielādes ātrums
- Maksimālais lejupielādes ātrums
- Jūsu WiFi vārds un parole
- OID, kas satur oktetu skaitu, ir maršrutētāju WAN saskarnē “ieeja” un “izeja”
Vēlamajai informācijai ir standarta OID (objektu identifikatori). Saskaņā ar MIB-2 standartu vēlamie skaitļi ir šādi:
ifInOctets.1.3.6.1.2.1.2.2.1.16. X
ifOutOctets.1.3.6.1.2.1.2.2.1.10. X
Kur X ir interfeisam piešķirtais numurs, no kura vēlaties iegūt statistiku. Man šis skaitlis ir 3. Viens veids, kā apstiprināt, ka šis ir pareizais OID, un noteikt, kāds saskarnes numurs jums jāizmanto, ir izmantot tādu rīku kā MIB pārlūks.
Lai iegūtu maksimālo ātrumu, es izmantoju SpeedTest.net. kad ātrums būs Mb / s, tas būs jāpārvērš oktetos, izmantojot šo formulu.
Oktetes sekundē = (ātruma testa rezultāts Mbps * 1048576) / 8
Koda funkcija
Kods nosūta maršrutētājam SNMP saņemšanas pieprasījumu. Pēc tam maršrutētājs atbild ar numuru, skaitlis norāda nosūtīto vai saņemto oktetu skaitu. Tajā pašā laikā mēs reģistrējam milisekundes, kas pagājušas kopš Arduino sākuma.
Kad šis process ir noticis vismaz divas reizes, mēs varam aprēķināt lietojuma procentuālo daudzumu, pamatojoties uz mūsu maksimālajām vērtībām, izmantojot šo kodu
procentiDown = ((pludiņš) (baitsDown - baitsDownLast)/(pludiņš) (maxDown * ((milis () - laiksLast)/1000))) * 100;
Matemātika sadalās šādi:
octetsDiff = snmp_result - Iepriekšējais_ snmp_rezultāts
timeFrame = currentTime - timeLast
MaxPosableOverTime = (timeFrame * Octets_per_second)/1000
Procenti = (oktetiDiff / MaxPosableOverTime) * 100
Tagad, kad mums ir tīkla izmantošanas procenti, mums tas vienkārši jāraksta uz mērierīci. Mēs to darām 2 soļos. Vispirms mēs izmantojam funkciju updateDownloadGauge. Šajā funkcijā mēs izmantojam “karti”, lai procentus pārvērstu par skaitli, kas apzīmē radiāna stāvokli mērierīcē. Tad mēs piešķiram šo numuru funkcijai setMeterPosition, lai adatu pārvietotu uz jauno pozīciju.
4. solis: korpusa dizains
Lai saturētu visu, es izveidoju korpusu fusion360 un to izdrukāju 3D. Manis izstrādātais dizains ir salīdzinoši vienkāršs. Es izmantoju karstu līmi, lai piestiprinātu sastāvdaļas iekšpusē, un mērinstruments tiek turēts vietā, saspiežot starp priekšējo vāku un aizmugurējo vāku. Lai izveidotu korpusu, jums nav jāizmanto 3D drukāšana. Piemēram, jūs varat izgatavot futrāli no koka vai ievietot visu atpakaļ oriģinālajā korpusā, kurā bija mērinstrumenti.
Mani STL faili ir pieejami vietnē thingiverse, ja vēlaties tos apskatīt, taču maz ticams, ka tie jums noderēs, ja vien nesaņemsiet tieši tādus mērinstrumentus kā es.
Lietas faili:
Paldies, ka izlasījāt. Paziņojiet man, ja jums ir kādi jautājumi, un es darīšu visu iespējamo, lai atbildētu.
Ieteicams:
Vēja ātruma un saules starojuma ierakstītājs: 3 soļi (ar attēliem)
Vēja ātruma un saules starojuma reģistrators: man ir jāreģistrē vēja ātrums un saules starojuma jauda (izstarojums), lai novērtētu, cik daudz enerģijas varētu iegūt ar vēja turbīnu un/vai saules paneļiem. Es mērīšu vienu gadu, analizēšu datus un pēc tam izveidojiet izslēgtu tīkla sistēmu
Nagging Robot® - Satraucošs dzīves ātrumā: 7 soļi (ar attēliem)
Nagging Robot® | Satraucošs dzīves ātrumā: vienkāršākais veids, kā pārliecināties, ka katru dienu dusmojaties. Nagging Robot® ir risinājums. Nagging Robot® Annooy® 900 Annooy® 900 tika rūpīgi izstrādāts ar vismodernāko DIY tehnoloģiju, lai kaitinātu cilvēkus. autori Daniels Locatelli un TzuYing Chen Vairāk spēka
Netīrumu lēts netīrumu mērītājs-9 USD uz Arduino balstīts skaņas augstuma mērītājs: 4 soļi (ar attēliem)
Netīrumi Lēts netīrumu mērītājs-9 ASV dolāri uz Arduino balstīts skaņas augstuma mērītājs: Dytters (A.K.A dzirdamie augstuma mērītāji) tik daudzus gadus izglāba izpletņlēcēju dzīvības. Tagad arī Audible Abby ietaupīs viņiem naudu. Basic Dytters ir četri trauksmes signāli, viens ceļā uz augšu un trīs lejup. Lidmašīnā paceļoties, izpletņlēcējiem jāzina, kad
Ātruma jutīga kartona tastatūra: 14 soļi (ar attēliem)
Velocity Sensitive Cardboard Keyboard: Sveiki, šajā apmācībā es vēlējos izmantot vienīgo kartona gabalu, kas man bija visā manā mājā, karantīnas dēļ es nevarēju iegūt vairāk, bet man tas nav vajadzīgs! Ar nelielu gabalu mēs varam veikt interesantus eksperimentus. Šoreiz es brin
Izveidojiet savu BiQuad 4G antenu ar ātruma pārbaudi: 7 soļi (ar attēliem)
Izveidojiet savu BiQuad 4G antenu ar ātruma testu: šajā pamācībā es jums parādīšu, kā es izveidoju BiQuad 4G antenu. Signāla uztveršana manās mājās ir slikta kalnu dēļ manās mājās. Signālu tornis atrodas 4,5 km attālumā no mājas. Kolombo rajonā mans pakalpojumu sniedzējs nodrošina ātrumu 20 Mb / s. bet pie m