Μετάβαση στο κεντρικό περιεχόμενο
Απαιτήσεις ολοκλήρωσης

Εκπομπή και Λήψη


Για να χρησιμοποιήσετε υπέρυθρα μηνύματα με το ρομπότ Edison, χρειάζεστε προφανώς τουλάχιστον δύο ρομπότ, ένα για να στείλετε τα μηνύματα IR και ένα για να εντοπίσετε και να αντιδράσετε στα μηνύματα IR.


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

Εκπομπή


Για να στείλετε ένα υπέρυθρο μήνυμα με το ρομπότ Edison στο EdScratch, πρέπει να χρησιμοποιήσετε αυτό το μπλοκ:

Το μπλοκ μηνυμάτων IR αποστολής μπορείτε να το βρείτε στην κατηγορία των LED μπλοκ στο EdScratch. Θα πρέπει να έχει γίνει κατανοητό πλέον ότι βρίσκεται εκεί καθώς αφορά μια ακτινοβολία. Το μπλοκ μηνύματος αποστολής IR έχει μια παράμετρο εισόδου  την οποία μπορείτε να ορίσετε για την αποστολή ενός συγκεκριμένου μηνύματος. Ακριβώς όπως ένα τηλεχειριστήριο μπορεί να στείλει διαφορετικά μηνύματα σε μια τηλεόραση, έτσι μπορείτε και εσείς να στείλετε διαφορετικά μηνύματα από το ρομπότ Edison. Στο EdScratch, μπορείτε να αλλάξετε το μήνυμα αλλάζοντας την τιμή της παραμέτρου εισόδου στο μπλοκ μηνυμάτων αποστολής IR. Το μπλοκ μηνυμάτων αποστολής IR έχει εύρος εισόδου από 0 έως 255. Με άλλα λόγια, ο Edison μπορεί να στείλει και να λάβει 256 διαφορετικά «μηνύματα» (0-255). Φανταστείτε πόσο μεγάλο και πολύπλοκο θα ήταν ένα τηλεχειριστήριο που θα μπορούσε να στείλει τόσα μηνύματα. 


Μερικές φορές θέλουμε να δημιουργήσουμε προγράμματα που θα λένε στο Edison να αντιδράσει με συγκεκριμένο τρόπο σε ένα συγκεκριμένο μήνυμα. Άλλες φορές, θέλουμε απλά ο Edison να αντιδράσει αν εντοπιστεί κάποιο οποιοδήποτε μήνυμα IR. Το ρομπότ που στέλνει το μήνυμα IR για τα υπόλοιπα ρομπότ μπορεί χρησιμοποιήσει ένα απλό πρόγραμμα όπως αυτό:


Για τη δραστηριότητα 2 της ενότητας, μπορείτε να ορίσετε την παράμετρο εισόδου στο μπλοκ μηνυμάτων αποστολής IR σε όποια τιμή θέλετε ωστόσο επιλέξαμε την αποστολή συγκεκριμένα της τιμής 255 για εξάσκηση. Πρέπει επίσης να γράψετε περισσότερο κώδικα για αυτό το ρομπότ πριν στείλει το μήνυμα IR. Χρησιμοποιήστε τουλάχιστον 3 διαφορετικούς τύπους  μπλοκ από την κατηγορία Drive για να κάνετε το ρομπότ σας να χορέψει πριν στείλει το μήνυμα IR.


Λήψη


Η ανίχνευση του μηνύματος μπορεί να προγραμματιστεί από το μενού Sensing και το εξάγωνο:


Tα ρομπότ που πρόκειται να ανιχνεύσουν το μήνυμα IR μπορούν να έχουν ένα επίσης απλό πρόγραμμα όπως αυτό:

Αυτό το πρόγραμμα χρησιμοποιεί ένα μπλοκ από την κατηγορία Αισθητήρες στο EdScratch ενώ η αναμονή είναι ένα μπλοκ από την κατηγορία ελέγχου. Δεν χρειάζεστε ειδικό μπλοκ για να ενεργοποιήσετε τον εντοπισμό μηνυμάτων IR  καθώς ο δέκτης υπερύθρων είναι από αυτούς τους αισθητήρες του Edison είναι πάντα σε θέση και ελέγχουν για συμβάντα. Σε προηγούμενη ενότητα θέσαμε σε λειτουργία τα LED υπερύθρων για να εκπέμψουν ακτινοβολία και να ανιχνεύσουμε εμπόδιο ωστόσο ο δέκτης υπερύθρων είναι ένας από αυτούς τους αισθητήρες που είναι "πάντα σε ισχύ", οπότε δε χρειάζεστε κώδικα για να τον ενεργοποιήσετε. Πρέπει να πείτε στο Edison ωστόσο, τι είδους συμβάν IR να ανιχνεύσει, και τι πρέπει να κάνει εάν εντοπιστεί αυτό το συμβάν.

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

Ας επεκτείνουμε το βασικό πρόγραμμα, γράφοντας περισσότερο κώδικα για να πούμε στο ρομπότ τι να κάνει μόλις λάβει ένα μήνυμα IR στην εργασία 3 της ενότητας . Χρησιμοποιήστε τουλάχιστον 3 διαφορετικούς τύπους μπλοκ και από την κατηγορία Drive για να κάνετε το ρομπότ σας να χορέψει μόλις λάβει το μήνυμα IR.


Διπλή Εκπομπή


Παρακολουθήστε στο παρακάτω βίντεο μία διπλή εκπομπή μηνυμάτων. Πώς θα μπορούσε γίνει; Ποιο ακόμα block θα έπρεπε να προσθέσουμε από το μενού Sensing ώστε να είμαστε σίγουροι ότι το Edison ακολουθά το δεύτερο μήνυμα και όχι το πρώτο. Ας το συζητήσουμε στο Forum πέραν των υποχρεώσεων για όποιον το επιθυμεί.


Τελευταία τροποποίηση: Δευτέρα, 21 Μαρτίου 2022, 11:45 AM