Μαι 23

Καλώς ήλθατε

ID-100221806Όταν ήμουν μικρός, όταν ακούγαμε τη λέξη ρομπότ, σκεφτόμαστε κάποιο ανθρωποειδές με εξελιγμένη νοημοσύνη, ενίοτε και με συναισθήματα. Τηλεόραση και κινηματογράφος με σειρές όπως το Star Trek και το Star Wars καθόριζαν την εικόνα που είχαμε για τα ρομπότ. Ήταν φυσικό αφού, όσοι από εμάς είχαμε την τύχη να πέσει στα χέρια μας ένας Ζ-80, θεωρούσαμε ότι κρατάμε διαστημική τεχνολογία στα χέρια μας. Το αστείο είναι πως δεν είχαμε τελείως άδικο. Σήμερα τα ρομπότ που στέλνουμε στον Άρη χρησιμοποιούν παρόμοιους επεξεργαστές.

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

Image courtesy of Simon Howden at FreeDigitalPhotos.net

Τα παιδιά που μεγαλώνουν σήμερα είναι σίγουρο πως δεν μπορούν να φανταστούν τον κόσμο χωρίς τη ρομποτική. Πέρα όμως από την πρακτική εφαρμογή των ρομπότ έχουμε αρχίσει να υιοθετούμε τη χρήση τους και σε άλλους τομείς, όπως η διασκέδαση και η εκπαίδευση. Η εκπαιδευτική φιλοσοφία STEM έχει στρέψει την τεχνολογία στην παραγωγή εκπαιδευτικών ρομπότ, τα οποία έχουν το εκπληκτικό πλεονέκτημα ότι συνδυάζουν την μάθηση με το παιχνίδι.

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

Ιούν 09

Πως θα φτιάξω ένα ρομπότ;

ID-100390126Στο άρθρο αυτό θα περιγράψουμε την διαδικασία που ακολουθούμε για να σχεδιάσουμε, να κατασκευάσουμε και να προγραμματίσουμε ένα ρομπότ. Όμως σημειώστε ότι δεν θα μπούμε στον τρόπο υλοποίησης κάθε φάσης ούτε στα εργαλεία που θα χρησιμοποιήσουμε. Στόχος μας είναι να κατανοήσουμε τα βήματα που πρέπει να ακολουθήσουμε προκειμένου να φτιάξουμε ένα ρομπότ.

Η απλή περίπτωση είναι να θέλουμε να φτιάξουμε ένα εκπαιδευτικό ρομπότ. Η διαδικασία σε αυτή τη περίπτωση είναι απλή. Αγοράζουμε το kit που θέλουμε και ακολουθούμε τις οδηγίες. Αυτό που κάνουν τα εκπαιδευτικά kits είναι να απλοποιούν την όλη διαδικασία δίνοντας μας έτοιμες τις οδηγίες, τα σχέδια και τα υλικά. Αν το καλοσκεφτεί κανείς αυτό που θα περιγράψουμε σε αυτό το άρθρο, τουλάχιστον τα βήματα μέχρι και την υλοποίηση του ρομπότ, είναι η διαδικασία που ακολουθούμε για να φτιάξουμε ένα kit. Η διαδικασία που θα περιγράψουμε αφορά οποιοδήποτε ρομπότ. Φυσικά θα δούμε την όλη διαδικασία συνοπτικά. Στόχος είναι να κατανοήσουμε τις βασικές αρχές της διαδικασίας προκειμένου να μπορούμε να την προσαρμόσουμε στις ανάγκες μας.

Τα βήματα που ακολουθούμε όταν σχεδιάζουμε ένα ρομπότ είναι: ορίζουμε το πρόβλημα, κάνουμε την απαραίτητη έρευνα, κάνουμε τον αρχικό σχεδιασμό, δημιουργούμε ένα πρωτότυπο, υλοποιούμε το ρομπότ, το προγραμματίζουμε, το ελέγχουμε και στο τέλος το αξιολογούμε. Συνήθως τα βήματα αυτά επαναλαμβάνονται αρκετές φορές μέχρι να πετύχουμε το αποτέλεσμα που θέλουμε. Η διαδικασία είναι κυκλική. Καθώς περνάμε από βήμα σε βήμα, αν ανακαλύψουμε κενά ή σφάλματα σε ένα ή περισσότερα από τα προηγούμενα βήματα, επανερχόμαστε, κάνουμε τις απαραίτητες αλλαγές και συνεχίζουμε. Όταν η αξιολόγηση του ρομπότ γίνει επιτυχώς κλείνει ο κύκλος.

