Κατηγορίες: Κύκλωμα μικροελεγκτή
Αριθμός προβολών: 16,299
Σχόλια σχετικά με το άρθρο: 0

Πώς να συνδέσετε τον αυξητικό κωδικοποιητή στο Arduino

 

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

Πώς να συνδέσετε τον αυξητικό κωδικοποιητή στο Arduino

Χαρακτηριστικά αυξητικού κωδικοποιητή

Ο αυξητικός κωδικοποιητής, όπως οποιοσδήποτε άλλος τύπος κωδικοποιητή, είναι μια περιστρεφόμενη διάταξη χειρολαβής. Από μακριά, μοιάζει με ποτενσιόμετρο. Η κύρια διαφορά από το ποτενσιόμετρο είναι ότι η λαβή του κωδικοποιητή περιστρέφεται 360 μοίρες. Δεν έχει ακραίες προβλέψεις.

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

Κωδικοποιητή και Arduino

Με αυτόν τον τρόπο μπορείτε να περάσετε μικροελεγκτή εντολή, διαχείριση του μενού, επίπεδο έντασης, για παράδειγμα, και ούτω καθεξής. Στην καθημερινή ζωή, θα μπορούσατε να τα δείτε σε ραδιόφωνα αυτοκινήτου και άλλο εξοπλισμό. Χρησιμοποιείται ως πολυλειτουργικό όργανο ρύθμισης επιπέδου, ισοσταθμιστής και πλοήγηση μενού.

Κουμπί στάθμης ήχου

Αρχή λειτουργίας

Μέσα στον αυξητικό κωδικοποιητή υπάρχει ένας δίσκος με ετικέτες και ολισθητήρες που έρχονται σε επαφή μαζί τους. Η δομή του είναι παρόμοια με ένα ποτενσιόμετρο.

Αποσυναρμολογημένος κωδικοποιητής

Στο παραπάνω σχήμα βλέπετε ένα δίσκο με σημάδια, χρειάζεται να διακόψετε την ηλεκτρική σύνδεση με την κινητή επαφή, με αποτέλεσμα να λάβετε δεδομένα σχετικά με την κατεύθυνση περιστροφής. Ο σχεδιασμός του προϊόντος δεν είναι τόσο σημαντικός, ας καταλάβουμε την αρχή της λειτουργίας.

Σχεδίαση κωδικοποιητή

Ο κωδικοποιητής έχει τρεις εξόδους πληροφοριών, μία κοινή, οι άλλες δύο συνήθως ονομάζονται "A" και "B". Στο παραπάνω σχήμα βλέπετε τον πείρο κωδικοποιητή με ένα κουμπί - μπορείτε να λάβετε ένα σήμα όταν κάνετε κλικ στον άξονά του.

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

Αρχή λειτουργίας

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

Κύκλωμα κωδικοποιητή

Ακολουθεί ένα παράδειγμα ενός πραγματικού pinout κωδικοποιητή:

Παράδειγμα πραγματικού κωδικοποιητή κωδικοποιητή

Ενδιαφέρουσες:

Ένας ελαττωματικός κωδικοποιητής μπορεί να αντικατασταθεί με δύο κουμπιά χωρίς κλείδωμα και το αντίστροφο: σπιτικό έλεγχο στο οποίο δύο από αυτά τα κουμπιά μπορούν να οριστικοποιηθούν ρυθμίζοντας τον κωδικοποιητή.

Στο παρακάτω βίντεο, βλέπετε την εναλλαγή του σήματος στους ακροδέκτες - κατά την ομαλή περιστροφή, οι λυχνίες LED ανάβουν στην ακολουθία που αντανακλάται στο προηγούμενο γράφημα.

Δεν είναι λιγότερο εμφανές στην ακόλουθη κινούμενη εικόνα (κάντε κλικ στην εικόνα):

Η συσκευή και η αρχή της λειτουργίας του κωδικοποιητή

Ο κωδικοποιητής μπορεί να είναι και οπτικός (το σήμα παράγεται από τους εκπομπούς από τους φωτοανιχνευτές, δείτε το παρακάτω σχήμα) και το μαγνητικό (λειτουργεί στο Hall effect). Σε αυτή την περίπτωση, δεν έχει επαφές και μεγαλύτερη διάρκεια ζωής.

Αισθητήρας γωνίας

Όπως έχει ήδη αναφερθεί, η κατεύθυνση περιστροφής μπορεί να καθοριστεί από ποια από τα σήματα εξόδου έχει αλλάξει προηγουμένως, αλλά αυτό είναι το πώς φαίνεται στην πράξη!

Μηχανικά σημεία στερέωσης

Η ακρίβεια του ελέγχου εξαρτάται από την ανάλυση του κωδικοποιητή - τον αριθμό των παλμών ανά περιστροφή. Ο αριθμός παλμών μπορεί να είναι από μονάδες σε χιλιάδες κομμάτια. Δεδομένου ότι ο κωδικοποιητής μπορεί να λειτουργήσει ως αισθητήρας θέσης, τόσο περισσότεροι παλμοί, τόσο πιο ακριβής θα γίνει ο προσδιορισμός.Αυτή η παράμετρος αναφέρεται ως παλμός PPR ανά περιστροφή.

