Μεταβλητή-αναλογικός αισθητήρας γωνίας (AJS09)

Σκοπός:Στην ενότητα αυτή θα ασχοληθούμε με το ποτενσιόμετρο (AJS06).

Διδακτικοί στόχοι:Στο τέλος της ενότητας/δραστηριότητας θα είστε σε θέση να:

  • χρησιμοποιείτε ποτενσιόμετρο (AJS06)
  • αντιστοιχείτε ένα εύρος τιμών σε ένα άλλο εύρος
  • γνωρίζετε τα αρχικά για την έννοια της μεταβλητής

Αναλογικός αισθητήρας γωνίας – ποτενσιόμετρο (AJS09)

ΠΟΤΕΝΣΙΟΜΕΤΡΟΓια το S1, συνδέεται στις αναλογικές θύρες A0, A1, A2 και A3.


ΠΑΡΑΔΕΙΓΜΑ 1: Για πάντα εμφανίζεται η αναλογική τιμή που αποδίδει το ποτενσιόμετρο. Εάν η τιμή είναι μεγαλύτερη ή ίση από 500 τότε ενεργοποιείται ένα LED αλλιώς απενεργοποιείται το LED.

ΒΙΝΤΕΟ : ΕΔΩ             ΛΥΣΗ : ΕΔΩ

ΠΑΡΑΤΗΡΗΣΕΙΣ ΣΤΟ ΠΑΡΑΠΑΝΩ ΠΡΟΓΡΑΜΜΑ:  Ο αισθητήρας είναι συνδεδεμένος στη θύρα A0.     Η εντολή serial output… βρίσκεται από την παλέτα εντολών του Arduino.    Δεν ξεχνάτε, για την εμφάνιση των τιμών να επιλέγετε και το εικονίδιο Open Serial (ακριβώς κάτω από τη μαύρη οθόνη).


Η έννοια της μεταβλητής:

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

Μια μεταβλητή μπορεί να “κρατάει” πόσες φορές μία φιγούρα αγγίζει ή πλησιάζει μια άλλη (εάν βρίσκεστε σε περιβάλλον Scratch με φιγούρες), πόσο κοντά βρίσκεται σε ένα εμπόδιο (χαρακτηριστικές περιπτώσεις στα σενάρια ρομποτικής), πόσα αντικείμενα έχουν εξαφανιστεί από τον χρήστη (χαρακτηριστική περίπτωση σε παιχνίδια), ποιους αριθμούς θέλω να προσθέσω κ.α.

Ιδιαίτερα για το ζήτημα του ποτενσιόμετρου στο S1: Ανάλογα με την τιμή του ποτενσιόμετρου αυξομειώνεται η ένταση που αποδίδει ένα LED.


ΠΑΡΑΔΕΙΓΜΑ 2: Στο ρομπότ S1, στον ελεγκτή συνδέουμε ένα LED και το ποτενσιόμετρο. Σύμφωνα με το σενάριο του έργου για πάντα ανάβει ένα LED του οποίου η ένταση του φωτός που αποδίδει εξαρτάται από την τιμή του ποτενσιόμετρου.  ΒΙΝΤΕΟΕΔΩ           ΛΥΣΗ : ΕΔΩ

ΣΥΝΔΕΣΜΟΛΟΓΙΑ:

  • Θα χρησιμοποιηθεί 1 θύρα από τις A0, A1, A2 και A3 για το ποτενσιόμετρο.
  • Θα χρησιμοποιηθεί 1 θύρα από τις D3/4, D5, D6 και D9 για το LED.

ΑΣΚΗΣΗ 1 : Στο ρομπότ S1, στον ελεγκτή συνδέουμε ένα LED και το ποτενσιόμετρο. Σύμφωνα με το σενάριο του έργου για πάντα η τιμή από το ποτενσιόμετρο (η οποία βρίσκεται σε ένα εύρος 0-1023) αντιστοιχίζεται στο εύρος τιμών 0-255 και εκχωρείται σε μια μεταβλητή. Εάν η τιμή αυτής της μεταβλητής είναι μεγαλύτερη η ίση με 100 τότε το LED ανάβει με ένταση όσο η τιμή αυτή αλλιώς απενεργοποιείται το LED (δηλαδή αποκτά ένταση 0. Χωρίς να επηρεάζει την εκτέλεση του παραπάνω σεναρίου καλό θα ήταν να εμφανίζετε στη μαύρη οθόνη του Mind+ τις τιμές που παίρνει η μεταβλητή, καθώς γυρίζετε το ποτενσιόμετρο (για να τις παρακολουθείτε). ΛΥΣΗ  ΕΔΩ  

ΣΥΝΔΕΣΜΟΛΟΓΙΑ:

  • Θα χρησιμοποιηθεί μία θύρα από τις A0, A1, A2 και A3 για το ποτενσιόμετρο.
  • Θα χρησιμοποιηθεί μία θύρα από τις D3/4, D5, D6 και D9 για το LED με την μεταβλητή ένταση φωτός.

ΑΣΚΗΣΗ 2 :Στο ρομπότ S1, στον ελεγκτή συνδέουμε το ποτενσιόμετρο,τον αισθητήρα θερμοκρασίας-υγρασίας και ένα LED. Ορίζουμε μια μεταβλητή με το όνομα “ποτενσιόμετρο”.Για πάντα:

  • Την τιμή του ποτενσιόμετρου από το εύρος τιμών 0-1023 την αντιστοιχούμε στο εύρος τιμών 0-255.
  • Εμφανίζουμε στη μαύρη οθόνη του Mind+ τη λέξη “ποτενσιόμετρο” συνοδευμένη από το περιεχόμενο της μεταβλητής.
  • Εμφανίζουμε στη μαύρη οθόνη του Mind+ τη λέξη “υγρασία” συνοδευμένη από την τιμή της υγρασίας.
  • Περιμένουμε 0.2 δευτερόλεπτα.
  • Εάν η μεταβλητή ποτενσιόμετρο παίρνει τιμή μεγαλύτερη από 100 και η τιμή της υγρασίας είναι μεγαλύτερη από 40 τότε ενεργοποιείται το LED με ένταση όση η μεταβλητή του ποτενσιόμετρου αλλιώς το LED έχει ένταση 0.    ΛΥΣΗ ΕΔΩ