Το πρώτο βήμα είναι ο ορισμός με σαφήνεια του προβλήματος που θέλουμε να λύσουμε με το ρομπότ μας. Οι ερωτήσεις που θέλουμε να απαντήσουμε σε αυτή τη φάση είναι α) ποιος είναι ο σκοπός της κατασκευής του ρομπότ και β) ποιες είναι οι συγκεκριμένες απαιτήσεις. Είναι σημαντικό σε αυτό το βήμα να μην βιαστούμε. Είναι απολύτως αναγκαίο να καταλάβουμε τι ακριβώς θα κάνει το ρομπότ μας. Αφού λοιπόν καταλήξουμε τι θέλουμε να φτιάξουμε πρέπει να το καταγράψουμε. Θα μας βοηθήσει πολύ να δημιουργήσουμε ένα «ημερολόγιο» στο οποίο θα κρατάμε σημειώσεις καθώς προχωράμε. Πριν πάμε λοιπόν στο επόμενο βήμα, γράφουμε μια σύντομη περιγραφή των συμπερασμάτων μας από το βήμα αυτό. Η καταγραφή αυτή πρέπει να γίνεται τουλάχιστον μετά από κάθε βήμα, ίσως και συχνότερα.

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

Κατά τη φάση συλλογής πληροφοριών θα πρέπει να καταλάβουμε τι ακριβώς θα κάνει το ρομπότ. Κατ’ αρχήν μας ενδιαφέρει η λειτουργικότητα του. Πως θα κινείται; Θα χειρίζεται άλλα αντικείμενα και με ποιο τρόπο; Τι μορφή ενέργειας θα χρησιμοποιεί; Θα αντιλαμβάνεται το περιβάλλον του; Θα έχει κάποια μορφή ευφυΐας;  Έπειτα πρέπει να δούμε την εξωτερική του εμφάνιση. Πόσο σημαντικό ρόλο παίζει η εμφάνιση του;  Έχει σημασία το χρώμα, το σχήμα, τα υλικά κατασκευής;

Εξίσου σημαντική όμως είναι και η εργονομία. Πόσο δυνατό πρέπει να είναι;  Πόσο σταθερό πρέπει να είναι; Πόση ακρίβεια χρειάζεται στις κινήσεις του; Πόσο εύκολο πρέπει να είναι στο χειρισμό του;  Τι αντοχή πρέπει να έχει όσον αφορά τη θερμοκρασία; Και φυσικά το σπουδαιότερο, υπάρχουν ειδικά μέτρα ασφαλείας που πρέπει να λάβουμε υπόψη μας; Έχοντας όλες αυτές τις πληροφορίες θα πρέπει να κάνουμε και μια εκτίμηση κόστους κατασκευής. Είναι σημαντικό να ξέρουμε, αν η υλοποίηση που σχεδιάζουμε είναι οικονομικά εφικτή.

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

Σε αυτό το σημείο θα πρέπει να απαντήσουμε σε μερικά πολύ σημαντικά ερωτήματα, που δεν έχουν άμεση σχέση με τον σχεδιασμό. Έχουν να κάνουν με την επίδραση της κατασκευής και της λειτουργίας του συγκεκριμένου ρομπότ στην κοινωνία και στο περιβάλλον. Ο σχεδιαστής ενός ρομπότ οφείλει να λάβει υπόψη του τις συνέπειες στην υγεία και την ασφάλεια των ανθρώπων, των ζώων και του ευρύτερου περιβάλλοντος. Για παράδειγμα πρέπει να λάβει υπόψη του τα επίπεδα θορύβου, τις πιθανές μυρωδιές και την μόλυνση που μπορεί να επιφέρει το ρομπότ.

Όπως καταλαβαίνετε η όλη διαδικασία της συλλογής των απαραίτητων πληροφοριών είναι επίπονη και χρονοβόρα. Το πλεονέκτημα όμως αυτής της διαδικασίας είναι πως κάνει σχετικά απλή υπόθεση τον σχεδιασμό. Έχοντας το αρχικό μας σχέδιο μπορούμε πλέον να περάσουμε στη φάση δημιουργίας του πρωτοτύπου. Στόχος μας σε αυτή τη φάση είναι να ελέγξουμε, να διορθώσουμε και να βελτιώσουμε το σχεδιασμό μας. Καλό είναι να μην μείνουμε μόνο σε ένα τρόπο υλοποίησης του σχεδίου μας. Το ιδανικό θα ήταν να σκεφτούμε τουλάχιστον τρεις πιθανές λύσεις. Έτσι κάνοντας διάφορες δοκιμές μπορούμε να καταλήξουμε στο καταλληλότερο. Πολύτιμος βοηθός μας στη φάση αυτή μπορεί να είναι κάποιο kit κατασκευών, όπως για παράδειγμα της Lego.

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