Αλλά υπάρχει μια μικρή απόχρωση, δηλαδή, μια παρόμοια ονομασία LPR είναι ο αριθμός των ετικετών στο δίσκο.

Και ο αριθμός επεξεργασμένων παλμών. Κάθε ετικέτα στο δίσκο δίνει 1 ορθογώνιο παλμό σε κάθε μία από τις δύο έξοδοι. Η ώθηση έχει δύο μέτωπα - το πίσω και το μπροστινό μέρος. Δεδομένου ότι υπάρχουν δύο τρόποι έξω, παίρνουμε 4 παλμούς συνολικά από κάθε ένα από αυτά, οι αξίες των οποίων μπορείτε να επεξεργαστείτε.

PPR = LPRx4


Συνδεθείτε στο Arduino

Βρήκαμε τι πρέπει να γνωρίζετε για τον αυξητικό κωδικοποιητή, τώρα ας μάθουμε πώς να το συνδέσουμε με το Arduino. Εξετάστε το διάγραμμα σύνδεσης:

Το διάγραμμα σύνδεσης του αισθητήρα θέσης σε Arduino

Μία μονάδα κωδικοποιητή είναι η πλακέτα στην οποία βρίσκονται οι αυξητικοί κωδικοποιητές και οι αντιστάσεις έλξης. Μπορείτε να χρησιμοποιήσετε οποιαδήποτε ακίδες.

Διάγραμμα καλωδίωσης κωδικοποιητή

Εάν δεν έχετε μια μονάδα, αλλά έναν ξεχωριστό κωδικοποιητή, απλά πρέπει να προσθέσετε αυτές τις αντιστάσεις, το κύκλωμα δεν θα διαφέρει κατ 'αρχήν. Για να ελέγξετε την κατεύθυνση περιστροφής και τη λειτουργικότητά της σε συνδυασμό με το Arduino μπορούμε να διαβάσουμε πληροφορίες από τη σειριακή θύρα.

Παράδειγμα προγράμματος

Ας αναλύσουμε τον κώδικα με περισσότερες λεπτομέρειες, με τη σειρά. Σε void setup (), ανακοινώσαμε ότι θα χρησιμοποιούσαμε την επικοινωνία μέσω της σειριακής θύρας και στη συνέχεια ρυθμίσαμε τους ακροδέκτες 2 και 8 στη λειτουργία εισόδου. Επιλέξτε τους αριθμούς καρφιτσών με βάση το σχέδιό σας σύνδεσης. Η σταθερά INPUT_PULLUP ορίζει τη λειτουργία εισαγωγής, το arduino έχει δύο επιλογές:

  • INPUT - είσοδος χωρίς αντιστάσεις pull-up;

  • INPUT_PULLUP - σύνδεση με την είσοδο αντιστάσεων έλξης. Υπάρχουν ήδη αντιστάτες στο εσωτερικό του μικροελεγκτή μέσω του οποίου η είσοδος συνδέεται με το power plus (pullup).

Εάν χρησιμοποιείτε αντιστάσεις για να σφίξετε τη δύναμη συν όπως φαίνεται στα παραπάνω διαγράμματα ή χρησιμοποιήστε τη μονάδα κωδικοποιητή - χρησιμοποιήστε την εντολή INPUT και εάν για κάποιο λόγο δεν μπορείτε ή δεν θέλετε να χρησιμοποιήσετε εξωτερικές αντιστάσεις - INPUT_PULLUP.

Η λογική του κύριου προγράμματος έχει ως εξής: αν έχουμε ένα στην είσοδο "2", εξάγει τη θύρα H στην οθόνη, αν όχι, L. Έτσι, όταν περιστρέφεστε στην ίδια κατεύθυνση στην οθόνη σειριακής θύρας, παίρνετε κάτι σαν αυτό: LL HL HH LH LL. Και αντιστρόφως: LL LH HH HL LL.

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


Συμπέρασμα

Οι αυξητικοί κωδικοποιητές έχουν βρει ευρεία πρακτική εφαρμογή σε ενισχυτές για ακουστικά συστήματα - χρησιμοποιήθηκαν ως έλεγχος έντασης ήχου σε ραδιόφωνα αυτοκινήτου - για να ρυθμίσουν παραμέτρους ήχου και να πλοηγηθούν σε μενού, σε υπολογιστικά ποντίκια με την οποία μετακινείτε σελίδες καθημερινά (ένας τροχός είναι εγκατεστημένος στον άξονά του) . Και επίσης στα εργαλεία μέτρησης, μηχανές CNC, ρομπότ, selsyn όχι μόνο ως όργανα ελέγχου, αλλά και μετρήσεις τιμών και προσδιορισμό της θέσης.

Δείτε επίσης στο i.electricianexp.com:

  • Μέθοδοι ανάγνωσης και διαχείρισης θυρών εισόδου / εξόδου Arduino
  • Έλεγχος κινητήρα και σερβομηχανισμού με Arduino
  • Διαθέτει συσκευές σύνδεσης με το Arduino
  • Σύνδεση και προγραμματισμός του Arduino για αρχάριους
  • Οι πιο δημοφιλείς αισθητήρες για το Arduino

  •