How To Use Our Actuators With Microcontrollers

Πώς να χρησιμοποιήσετε τους ενεργοποιητές μας με μικροελεγκτές

Guest Writer
Guest Writer
PA Engineer

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

Περιηγηθείτε στη γκάμα μικροελεγκτών μας για σύζευξη με τους ενεργοποιητές μας!

Σε αυτό το άρθρο, θα εμβαθύνουμε στο τι είναι ένας μικροελεγκτής, εξετάζοντας τα οφέλη και τα χαρακτηριστικά του. Στη συνέχεια, θα σας δώσουμε ένα απλό project για το πώς να λειτουργήσετε έναν γραμμικό ενεργοποιητή από έναν μικροελεγκτή, ξεκινώντας με το να τον εκτείνετε/συρρικνώνετε. Είτε είστε νέοι στους μικροελεγκτές είτε έμπειροι hobbyists που χρειάζονται μια επανάληψη, αυτό είναι το άρθρο για εσάς. Αυτό το άρθρο είναι ένα από τα πολλά που θα ακολουθήσουν, όπου θα ρίξουμε πιο προσεκτική ματιά σε shields μικροελεγκτών, αρθρώματα αισθητήρων και οδηγούς κινητήρων. Ας ξεκινήσουμε όμως με τα βασικά!

 

Τι είναι ένας μικροελεγκτής: Οφέλη και χαρακτηριστικά

Microcontroller

 

Κοιτάξτε αριστερά και μετά δεξιά. Πιθανότατα θα δείτε γύρω σας στο σπίτι ή στο γραφείο μερικά πράγματα που έχουν μέσα ολοκληρωμένο κύκλωμα (IC) – αυτά τα μικρά chip από πυρίτιο είναι ο «εγκέφαλος» των ηλεκτρονικών συσκευών σας. Οι πλακέτες μικροελεγκτών θα έχουν ένα ή περισσότερα από αυτά τα IC πάνω τους μαζί με μια σειρά από περιφερειακά.

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

Ένας μικροελεγκτής συνήθως περιλαμβάνει τα εξής στοιχεία:

  • Κεντρική Μονάδα Επεξεργασίας (CPU): Εκτελεί αριθμητικές πράξεις, διαχειρίζεται τη ροή δεδομένων και παράγει σήματα ελέγχου βάσει ενός συνόλου εντολών (δηλ. κώδικα).
  • Μη πτητική μνήμη: Αποθηκεύει το πρόγραμμα του μικροελεγκτή που λέει στη CPU ακριβώς τι να κάνει. 
  • Πτητική μνήμη (RAM): Χρησιμοποιείται για προσωρινή αποθήκευση δεδομένων. Αυτά τα δεδομένα χάνονται όταν ο μικροελεγκτής χάνει την τροφοδοσία.
  • Περιφερειακά: Αρθρώματα υλικού που βοηθούν έναν μικροελεγκτή να αλληλεπιδρά με το εξωτερικό σύστημα.
    • Μετατροπείς δεδομένων (AC-DC, DC-AC και γεννήτριες τάσης αναφοράς).
    • Γεννήτρια ρολογιού.
    • Χρονισμός.
    • Είσοδοι και έξοδοι.
    • Σειριακή επικοινωνία.

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

 

Πώς να χρησιμοποιήσετε έναν μικροελεγκτή με γραμμικό ενεργοποιητή για έκταση/σύρρικνωση

 

Ήρθε η ώρα να δοκιμάσουμε έναν γραμμικό ενεργοποιητή της Progressive Automations με μικροελεγκτή και να εκτείνουμε/συρρικνώσουμε! Θα σας καθοδηγήσουμε στην καλωδίωση καθώς και στο πώς λειτουργεί ο κώδικας, ώστε να μπορείτε να τροποποιήσετε τον έλεγχο του γραμμικού ενεργοποιητή όπως θέλετε.

 

Τι θα χρειαστείτε

Δείτε τι θα χρειαστείτε για να ξεκινήσετε τη σύζευξη μικροελεγκτή με γραμμικό ενεργοποιητή. Όλα τα εξαρτήματα μπορούν να αγοραστούν από την ιστοσελίδα της Progressive Automations:

 

