Σάββατο 13 Ιανουαρίου 2024

Ρομποτική Μάθημα 11ο - Αισθητήρας Κλίσης

Ο αισθητήρας κλίσης είναι ένα εξάρτημα (διακόπτης) που μπορεί να ανιχνεύσει τον προσανατολισμό ενός αντικειμένου (όρθιο ή όχι). Είναι ισοδύναμο με ένα κουμπί που ενεργοποιείται μέσω του φυσικού προσανατολισμού του. Περιέχει μεταλλικές μπάλες μέσα, οι οποίες καθώς κυλούν μέσα στον σωλήνα είτε ακουμπούν στις δύο ακίδες της συσκευής οπότε ο διακόπτης είναι ΑΝΟΙΧΤΟΣ είτε δεν ακουμπούν οπότε ο διακόπτης είναι ΚΛΕΙΣΤΟΣ. Αυτό που έχει να κάνει ο χρήστης είναι να στρέψει τον σωλήνα ανάλογα με το αν θέλει ο διακόπτης να είναι ανοιχτός ή κλειστός. 


Δραστηριότητα 1η

Στην πρώτη δραστηριότητα απλά θα δούμε την λειτουργία του αισθητήρα κλίσης ως διακόπτη. Οπότε δεν χρειάζεται να γράψουμε κώδικα παρά μόνο να χρησιμοποιήσουμε τα 5 Volt του Arduino ως πηγή ενέργειας. Η ίδια δραστηριότητα θα μπορούσε να γίνει απλά με την χρήση μιας μπαταρίας στην θέση του Arduino. Ουσιαστικά κατασκευάζουμε ένα κλειστό κύκλωμα όπου ο αισθητήρας κλίσης είναι ο διακόπτης. Όταν ο αισθητήρας είναι κατακόρυφος τότε ο διακόπτης είναι κλειστός και το led είναι αναμμένο ενώ όταν είναι σε οριζόντια θέση ο διακόπτης είναι κλειστός και το led είναι σβηστό. Βέβαια κατά την εκτέλεση του πειράματος θα δούμε ότι το led πολές φορές αναβοσβήνει πριν σταθεροποιηθεί και το δούμε σταθερά αναμένο. Αυτό σημβαίνει γιατί η μπάλα αναπηδά λίγο πριν σταματήσει ακριβώς πάνω στους διακόπτες, κάνοντας τον διακόπτη ανοιχτό, κλειστό, ανοιχτό, κλειστό, κ.λπ. Όπως μια μπάλα που πέφτει αναπηδά πριν τελικά προσγειωθεί στο έδαφος. Το συγκεκριμένο πρόβλημα θα προσπαθήσουμε να το λύσουμε σε κάποια άλλη δραστηριότητα.


Δραστηριότητα 2η

Σε αυτήν την δραστηριότητα θα χρησιμοποιήσουμε τον αισθητήρα κλίσης ως εντολέα ώστε να ανάψουμε ένα led (είσοδος - έξοδος). Όταν ο αισθητήρας θα είναι κατακόρυφος οπότε ο διακόπτης κλειστός θα ανάβουμε το led, ενώ όταν είναι κατακόρυφος οπότε ανοικτός θα κλείνουμε το led. Στην παραπάνω εικόνα βλέπετε την συνδεσμολογία που πρέπει να ακολουθήσετε και στην παρακάτω το πρόγραμμα που πρέπει να δημιουργήσετε στο Ardublock και να το ανεβάσετε στο Arduino.

Αυτό που πρέπει να επισημάνουμε στον παραπάνω κώδικα είναι ότι στο setup θα πρέπει το pin 2 του Arduino αρχικά να το θέσουμε σε κατάσταση ΡΕΥΜΑ (5 Volt) έτσι ώστε όταν ο διακόπτης είναι κλειστός τότε το pin 2 συνδέεται με το GRD του Arduino άρα η μεταβλητή t "διαβάζει" το GRD του Arduino οπότε το t = ΟΧΙ ΡΕΥΜΑ ενώ όταν ο διακόπτης είναι ανοικτός τότε t = ΡΕΥΜΑ. Η δομή ελέγχου αν/αλλιώς ανάβει ή όχι το led ανάλογα με την τιμή της μεταβλητής t.


Δραστηριότητα 3η

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


Δραστηριότητα 4η

Στην τελευταία δραστηριότητα του μαθήματος θα τροποποιήσετε την συνδεσμολογία και τον κώδικα της προηγούμενης δραστηριότητας έτσι ώστε όταν το καλαμάκι γέρνει από την μια πλευρά να στρέφετε τον κινητήρα servo 10 μοίρες από την μια πλευρά, ενώ όταν γέρνει από την άλλη να στρέφετε τον κινητήρα servo 10 μοίρες από την άλλη πλευρά. Η εντολή που στρέφει κάποιες μοίρες έναν κινητήρα servo είναι η παρακάτω και θα την βρείτε στο μπλοκ εντολών Generic Hardware.


Δεν υπάρχουν σχόλια:

Δημοσίευση σχολίου