Εισαγωγή στο EV3 Μέρος 2

Σχετικά έγγραφα
7. Επαναλήψεις (Loops) Προγραμματισμός EV3 Ακαδημία Ρομποτικής 58

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΟ ΚΙΤ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS EV3

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ EV3 Επίπεδο Ι

Φύλλο εργασίας 6. Αποφυγή εμποδίων. Χωριστείτε σε ομάδες 2-3 ατόμων και απαντήστε στις ερωτήσεις του φύλλου εργασίας.

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΟ ΚΙΤ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS EV3

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΟ ΚΙΤ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS EV3

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΟ ΚΙΤ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS EV3

Φύλλο εργασίας 4. Η γάτα και τα ποντίκια

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΟ ΚΙΤ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS EV3

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΟ ΚΙΤ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS EV3

Απεικόνιση Κειμένου και Γραφικών. By Sanjay and Arvind Seshan MΑΘΗΜΑΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΑΡΧΑΡΙΩΝ

ΔΙΑΛΕΞΗ ΙΙ ΕΝΑ ΒΗΜΑ ΠΑΡΑΠΑΝΩ ΜΕ SCRATCH ΕΠΙΛΕΓΩΝΤΑΣ & ΕΠΑΝΑΛΑΜΒΑΝΟΝΤΑΣ

Φύλλο εργασίας 1 Εισαγωγή στη Ρομποτική

Αισθητήρας Χρώματος. By Sanjay and Arvind Seshan ΜΑΘΗΜΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΑΡΧΑΡΙΩΝ

Θεματική Ενότητα: Κίνηση στην ευθεία (Moving Straight)

Μέρος Α Γνωριμία με το περιβάλλον προγραμματισμού του ρομπότ OTTO

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΟ ΚΙΤ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS EV3

ΒΑΣΙΚΑ ΜΑΘΗΜΑΤΑ ΝΤΟΥΛΑΚΗΣ - ΜΕΝΙΟΥΔΑΚΗΣ ΕΠΑ.Λ ΕΛ. ΒΕΝΙΖΕΛΟΥ

ΟΜΑΔΑ ΡΟΜΠΟΤΙΚΗΣ: ΦΟΙΒΟΣ ΓΚΟΥΜΑΣ ΠΑΡΗ ΚΥΡΙΑΚΙΔΗ ΒΑΣΙΛΗΣ ΣΑΚΕΛΛΑΡΙΟΥ ΥΠΕΥΘΥΝΟΣ ΚΑΘΗΓΗΤΗΣ: κ. ΦΑΚΙΟΛΑΚΗΣ ΓΙΩΡΓΟΣ

Περίληψη των MyBlocks Οδηγός βήμα-βήμα για την δημιουργία MyBlocks με εισόδους και εξόδους

Φύλλο Εργασίας 4 Συνθετική εργασία

Φύλλο εργασίας 3 Προγραμματίζω το ρομπότ μου

Ρύθμιση ενός Αισθητήρα

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

«Προγραµµατισµός του LEGO Mindstorm NXT για το διαγωνισµό "Move the Ball!"»

Εκπαιδευτικό Ρομπότ ΝΧΤ (REM Bot)

ΠΕΡΙΕΧΟΜΕΝΑ... 2 ΠΡΟΛΟΓΟΣ... 3 ΕΙΣΑΓΩΓΗ... 4 ΤΑ ΚΟΥΜΠΙΑ ΚΑΙ ΤΑ ΜΠΛΟΚ... 6 ΧΡΗΣΙΜΟΠΟΙΩΝΤΑΣ ΤΟΥΣ ΚΙΝΗΤΗΡΕΣ... 9 ΚΙΝΗΣΕΙΣ ΚΙΝΗΤΗΡΑ...

Βυζαντινός Ρεπαντής Κολλέγιο Αθηνών 2010

(3) Από την εργαλειοθήκη επιλέξτε το εργαλείο «ετικέτας (Label)». Δημιουργήστε μια ετικέτα στην φόρμα σας.

Φύλλο εργασίας 9 - Αυτόνομο ρομποτικό όχημα αποφυγής εμποδίων

