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

Κινητήρας συνεχούς περιστροφής σερβο (CRS) με τηλεχειριστήριο: 8 βήματα
Κινητήρας συνεχούς περιστροφής σερβο (CRS) με τηλεχειριστήριο: 8 βήματα

Βίντεο: Κινητήρας συνεχούς περιστροφής σερβο (CRS) με τηλεχειριστήριο: 8 βήματα

Βίντεο: Κινητήρας συνεχούς περιστροφής σερβο (CRS) με τηλεχειριστήριο: 8 βήματα
Βίντεο: Lesson 101: Using IR Remote to control TV, AC Bulb with Relay, DC Motor and Servo Motor 2024, Ιούλιος
Anonim
Κινητήρας συνεχούς περιστροφής σερβο (CRS) με έλεγχο Telegram
Κινητήρας συνεχούς περιστροφής σερβο (CRS) με έλεγχο Telegram

Σε αυτό το διδακτικό θα σας μάθω πώς να ελέγχετε ένα CRS μέσω τηλεγραφήματος. Για αυτό το διδακτικό θα χρειαστείτε μερικά πράγματα. Θα δουλέψω σε ένα NodeMCU 1.0 (μονάδα ESP-12E). Αυτό μπορεί να λειτουργήσει σε άλλα όρια Arduino, απλά πρέπει να βρείτε τις κατάλληλες μονάδες δίσκου για αυτό.

Το ακόλουθο ήταν το περιβάλλον εγκατάστασης για τη μονάδα ESP-12E:

  • Windows 10
  • Arduino IE 1.8.7 (Windows Store 1.8.15.0)

Μπορείτε να βρείτε έναν οδηγό σχετικά με τον τρόπο εγκατάστασης των προγραμμάτων οδήγησης και των βασικών αρχείων για τη μονάδα ESP-12E:

Μόλις το κάνετε αυτό. Είμαστε έτοιμοι να φύγουμε!

Βήμα 1: Βήμα 1: Στοιχεία

Βήμα 1: Στοιχεία
Βήμα 1: Στοιχεία

Για αυτό το σεμινάριο θα χρειαστείτε ορισμένα στοιχεία:

  • Ενότητα ESP12-E (ESP8266)
  • Συνεχές περιστροφικό σερβοκινητήρα (αυτό είναι που χρησιμοποίησα)
  • Καλώδιο Micro USB
  • Δίκτυο Wifi
  • Εφαρμογή Telegram
  • Ένα Botfather Bot (μην ανησυχείτε, θα φτάσουμε εκεί)

Βήμα 2: Βήμα 2: Συνδέστε το Servo Motor

Βήμα 2: Συνδέστε το Servo Motor
Βήμα 2: Συνδέστε το Servo Motor

Ακολουθήστε αυτά τα σχήματα για να συνδέσετε τον σερβοκινητήρα.

  • Μαύρο: GND (Ground)
  • Κόκκινο: 3.3V ή 5V (Ισχύς)
  • Κίτρινο ή Λευκό: Digitalηφιακή έξοδος (Σήμα)

Έτσι, εάν χρησιμοποιείτε τον ίδιο σερβοκινητήρα που χρησιμοποιούσα και έχετε μια πλακέτα arduino με έξοδο υψηλότερης τάσης (5V max), μπορείτε να κολλήσετε το καλώδιο τροφοδοσίας εκεί. Θα σημαίνει απλώς ότι ο σερβοκινητήρας θα παράγει περισσότερη ροπή. Όπως και να έχει, τα 3.3V ή τα 5V είναι και τα δύο εντάξει.

Βήμα 3: Βήμα 3: Λίγη κατανόηση

Πριν ξεκινήσουμε τη δοκιμή κώδικα και δούμε αν λειτουργεί, υπάρχει κάτι που πρέπει να καταλάβετε σχετικά με αυτόν τον σερβοκινητήρα. Δεδομένου ότι δεν είναι ένας συμβατικός σερβοκινητήρας, ο οποίος γυρίζει σε συγκεκριμένες γωνίες, ο κώδικας που πρέπει να χρησιμοποιήσετε είναι λίγο διαφορετικός.

Δεν συνιστώ τη χρήση του σερβο σε πλήρη ροπή, καθώς δημιουργεί πολλή θερμότητα και μπορεί να καταναλώσει μεγάλη διάρκεια ζωής του προϊόντος. Προσπαθήστε να μείνετε στην περιοχή [60, 120].