Καλωδίωση και ανέβασμα κώδικα

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

  • LCD επάνω στο Arduino Pin 26
  • Relay IN1 στο Arduino Pin 30
  • Relay IN2 στο Arduino 5V
  • Relay VCC στο Arduino GND
  • Relay GND στο Relay NO2
  • 12VDC στο Relay NC2
  • 12VDC στο Relay NC1
  • Relay NC2 στο Relay NO1
  • Relay NO2 στο θετικό του ενεργοποιητή
  • Relay COM1 στο αρνητικό του ενεργοποιητή
  • Relay COM2
Arduino scheme

 

Εξήγηση κώδικα

Δείτε ολόκληρο τον κώδικα του έργου εδώ.

Ο κώδικας που καταλαβαίνει η πλακέτα μικροελεγκτή Arduino είναι C. Έχουν γραφτεί πολλές βιβλιοθήκες που περιέχουν κώδικα για να απλοποιούν την προσθήκη διαφόρων περιφερειακών, στη συγκεκριμένη περίπτωση της LCD (#include <LiquidCrystal.h>).

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

Η συνάρτηση setup ορίζει τα pins των ρελέ ως OUTPUTS και θέτει τα pins σε LOW. Επιπλέον, στέλνονται στην LCD μερικές εντολές για να εμφανίσει κείμενο και να ρυθμίσει τα βελάκια του δρομέα. Στο κύριο loop, ο κώδικας ελέγχει συνεχώς αν έχει πατηθεί κάποιο από τα κουμπιά στην πλακέτα LCD. Σε αυτήν την περίπτωση, τα κουμπιά είναι συνδεδεμένα στο pin A0 του Arduino. Όταν πατηθεί ένα κουμπί, η τιμή που διαβάζει το Arduino θα είναι είτε κοντά στο 100 είτε κοντά στο 255, ανάλογα με το ποιο κουμπί πατήθηκε. Αυτές οι τιμές δεν είναι πάντα ακριβείς, ειδικά αν έχετε πρόσθετα κυκλώματα συνδεδεμένα στο Arduino που μπορεί να επηρεάσουν το σήμα. Επομένως, έχει συμπεριληφθεί μία τιμή ορίου (threshold) και μπορεί να προσαρμοστεί αν τα κουμπιά είναι υπερβολικά ευαίσθητα σε παρεμβολές.

Αν έχετε το Arduino συνδεδεμένο στον υπολογιστή σας μέσω USB, μπορείτε να χρησιμοποιήσετε το σειριακό monitor του Arduino IDE για να δείτε το σήμα εξόδου από το pin A0. Απλώς προσθέστε την παρακάτω γραμμή κώδικα στο κύριο loop:

Serial.println(A0);

Κάποια λογική επεξεργασία εφαρμόζεται στο σήμα ώστε να καθοριστεί αν πατήθηκε το κουμπί πάνω ή κάτω. Αν πατήθηκε το πάνω, το ένα ρελέ θα τεθεί σε HIGH και το άλλο σε LOW. Αν πατήθηκε το κάτω, η λογική αντιστρέφεται. Η ενεργοποίηση/απενεργοποίηση των ρελέ προκαλεί τον ενεργοποιητή να εκτεινόμε/συρρικνώνεται.

Τώρα που ξέρετε πώς λειτουργεί ο κώδικας, μπορείτε να πειραματιστείτε προσθέτοντας επιπλέον λογική, όπως το να ανάβει ένα LED όταν ο ενεργοποιητής εκτείνεται και να σβήνει όταν συρρικνώνεται. Αυτό είναι αρκετά απλό και απαιτεί να ορίσετε τον αριθμό pin, να ορίσετε το pin ως OUTPUT και στη συνέχεια να θέσετε αυτό το pin σε HIGH (εντολή digitalWrite) μέσα στο if ή else if.

Ρίξτε μια ματιά στη μεγάλη μας γκάμα ηλεκτρικών γραμμικών ενεργοποιητών!

Συμπέρασμα

Η ενασχόληση με έναν μικροελεγκτή Arduino για έναν ενεργοποιητή, μεταξύ άλλων, μπορεί να είναι πολύ διασκεδαστική και αποδοτική. Το να μάθετε να προγραμματίζετε σε έναν απλό μικροελεγκτή για ενεργοποιητή, ειδικά στη γλώσσα C, είναι ένας εξαιρετικός τρόπος να χτίσετε γνώσεις και πιθανόν να μετατρέψετε τις δεξιότητές σας σε καριέρα. Ξεκινήστε με τα βασικά και προχωρήστε σταδιακά σε πιο σύνθετα έργα.

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