Πίνακας περιεχομένων:
- Βήμα 1: Εγκατάσταση βιβλιοθήκης
- Βήμα 2: Κωδικός
- Βήμα 3: Διαμόρφωση προγράμματος -πελάτη MQTT (MQTTBOX)
- Βήμα 4: Αποτέλεσμα εκτέλεσης προγράμματος
Βίντεο: NodeMCU - Βασικό παράδειγμα MQTT: 4 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:36
Αυτό το μάθημα θα δείξει τη βασική χρήση πρωτοκόλλου MQTT στον πίνακα NodeMCU. Χρησιμοποιούμε το MQTTBox ως πρόγραμμα -πελάτη MQTT εδώ και θα χρησιμοποιήσουμε το NodeMCU για να ολοκληρώσουμε τις ακόλουθες λειτουργίες:
Δημοσιεύστε το "hello world" στο θέμα "outTopic" κάθε δύο δευτερόλεπτα. Εγγραφείτε στο θέμα "inTopic", εκτυπώστε τυχόν ληφθέντα μηνύματα. Υποθέτει ότι τα λαμβανόμενα ωφέλιμα φορτία είναι συμβολοσειρές και όχι δυαδικές. Εάν το εγγεγραμμένο μήνυμα είναι "1", ανάψτε το ενσωματωμένο LED. Απενεργοποιήστε το ενσωματωμένο LED εάν το μήνυμα για εγγραφή είναι "0".
Προετοιμασία: Osoyoo NodeMCU x1
Καλώδιο USB x1
PC x1
Arduino IDE (Versin 1.6.4+)
Συνδέστε το NodeMCU στον υπολογιστή μέσω καλωδίου USB.
Βήμα 1: Εγκατάσταση βιβλιοθήκης
Εγκαταστήστε το PubSubClientlibrary
Πρέπει να εγκαταστήσουμε τη βιβλιοθήκη τελικού σημείου MQTT (PubSubClient) για να επικοινωνήσουμε με τον μεσίτη MQTT, κάντε λήψη της βιβλιοθήκης από τον ακόλουθο σύνδεσμο:
Αποσυμπιέστε το παραπάνω αρχείο, μετακινήστε το φάκελο χωρίς αποσυμπίεση στο φάκελο βιβλιοθήκης Arduino IDE.
Ανοίξτε το IED Arduino, μπορείτε να βρείτε το "pubsubclient" στη στήλη "Παραδείγματα".
Εγκατάσταση προγράμματος -πελάτη MQTT:
θα χρησιμοποιήσουμε το MQTTBox ως πρόγραμμα -πελάτη MQTT. κάντε λήψη από:
Βήμα 2: Κωδικός
ανοίξτε το Arduino IDE–> Αρχείο–> Παράδειγμα–> pubsubclient–> mqtt esp8266, θα λάβετε δείγμα κώδικα.
Επεξεργαστείτε τον κώδικα ώστε να ταιριάζει στις δικές σας ρυθμίσεις WiFi και MQTT ως εξής: 1) Διαμόρφωση Hotspot: Βρείτε την παρακάτω γραμμή κώδικα, τοποθετήστε το δικό σας ssid και κωδικό πρόσβασης εκεί.
const char* ssid = "your_hotspot_ssid"; const char* password = "your_hotspot_password"?
2) Ρύθμιση διεύθυνσης διακομιστή MQTT, εδώ χρησιμοποιούμε δωρεάν μεσίτη MQTT "broker.mqtt-dashboard.com". Μπορείτε να χρησιμοποιήσετε τη δική σας διεύθυνση URL μεσίτη MQTT ή διεύθυνση IP για να ορίσετε πάνω από την τιμή του διακομιστή mqtt_server. Μπορείτε επίσης να χρησιμοποιήσετε κάποιο διάσημο δωρεάν διακομιστή MQTT για να δοκιμάσετε το έργο, όπως "broker.mqtt-dashboard.com", "iot.eclipse.org" κ.λπ.
const char* mqtt_server = "broker.mqtt-dashboard.com";
3) Ρυθμίσεις πελάτη MQTT Εάν ο μεσίτης MQTT απαιτεί πιστοποίηση πελάτη, όνομα χρήστη και κωδικό πρόσβασης, θα πρέπει να
αλλαγή
εάν (client.connect (clientId.c_str ()))
Προς το
if (client.connect (clientId, userName, passWord)) // βάλτε το clientId/userName/passWord σας εδώ
Εάν όχι, απλώς διατηρήστε τα ως προεπιλεγμένα. Μετά από αυτό, επιλέξτε τον αντίστοιχο τύπο πλακέτας και τύπο θύρας όπως παρακάτω και, στη συνέχεια, ανεβάστε το σκίτσο στο NodeMCU.
- Πίνακας: "NodeMCU 0.9 (μονάδα ESP-12)"
- Συχνότητα CPU: "80MHz" Μέγεθος φλας: "4M (3M SPIFFS)"
- Ταχύτητα μεταφόρτωσης:”115200
- Θύρα: Επιλέξτε τη δική σας σειριακή θύρα για το NodeMCU
Βήμα 3: Διαμόρφωση προγράμματος -πελάτη MQTT (MQTTBOX)
Σε αυτό το βήμα, θα δείξουμε πώς να δημιουργήσετε ένα πρόγραμμα -πελάτη MQTT στο MQTTBox.
Ανοίξτε το MQTTBox και κάντε κλικ στο μπλε κουμπί για να προσθέσετε ένα νέο πρόγραμμα -πελάτη MQTT.
Διαμορφώστε τις ρυθμίσεις πελατών MQTT όπως παρακάτω:
- Όνομα πελάτη MQTT - Επιλέξτε όποιο όνομα σας αρέσει
- Πρωτόκολλο - Επιλέξτε "mqtt/tcp"
- Host - Πληκτρολογήστε τον "mqtt_server" σας σε αυτήν τη στήλη, βεβαιωθείτε ότι είναι ίδιο με το σκίτσο σας. (Χρησιμοποιούμε εδώ το "broker.mqtt-dashboard.com")
- Διατηρήστε άλλες ρυθμίσεις ως προεπιλογή
- Κάντε κλικ για να αποθηκεύσετε τις αλλαγές σας.
Στη συνέχεια, θα εισαγάγετε αυτόματα τη νέα σελίδα. Εάν όλες οι παραπάνω ρυθμίσεις είναι σωστές, το "Μη συνδεδεμένο" θα αλλάξει σε "Συνδεδεμένο", το όνομα πελάτη MQTT και το όνομα κεντρικού υπολογιστή θα εμφανίζονται στο επάνω μέρος αυτής της σελίδας.
Ρύθμιση θέματος: Βεβαιωθείτε ότι το θέμα δημοσίευσης του προγράμματος -πελάτη MQTT είναι ίδιο με το θέμα εγγραφής σκίτσων Arduino (inTopic εδώ. Βεβαιωθείτε ότι το θέμα εγγραφής πελάτη MQTT είναι ίδιο με το θέμα δημοσίευσης του σκίτσου Arduino (outTopic εδώ.
Βήμα 4: Αποτέλεσμα εκτέλεσης προγράμματος
Μόλις ολοκληρωθεί η μεταφόρτωση, εάν το όνομα και ο κωδικός πρόσβασης wifi hotspot είναι εντάξει και ο μεσίτης MQTT είναι συνδεδεμένος, ανοίξτε το Serial Monitor, θα δείτε το μήνυμα δημοσίευσης "hello world" στην σειριακή οθόνη.
Στη συνέχεια, ανοίξτε το πρόγραμμα -πελάτη MQTT και δημοσιεύστε το ωφέλιμο φορτίο "1" στο θέμα, αυτό το NodeMCU θα λάβει αυτά τα μηνύματα με την εγγραφή σας στο "inTopic" και το LED θα ανάψει.
Δημοσιεύστε το ωφέλιμο φορτίο "0" σε αυτό το θέμα, το LED NodeMCU θα απενεργοποιηθεί.
Συνιστάται:
Πώς να φτιάξετε το δικό σας λειτουργικό σύστημα! (παρτίδα και παράδειγμα στο εσωτερικό): 5 βήματα
Πώς να φτιάξετε το δικό σας λειτουργικό σύστημα! (παρτίδα και Παράδειγμα μέσα): Φτιάξτε το τώρα
Παράδειγμα προγραμματισμού MTP Arduino: 5 βήματα
Παράδειγμα προγραμματισμού MTP Arduino: Σε αυτό το Instructable, δείχνουμε πώς να χρησιμοποιήσετε το σκίτσο προγραμματισμού SLG46824/6 Arduino για τον προγραμματισμό μιας συσκευής Dialog SLG46824/6 GreenPAK ™ Multiple-Time Programmable (MTP). Οι περισσότερες συσκευές GreenPAK είναι προγραμματιζόμενες μία φορά (OTP), πράγμα που σημαίνει ότι κάποτε οι μη-V
Σύγχρονο και νέο και ευκολότερο παράδειγμα θυρίδας με πληκτρολόγιο Arduino Matrix 4x4: 3 βήματα
Σύγχρονο και νέο και ευκολότερο παράδειγμα θυρίδας με πληκτρολόγιο Arduino Matrix 4x4: Ένα άλλο παράδειγμα χρήσης μήτρας πληκτρολογίου LCD 4x4 με κύκλωμα I2C
ΕΦΕΥΡΕΤΗΣ APP 2 - Καθαρίστε τις μπροστινές συμβουλές (+4 Παράδειγμα): 6 βήματα
ΕΦΕΥΡΕΤΗΣ APP 2 - Clean Front Tips (+4 Παράδειγμα): Θα δούμε πώς μπορούμε να κάνουμε την εφαρμογή σας στο AI2 να φαίνεται αισθητική :) Χωρίς κωδικό αυτή τη φορά, μόνο συμβουλές για μια ομαλή εφαρμογή όπως το 4 παράδειγμα στην κορυφή
IoT Guru Cloud - Απλό γράφημα Παράδειγμα: 4 βήματα
IoT Guru Cloud - Παράδειγμα απλού γραφήματος: Το IoT Guru Cloud παρέχει μια δέσμη υπηρεσιών backend μέσω του REST API και μπορείτε να ενσωματώσετε αυτές τις κλήσεις REST στην ιστοσελίδα σας εύκολα. Με τα Highcharts, μπορείτε να εμφανίσετε γραφήματα της μέτρησής σας απλά με μια κλήση AJAX