Τα ποδαράκια (pins) των μικροελεγκτών μπορούν να χρησιμοποιηθούν είτε ως είσοδοι είτε ως έξοδοι.
Η έξοδος σε έναν μικροελεγκτή (Arduino) :
- Χρησιμοποιούμε ως έξοδο το ποδαράκι ενός μικροελεγκτή, όταν θέλουμε να δώσουμε εντολή – πληροφορία σε εξωτερικό περιφερειακό.
- Η έξοδος μπορεί να είναι είτε αναλογική είτε ψηφιακή είναι συγκεκριμένα τα pins των μικροελεγκτών που μπορούν να χρησιμοποιηθούν ως ψηφιακοί έξοδοι ή ως αναλογικοί έξοδοι ή μπορεί να συνδυάζονται και οι δύο δυνατότητες στο ίδιο pin, όλες αυτές οι δυνατότητες αναφέρονται στο datasheet του εκάστοτε μικροελεγκτή.
- Ψηφιακή έξοδος χαρακτηρίζεται όταν ή εντολή προς το περιφερειακό είναι λογικό 0 ή λογικό 1. Η εντολή μεταφέρεται από τον μικροελεγκτή (όταν αυτός τροφοδοτείται με 5 volts) στο περιφερειακό με τάση, δηλαδή για λογικό 0 μεταφέρεται 0 volt και για λογικό 1 μεταφέρονται 5 volts.
- Για “αναλογική έξοδο” (ουσιαστικά πρόκειται για παλμό), δηλαδή για να κυμαίνεται η τάση εξόδου απο 0 έως 5 volts (100% duty cycle) στην περίπτωση που ο μικροελεγκτής τροφοδοτείται με 5 volts. Οι μικροελεγκτές διαθέτουν εξόδους (pins) οι οποίες έχουν την δυνατότητα να παράγουν παλμούς με μεταβλητό πλάτος (pwm – pulse width modulation). Παράμετρος αυτών των παλμών είναι ο κύκλος εργασίας τους (duty cycle), που καθορίζει πόσο χρόνο στην διάρκεια μίας περιόδου θα είναι ενεργός ο παλμός. Με αυτόν τον τρόπο επιτυγχάνεται η μεταβολή της τάσης εξόδου του pin. Δηλαδή για 0 volts (0% duty cycle) έως 5 volts (100% duty cycle).
- Εάν θέλουμε να συνδέσουμε κάποιο led στο pin του μικροελεγκτή χρησιμοποιούμε αντίσταση συνδεδεμένη σε σειρά με το led, της οποίας η τιμή επιλέγεται σύμφωνα με τα χαρακτηριστικά του led. Ο λόγος που τοποθετούνται αντιστάσεις στην συνδεσμολογία είναι για να περιορίσουν το ρέυμα στα επιθυμητά όρια λειτουργίας του led και του μικροελεγκτή, καθώς κάθε pin του μικροελεγκτή “έχει την δυνατότητα” να παρέχει συγκεκριμένο ρεύμα στην έξοδο (πχ. 20mA) σε περίπτωση που το φορτίο (στην προκειμένη περίπτωση έχουμε συνδεδεμένο το led) ξεπεράσει αυτή την μέγιστη τιμή (των 20mA) η έξοδος του μικροελεγκτή όπως και το led θα καταστραφούν. Κάθε ηλεκτρονικό εξάρτημα έχει επιτρεπτά όρια λειτουργίας.
- Εάν θέλουμε το led να ανάβει σε πλήρη φωτεινότητα, όταν του “δίνει” εντολή ο μικροελεγκτής (arduino) και δεν είναι απαραίτητη η εναλλαγή φωτεινότητας τότε το συνδέουμε σε απλή ψηφιακή έξοδο.
- Εάν θέλουμε να επιλέγουμε την φωτεινότητα του led, τότε το συνδέουμε σε έξοδο pwm. Οπότε όταν μεταβάλουμε τον κύκλο εργασίας του παλμού θα μεταβάλλεται και η φωτεινότητα του led.
- Στην περίπτωση των leds η μέγιστη τιμή ρεύματος της εξόδου του μικροελεγκτή επαρκεί για την απαιτήσεις τους. Δηλαδή εάν το led για να ανάψει σε πλήρη φωτεινότητα καταναλώνει 20 mA η έξοδος του μικροελεγκτή δεν θα έχει κίνδυνο για να καταστραφεί. Εάν όμως το φορτίο “τραβήξει” περισσότερο ρεύμα (περρισότερα απο 20 mA) τότε θα υπάρχει κίνδυνος καταστροφής εξόδου.
- Οπότε όταν κάποιο φορτίο καταναλώνει μεγαλύτερο ρεύμα από το επιτρεπτό της εξόδου του μικροελεγκτή, τότε κάνουμε ενίσχυση της εξόδου.
- Η ενίσχυση της εξόδου μπορεί να γίνει με την τοποθέτηση τρανζίστορ (δέν είναι ο μοναδικός τρόπος).Το τρανζίστορ είναι μία διάταξη ημιαγωγών που ανάλογα με την τιμή της τάσης εισόδου (μικροελεγκτής) διαφοροποιεί την τιμή της τάσης εξόδου (πηνίο ρελέ).
- Εάν θέλουμε να συνδέσουμε φορτία όπως μία λάμπα, εναν κινητήρα κτλ. που λειτουργούν με εναλλασσόμενη τάση στα 230 Volts και επιθυμούμε να ενεργοποιούνται ή να απενεργοποιούνται από την έξοδο του μικροελεγκτή τότε είναι απαραίτητα κάποια εξαρτηματα.Στην παραπάνω περίπτωση θα χρησιμοποιήσουμε ρελέ, που στην επαφή του θα συνδεθεί το φορτίο (λάμπα, κινητήρας κτλ).Το ρελέ όμως για να μετακινήσει την επαφή του και να ενεργοποιηθεί το φορτίο πρέπει να διεγερθεί το πηνίο του. Για να διεγερθεί το πηνίο του απαιτούνται π.χ 50mA τιμή που δέν έχει την δυνατότητα να παρέχει η έξοδος του μικροελεγκτή.Οπότε συνδέουμε στην έξοδο του μικροελεγκτή τρανζίστορ και το τρανζίστορ οδηγεί το πηνίο του ρελε. Σύμφωνα με τα παραπάνω μπορούμε να ελέγξουμε οποιοδήποτε φορτίο. Την αντίσταση την τοποθετούμε για να περιορίσουμε το ρεύμα της εξόδου του μικροελεγκτή (δηλαδή, για τον ίδιο λόγο που την τοποθετούμε και στα leds).