Αναπαραγωγή και stop/pause έτοιμων ηχητικών clips

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

Εξοικείωση με το NXT-G

ραστηριότητες τάξης για εκπαιδευτικούς LEGO Mindstorms EV3 Οδηγός για τους εκπαιδευτικούς που εφαρμόζουν την εκπαιδευτική ρομποτική στην

ΠΡΟΣΟΜΟΙΩΣΗ ΘΕΩΡΙΑ 1. H αρχική οθόνη του Open Roberta lab

ΣΚΗΝΙΚΟ ΥΠΟΒΑΘΡΑ ΑΡΧΙΚΗ

ΠΑΡΑΡΤΗΜΑ IV. ΔΙΔΑΚΤΙΚΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΡΑΡΤΗΜΑ IV Ασκήσεις για το Robolab

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

Εισαγωγή στον Προγραμματισμό

1ο Φύλλο Εργασίας. της παλέτας Ήχος. Πώς μπορούμε να εισάγουμε και να αναπαράγουμε έναν ήχο;

Γραφικά υπολογιστών Εργαστήριο 10 Εισαγωγή στα Sprites

ΡΟΜΠΟΤΙΚΗ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ LEGO MINDSTORMS NXT. ΚΕΦΑΛΑΙΟ 7ο. Δραστηριότητες για το ΝΧΤ-G και το Robolab

Αριστείδης Παλιούρας Ανακαλύψτε το Scratch 2

Η κίνηση και η δομή επιλογής στο Scratch

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

αξιοποίηση των ΤΠΕ: Η logo στη διδακτική διδακτική πράξη

Επιμέλεια παρουσίασης: Αριστείδης Παλιούρας ΤΙ ΕΊΝΑΙ ΈΝΑ ΡΟΜΠΟΤ (ROBOT)?

Πληρουορική Γ Γσμμασίοσ

1. ΠΕΡΙΓΡΑΦΗ ΚΑΙ ΑΝΑΛΥΣΗ ΦΥΛΛΩΝ ΕΡΓΑΣΙΑΣ (Ή ΚΑΙ ΑΛΛΟΥ ΔΙΔΑΚΤΙΚΟΥ ΥΛΙΚΟΥ) ΑΞΙΟΛΟΓΗΣΗ ΤΩΝ ΜΑΘΗΤΩΝ

Unity Editor #03 Κεντρικό Μενού: Edit

Εισαγωγή στην επανάληψη

Ενότητα 18 Οργάνωση των Βιβλίων Εργασίας

> μεγαλύτερο <= μικρότερο ή ίσο < μικρότερο == ισότητα >= μεγαλύτερο ή ίσο!= διαφορετικό

Εισαγωγή στη Ρομποτική και τον Προγραμματισμό με τη χρήση του ρομπότ Thymio & του λογισμικού Aseba

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007

Ενότητα 2: Εντολές Επανάληψης

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Εντολές Ελέγχου & Επανάληψης

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Ενότητα: Χρήση εργαλείων Εικόνων, Εντολών και Ετικετών ΚΥΡΟΠΟΥΛΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ. Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη)

Ας κάνουμε μια γάτα να περπατάει στο Scratch 2.0

Οδηγίες Αγοράς Ηλεκτρονικού Βιβλίου Instructions for Buying an ebook

ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΤΗΣ. Εργαλειοθήκη Παρουσιάζετε το έργο σας Εκκινείτε τα σενάριά σας Σταματάτε όλα τα σενάρια. Οι 8 ομάδες της Παλέτας εντολών

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

Μάθημα 05: Ο Αισθητήρας Υπερήχων (Ultrasonic Sensor)

Αντικείμενα, συμπεριφορές, γεγονότα

Σχετική κίνηση αντικειμένων

ΠΑΡΑΡΤΗΜΑ Ι Παρουσίαση των εντολών του ΝΧΤ-G

1ο μέρος 1. Φτιάχνουμε την πίστα. Μια ενδεικτική πίστα φαίνεται παρακάτω:

Πολυτεχνείο Κρήτης Τμήμα ΗΜΜΥ Χειμερινό Εξάμηνο Intelligence Lab. Αυτόνομοι Πράκτορες. Κουσανάκης Βασίλης

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης

Εισαγωγή στην Επιστήμη της Πληροφορικής Εργαστήριο. UNIX Μέρος 2

ΡΟΜΠΟΤΙΚΗ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ LEGO MINDSTORMS NXT. ΤΟΜΟΣ Β - ΚΕΦΑΛΑΙΟ 3o. Προγραμματιστικό περιβάλλον ΝΧΤ-G

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

Αυτόνομοι Πράκτορες. ΝΑΟ Μουσικός

Breakdance Computer Game σε Scratch.

Αγώνες αυτοκινήτου Παιχνίδι για 2 παίκτες

Τα ηλεκτρονικά μέρη του ρομπότ Επιλογή των μονάδων εισόδου εξόδου ανάλογα το μοντέλο που θέλουμε να κατασκευάσουμε

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

Ταυτότητα εκπαιδευτικού σεναρίου

α) Πώς παίρνουμε αποφάσεις στην καθημερινή μας ζωή; Συμπληρώσετε τον παρακάτω πίνακα: τότε

Γράφοντας μουσική με το Finale 2006 (Δ μέρος)

Πακέτο Lego Mindstorms

Ταυτότητα εκπαιδευτικού σεναρίου. Γνώσεις και πρότερες ιδέες των μαθητών. Σκοπός και στόχοι

STEM Education via Educational Robotics

2017 Κατασκευάζω και Προγραμματίζω με τον μικροελεγκτή Arduino

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Ενότητα: Χρήση TextBoxes ΚΥΡΟΠΟΥΛΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ. Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη)

ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΔΟΜΕΣ. Γενική μορφή της επανάληψης επανάλαβε φορές [... ενέργειες...]

Modbus basic setup notes for IO-Link AL1xxx Master Block

Ενότητα 1: «Εισαγωγή στην Αλγοριθμική και τον Προγραμματισμό. Απλές ασκήσεις με γλώσσα Pascal»

Αυτόματη στάθμευση. Το πρόβλημα:

Δομές Δεδομένων. Σημειώσεις από το εργαστήριο για τον χειρισμό του προγράμματος Eclipse. 5ο εξάμηνο. v1.0

Παλέτα Κίνηση. Για να μετακινήσουμε ένα αντικείμενο χρησιμοποιούμε την εντολή ΚΙΝΗΣΟΥ

Εισαγωγή στην επανάληψη

3 ο Εργαστήριο Μεταβλητές, Τελεστές

Καροτοκυνηγός. Αντικείμενα

ΡΟΜΠΟΤΙΚΗ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ LEGO MINDSTORMS NXT. ΚΕΦΑΛΑΙΟ 3ο. Προγραμματιστικό περιβάλλον ΝΧΤ-G

Το κύκλωμα σε breadboard

Σενάριο Χρήσης Moodle

Μονάδες 12 ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ

Φτιάξε ένα απλό παιχνίδι

Transcript:

Εισαγωγή στο EV3 Μέρος 2 Δρ. Γιώργος Α. Δημητρίου Εργαστήριο και Αυτομάτων Συστημάτων & Ακαδημία Τμήμα Πληροφορικής και Μηχανικών Υπολογιστών Σχολή Μηχανικής και Εφαρμοσμένων Επιστημών Πανεπιστήμιο Frederick g.demetriou@frederick.ac.cy staff.frederick.ac.cy/com.dg

7. Επαναλήψεις (Loops) ΕΙσαγωγή στο EV3 2

Στόχοι Μαθήματος 1. Πώς να επαναλάβετε μια δράση 2. Μάθετε πώς να χρησιμοποιείτε το Loop Blocks ΕΙσαγωγή στο EV3 3

Επανάληψη μιας Δράσης Πώς να κινηθεί γύρω από ένα κουτί χρησιμοποιώντας τις The LOOP Block εντολές που ξέρουμε; Sometimes, there are actions that you want to repeat. The LOOP block allows you to repeat those actions until an end condition is met (or becomes TRUE). (move + turn) + (move + turn) + (move + turn) Example: make the robot move around a box and return to its starting position To move along the box sides, it takes 8 blocks as follows: Υπάρχει ευκολότερος τρόπος; Οι επαναλήψεις βοηθούν στο να επαναλάβουμε μια δράση πολλές φορές Using the LOOP block, only Repeat the loop 4 times ΕΙσαγωγή στο EV3 4

Επαναλήψεις (Loops) The LOOP Block Παραδείγματα: Sometimes, there are actions that you want to repeat. The LOOP block allows you to repeat those actions until an end condition is met (or becomes TRUE). The LOOP Κινήσου Block για πάντα, Example: make the robot move around a box and return to its starting position Sometimes, there are actions that you want to repeat. The LOOP block allows you To move along the box sides, it takes 8 blocks as follows: μέχρι να ακουμπήσεις κάπου, to repeat those actions until an end condition is met (or becomes TRUE). ορισμένες φορές, κλπ. Example: make the robot move around a box and return to its starting position To move along the box sides, it takes 8 blocks as follows: Using the LOOP block, only Using the LOOP block, only Repeat the loop 4 times Repeat the loop 4 times Warning: Deleting the LOOP block will also delete all the blocks within the Δρ. Δημητρίου Warning: - Ακαδημία Deleting the LOOP block will also delete all the blocks within the loop. You can move the blocks out of ΕΙσαγωγή the loop, στο EV3 then delete it. 5 loop. You can move the blocks out of the loop, then delete it.

Αποστολή Κάνετε το ρομπότ να γυρίζει γύρω από ένα κουτί μέχρι να ακουμπήσει κάπου. Πρέπει να χρησιμοποιήσετε το Loop. ΕΙσαγωγή στο EV3 6

Λύση ΕΙσαγωγή στο EV3 7

8. Switches ΕΙσαγωγή στο EV3 8

Στόχοι Μαθήματος 1. Μάθετε πώς να κάνετε το ρομπότ να επιλέγει μεταξύ διαφόρων επιλογών 2. Μάθετε πως χρησιμοποιείται το Switch Block ΕΙσαγωγή στο EV3 9

Switch Blocks Το ρομπότ παίρνει αποφάσεις βάση διαφόρων επιλογών Π.χ.: Έχει εντοπίσει τη γραμμή το ρομπότ; Ουσιαστικά είναι ερωτήσεις που η απάντηση τους είναι ΝΑΙ ή ΌΧΙ Τα Switch blocks τα βρίσκουμε στη πορτοκαλί /flow καρτέλα Τρέξε αυτό το κώδικα αν η απάντηση είναι ΝΑΙ Ερώτηση: έχει πιεστεί ο «touch sensor» Τρέξε αυτό το κώδικα αν η απάντηση είναι ΟΧΙ ΕΙσαγωγή στο EV3 10

Αποστολή 1 Γράψετε ένα πρόγραμμα που αλλάζει την οθόνη του ρομπότ εάν ο αισθητήρας αφής έχει πιεστεί ή όχι Εάν έχει πιεστεί, το EV3 είναι χαρούμενο (happy face). Εάν δεν έχει πιεστεί τότε είναι λυπημένο (sad face). Υπόδειξη: Πρέπει να χρησιμοποιήσετε τα: display block, loops and switch blocks! ΕΙσαγωγή στο EV3 11

Λύση Display Block Touch Sensor Selected Wait Block Loop Display Block ΕΙσαγωγή στο EV3 12

Αποστολή 2 Κάνετε το ρομπότ να απεικονίσει μεγάλα μάτια (big eyeballs) εάν το ακουμπήσετε μια φορά και λυπημένο πρόσωπο (sad face) εάν το ακουμπήσετε δεύτερη φορά. Να εναλλάσσεται συνεχώς. ΕΙσαγωγή στο EV3 13

Λύση ΕΙσαγωγή στο EV3 14

9. Αισθητήρας Υπερήχων (Ultrasonic Sensor) ΕΙσαγωγή στο EV3 15

Στόχοι Μαθήματος 1. Να μάθετε τη χρήση του αισθητήρα υπερήχων 2. Να μάθετε τη χρήση του «Wait Until Ultrasonic Block» 3. Να μάθετε την διαφορά μεταξύ του «Wait Until Ultrasonic Block» και του «Ultrasonic Block» ΕΙσαγωγή στο EV3 16

Αισθητήρας Υπερήχων Ο αισθητήρας υπερήχων μετρά απόσταση Μπορείτε να τον χρησιμοποιήσετε όταν πρέπει το ρομπότ να βρίσκεται μια συγκεκριμένη απόσταση από κάποιο αντικείμενο Η απόσταση μπορεί να υπολογιστεί σε εκατοστά ή ίντσες Πρέπει να χρησιμοποιήσετε το «Ultrasonic Block» Για να κάνετε τον αισθητήρα να κάνει κάποια δράση σε κάποια απόσταση, πρέπει να χρησιμοποιήσετε το «Wait Until» Read Ultrasonic Wait for Ultrasonic ΕΙσαγωγή στο EV3 17

Αποστολή 1 Κάνετε το ρομπότ να κινηθεί μέχρι που να είναι 10 εκατοστά από τον τοίχο Βήμα 1: Βάλετε το «move block» στο ON Βήμα 2: Κάνετε το «wait block» να χρησιμοποιεί το «Ultrasonic» Βήμα 3: Βάλετε το «move block» στο OFF ΕΙσαγωγή στο EV3 18

Λύση ΕΙσαγωγή στο EV3 19

Αποστολή 2 Εάν το ρομπότ είναι 10 εκατοστά πιο κοντά από το χέρι σας τότε να κινηθεί πίσω, αλλιώς να κινηθεί εμπρός. Βήμα 1: Βάλετε ένα «loop» Βήμα 2: Βάλετε ένα «switch» μέσα στο «loop» Βήμα 3: Ορίστε το «switch» στο Ultrasonic Βήμα 4: Ορίστε το «move steering block» στο «ON» και βάλετε μέσα «TRUE» Βήμα 5: Ορίστε το «move steering block» στο «OFF» και βάλετε μέσα «FALSE» ΕΙσαγωγή στο EV3 20

Λύση ΕΙσαγωγή στο EV3 21

Καλύτερη Λύση Αυτή η λύση επιτρέπει στο ρομπότ να ξεκουραστεί εάν είναι 10-12 εκατοστά μακριά. ΕΙσαγωγή στο EV3 22

10. Επακολούθηση Γραμμής ΕΙσαγωγή στο EV3 23

Στόχοι Μαθήματος Πως το ρομπότ ακολουθεί γραμμές Χρησιμοποιώντας το «Color Mode» στο «Color Sensor» Να ακολουθεί τη γραμμή μέχρι ένας αισθητήρας να ενεργοποιηθεί. Να ακολουθεί τη γραμμή μέχρι κάποια απόσταση Μάθετε πώς βάζετε αισθητήρες, επαναλήψεις και switches μαζί σε ένα πρόγραμμα ΕΙσαγωγή στο EV3 24

Επακολούθηση στο κέντρο της γραμμής Οι άνθρωποι περπατούν πάνω στο κέντρο μιας γραμμής Αν δοκιμάσουμε να κάνουμε το ρομπότ να κάνει το ίδιο χρησιμοποιώντας τον «Color Sensor» Τι ερωτήσεις πρέπει να ρωτήσουμε το ρομπότ: Είσαι πάνω στη γραμμή ή όχι; ΕΙσαγωγή στο EV3 25

Αλγόριθμος (λογική λειτουργίας) 1. Εάν το ρομπότ είναι στο μαύρο τότε να προχωρήσει ευθεία 2. Εάν είναι στο άσπρο τότε να στρίψει αριστερά για να ξανανέβει πάνω στη γραμμή Φαίνεται ότι δουλεύει καλά εδώ ΕΙσαγωγή στο EV3 26

Αλγόριθμος (λογική λειτουργίας) 1. Εάν το ρομπότ είναι στο μαύρο τότε να προχωρήσει ευθεία 2. Εάν είναι στο άσπρο τότε να στρίψει αριστερά για να ξανανέβει πάνω στη γραμμή ΌΧΙ Δεν δουλεύει σε αυτό το σενάριο Ο Αλγόριθμος αυτός δεν δουλεύει όταν η στροφή είναι στα δεξιά ΕΙσαγωγή στο EV3 27

Πως τα ρομπότ επακολουθούν τη γραμμή Το πρόβλημα με το προηγούμενο αλγόριθμο είναι ότι το ρομπότ δεν ξέρει πότε η στροφή είναι δεξιά ή αριστερά. Πώς να κάνουμε το ρομπότ να στρίβει πάντα στη ορθή πλευρά της γραμμής; Αντί για το κέντρο, μπορούμε να κάνουμε το ρομπότ να ακολουθεί την άκρη της γραμμής Τώρα το ρομπότ θα «πέφτει» πάντα στην ίδια πλευρά. ΕΙσαγωγή στο EV3 28

Αριστερή πλευρά Αλγόριθμος 1. Εάν είναι πάνω στο μαύρο να στρίψει αριστερά. 2. Εάν είναι πάνω στο άσπρο να στρίψει δεξιά ΕΙσαγωγή στο EV3 29

Δεξιά πλευρά Αλγόριθμος 1. Εάν είναι πάνω στο μαύρο να στρίψει δεξιά 2. Εάν είναι πάνω στο άσπρο να στρίψει αριστερά ΕΙσαγωγή στο EV3 30

Το ρομπότ πρέπει να ξεκινήσει στη ορθή πλευρά ΕΙσαγωγή στο EV3 31

B C B C Αποστολή 1 Βήμα 1: Το ρομπότ να ακολουθήσει την ΔΕΞΙΑ πλευρά της γραμμής Αλγόριθμος (χρησιμοποιήστε «loops» και «switches»): 1. Εάν ο αισθητήρας δει μαύρο το ρομπότ να στρίψει αριστερά. 2. Εάν ο αισθητήρας δει άσπρο ο ρομπότ να στρίψει δεξιά Βήμα 2: Δοκιμάστε διαφορετικές γραμμές Δουλεύει το ίδιο σε όλες τις γραμμές (ευθείες και στροφές); Βήμα 3: Εάν όχι, αντί για «Turn Steering» = 50, δοκιμάστε μικρότερες τιμές ΕΙσαγωγή στο EV3 32

Λύση ΕΙσαγωγή στο EV3 33

Λύση (2) Αλλάξετε το «end condition» του «loop» για να μην συνεχίζει για πάντα ΕΙσαγωγή στο EV3 34

Αποστολή 2 Μέρος 1: Κάνετε το πρόγραμμα να σταματά όταν πιέσετε τον αισθητήρα αφής («touch sensor») Μέρος 2: Κάνετε το πρόγραμμα να σταματά μετά από κάποια απόσταση ΕΙσαγωγή στο EV3 35

Λύση: Με τον αισθητήρα αφής ΕΙσαγωγή στο EV3 36

Λύση: Απόσταση ΕΙσαγωγή στο EV3 37

Συζήτηση Γιατί είναι αναγκαίο για το ρομπότ να ακολουθεί την ίδια πλευρά της γραμμής; Το ρομπότ ξέρει μόνο εάν είναι πάνω ή εκτός της γραμμής Αυτή είναι η απλή λύση στο πρόβλημα επακολούθησης γραμμής. Ποια είναι τα προβλήματα αυτής της λύσης; Νομίζετε ότι μπορεί να βελτιωθεί η λύση αυτή; Το ρομπότ δεν κινείται ομαλά. Κινείται από πολύ ζικ ζακ. Ποιοι αισθητήρες υπολογίζουν την απόσταση που ταξίδεψε το ρομπότ; Ο αισθητήρας «rotation sensor» που χρησιμοποιήθηκε στο πρόβλημα 2 υπολογίζει πόσο έχουν περιστραφεί οι τροχοί. ΕΙσαγωγή στο EV3 38

11. Basic Sequencer ΕΙσαγωγή στο EV3 39

Στόχοι Μαθήματος 1. Μάθετε πώς να χρησιμοποιείτε το «Wait for Button Press Block» 2. Τι είναι το «Sequencer» και πως είναι χρήσιμο 3. Πώς να κάνετε ένα «Sequencer» ΕΙσαγωγή στο EV3 40

Χρησιμοποιώντας τα κουμπάκια του EV3 Όλα τα κουμπάκια του EV3 (εκτός από το «OFF») χρησιμοποιούνται ως αισθητήρες αφής Μπορείτε να χρησιμοποιήσετε τα κουμπάκια για να κάνετε παιγνίδι, να τρέξετε διάφορες δράσεις, ή να κάνετε «sequencer» Δεν χρειάζεται να σπαταλήσετε μια από τις πύλες των αισθητήρων εάν απλά θέλετε να χρησιμοποιήσετε τον αισθητήρα αφής ως κουμπάκι. Το πρώτο βήμα για να δημιουργήσετε ένα «Basic Sequencer» είναι να μάθετε πως χρησιμοποιείται το «Wait for Button Press» ΕΙσαγωγή στο EV3 41

Wait for Button Press Block Wait Block: Επιλέξετε το κουμπί στο αριστερό κάτω μέρος του Wait Block. Επιλέξετε το: Brick Buttons Compare Brick Buttons Droids recommend #2 (bumped) most reliable Επιλέξετε όποιο κουμπί θέλετε εκτός από το «off» κουμπί. Το 2 ο (bumped) είναι το πιο αξιόπιστο ΕΙσαγωγή στο EV3 42

Τι είναι το Sequencer και γιατί χρειάζεται; Το sequencer είναι ένα πρόγραμμα που βάζει τις αποστολές σας με τι σειρά που θέλετε. Είναι κάτι σαν μενού. Άλλες ονομασίες του sequencer είναι Master Program ή Menu System. Πλεονεκτήματα: Δεν χρειάζεται να ψάχνετε για τα προγράμματα σας πάνω στην οθόνη του EV3. Μειονεκτήματα: Δεν μπορείτε να ξανατρέξετε κάθε πρόγραμμα εύκολα με το basic sequencer (αργότερα θα μάθετε πως μπορείτε να κάνετε πιο προηγμένα μενού) Προγράμματα στο EV3 Sequencer ΕΙσαγωγή στο EV3 43

Βήμα 1: Δημιουργήστε ένα Ψευδό-Sequencer Δημιουργήστε ένα Sequencer που περιμένει μέχρι να πατήσετε το κουμπί για να εκτελέσει την επόμενη δράση. Θα Ψευδό γιατί δεν έχετε κάποιες δράσεις ακόμη. ΕΙσαγωγή στο EV3 44

Βήμα 2: Προσθέσετε Δράσεις (Actions) Αντιγράψετε (copy & paste) κάθε μια από τις δράσεις μετά από κάθε πάτημα του κουμπιού. This sequencer code is set up for 3 actions (add/remove as needed) ΕΙσαγωγή στο EV3 45

Συζήτηση Τι σας έχει επιτρέψει να κάνεις ο sequencer? Σας επιτρέπει να τρέξετε το ένα πρόγραμμα μετά από το άλλο. ΕΙσαγωγή στο EV3 46

12. Τελικές Εργασίες ΕΙσαγωγή στο EV3 47

Λαβύρινθος 1 ΕΙσαγωγή στο EV3 48

Λαβύρινθος 2: Χρήση αισθητήρων ΕΙσαγωγή στο EV3 49

Σταμάτα στη γραμμή Προγραμματίστε το ρομπότ να προχωρήσει και να σταματήσει στη τρίτη γραμμή. ΕΙσαγωγή στο EV3 50

Dr. Giorgos A. Demetriou Εργαστήριο και Αυτομάτων Συστημάτων & Ακαδημία Πανεπιστήμιο Frederick Περισσότερα Μαθήματα: http://akrob.frederick.ac.cy References: Droids Robotics, Carnegie Mellon Robotics Academy, Lego Education Dr. Demetriou - Akadimia Rompotikis EV3 - Line Followers 51