LEGO® Education > Σχέδια Μαθήματος > ΣΧΕΔΙΟ ΕΝΟΤΗΤΑΣ:

Πρόβλημα με τη χελώνα

Διερεύνηση του τρόπου δημιουργίας και χρήσης συναρτήσεων σε ένα πρόγραμμα

}

45-90 λεπτά

Τάξεις Ε’ Δημοτικού- Α’ Γυμνασίου

Προχωρημένο Επίπεδο

Ερωτήσεις προς διερεύνηση

  • Πώς μπορούν γραμμές κώδικα να χρησιμοποιηθούν ξανά και ξανά;

Προετοιμασία ( Prepare )

    Βεβαιωθείτε ότι οι εγκέφαλοι SPIKE Prime είναι φορτισμένοι, ειδικά αν η σύνδεση γίνεται μέσω Bluetooth.

    Συμμετοχή ( Engage )

        (Ομαδική συζήτηση, 5 λεπτά)

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

        Ανακάλυψη ( Explore )

        (Μικρές ομάδες, 20 λεπτά)

        Οι μαθητές θα διερευνήσουν πώς ένα ζώο αντιδρά στη ρύπανση του βιοτόπου του.

        • Κατευθύνετε τους μαθητές στην ενότητα BUILD στην εφαρμογή SPIKE. Εδώ οι μαθητές μπορούν να έχουν πρόσβαση στις οδηγίες κατασκευής του μοντέλου Hopper. Ζητήστε από τους μαθητές να κατασκευάσουν το μοντέλο. Οι οδηγίες κατασκευής είναι επίσης διαθέσιμες στη διεύθυνση https://education.lego.com/en-us/support/spike-prime/building-instructions. Σε αυτό το μάθημα, η χοάνη θα αντιπροσωπεύει μια θαλάσσια χελώνα.
        • Καθοδηγήστε τους μαθητές να ανοίξουν ένα νέο έργο στον καμβά προγραμματισμού Python. Ζητήστε από τους μαθητές να διαγράψουν τυχόν κώδικα που υπάρχει ήδη στην περιοχή προγραμματισμού. Οι μαθητές θα πρέπει να συνδέσουν τον κόμβο τους.  

        Ξεκινήστε να κινείστε

        • Προτρέψτε τους μαθητές να σκεφτούν πώς μπορούν να προγραμματίσουν τη θαλάσσια χελώνα να κινεί τα πτερύγιά της προκειμένου να κολυμπήσει ή να περπατήσει στη στεριά. Να θυμάστε ότι οι χελώνες κινούνται αργά.
        • Ζητήστε από τους μαθητές να γράψουν ένα πρόγραμμα που θα κάνει τα πτερύγια της χελώνας να κινηθούν.

        Δείγμα προγράμματος:

        from spike import PrimeHub, MotorPair

        hub = PrimeHub() 

        Πτερύγια = MotorPair(‘E’,’F’)

        flippers.move(100, ‘cm’, 0, 25)

        Όλοι οι μαθητές έχουν χρόνο να προγραμματίσουν τις χελώνες τους.

        Μετακίνηση μέσω σκουπιδιών

        • Συζητήστε πώς κινούνται οι χελώνες. Οι χελώνες δεν κολυμπούν ή περπατούν με μία ταχύτητα. Όταν μια χελώνα φοβάται, κολυμπάει πιο γρήγορα. Όταν αγωνίζεται να βγει από μια πλαστική σακούλα ή άλλα σκουπίδια που βρίσκονται στον ωκεανό, η χελώνα μπορεί να κινεί τα πτερύγιά της μπρος-πίσω.
        • Ζητήστε από τους μαθητές να τροποποιήσουν το πρόγραμμά τους ώστε να επιτρέπουν την εκτέλεση διαφορετικών αντιδράσεων ή γραμμών κώδικα ανάλογα με την κατάσταση. Ένας τρόπος για να γίνει αυτό είναι μέσω της χρήσης μιας συνάρτησης. Μια συνάρτηση είναι ένα μπλοκ επαναχρησιμοποιήσιμου κώδικα που μπορεί να κληθεί ανά πάσα στιγμή στο πρόγραμμα.
        • Εξηγήστε στους μαθητές ότι για να δημιουργήσετε ή να ορίσετε μια συνάρτηση ξεκινάτε με μια γραμμή κώδικα def ακολουθούμενη από ένα όνομα για τη συνάρτηση, παρένθεση και τελειώνετε με άνω και κάτω τελεία. (Υπενθυμίστε στους μαθητές να ονομάσουν τη συνάρτηση με κάτι που να έχει νόημα για τη δράση στη συνάρτηση).

        Για παράδειγμα:

        def frightened():

        100, ‘cm’, 0, 100)

        Εξηγήστε στους μαθητές το πρόγραμμα-δείγμα για να δουν πώς ορίζεται η συνάρτηση και στη συνέχεια καλείται στο πρόγραμμα που θα χρησιμοποιηθεί.

        Δείγμα προγράμματος:

        from spike import PrimeHub, MotorPair

        hub = PrimeHub() 

        flippers = MotorPair(‘E’,’F’)

        \#ορισμός της συνάρτησης

        def frightened():

        flippers.move(100, ‘cm’, 0, 100)

        while True:

        \#κάλεσμα της συνάρτησης

        frightened()

            Εξηγήστε το ( Explain )

            (Ολόκληρη η ομάδα, 5 λεπτά)

            Συζητήστε με τους μαθητές πώς λειτούργησε το πρόγραμμα.

            Κάντε στους μαθητές ερωτήσεις όπως:\

            • Εξηγήστε τη συνάρτησή σας και πώς λειτουργούν οι συναρτήσεις;
            • Ποιο είναι το όφελος από τη χρήση μιας συνάρτησης στο πρόγραμμά σας;
            • Ποια είναι η διαφορά μεταξύ του ορισμού μιας συνάρτησης και της κλήσης μιας συνάρτησης;

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

            Εξελίξτε το ( Elaborate )

            (Μικρές ομάδες, 10 λεπτά)

            • Προκαλέστε τους μαθητές να προσθέσουν δύο ακόμη λειτουργίες για να προγραμματίσουν τη χελώνα να κολυμπάει/περπατάει με κανονική ταχύτητα και να παλεύει όταν παγιδεύεται σε μια πλαστική σακούλα.
            • Ζητήστε από τους μαθητές να καλέσουν κάθε συνάρτηση όταν χρειάζεται στο πρόγραμμα.

            Δείγμα κώδικα:

            από spike import PrimeHub, MotorPair

            from spike.control import wait_for_seconds

            hub = PrimeHub() 

            flippers = MotorPair(‘E’,’F’)

            \#ορισμός των τριών συναρτήσεων

            def frightened():

            flippers.move(100, ‘cm’, 0, 100)

            def normal():

            flippers.move(100, ‘cm’, 0, 25)

            def struggle():

            flippers.move(100, ‘cm’, 0, 100)

            wait_for_seconds(1)

            flippers.move(100, ‘cm’, 0, -100)

            wait_for_seconds(1)

            while True:

            \#Κλήση των συναρτήσεων 

            frightened()

            wait_for_seconds(3)

            struggle()

            wait_for_seconds(3)

            normal()

            wait_for_seconds(3)

            Αξιολόγηση  ( Evaluate )

            (Ομαδική άσκηση, 5 λεπτά)

            Παρατήρηση του δασκάλου:

            Συζητήστε το πρόγραμμα με τους μαθητές.

            Κάντε στους μαθητές ερωτήσεις όπως:

            • Τι συνέβη όταν καλέσατε τις συναρτήσεις;
            • Έχει σημασία με ποια σειρά ορίζονται οι συναρτήσεις; Γιατί ή γιατί όχι;
            • Ποια είναι τα πλεονεκτήματα της χρήσης συναρτήσεων;

            Αυτοαξιολόγηση:

            Βάλτε τους μαθητές να απαντήσουν στα ακόλουθα στο ημερολόγιό τους:

            • Τι μάθατε σήμερα για τη χρήση συναρτήσεων;
            • Ποια χαρακτηριστικά ενός καλού συμπαίκτη επέδειξα σήμερα;
            • Ζητήστε από τους μαθητές να βαθμολογήσουν τον εαυτό τους σε κλίμακα 1-3, σχετικά με τη διαχείριση του χρόνου τους σήμερα.
            • Ζητήστε από τους μαθητές να βαθμολογήσουν τον εαυτό τους σε κλίμακα 1-3, σχετικά με τη διαχείριση των υλικών (εξαρτημάτων) που έκαναν σήμερα.
            Υποστήριξη εκπαιδευτικών

            Οι μαθητές θα:

            • Γράψουν ένα πρόγραμμα που θα κάνει τα πτερύγια της χελώνας να κινούνται
            • Τροποποιήσουν ένα πρόγραμμα ώστε να επιτρέπει την εκτέλεση διαφορετικών αντιδράσεων ή γραμμών κώδικα ανάλογα με την κατάσταση
            Πράγματα που θα χρειαστείτε
            • Σετ SPIKE Prime έτοιμα για χρήση από τους μαθητές
            • Συσκευές με εγκατεστημένη την εφαρμογή SPIKE
            • Ημερολόγια μαθητών
            Εκπαιδευτικά πρότυπα

            CSTA

            2-CS-02 Σχεδιασμός έργων που συνδυάζουν στοιχεία υλικού και λογισμικού για τη συλλογή και ανταλλαγή δεδομένων.

            2-AP-13 Να αναλύουν προβλήματα και υποπροβλήματα σε μέρη για να διευκολύνουν το σχεδιασμό, την υλοποίηση και την αναθεώρηση προγραμμάτων.

            2-AP-16 Ενσωμάτωση υπάρχοντος κώδικα, μέσων και βιβλιοθηκών σε πρωτότυπα προγράμματα και απόδοση των στοιχείων αυτών.

            2-AP-17 Συστηματική δοκιμή και τελειοποίηση προγραμμάτων χρησιμοποιώντας μια σειρά περιπτώσεων δοκιμής.

            2-AP-19 Τεκμηρίωση προγραμμάτων προκειμένου να διευκολύνεται η παρακολούθηση, ο έλεγχος και η αποσφαλμάτωση.