Πίνακας περιεχομένων:

ESP8266 και επικοινωνία Python Για  Noobs: 6 βήματα
ESP8266 και επικοινωνία Python Για Noobs: 6 βήματα

Βίντεο: ESP8266 και επικοινωνία Python Για Noobs: 6 βήματα

Βίντεο: ESP8266 και επικοινωνία Python Για  Noobs: 6 βήματα
Βίντεο: Makeblock Untimate Robot Kit Part 2 : Robtic Arm Explaine, Software, Code App and Having Fun demo 2024, Ιούλιος
Anonim
ESP8266 και Python Communication For Noobs
ESP8266 και Python Communication For Noobs

Αυτός ο οδηγός σάς επιτρέπει να λαμβάνετε οποιαδήποτε δεδομένα από το ESP8266 και να τα ελέγχετε μέσω python χωρίς εντολές AT.

Για τους αρχάριους, οι περισσότεροι οδηγοί σχετικά με τη χρήση του ESP8266 είναι δύσκολοι, επειδή θέλουν να αναβοσβήνετε το "AT COMMANDS" σε ένα τσιπ, το οποίο είναι:

  • Ανεπιθύμητη
  • Σπατάλη μνήμης ESP
  • Σας δίνει περιορισμένο έλεγχο
  • Σκληρό και Προκλητικό
  • Και δεν είναι κατάλληλο για όλες τις μονάδες ESP8266

Γι 'αυτό δημιούργησα ένα πολύ απλό σύστημα επικοινωνίας mDNS το οποίο ελέγχεται μόνο με 3 απλές λειτουργίες. Σας δίνει επίσης πλήρη έλεγχο.

Βήμα 1: Θεωρία

Θεωρία
Θεωρία

Το esp μας συνδέεται με το wifi μας και δημιουργεί έναν διακομιστή localhost και αρχίζει να περιμένει ένα αίτημα. Κάθε φορά που ο python μας στέλνει ένα αίτημα σε αυτό το localhost, το esp εκτελεί τον επιθυμητό κώδικα και στη συνέχεια επιστρέφει το αποτέλεσμα ως αίτημα http. Τέλος, η python διαβάζει τα επιστρεφόμενα δεδομένα ως αίτημα http και αρπάζει αυτές τις μεταβλητές από αυτό. Με αυτό, το esp μπορεί να επιστρέψει συμβολοσειρές, δεδομένα και πίνακες. Ο κώδικας Python θα κατανοήσει τον τύπο δεδομένων τους.

Βήμα 2: Προετοιμασία των απαιτούμενων βιβλιοθηκών

Προετοιμασία των απαιτούμενων βιβλιοθηκών
Προετοιμασία των απαιτούμενων βιβλιοθηκών

Πρώτα απ 'όλα, πρέπει να κατεβάσετε τη βιβλιοθήκη καρτών ESP8266 στο arduino ide. Εάν δεν ξέρετε πώς, εδώ είναι ο οδηγός.

Μετά από αυτό, πρέπει να κατεβάσετε τη μικροβιβλιοθήκη μου από εδώ.

Μετά τη λήψη, στο φάκελο βιβλιοθήκης υπάρχει ένα αρχείο που ονομάζεται "ESP_MICRO.h", αντιγράψτε το στον φάκελο κωδικοποίησης του τρέχοντος έργου arduino. Ναι, μην το αντιγράψετε στις βιβλιοθήκες του arduino, είναι μια μικρο βιβλιοθήκη, οπότε θα το αντιγράψετε στο φάκελο του τρέχοντος έργου σας arduino.

Έτσι, τώρα, οι απαιτήσεις μας ικανοποιούνται. Μπορούμε να αρχίσουμε να την κωδικοποιούμε.

Βήμα 3: Γράψτε έναν απλό κώδικα αιτήματος

Γράφοντας έναν Απλό Κωδικό Αίτησης
Γράφοντας έναν Απλό Κωδικό Αίτησης

Όταν ανοίγετε το project.ino, θα δείτε δύο καρτέλες στο arduino ide. Το ένα είναι το έργο σας, το άλλο είναι "ESP_MICRO.h" η μικροβιβλιοθήκη μας.

