Παραστατική ιδασκαλία Προγραµµατισµού Με Χρήση Ροµποτικών Μεθόδων Κ.Σταυρίδης 1, Ι. Καραβέλα 2 1 Καθηγητής Πληροφορικής ΠΕ19 2 ου Γυµνασίου Σοχού staurid@gmail.com 2 Καθηγήτρια Πληροφορικής ΠΕ20 Γυµνασίου Καλλινδοίων. Jkarabel@gmail.com Περίληψη Στα πλαίσια του µαθήµατος «Πληροφορική Γυµνασίου» έχει διαπιστωθεί ότι έννοιες λογισµικού προγράµµατος εντολών είναι ιδιαίτερα δυσνόητες από τους µαθητές. Στην παρούσα εργασία γίνεται προσπάθεια εξάλειψης των παραπάνω γνωστικών εµποδίων µε την χρήση του ροµποτικού οχήµατος MA VIN. Συγκεκριµένα, οι µαθητές µπαίνουν στην διαδικασία προγραµµατισµού µε «πιο» παραστατικές εντολές όπως: κίνηση robot µπροστά, δεξιά, αριστερά, έλεγχος αισθητήρων κτλ. Στην παρούσα εργασία γίνεται σύντοµη περιγραφή του robot ΜΑ VIN και του προγραµµατισµού του. Ακολουθεί η µεθοδολογία της προτεινόµενης διδασκαλίας και αναφέρονται ενδεικτικά κάποια project µαθητών. Λέξεις κλειδιά: Ροµποτική, δοµηµένος προγραµµατισµός Αbstract During the courses of informatics of gymnasium is found that the concepts meanings of software program instructions are especially obscure for students. In the present project an effort is curried out in order to efface the above notional obstacles with the use robotic system MA VIN. In particular, the students embark on familiarizing with the procedure of programming with more
representative instructions such as : move forwards -backwards right left, sensor control etc. In this current work is performed a brief description of robot MA VIN and its programming methods. The methodology of the proposed teaching follows as well as some conclusions. Περιγραφή Robot MA VIN To robot MA-VIN Σχήµα 1 Το Robot MA VIN σχήµα 1, είναι όχηµα δύο τροχών οι οποίοι κινούνται από δύο αντίστοιχους κινητήρες. Τον έλεγχο του οχήµατος τον έχει ο προγραµµατιζόµενος µικροεπεξεργαστής AVR. Πάνω στην κεντρική πλακέτα υπάρχει ενσωµατωµένο µικρόφωνο, για την ανίχνευση ηχητικών επιπέδων έντασης. Μπροστά, υπάρχουν 3 υπέρυθροι αισθητήρες ανίχνευσης εµποδίων. Κάτω υπάρχουν υπέρυθρες αισθητήρες ανίχνευσης µαύρου άσπρου χρώµατος. Επιπρόσθετα στο πίσω µέρος ενσωµατώνεται οθόνη LCD 2 γραµµών και 8 χαρακτήρων. Όπως φαίνεται στο σχήµα υπάρχουν 5 υποδοχές στις οποίες µπορούν να ενσωµατωθούν τα module : αισθητήρας έντασης φωτός, 3 διακόπτες, διακόπτης αφής, buzzer, µεγάφωνο, 7-segment display, leds. Ο προγραµµατισµός του robot γίνεται µε δύο τρόπους. α) οπτικός προγραµµατισµός (visual programming ) σχήµα 2. Με αυτό τον τρόπο η κάθε εντολή συµβολίζεται µε το αντίστοιχο block. Η αλληλουχία εκτέλεσης των block καθορίζεται από τα αντίστοιχα βελάκια. Συγκεκριµένα το robot προγραµµατίζεται από ένα φιλικό προς τους µαθητές διάγραµµα ροής Flowchart.
Visual Programming Σχήµα 2 β) Προγραµµατισµός σε C, σχήµα 3. Αφού οι µαθητές εξοικειωθούν µε τον εύκολο τρόπο προγραµµατισµού του robot µπορούν να προχωρήσουν και σε τεχνικές προγραµµατισµού σε γλώσσα C. Πρέπει να σηµειωθεί ότι υπάρχει η δυνατότητα αυτόµατης αντιστοίχισης από το software ενός flowchart σ ε γλώσσα C, δυνατότητα που συντελεί στην µετάβαση του µαθητή σε κανονικό πρόγραµµα. Προγραµµατισµός σε C Σχήµα 3 Μεθοδολογία ιδασκαλίας Στάδια υλοποίησης Τα στάδια υλοποίησης της προτεινόµενης διδασκαλίας φαίνονται στο σχήµα 4: Στάδια υλοποίησης Παρουσίαση ROBOT Ατοµικό project Project 3 ατόµων Κατασκευή νέου ROBOT Σχήµα 4 α) Σε αυτή τη φάση παρουσιάζεται το robot και προγραµµατίζεται από τον εκπαιδευτή ( για διάφορα σενάρια) µε την ενεργή συµµετοχή των µαθητών. (1 διδακτική ώρα) β) Σε αυτή τη φάση ο κάθε µαθητής αναλαµβάνει να προγραµµατίσει το robot σε σενάρια χαµηλής δυσκολίας. Στην τάξη οι µαθητές υλοποίησαν τα παρακάτω σενάρια : α)εκκίνηση του
ROBOT µε παλαµάκι/ άνοιγµα φώτων β) κίνηση του ROBOT σε νοητό τετράγωνο. (2 διδακτικές ώρες) γ) Σε αυτή τη φάση οι µαθητές χωρίζονται σε οµάδες τριών ατόµων και προγραµµατίζουν το robot σε αρκετά δύσκολα σενάρια. Στην τάξη οι µαθητές υλοποίησαν τα παρακάτω σενάρια α)ακολουθία τεθλασµένης µαύρης γραµµής β)έξοδος από λαβύρινθο γ)δηµιουργία µελωδικού κουδουνιού επιλογής τριών ήχων. (4 διδακτικές ώρες) Μεθοδολογία project 3 ατόµων Η µεθοδολογία projects σε αυτή τη φάση περιγράφεται καλύτερα από το σχήµα 5 : Μεθοδολογία project 1)Καθορισµός 2)Ανάλυση 3)Σχεδιασµό 4)Προγραµµατι 9)Καταγραφ ή Εργασίας 8)Έλεγ 7)Προγραµµατι Σχήµα 5 6)Τροποποί 1 ) Καθορισµός : καθορίζεται το σενάριο από τον καθηγητή και τους µαθητές και στήνεται ο αντίστοιχος στίβος ροµποτικής. 2) Ανάλυση: οι µαθητές αναλύουν το πρόβληµα µε κάθε λεπτοµέρεια (π.χ. µετρήσεις στο στίβο ροµποτικής) 3) Σχεδιασµός : οι µαθητές σχεδιάζουν τον αλγόριθµο επίλυσης του προβλήµατος σε ενέργειες του robot. 4) Προγραµµατισµός : ο αλγόριθµος µεταφράζεται στο διάγραµµα ροής προγραµµατισµού. Αφού προγραµµατιστεί το robot γίνονται δοκιµές στο στίβο ροµποτικής. Αν υπάρξουν τα επιθυµητά αποτελέσµατα προχωρούν στην επόµενη φάση αλλιώς επιστρέφουν στη φάση «σχεδιασµού αλγορίθµου». 5) Αντιστοίχιση : οι µαθητές αντιστοιχίζουν το διάγραµµα ροής µε τις αντίστοιχες εντολές της C. Γίνονται οι ανάλογες παρατηρήσεις. 6) Τροποποίηση : το σενάριο τροποποιείται ελάχιστα από τον καθηγητή. 5)Αντιστοίχι
7) Προγραµµατισµός : γίνεται επίλυση του τροποποιηµένου προβλήµατος από τους µαθητές σε γλώσσα C. 8) Έλεγχος : γίνεται έλεγχος προγράµµατος και αν είναι λάθος επιστρέφουµε στην προηγούµενη φάση. 9) Καταγραφή εργασίας : όλα τα στάδια της εργασίας καταγράφονται από τους µαθητές στον επεξεργαστή κειµένου. Επίσης δηµιουργείται και η αντίστοιχη παρουσίαση στο λογισµικό παρουσιάσεων. Κατασκευή νέου ROBOT Στη διάρκεια αυτής της φάσης και εφόσον οι µαθητές το επιθυµούν, γίνεται προσπάθεια δηµιουργίας ενός νέου ροµποτικού οχήµατος.έχοντας ένα ηλεκτρικό αυτοκίνητο (παιχνίδι) και ενσωµατώνοντας arduino board ( open source robotic programming language) οι µαθητές δηµιουργούν µια ροµποτική πλατφόρµα. Ανάλογα µε την περίσταση ενσωµατώνονται αισθητήρες υπερήχων προσέγγισης, αισθητήρας εντοπισµού θέσης (board GPS) έτσι ώστε το νέο robot να µπορεί να εκτελέσει διάφορα σενάρια. ύο από αυτά τα σενάρια που υλοποιούνται είναι : 1. αυτόµατος πιλότος µε χρήση GPS 2. αυτόµατο παρκάρισµα µε χρήση υπέρηχων αισθητήρων Αυτή η φάση ολοκληρώνεται σε 8 διδακτικές ώρες. Οι εντολές που χρησιµοποιούνται είναι ήδη υλοποιηµένες από τον καθηγητή σε επίπεδο υποπρογράµµατος. Οι µαθητές απλά καλούν τις αντίστοιχες «µακροεντολές» πχ. (kinisi_robot_mprosta() ). Συµπεράσµατα Οι µαθητές έδειξαν πολύ µεγάλο ενδιαφέρον για τη ροµποτική. Τα γνωστικά εµπόδια µετατράπηκαν σε παιχνίδι και τα αποτελέσµατα
ήταν εντυπωσιακά. Ήδη βρίσκεται σε εξέλιξη η κατασκευή του νέου robot µε πολύ µεγάλο ζήλο από τους µαθητές. Προτείνεται η διδασκαλία µεγάλου µέρους του προγράµµατος σπουδών της Γ Γυµνασίου να γίνεται µε την παραπάνω µεθοδολογία για τους παρακάτω λόγους. ίνονται οι δυνατότητες διαθεµατικής διδασκαλίας µε άλλα µαθήµατα όπως φυσική, µαθηµατικά, βιολογία. Οι βασικές έννοιες προγραµµατισµού γίνονται κατανοητές από τους µαθητές, διότι οι «ενέργειες» προς προγραµµατισµό, όπως κίνηση τροχών, είναι οικείες σε αυτούς. Οι µαθητές εξοικειώνονται µε σύγχρονες τεχνολογίες ηλεκτρονικής-αισθητηρίων. Γνώσεις που, αν και δεν απαιτούνται από το πρόγραµµα σπουδών, θα είναι ιδιαίτερα χρήσιµες αφού τα embedded systems ολοένα και εισχωρούν στην καθηµερινή ζωή. Το ποσοστό των µαθητών που εξοικειώθηκε µε τις βασικές έννοιες προγραµµατισµού, αυξήθηκε κατά 67 %. Βιβλιογραφία http://www.active-robots.com/products/robots/mavin.shtml www.hitec.com Satratzemi Maria, Dagdidelis Vasileios, Kagani Aikaterini. Teaching Programming with Robots. A case study on Greek Secondary Education (2005). Roland H. Untch, Department of Computer Science Clemson university. Teaching Programming Using the Karel the Robot Paradigm Realized with a Conventional Language. Karen North. CSTA Level I Curriculum Committee, ISTE SIGCT MS Officer, Technology Teacher, Piney Point Elementary School, Houston ISD. Teaching Programming K-2, One Solution Robots as teaching Tools Stewart Tanley, PhD Program Manager, Microsoft Research http://research.microsoft.com/~stanley. Microsoft Robotics Studio in Education