Επειδή η όλη διαδικασία κατασκευής ενός ρομπότ είναι πολύπλοκη είναι απαραίτητο να φτιάξουμε ένα χρονοδιάγραμμα, το οποίο θα περιγράφει τα βήματα που θα ακολουθήσουμε. Για κάθε βήμα πρέπει να καταγράψουμε: α) τι ακριβώς θα κάνουμε, β) τι υλικά χρειαζόμαστε, γ) τι εργαλεία χρειαζόμαστε και δ) πόσο χρόνο υπολογίζουμε ότι θα μας πάρει για να ολοκληρώσουμε το βήμα αυτό.  Το χρονοδιάγραμμα αυτό θα είναι ο οδηγός μας κατά την διαδικασία κατασκευής του ρομπότ.

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

Η φάση προγραμματισμού του ρομπότ μας είναι και η πιο ενδιαφέρουσα αφού το κάνει λειτουργικό. Ανάλογα με τις λειτουργίες που θέλουμε να κάνει το ρομπότ μας επιλέγουμε και τον τρόπο υλοποίησης αυτής της φάσης. Συνήθως, θεωρώντας ότι το ρομπότ μας θέλουμε να έχει μια στοιχειώσει ευφυΐα, πρέπει να γράψουμε ένα πρόγραμμα, το οποίο θα επιτρέπει στο ρομπότ μας να λειτουργήσει. Το ρόλο του «εγκεφάλου» του ρομπότ μας παίζει ο μικρό-ελεγκτής. Αυτός είναι υπεύθυνος για την εκτέλεση του προγράμματος. Αν θέλουμε να το δούμε αφαιρετικά, ένα ρομπότ κάνει τρία πράγματα. Μαζεύει πληροφορίες από το περιβάλλον του, τις επεξεργάζεται και αντιδρά σε αυτές. Ανάλογα με την πολυπλοκότητα των λειτουργιών, που θέλουμε να επιτελέσει το ρομπότ μας, είναι πιθανό να πρέπει να του δώσουμε κάποια «αρχική γνώση» και πιθανόν την δυνατότητα να μαθαίνει και να σχεδιάζει.

Για να αντιληφθεί το ρομπότ τι συμβαίνει γύρω του χρησιμοποιεί μικρές συσκευές, τους αισθητήρες. Ένας αισθητήρας μπορεί να «βλέπει» το φως του χώρου, το χρώμα των γύρω αντικειμένων, τη θέση του ρομπότ, την απόσταση του ρομπότ από άλλα αντικείμενα, την θερμοκρασία, την υγρασία και πολλά άλλα πράγματα. Προκειμένου να αντιδράσει το ρομπότ και πιθανόν να επηρεάσει το περιβάλλον του έχει τους μηχανισμούς δράσεις. Αυτοί μπορεί να είναι κινητήρες που του επιτρέπουν να κινηθεί, βραχίονες για να χειριστεί αντικείμενα, laser για την κοπή αντικειμένων και διάφορες άλλες συσκευές που χρειάζονται για τις λειτουργίες του. Για να πούμε ότι ολοκληρώθηκε η διαδικασία του προγραμματισμού θα πρέπει να έχουμε γράψει το πρόγραμμα, να το έχουμε «ανεβάσει» στον μικρό-επεξεργαστή και να έχουμε συνδέσει τους αισθητήρες και τους μηχανισμούς δράσης.

Φτάνουμε λοιπόν στο πιο δύσκολο βήμα, τον έλεγχο του προγραμματισμένου πλέον ρομπότ μας. Εδώ θα πρέπει να βεβαιωθούμε ότι το ρομπότ μας χρησιμοποιεί σωστά τους αισθητήρες του για να συλλέξει τις πληροφορίες που χρειάζεται. Έπειτα θα πρέπει να βεβαιωθούμε ότι «καταλαβαίνει» σωστά τις πληροφορίες αυτές και ότι παίρνει τις σωστές αποφάσεις. Τέλος πρέπει να βεβαιωθούμε ότι εκτελεί ικανοποιητικά τις αποφάσεις του χρησιμοποιώντας τους μηχανισμούς δράσεις. Η διαδικασία αυτή είναι πολύ πιο πολύπλοκη από όσο αφήνει να διαφανεί η περιγραφή της. Το πιθανότερο είναι πως θα πρέπει να γυρίσουμε αρκετές φορές σε προηγούμενα βήματα, ακόμα και στα πρώτα, προκειμένου να ολοκληρώσουμε επιτυχώς τον έλεγχο.

