Πίνακας περιεχομένων:
Βίντεο: Μετρητής ταχύτητας Internet: 4 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:37
ΣΦΑΙΡΙΚΗ ΕΙΚΟΝΑ
Αυτός ο "μετρητής ταχύτητας Internet" θα σας δώσει σχεδόν πραγματικό χρόνο επίβλεψη της χρήσης του δικτύου σας. Αυτές οι πληροφορίες είναι διαθέσιμες στη διεπαφή ιστού των περισσότερων δρομολογητών σπιτιού. Ωστόσο, η πρόσβαση σε αυτό απαιτεί να σταματήσετε την τρέχουσα εργασία σας για να το αναζητήσετε.
Wantedθελα να δω αυτές τις πληροφορίες χωρίς να χρειαστεί να διακόψω την τρέχουσα εργασία μου, να τις εμφανίσω σε μια μορφή κατανοητή με μια γρήγορη ματιά και να λάβω τις πληροφορίες με έναν τρόπο που θα λειτουργούσε με όσο το δυνατόν περισσότερους δρομολογητές, ώστε άλλοι να μπορούν ενδεχομένως να το χρησιμοποιήσετε επίσης.
Πώς κάνει τα πράγματα
Αποφάσισα το SNMP (Simple Network Management Protocol) ως τον τρόπο λήψης των πληροφοριών από το δρομολογητή. Το SNMP χρησιμοποιείται ευρέως σε εξοπλισμό δικτύωσης και εάν η συσκευή σας δεν το υποστηρίζει από προεπιλογή, το DDWRT (υλικολογισμικό δρομολογητή ανοιχτού κώδικα) μπορεί να χρησιμοποιηθεί για την εφαρμογή του SNMP.
Για να εμφανιστούν οι πληροφορίες με τρόπο που είναι εύκολο να κατανοηθεί, χρησιμοποίησα ένα μετρητή από ένα αυτοκίνητο. Οι μετρητές αυτοκινήτων έχουν σχεδιαστεί για να σας παρέχουν πληροφορίες χωρίς να σας αποσπούν την προσοχή ή να σας μπερδεύουν, ώστε ο οδηγός να μπορεί να έχει τα μάτια του στο δρόμο. Επίσης, έκανα μερικά ξαπλωμένα.
Δεδομένου ότι αυτό θα ήταν στο γραφείο μου, αποφάσισα ότι θα φτιάξω επίσης το πίσω φως RGB επειδή τα αξεσουάρ υπολογιστών πρέπει να είναι όλα RGB. Σωστά?
Προκλήσεις
Οι μετρητές που είχα χρησιμοποιήσει έναν ενεργοποιητή Air-Core. Δεν τα είχα ξανακούσει αυτά πριν από αυτό το έργο.
Από τη Wikipedia: Ο μετρητής πυρήνα αέρα αποτελείται από δύο ανεξάρτητα, κάθετα πηνία που περιβάλλουν έναν κοίλο θάλαμο. Ένας άξονας βελόνας προεξέχει στον θάλαμο, όπου ένας μόνιμος μαγνήτης είναι προσαρτημένος στον άξονα. Όταν το ρεύμα ρέει μέσω των κάθετων πηνίων, τα μαγνητικά τους πεδία υπερτίθενται και ο μαγνήτης είναι ελεύθερος να ευθυγραμμιστεί με τα συνδυασμένα πεδία.
Δεν μπόρεσα να βρω μια βιβλιοθήκη για το Arduino που να υποστηρίζει SNMP στη διαμόρφωση του διαχειριστή. Το SNMP έχει δύο κύριες μορφές, τον πράκτορα και τον διαχειριστή. Οι πράκτορες απαντούν στο αίτημα και οι διαχειριστές στέλνουν αίτημα στους πράκτορες. Κατάφερα να λειτουργήσω τη λειτουργικότητα του διαχειριστή τροποποιώντας τη βιβλιοθήκη Arduino_SNMP που δημιουργήθηκε από το 0neblock. Δεν έχω προγραμματίσει ποτέ σε C ++ εκτός από το να αναβοσβήνει η λυχνία LED σε ένα Arduino, οπότε αν υπάρχουν προβλήματα με τη βιβλιοθήκη SNMP, ενημερώστε με και θα προσπαθήσω να τα διορθώσω, προς το παρόν όμως λειτουργεί.
Επιπλέον, το SNMP δεν έχει σχεδιαστεί για προβολή σε πραγματικό χρόνο. Η προβλεπόμενη χρήση είναι για την παρακολούθηση στατιστικών και τον εντοπισμό διακοπών λειτουργίας. Εξαιτίας αυτού, οι πληροφορίες στο δρομολογητή ενημερώνονται μόνο κάθε 5 δευτερόλεπτα (η συσκευή σας μπορεί να διαφέρει). Αυτή είναι η αιτία της καθυστέρησης μεταξύ του αριθμού στη δοκιμή ταχύτητας και της κίνησης της βελόνας.
Βήμα 1: Εργαλεία και υλικά
Θα χρειαστούμε 3 γεμάτες H-γέφυρες. Τα μοντέλα που χρησιμοποίησα είναι Dual TB6612FNGand Dual L298N.
Κάθε ενεργοποιητής αέρα-πυρήνα απαιτεί 2 γεμάτες γέφυρες Η επειδή τα πηνία πρέπει να ελέγχονται ανεξάρτητα.
Ένας από τους μετρητές που χρησιμοποιώ έχει ένα πηνίο βραχυκυκλωμένο στη γείωση με μια δίοδο και μια αντίσταση. Δεν είμαι σίγουρος για την επιστήμη πίσω από αυτό, αλλά αυτό το επιτρέπει να περιστρέφεται περίπου 90 μοίρες με μόνο ένα πηνίο να τροφοδοτείται.
Θα χρησιμοποιήσω τον ρυθμιστή 12v έως 5v που είναι μέρος της πλακέτας L298N που επέλεξα για να τροφοδοτήσει το ESP32.
Όλα τα κυκλώματα LED είναι προαιρετικά, καθώς και οι σύνδεσμοι JST. Θα μπορούσατε εύκολα να κολλήσετε τα καλώδια απευθείας στο ESP32 και στον οδηγό κινητήρα.
Βήμα 3: Σχεδιασμός κώδικα
Ρύθμιση κώδικα
Θα χρειαστεί να ρυθμίσουμε το Arduino για να μπορέσουμε να χρησιμοποιήσουμε τον πίνακα ESP32. Υπάρχει ένας καλός οδηγός που βρίσκεται εδώ και θα σας καθοδηγήσει στη ρύθμιση του ESP32 Arduino.
Θα χρειαστείτε επίσης τη βιβλιοθήκη Arduino_SNMP που βρίσκεται εδώ.
Για να διαμορφώσετε τον κώδικα, θα χρειαστεί να συλλέξετε ορισμένες πληροφορίες.
- IP δρομολογητή
- Μέγιστη ταχύτητα μεταφόρτωσης
- Μέγιστη ταχύτητα λήψης
- Το όνομα και ο κωδικός πρόσβασής σας WiFi
- OID που περιέχει τις οκτάδες μετράει για "in" και "out" στη διεπαφή WAN των δρομολογητών σας
Υπάρχουν τυπικά OIDs (Object Identifiers) για τις πληροφορίες που θέλουμε. Σύμφωνα με το πρότυπο MIB-2, οι αριθμοί που θέλουμε είναι:
ifInOctets.1.3.6.1.2.1.2.2.1.16. X
ifOutOctets.1.3.6.1.2.1.2.2.1.10. X
Όπου X είναι ο αριθμός που έχει εκχωρηθεί στη διεπαφή από την οποία θέλετε να λάβετε τα στατιστικά στοιχεία. Για μένα αυτός ο αριθμός είναι 3. Ένας τρόπος για να επιβεβαιώσετε ότι αυτό είναι το σωστό OID για εσάς και για να προσδιορίσετε τον αριθμό διεπαφής που πρέπει να χρησιμοποιήσετε, είναι να χρησιμοποιήσετε ένα εργαλείο όπως το MIB Browser.
Για να λάβω μέγιστες ταχύτητες χρησιμοποίησα το SpeedTest.net. μόλις έχετε τις ταχύτητές σας σε Mbps θα χρειαστεί να τις μετατρέψετε σε οκτάδες χρησιμοποιώντας αυτόν τον τύπο.
Οκτέτες ανά δευτερόλεπτο = (Αποτέλεσμα δοκιμής ταχύτητας σε Mbps * 1048576) / 8
Λειτουργία κώδικα
Ο κώδικας στέλνει ένα αίτημα λήψης SNMP στο δρομολογητή. Στη συνέχεια, ο δρομολογητής απαντά με έναν αριθμό, ο αριθμός αντιπροσωπεύει τον αριθμό των οκτάδων που έχουν σταλεί ή ληφθεί. Ταυτόχρονα, καταγράφουμε τον αριθμό των χιλιοστών του δευτερολέπτου που έχουν περάσει από την έναρξη του Arduino.
Μόλις πραγματοποιηθεί αυτή η διαδικασία τουλάχιστον δύο φορές, μπορούμε να υπολογίσουμε το ποσοστό χρήσης βάσει των μέγιστων τιμών μας χρησιμοποιώντας αυτόν τον κώδικα
ποσοστάDown = ((float) (byteDown - byteDownLast)/(float) (maxDown * ((millis () - timeLast)/1000))) * 100;
Τα μαθηματικά αναλύονται ως εξής:
octetsDiff = snmp_result - Previous_ snmp_result
timeFrame = currentTime - timeLast
MaxPosableOverTime = (timeFrame * Octets_per_second)/1000
Ποσοστό = (octetsDiff / MaxPosableOverTime) * 100
Τώρα που έχουμε το ποσοστό χρήσης του δικτύου, πρέπει απλώς να το γράψουμε στον μετρητή. Το κάνουμε σε 2 βήματα. Αρχικά χρησιμοποιούμε τη συνάρτηση updateDownloadGauge. Σε αυτή τη συνάρτηση χρησιμοποιούμε τον "χάρτη" για να μετατρέψουμε το ποσοστό σε έναν αριθμό που αντιπροσωπεύει μια ακτινική θέση στο μετρητή. Στη συνέχεια, δίνουμε αυτόν τον αριθμό στη συνάρτηση setMeterPosition για να μετακινήσουμε τη βελόνα στη νέα θέση.
Βήμα 4: Σχεδιασμός θήκης
Για να περιέχει τα πάντα, σχεδίασα ένα περίβλημα σε fusion360 και το εκτύπωσα 3D. Ο σχεδιασμός που έφτιαξα είναι σχετικά απλός. Χρησιμοποίησα θερμή κόλλα για να στερεώσω τα εξαρτήματα στο εσωτερικό και ο μετρητής κρατιέται στη θέση του τσιμπώντας μεταξύ του μπροστινού καλύμματος και του πίσω καλύμματος. Δεν χρειάζεται να χρησιμοποιήσετε τρισδιάστατη εκτύπωση για να δημιουργήσετε τη θήκη. Για παράδειγμα, μπορείτε να φτιάξετε μια θήκη από ξύλο ή να βάλετε τα πάντα πίσω στην αρχική θήκη που μπήκαν οι μετρητές.
Τα αρχεία μου STL είναι διαθέσιμα στο thingiverse αν θέλετε να τα δείτε, αλλά είναι απίθανο να λειτουργήσουν για εσάς, εκτός εάν λάβετε τα ίδια μετρητικά που χρησιμοποίησα.
Αρχεία υπόθεσης:
Ευχαριστώ για την ανάγνωση. Ενημερώστε με εάν έχετε οποιεσδήποτε ερωτήσεις και θα κάνω ό, τι καλύτερο μπορώ για να απαντήσω.
Συνιστάται:
Καταγραφέας ταχύτητας ανέμου και ηλιακής ακτινοβολίας: 3 βήματα (με εικόνες)
Wind Speed and Solar Radiation Recorder: Πρέπει να καταγράψω την ταχύτητα του ανέμου και την ηλιακή ακτινοβολία (ακτινοβολία) για να αξιολογήσω πόση ενέργεια θα μπορούσε να εξαχθεί με ανεμογεννήτρια και/ή ηλιακά πάνελ. Θα μετρήσω για ένα χρόνο, αναλύω τα δεδομένα και στη συνέχεια σχεδιάστε ένα σύστημα εκτός δικτύου
Δημιουργήστε τη δική σας κεραία BiQuad 4G με δοκιμή ταχύτητας: 7 βήματα (με εικόνες)
Δημιουργήστε τη δική σας κεραία BiQuad 4G με δοκιμή ταχύτητας: Σε αυτό το διδακτικό θα σας δείξω πώς έφτιαξα μια κεραία BiQuad 4G. Η λήψη σήματος είναι κακή στο σπίτι μου λόγω βουνών γύρω από το σπίτι μου. Ο πύργος σήματος απέχει 4,5 χιλιόμετρα από το σπίτι. Στην περιοχή Colombo, ο πάροχος υπηρεσιών μου δίνει ταχύτητα 20 Mbps. αλλά στα μ
Ρυθμιστής ταχύτητας ανεμιστήρα WiFi (ESP8266 AC Dimmer): 8 βήματα (με εικόνες)
Ρυθμιστής ταχύτητας ανεμιστήρα WiFi (ESP8266 AC Dimmer): Αυτό το οδηγό θα σας καθοδηγήσει πώς να φτιάξετε έναν ρυθμιστή ταχύτητας ανεμιστήρα οροφής χρησιμοποιώντας τη μέθοδο ελέγχου γωνίας Triac Phase. Το Triac ελέγχεται συμβατικά από αυτόνομο τσιπ διαμόρφωσης arduino Atmega8. Το Wemos D1 mini προσθέτει λειτουργικότητα WiFi για αυτό το ρυθμιστικό
Χρησιμοποιήστε έναν κινητήρα DC Treadmill DC και έναν ελεγκτή ταχύτητας PWM για ηλεκτρικά εργαλεία: 13 βήματα (με εικόνες)
Χρησιμοποιήστε έναν κινητήρα DC Treadmill DC και έναν ελεγκτή ταχύτητας PWM για ηλεκτρικά εργαλεία: Τα ηλεκτρικά εργαλεία όπως οι μεταλλικοί μύλοι και οι τόρνοι, οι πρέσες τρυπανιών, τα πριόνια, τα τριβεία και άλλα μπορεί να απαιτούν. Κινητήρες 5HP έως 2HP με δυνατότητα ρύθμισης της ταχύτητας διατηρώντας παράλληλα τη ροπή .Συμπτωματικά οι περισσότεροι διάδρομοι χρησιμοποιούν κινητήρα VDC 80-260 με
Απλός μετρητής πυκνωτή Autorange / μετρητής χωρητικότητας με Arduino και στο χέρι: 4 βήματα
Απλός μετρητής πυκνωτή Autorange / μετρητής χωρητικότητας με Arduino και στο χέρι: Γεια! Για αυτήν τη μονάδα φυσικής χρειάζεστε:* τροφοδοτικό με 0-12V* έναν ή περισσότερους πυκνωτές* μία ή περισσότερες αντιστάσεις φόρτισης* χρονόμετρο* πολύμετρο τάσης μέτρηση* arduino nano* οθόνη 16x2 I²C* αντιστάσεις 1 / 4W με 220, 10k, 4.7M και