Τώρα έχετε αυτήν τη συνάρτηση 5 στο ESP_MICRO.h στον κύριο κωδικό σας, (οι λειτουργίες εξηγούνται στις πρώτες γραμμές του ESP_MICRO.h)

Εδώ είναι ένας απλός κώδικας μεταβλητής που αυξάνει.

Κωδικός Arduino:

/* F5 TEST FOR ESP2PY

* Γράφτηκε από τον Junicchi * https://github.com/KebabLord/esp_to_python * Απλώς αυξάνει και επιστρέφει μια μεταβλητή κάθε φορά που έρχεται μια απαίτηση python */#include "ESP_MICRO.h" // Include the micro library int testvariable = 0; void setup () {Serial.begin (9600); // Έναρξη σειριακής θύρας για την εμφάνιση των λεπτομερειών έναρξης ("USERNAME", "PASSWORD"); // Το EnAIt θα συνδεθεί στο wifi σας με δεδομένες λεπτομέρειες} void loop () {waitUntilNewReq (); // Περιμένει έως ότου έρθει ένα νέο αίτημα από την python/* αυξάνει τον δείκτη όταν ήρθε ένα νέο αίτημα*/testvariable += 1; returnThisInt (δοκιμή μεταβλητή); // Επιστρέφει τα δεδομένα σε python}

Βήμα 4: Μεταφόρτωση

Μεταφόρτωση
Μεταφόρτωση

Προγραμματισμός Οι Nodemcu ESP8266 απλώς συνδέουν το usb και ανεβάζουν το σκίτσο από το arduino.

Αλλά ο προγραμματισμός ESP8266-1 είναι πιο δύσκολος, υπάρχουν δύο μέθοδοι για τον προγραμματισμό τους

Προγραμματισμός ESP μέσω arduino

Εάν είστε καλά με τα άλματα, μπορείτε να το προγραμματίσετε μέσω arduino με αυτό το κύκλωμα. Μακροπρόθεσμα, είναι πόνος. Προτείνω λοιπόν άλλη μέθοδο.

Προγραμματισμός με προγραμματιστή ESP

Είναι πολύ πιο εύκολο και πιο γρήγορο. Είναι μόνο 1 δολάριο, αγοράστε ένα και χρησιμοποιήστε usb προγραμματιστή.

Εκμάθηση της διεύθυνσης IP του ESP

Κατά τη μεταφόρτωση του κώδικα, ανοίξτε τη σειριακή θύρα, θα δείτε να εκτυπώνονται λεπτομέρειες όταν ολοκληρωθεί η μεταφόρτωση. Μάθετε την IP του esp και σημειώστε το. Θυμηθείτε, η IP του ESP σε τοπικό επίπεδο. αλλάζει από wifi σε wifi, όχι session σε session, οπότε όταν το κλείσετε και το ανοίξετε αργότερα, δεν θα αλλάξει.

Βήμα 5: Ανάγνωση και Python

Ανάγνωση και Python
Ανάγνωση και Python

Στο esp_to_python/βιβλιοθήκη υπάρχει ένα "EXAMPLE_PYTHON_READER.py"

επεξεργαστείτε το, αλλάξτε την 5η γραμμή με τη διεύθυνση IP της μονάδας esp που εκτυπώθηκε στη σειριακή θύρα και εκτελέστε το σενάριο python. Σε αυτό το έργο, χρησιμοποίησα python για αποστολή και ανάγνωση αιτήματος. Αλλά μπορείτε επίσης να δείτε τα ακατέργαστα δεδομένα με ένα πρόγραμμα περιήγησης ενώ επικολλάτε το ip του ESP σε ένα πρόγραμμα περιήγησης. Or μπορείτε να δημιουργήσετε μια εφαρμογή για να το διαβάσετε ή ακόμη και να χρησιμοποιήσετε μια άλλη γλώσσα. Ο έλεγχος της μονάδας πάνω από την python εξηγείται επίσης στο έργο "ledControl" στο φάκελο παραδείγματα.

Βήμα 6: Ολοκλήρωση

Ολοκλήρωση
Ολοκλήρωση

Όλες οι λειτουργίες και οι κωδικοί εξηγούνται στο ESP_MICRO.h και στο αρχείο README.md.

Εάν αυτό το έργο σας βοήθησε, μπορείτε να πρωταγωνιστήσετε το αρχικό έργο στο github.

Συνιστάται: