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



Σχετικά έγγραφα
Εισαγωγή στο EV3 Μέρος 2

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Καταγραφή βημάτων στο χαρτί (Pseudocode)

Ο Προγραμματισμός στην Πράξη

Ποιές εντολές του Scratch πρέπει να ξέρω;

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

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

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

Μαθήματα Scratch -Δραστηριότητα 1 Παλέτα Κίνηση

Φύλλα εργασίας. MicroWorlds Pro. Πολυμεσικές Εφαρμογές με την χρήση της γλώσσας LOGO Στο Γυμνάσιο. Β. Χ. Χρυσοχοΐδης

Πακέτο Lego Mindstorms

Εφαρμογή δημιουργίας σεναρίων Sctatch

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

Breakdance Computer Game σε Scratch.

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

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

Μάθημα 1: Εισαγωγή. Κάνε κλικ την εντολή "κινήσου" και με το ποντίκι πατημένο μετέφερε τη στη περιοχή σεναρίων.

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

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

Παλέτα Κίνηση. Καλό είναι πριν ξεκινήσετε το παρακάτω φυλλάδιο να έχετε παρακολουθήσει τα παρακάτω δύο videos: a) Εισαγωγή στο περιβάλλον του Scratch

Δραστηριότητα 1 γνωριμία με το περιβάλλον Karel

ΣΗΜΕΙΩΣΕΙΣ. στη γλώσσα προγραμματισμού. Γκέτσιος Βασίλειος

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

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

Συλλογή & Επεξεργασία Δεδομένων Εξαμηνιαία ΡομποΚαθαριστής Μέρος Β : Το Πρόγραμμα. Σχεδίαση Συστήματος Πραγματικής Εφαρμογής (Prototyping).

Προγραμματισμός. Το περιβάλλον του scratch

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

Σχεδίαση και ανάπτυξη δραστηριοτήτων στο προγραμματιστικό περιβάλλον MicroWorlds Pro

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 8. Μετρώντας Επιτάχυνση με το Accelerόμετρο (ADXL 335) Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων

Β1.1 Δημιουργία Εφαρμογής στο Περιβάλλον Προγραμματισμού EdScratch του Edison ρομπότ

21. ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ 4 - ΔΗΜΙΟΥΡΓΩΝΤΑΣ ΜΕ ΤΟ BYOB BYOB. Αλγόριθμος Διαδικασία Παράμετροι

Transcript:

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

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

Επανάληψη μιας Δράσης Πώς να κινηθεί γύρω από ένα κουτί χρησιμοποιώντας τις εντολές που ξέρουμε; (move + turn) + (move + turn) + (move + turn) Υπάρχει ευκολότερος τρόπος; Οι επαναλήψεις βοηθούν στο να επαναλάβουμε μια δράση πολλές φορές Προγραμματισμός EV3 Ακαδημία Ρομποτικής 60

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

Πρόβλημα Κάνετε το ρομπότ να γυρίζει γύρω από ένα κουτί μέχρι να ακουμπήσει κάπου. Πρέπει να χρησιμοποιήσετε το Loop. Προγραμματισμός EV3 Ακαδημία Ρομποτικής 62

Λύση Προγραμματισμός EV3 Ακαδημία Ρομποτικής 63

8. Switches Προγραμματισμός EV3 Ακαδημία Ρομποτικής 64

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

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

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

Λύση Display Block Touch Sensor Selected Wait Block Loop Display Block Προγραμματισμός EV3 Ακαδημία Ρομποτικής 68

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

Λύση Προγραμματισμός EV3 Ακαδημία Ρομποτικής 70

9. Αισθητήρας Υπερήχων (Ultrasonic Sensor) Προγραμματισμός EV3 Ακαδημία Ρομποτικής 71

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

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

Πρόβλημα 1 Κάνετε το ρομπότ να κινηθεί μέχρι που να είναι 10 εκατοστά από τον τοίχο Βήμα 1: Βάλετε το «move block» στο ON Βήμα 2: Κάνετε το «wait block» να χρησιμοποιεί το «Ultrasonic» Βήμα 3: Βάλετε το «move block» στο OFF Προγραμματισμός EV3 Ακαδημία Ρομποτικής 74

Λύση Προγραμματισμός EV3 Ακαδημία Ρομποτικής 75

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

Λύση Προγραμματισμός EV3 Ακαδημία Ρομποτικής 77

Καλύτερη Λύση Αυτή η λύση επιτρέπει στο ρομπότ να ξεκουραστεί εάν είναι 10-12 εκατοστά μακριά. Προγραμματισμός EV3 Ακαδημία Ρομποτικής 78

10. Επακολούθηση Γραμμής Προγραμματισμός EV3 Ακαδημία Ρομποτικής 79

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

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

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

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

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

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

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

Το ρομπότ πρέπει να ξεκινήσει στη ορθή πλευρά Προγραμματισμός EV3 Ακαδημία Ρομποτικής 87

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

Λύση Προγραμματισμός EV3 Ακαδημία Ρομποτικής 89

Λύση (2) Αλλάξετε το «end condition» του «loop» για να μην συνεχίζει για πάντα Προγραμματισμός EV3 Ακαδημία Ρομποτικής 90

Πρόβλημα 2 Μέρος 1: Κάνετε το πρόγραμμα να σταματά όταν πιέσετε τον αισθητήρα αφής («touch sensor») Μέρος 2: Κάνετε το πρόγραμμα να σταματά μετά από κάποια απόσταση Προγραμματισμός EV3 Ακαδημία Ρομποτικής 91

Λύση: Με τον αισθητήρα αφής Προγραμματισμός EV3 Ακαδημία Ρομποτικής 92

Λύση: Απόσταση Προγραμματισμός EV3 Ακαδημία Ρομποτικής 93

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

11. Basic Sequencer Προγραμματισμός EV3 Ακαδημία Ρομποτικής 95

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

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

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

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

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

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

Συζήτηση Τι σας έχει επιτρέψει να κάνεις ο sequencer? Σας επιτρέπει να τρέξετε το ένα πρόγραμμα μετά από το άλλο. Προγραμματισμός EV3 Ακαδημία Ρομποτικής 102

12. Τελικές Εργασίες Προγραμματισμός EV3 Ακαδημία Ρομποτικής 103

Λαβύρινθος 1 Προγραμματισμός EV3 Ακαδημία Ρομποτικής 104

Λαβύρινθος 2: Χρήση αισθητήρων Προγραμματισμός EV3 Ακαδημία Ρομποτικής 105

Σταμάτα στη γραμμή Προγραμματίστε το ρομπότ να προχωρήσει και να σταματήσει στη τρίτη γραμμή. Προγραμματισμός EV3 Ακαδημία Ρομποτικής 106

ΑΚΑΔΗΜΙΑ ΡΟΜΠΟΤΙΚΗΣ Πανεπιστήμιο Frederick Περισσότερα Μαθήματα: akrob.frederick.ac.cy Επικοινωνία: akrob@frederick.ac.cy Προγραμματισμός EV3 Ακαδημία Ρομποτικής 107