Επιτέλους έχουμε δημιουργήσει το ρομπότ  μας, το οποίο με λίγη τύχη θα λειτουργεί! Σχεδόν τελειώσαμε. Έχουμε όμως ακόμα ένα βήμα, το οποίο είναι και το πιο σημαντικό από όλα: η αξιολόγηση του ρομπότ μας. Στην ουσία κάνουμε ποιοτικό έλεγχο. Ακολουθήθηκαν οι απαιτήσεις; Χρησιμοποιήθηκαν τα σωστά υλικά; Είναι η κατασκευή ποιοτική; Εκτιμήσαμε σωστά το χρόνο και το κόστος; Πρέπει επίσης να ελέγξουμε ότι το ρομπότ μας λειτουργεί σωστά και αποδοτικά στο κανονικό του περιβάλλον. Όπως βλέπετε στη φάση αυτή αξιολογούμε δύο πράγματα. Το πρώτο είναι η απόδοση του ρομπότ με βάση τους αρχικούς στόχους. Το δεύτερο είναι η απόδοση η δική μας ως σχεδιαστές, κατασκευαστές, προγραμματιστές ή αξιολογητές, ανάλογα με ποιον ή ποιους ρόλους είχαμε αναλάβει.

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

Image courtesy of Pansa at FreeDigitalPhotos.net

Μαι 31

Τι είναι η ρομποτική;

ID-10045491Ο ορισμός που δίνουμε συνήθως για την ρομποτική είναι: «ρομποτική είναι ο κλάδος της μηχανολογίας, της ηλεκτρολογίας και της επιστήμης των υπολογιστών που ασχολείται με το σχεδιασμό, την κατασκευή, τη λειτουργία, τον έλεγχο και τις εφαρμογές των ρομπότ».

Ο ορισμός είναι μεν σωστός αλλά δεν λέει το πιο σημαντικό, ότι δηλαδή η ρομποτική είναι μια από τις πιο διασκεδαστικές ασχολίες. Αν σου αρέσει να κατασκευάζεις πράγματα και να τους δίνεις με κάποιο «μαγικό» τρόπο ζωή, τότε η ρομποτική είναι για σένα. Αν μάλιστα αποφασίσεις να ασχοληθείς και επαγγελματικά, τότε είσαι τυχερός. Φυσικά, ας είμαστε ειλικρινείς. Όπως κάθε τι δημιουργικό, θέλει κόπο και χρόνο.

Τι είναι όμως ρομπότ; Το ρομπότ είναι συνήθως μια μηχανή, η οποία έχει σχεδιαστεί και έχει προγραμματιστεί να κάνει μια λειτουργία σχετικά αυτόνομα. Ο ορισμός αυτός είναι επίτηδες τόσο ασαφής. Η χρήση των ρομπότ σήμερα είναι πολύ διαδεδομένη και στο μέλλον θα γίνει ακόμα περισσότερο. Είναι τόσα πολλά αυτά και διαφορετικά τα πράγματα που ονομάζουμε ρομπότ, ώστε είναι δύσκολο να ορίσουμε με μεγαλύτερη ακρίβεια τι είναι ρομπότ και τι όχι.

Ένα ρομπότ μπορεί να έχει μηχανικά μέρη, όπως ένας βραχίονας σε ένα εργοστάσιο παραγωγής αυτοκινήτων, ή μπορεί και να μην να μην έχει, όπως ένα λογισμικό-ρομπότ (softbot), το οποίο «ζει» στο internet και συλλέγει πληροφορίες. Ένα ρομπότ μπορεί να κάνει μια πολύ απλή λειτουργία, όπως η διαλογή αντικειμένων σε μια γραμμή παραγωγής, ή μια πολύ σύνθετη λειτουργία, όπως μια χειρουργική επέμβαση. Ένα ρομπότ μπορεί να είναι μικρό σαν έντομο ή γιγάντιο. Μπορεί να περπατάει, να πλέει ή να πετάει. Στην ουσία ένα ρομπότ μπορεί να κάνει ότι φανταστεί ο δημιουργός του. Και αυτή είναι η μαγεία, η απεριόριστη δυνατότητα δημιουργικότητας.

Είναι τόσο μεγάλες οι δυνατότητες που μας δίνει η ρομποτική να εκφραστούμε και να μάθουμε καινούρια πράγματα, που δημιουργήθηκε μια ολόκληρη εκπαιδευτική φιλοσοφία, το STEM, η οποία συνδυάζει την επιστήμη (Science), την τεχνολογία (Technology), την μηχανική (Engineering) και τα Μαθηματικά (Mathematics) σε μια ολοκληρωμένη εκπαιδευτική διαδικασία και έχει σαν κύρια εργαλεία της τα εκπαιδευτικά ρομπότ.

 

Image courtesy of digitalart at FreeDigitalPhotos.net