void loop {

myservo.write (90); // αυτό σημαίνει ότι δεν υπάρχει κίνηση, ο σερβοκινητήρας είναι καθυστερημένος (1000). myservo.write (0); // αυτό σημαίνει καθυστέρηση κίνησης πλήρους ταχύτητας αριστερόστροφα (1000). myservo.write (180); // αυτό σημαίνει καθυστέρηση κίνησης με πλήρη ταχύτητα δεξιόστροφα (1000). }

Βήμα 4: Βήμα 4: Προσθέστε κώδικα για να δοκιμάσετε το σερβοκινητήρα

#περιλαμβάνω

Servo myservo; void setup () {myservo.attach (D5); // επισυνάψτε το σερβο στον πείρο D5)} void loop () {myservo.write (85); // περιστρέφει τον κινητήρα αριστερόστροφα με αργή καθυστέρηση ταχύτητας (1000). myservo.write (120); καθυστέρηση (1000)? myservo.write (90); καθυστέρηση (5000)? }

Βήμα 5: Βήμα 5: Προετοιμασία για επικοινωνία

Για να μπορέσετε να επικοινωνήσετε μαζί σας Arduino θα πρέπει να διορθώσετε μερικά πράγματα. Είναι αρκετά εύκολα. Θα χωρίσουμε αυτά τα καθήκοντα σε δύο μικρά τμήματα.

Το bot

  1. Εγκαταστήστε το Telegram στο κινητό σας τηλέφωνο.
  2. Δημιουργήστε λογαριασμό στο Telegram.
  3. Αναζήτηση στο χρήστη 'Botfather'.
  4. Δημιουργήστε ένα νέο bot χρησιμοποιώντας τις εντολές που εμφανίζει (αποθηκεύστε το κλειδί που σας δίνει).

Οι εργασίες Arduino

  1. Ανοίξτε το Arduino IE.
  2. Μεταβείτε στον "Διαχειριστή βιβλιοθήκης".
  3. Προσθέστε τη βιβλιοθήκη «Universal Telegrambot».
  4. Προσθέστε τη βιβλιοθήκη 'ArduinoJson'.

    • Μην προσθέσετε την beta
    • Προσθέστε την τελευταία έκδοση 5.x που υπάρχει.

Βήμα 6: Βήμα 6: Δοκιμή της επικοινωνίας

Βήμα 6: Δοκιμή της επικοινωνίας
Βήμα 6: Δοκιμή της επικοινωνίας

Σχεδόν φτάσαμε.

  1. Ανοίξτε το 'echobot' από τη βιβλιοθήκη universaltelegrambot> esp8266.
  2. Αλλάξτε τα διαπιστευτήρια wifi ώστε να ταιριάζουν με το δίκτυό σας στο σημείο που βρίσκεστε.
  3. Αλλάξτε το BOTtoken που σας έδωσε ο Botfather.
  4. Προσθέστε αυτήν τη γραμμή κώδικα στον βρόχο for που βρίσκεται στον `κενό βρόχο ();`

Serial.println (bot.messages .text);

Τώρα είμαστε έτοιμοι για δοκιμή.

Ανεβάστε αυτόν τον κωδικό στο Arduino σας. Ελέγξτε τη σειριακή οθόνη εάν το NodeMCU συνδέεται στο δίκτυό σας wifi. Μόλις δείτε ότι είναι συνδεδεμένο, στείλτε ένα μήνυμα στο bot σας. Θα πρέπει να σας στείλει ακριβώς το ίδιο μήνυμα πίσω.

Βήμα 7: Βήμα 7: Προσθήκη των εντολών

Λοιπόν, λειτούργησε! Έχουμε μια σύνδεση μεταξύ συσκευών. Το επόμενο βήμα είναι να προσθέσουμε πράγματα μαζί. Έτσι, θα προσθέσουμε εντολές στον υπάρχοντα κώδικα echobot. Mightσως είναι καλή ιδέα να βάλετε τον επόμενο κωδικό αντί του τελευταίου που σας έδωσα. Έτσι, θα μας αποτρέψουν από το να έχουμε ένα bot που συμπεριφέρεται σαν παπαγάλος.

Αυτό το επόμενο κομμάτι κώδικα πρέπει να βρίσκεται στον βρόχο for που περνά μέσα από νέα μηνύματα. Ανεξάρτητα από τον τρόπο τοποθέτησης του σερβοκινητήρα, μπορεί να θέλετε να αλλάξετε τις εντολές "Άνοιγμα" και "Κλείσιμο". Ανεβάστε το στο esp8266 και ελέγξτε αν λειτουργεί.

// η εντολή που θέλετε

if (bot.messages .text == "Open") {

// Η απάντηση που θα σας δώσει το bot σας bot.sendMessage (bot.messages .chat_id, "Σας ανοίγω τις κουρτίνες.");

// τι θα κάνει ο πίνακας arduino

myservo.write (80); // ο σερβοκινητήρας γυρίζει αριστερόστροφα για να ανοίξει τις κουρτίνες

}

εάν (bot.messages .text == "Stop") {// Η απάντηση που θα σας δώσει το bot σας bot.sendMessage (bot.messages .chat_id, "Stopping the پردτα."); // τι θα κάνει ο πίνακας arduino myservo.write (90)? // ο σερβοκινητήρας σταματά να γυρίζει}

if (bot.messages .text == "Close") {// Η απάντηση που θα σας δώσει το bot σας bot.sendMessage (bot.messages .chat_id, "κλείνω τις κουρτίνες για εσάς."); // τι θα κάνει ο πίνακας arduino myservo.write (80); // ο σερβοκινητήρας γυρίζει δεξιόστροφα για να κλείσει τις κουρτίνες}

Βήμα 8: Βήμα 8: Συνδέστε τη συσκευή στις κουρτίνες σας (δεν είναι απαραίτητο)

Βήμα 8: Συνδέστε τη συσκευή στις κουρτίνες σας (δεν είναι απαραίτητο)
Βήμα 8: Συνδέστε τη συσκευή στις κουρτίνες σας (δεν είναι απαραίτητο)

Ναι, τελειώσατε!

Οι οδηγίες ήταν για τον τρόπο σύνδεσης ενός Telegrambot με το Arduino σας, ώστε να μπορείτε να το ελέγχετε από απόσταση. Αλλά έκανα αυτό το ιδιαίτερο στήσιμο για να έχω έναν τρόπο να ανοίγω τις κουρτίνες μου στο στούντιο μου χωρίς να χρειάζεται να τις ανοίξω φυσικά. Αν λοιπόν θα θέλατε να κάνετε το ίδιο με μένα, το τελευταίο βήμα είναι να συνδέσετε τη μικρή μας συσκευή με τις κουρτίνες και το voila σας.

Συνιστάται: