Arduino Logic 101 – Μάθημα 1.2: Αλγόριθμοι στην καθημερινότητα – Από το τοστ στο ρομπότ
Γεια σας και πάλι! Στο προηγούμενο μάθημα είδαμε ότι ο κώδικας είναι μια λίστα οδηγιών. Σήμερα, θα μάθουμε πώς να οργανώνουμε αυτές τις οδηγίες σωστά. Αυτή η οργάνωση έχει ένα όνομα που ακούγεται επιστημονικό, αλλά είναι πολύ απλό: Αλγόριθμος.
Τι είναι ο Αλγόριθμος;
Αλγόριθμος είναι μια πεπερασμένη σειρά βημάτων που ακολουθούμε για να λύσουμε ένα συγκεκριμένο πρόβλημα ή να πετύχουμε έναν στόχο.
Αν ακολουθήσεις μια συνταγή μαγειρικής, εκτελείς έναν αλγόριθμο. Αν λύσεις ένα λουμπίκ κύβο, ακολουθείς έναν αλγόριθμο. Αν το Arduino σου διαβάζει έναν αισθητήρα, εκτελεί κι αυτό έναν αλγόριθμο!
Το Πείραμα του Τοστ 🍞
Φανταστείτε ότι πρέπει να δώσετε οδηγίες σε ένα ρομπότ (που δεν ξέρει τίποτα για τον κόσμο μας) για να φτιάξει ένα τοστ με τυρί.
Λάθος Αλγόριθμος:
Βάλε το τυρί στο ψωμί.
Ψήσε το τοστ.
Φάε.
Γιατί είναι λάθος; Γιατί το ρομπότ θα προσπαθήσει να βάλει το τυρί χωρίς να ανοίξει τη σακούλα, ή θα βάλει το τοστ στην τοστιέρα χωρίς να την ανάψει!
Σωστός (Μηχανικός) Αλγόριθμος:
Άνοιξε τη σακούλα του ψωμιού.
Βγάλε 2 φέτες ψωμί.
Τοποθέτησε τις φέτες στον πάγκο.
Άνοιξε τη συσκευασία του τυριού.
Βγάλε μία φέτα τυρί και βάλ' την πάνω στην πρώτη φέτα ψωμιού.
Βάλε τη δεύτερη φέτα ψωμιού πάνω από το τυρί.
Άνοιξε την τοστιέρα.
Βάλε το τοστ μέσα και κλείσε την τοστιέρα.
Περίμενε 3 λεπτά.
Βγάλε το τοστ.
Το μάθημα: Στον προγραμματισμό, καμία λεπτομέρεια δεν είναι αυτονόητη.
Από την κουζίνα στο Ρομπότ (MLA)
Ας δούμε πώς εφαρμόσαμε αυτή τη λογική στο βραβευμένο μας project MLA (Autonomous Bio-Robotic System) για την αποφυγή εμποδίων.
Ο αλγόριθμος του ρομπότ μας σε απλά ελληνικά:
Μέτρησε την απόσταση από το πλησιέστερο αντικείμενο (χρησιμοποιώντας τον αισθητήρα υπερήχων).
Έλεγξε: Είναι η απόσταση μικρότερη από 20 εκατοστά;
Αν ΝΑΙ: Σταμάτησε τα μοτέρ, κάνε πίσω και στρίψε δεξιά.
Αν ΟΧΙ: Συνέχισε να κινείσαι ευθεία.
Επανάληψη: Πήγαινε πάλι στο βήμα 1.
Τα 3 χαρακτηριστικά ενός καλού Αλγόριθμου
Για να είναι ο κώδικάς σου "επαγγελματικός", ο αλγόριθμός σου πρέπει να είναι:
Σαφής: Κάθε βήμα πρέπει να είναι ξεκάθαρο (π.χ. όχι "πήγαινε λίγο δεξιά", αλλά "στρίψε δεξιά για 500ms").
Σωστή Σειρά: Δεν μπορείς να διαβάσεις την τιμή ενός αισθητήρα αν δεν τον έχεις ενεργοποιήσει πρώτα.
Αποτελεσματικός: Μην κάνεις 10 βήματα αν μπορείς να το κάνεις σε 2.
💡 Pro-Tip από το Εργαστήριο:
Όταν "κολλάμε" στον κώδικα, αφήνουμε το πληκτρολόγιο, παίρνουμε ένα χαρτί και γράφουμε τον αλγόριθμο σε απλά ελληνικά (αυτό λέγεται Ψευδοκώδικας). Αν η λογική σου δουλεύει στο χαρτί, θα δουλέψει και στο Arduino!
Άσκηση για το σπίτι:
Δοκίμασε να γράψεις τον αλγόριθμο για κάτι απλό, όπως "πώς ανάβω το φως στο δωμάτιό μου αν είναι σκοτάδι". Πόσα βήματα χρειάζεσαι;
Στο επόμενο μάθημα (1.3), θα μάθουμε πώς να μετατρέπουμε αυτούς τους αλγόριθμους σε Flowcharts (Διαγράμματα Ροής), το αγαπημένο εργαλείο κάθε Μηχανικού Λογισμικού!
📜 Άδεια Χρήσης & Πνευματικά Δικαιώματα
Το περιεχόμενο αυτής της ανάρτησης (κείμενα, οδηγίες και φωτογραφίες) αποτελεί πνευματική ιδιοκτησία της Unique Tech. Ο παρεχόμενος κώδικας διατίθεται υπό την άδεια MIT License.
Προϋπόθεση χρήσης: Επιτρέπεται η ελεύθερη χρήση και αναπαραγωγή, αρκεί να συμπεριλαμβάνεται η αρχική δήλωση πνευματικών δικαιωμάτων και η αναφορά στην Unique Tech ως αρχική πηγή. Για την πλήρη ανάλυση των δικαιωμάτων σας, διαβάστε τους
#UniqueTech #ArduinoLogic101 #Algorithms #STEM #RoboticsStepByStep #LogicThinking
Σχόλια
Δημοσίευση σχολίου