Δευτέρα 24 Νοεμβρίου 2014

Εκτύπωση και επίλυση του λαβύρινθου του Neil Rosenberg με το ρομπότ S2 της Parallax

Σε αυτό το άρθρο θα δούμε το ρομπότ S2 της Parallax να κινείται σε ένα λαβύρινθο του Neil Rosenberg που βρίσκεται δημοσιευμένος στο εκπαιδευτικό υλικό:“Robots for Beginners” , που είναι δημοσιευμένο στο site της Parallax Ο λαβύρινθος  περιέχει συνδυασμό κυκλικών και ευθύγραμμων διαδρομών σε μία πίστα 2.5μ Χ 1,67 μ.

                                       
Πρώτα πρέπει να εκτυπώσουμε το λαβύρινθο , να κατασκευάσουμε την πίστα και μετά να προγραμματίσουμε το ρομπότ.

Κατασκευή της πίστας: 
Τι θα χρειαστούμε:
1)    το αρχείο S2_maze_printable.jpg που είναι η ακόλουθη εικόνα:

2)    Έναν εκτυπωτή που να μπορεί να τυπώνει σε χαρτί Α3 (προσωπικά χρησιμοποίησα ένα hp deskjet 9300)
3)    Τριάντα (30) κόλλες λευκό χαρτί Α3
4)   Διαφανές αυτοκόλλητο (από αυτό που ντύνουμε βιβλία (περίπου 4 ρολά)
5)    ψαλίδι  και σελοτέιπ
Ανοίξτε το αρχείο S2_maze_printable.jpg  με το πρόγραμμα ζωγραφικής των windows και στη διαμόρφωση σελίδας κάντε τις ρυθμίσεις που φαίνονται στην παραπάνω οθόνη και μετά εκτυπώστε.
Η πίστα θα βγει σαν ένα παζλ από 30 εικόνες (8 από τις οποίες θα είναι εντελώς λευκές.
Ενώστε τα 30 φύλλα  σύμφωνα με την παρακάτω εικόνα. Η πίστα που θα προκύψει θα έχει διαστάσεις (2.5m x 1.67m).
Δείτε την ακόλουθη εικόνα με τα κομμάτια του puzle και τις ρυθμίσεις εκτύπωσης:
Αν τελικά κατασκευάσετε την πίστα ενώνοντας τα επιμέρους τμήματα από το χαρτί Α3 θα είναι κάπως έτσι:



 Προγραμματισμός του S2 οδηγίες-υποδείξεις:

To ρομπότ πρέπει να ξεκινήσει από την αρχή (σημείο start)   και να φτάσει στο τέλος (End), περνώντας διαδοχικά από τα σημεία A,B,C,D,F,E,G,H,I,K.   Κάθε φορά που το ρομπότ φτάνει σε ένα επιθυμητό σημείο πρέπει να κάνει ένα σύντομο ήχο.
Ο μαρκαδόρος του ρομπότ πρέπει να γράφει πάντα ανάμεσα στις μαύρες γραμμές χωρίς να ξεφεύγει έξω από το μονοπάτι.
Δίνονται οι διαστάσεις:
ΔΙΑΣΤΑΣΕΙΣ
ΥΠΟΔΕΙΞΕΙΣ
Start- A=18.2cm
AB= τόξο  κύκλου (Δείτε υπόδειξη2)
BC=34.6 cm
CD=57cm
DE=78.4cm
EF=33.8cm
EG=60.2cm
GH=81.3cm
IK=109.4cm
ΗΙ= τόξο  κύκλου (Δείτε υπόδειξη3)
K-END=54cm
Υπόδειξη1: υπενθυμίζουμε ότι με ταχύτητα 100 στους 2 τροχούς και χρόνο 3 sec το ρομπότ διατρέχει 35,5 cm.
 Υπόδειξη2: Αριστερός τροχός=100 Δεξιός=40-70. Βρείτε το σωστό χρόνο! Ίσως χρειαστούν 2 τόξα και 2 εντολές.
Υπόδειξη3: αριστερός τροχός ακίνητος. Βρείτε ταχύτητα δεξιού τροχού και χρόνο.
Υπόδειξη4: Για στροφές 90ο δεξιά ή αριστερά:
Ταχύτητα αριστερού τροχού=+-100, Ταχύτητα  δεξιού τροχού=-+100    και  Χρόνος=1sec.


Οι ταχύτητες των κινητήρων του ρομπότ καθώς και οι χρόνοι κίνησης για κάθε τμήμα της πίστας δίνονται στον ακόλουθο πίνακα: 

Χρησιμοποιώντας το περιβάλλον GUI  προγραμματισμού του ρομπότ και συγκεκριμένα το πλακίδιο κίνησης εισάγουμε τις παρακάνω τιμές του πίνακα για κάθε ένα τμήμα της πίστας











Κυριακή 16 Φεβρουαρίου 2014

Κανονικά πολύγωνα και ρομποτική

Σε αυτή την ενότητα θα δούμε πώς μπορούμε να κάνουμε κανονικές πολυγωνικές αλλά και κυκλικές τροχιές με ένα ρομπότ δεξιού και αριστερού τροχού (deferential robot). Θα δούμε εξετάσουμε παραδείγματα κανονικών πολυγώνων και κύκλου, με τη βοήθεια των μαθηματικών και μετά θα παρουσιάσουμε αλγόριθμους προγραμματισμού οι οποίοι θα μπορούν να εφαρμοστούν στο ρομπότ S2 της Parallax αλλά και σε διάφορα άλλα ρομπότ (όπως το ActivityBot ή το Lego NXT). Πριν κάνουμε όμως αυτό είναι απαραίτητο να έχουμε μελετήσει και αναλύσει το πρόβλημα της επιτόπιας στροφής του ρομπότ. Πρέπει να μπορούμε να προγραμματίζουμε το ρομπότ να κάνει επιτόπιες περιστροφές ώστε να στρίβει (δεξιόστροφα ή αριστερόστροφα) διάφορες γωνίες .
Επιτόπια στροφή τουS2 κατά ω μοίρες

Πριν προχωρήσουμε στην υλοποίηση πολυγωνικών και κυκλικών τροχιών με το S2  πρέπει να μελετήσουμε την επιτόπια στροφή του τ για ζητούμενη γωνία.

Για να κάνει μία στροφή με το S2 χρησιμοποιώντας το GUI  οι ταχύτητες του δεξιού και αριστερού τροχού πρέπει να είναι αντιθέτου πρόσημου. Ειδικότερα αν οι ταχύτητες αυτές είναι ακριβώς αντίθετες το ρομπότ πραγματοποιεί μία επιτόπια στροφή  (με κέντρο περιστροφής την τρύπα του μαρκαδόρου) και έστω  Degrees  η γωνία αυτή σε μοίρες. Αν ονομάσουμε αυτήν την ταχύτητα Spd και Time το χρόνο εκτέλεσής της σε ms . Η σχέση που συνδέει την ταχύτητα Spd επί το χρόνο Time και την πραγματοποιηθείσα γωνία Degrees είναι:

Spd * Time = Degrees * 1111.1111

Για παράδειγμα για να στρίψει  90 μοίρες, Spd * Time = 90 * 1111.1111 = 100000

Θέτοντας Spd ίσον με 100 και  Time ίσο με 1 sec (1000 ms) θα πραγματοποιήσω την στροφή 90 μοιρών  μπορώ όμως να κάνω το ίδιο

Θέτοντας Spd ίσον με 50 και  Time ίσο με 2 sec (2000 ms) .

Φυσικά δεν δουλεύουν τόσο ωραία όλες οι γωνίες δεδομένου του βήματος αύξησης του χρόνου.

Ακολουθεί ένας πίνακας με τις σημαντικότερες γωνίες για τροχιές κανονικών πολυγώνων με το ρομπότ S2 της Parallax



 
Κάνοντας τροχιές με ρομπότ σε κανονικά πολύγωνα
 
Πολύγωνο λέγεται ένα  κλειστό σχήμα που έχει N κορυφές και άρα Ν πλευρές (Ν .  Ειδικότερα κανονικό πολύγωνο είναι το πολύγωνο που έχει όλες τις πλευρές του ίσες.

Έτσι μερικές κατηγορίες κανονικών Ν-γώνων για παράδειγμα είναι:

Το ισόπλευρο τρίγωνο (Ν=3), το τετράγωνο (Ν=4), το κανονικό πεντάγωνο (Ν=5), το κανονικό εξάγωνο (Ν=6) κ.τ.λ.

Ένα ειδικό ενδιαφέρον για το πρόβλημα των ρομποτικών τροχιών παρουσιάζουν τα κανονικά  Ν-γωνα με (Ν   γιατί αυτά πρακτικά προσεγγίζουν τον κύκλο. Αν  και δεν είναι πραγματικοί κύκλοι στη πράξη αυτά τα πολύγωνα μπορούν να αναπαραστήσουν ένα κύκλο με πάρα πολύ μεγάλη ακρίβεια.

Θα προσπαθήσουμε τώρα να κάνουμε τροχιές κανονικών πολυγώνων με ένα ρομπότ.

Προκειμένου ένα ρομπότ να κινηθεί  σε μία τροχιά πάνω σε κανονικό πολύγωνο πρέπει να γνωρίζει την εξωτερική γωνία του πολυγώνου ώστε να στρίψει κατάλληλα. Η γωνία αυτή για οποιοδήποτε κανονικό Ν-γωνο (Ν   είναι:  



Έτσι προκειμένου το ρομπότ να κάνει μία τροχιά σε κανονικό τρίγωνο πλευράς S (σύμφωνα με τους δείκτες του ρολογιού) πρέπει να του δώσουμε τις παρακάτω εντολές :

 
·         Προχώρησε μπροστά S
·         Στρίψε δεξιά 120ο
·         Προχώρησε μπροστά S
·         Στρίψε δεξιά 120ο
·         Προχώρησε μπροστά S
·         Στρίψει δεξιά 120ο
Ή χρησιμοποιώντας μία δομή επανάληψης:
 
·         Επανέλαβε 3 φορές
·         Προχώρησε μπροστά S
·         Στρίψε δεξιά 120ο
 

 


 Εφαρμόζοντας τον παραπάνω αλγόριθμο στο ρομπότ S2 και προγραμματίζοντας μέσα από το GUI έχουμε:



Αν θέλουμε  το ρομπότ να κάνει μία τροχιά σε κανονικό τετράγωνο πλευράς S (σύμφωνα με τους δείκτες του ρολογιού) πρέπει να του δώσουμε τις παρακάτω εντολές :

 
·         Προχώρησε μπροστά S
·         Στρίψε δεξιά 90ο
·         Προχώρησε μπροστά S
·         Στρίψε δεξιά 90ο
·         Προχώρησε μπροστά S
·         Στρίψει δεξιά 90ο
·         Προχώρησε μπροστά S
·         Στρίψει δεξιά 90ο
Ή χρησιμοποιώντας μία δομή επανάληψης:
 
·         Επανέλαβε 4 φορές
·         Προχώρησε μπροστά S
·         Στρίψε δεξιά 90ο
 



Εφαρμόζοντας τον παραπάνω αλγόριθμο στο ρομπότ S2 και προγραμματίζοντας μέσα από το GUI έχουμε:



Αν θέλουμε  το ρομπότ να κάνει μία τροχιά σε κανονικό πεντάγωνο πλευράς S (σύμφωνα με τους δείκτες του ρολογιού) πρέπει να του δώσουμε τις παρακάτω εντολές :

·         Προχώρησε μπροστά S
·         Στρίψε δεξιά 72ο
·         Προχώρησε μπροστά S
·         Στρίψε δεξιά 72ο
·         Προχώρησε μπροστά S
·         Στρίψει δεξιά 72ο
·         Προχώρησε μπροστά S
·         Στρίψει δεξιά 72ο
Ή χρησιμοποιώντας μία δομή επανάληψης:
 
·         Επανέλαβε 5 φορές
·         Προχώρησε μπροστά S
·         Στρίψε δεξιά 72ο  
 



 
Εφαρμόζοντας τον παραπάνω αλγόριθμο στο ρομπότ S2 και προγραμματίζοντας μέσα από το GUI έχουμε:

Γενικεύοντας λοιπόν αν θέλουμε  το ρομπότ να κάνει μία τροχιά σε κανονικό Ν-γωνο,  (Ν   πλευράς S (σύμφωνα με τους δείκτες του ρολογιού) πρέπει να του δώσουμε τις παρακάτω εντολές :
·         Προχώρησε μπροστά S
·         Στρίψε δεξιά 360ο /Ν
·         ………………….
·           ……………… (Ν –φορές)
·         …………………
·         Προχώρησε μπροστά S
·         Στρίψει δεξιά 360ο /Ν
Ή χρησιμοποιώντας μία δομή επανάληψης:
 
·         Επανέλαβε Ν φορές
·         Προχώρησε μπροστά S
·         Στρίψε δεξιά 360ο /Ν   
 
 

Προσεγγίζοντας τον κύκλο σαν κανονικό πολύγωνο

Ξεχωριστό ενδιαφέρον παρουσιάζει ο κύκλος τον οποίο μπορούμε να προσεγγίσουμε με αρκετά καλή ακρίβεια κάνοντας ένα κανονικό 36-γωνο. Ουσιαστικά κάθε κανονικό Ν-γωνο με (Ν  προσεγγίζει  τον κύκλο και όσο μεγαλύτερο είναι το Ν τόσο ποιο καλή είναι αυτή η προσέγγιση.

 

Έτσι προκειμένου το ρομπότ να κάνει μία τροχιά σε Κύκλο με προσέγγιση κανονικού 36-γώνου πλευράς S (σύμφωνα με τους δείκτες του ρολογιού) πρέπει να του δώσουμε τις παρακάτω εντολές :

 
·         Προχώρησε μπροστά S
·         Στρίψε δεξιά 10ο
·         ………………….
·           ……………… (36 –φορές)
·         …………………
·         Προχώρησε μπροστά S
·         Στρίψει δεξιά 10ο
Ή χρησιμοποιώντας μία δομή επανάληψης:
 
·         Επανέλαβε 36 φορές
·         Προχώρησε μπροστά S
·         Στρίψε δεξιά 10ο
 

 



Εφαρμόζοντας τον παραπάνω αλγόριθμο στο ρομπότ S2 και προγραμματίζοντας μέσα από το GUI έχουμε:

Τρίτη 29 Οκτωβρίου 2013

ActivityBot της Parallax με γλώσσα προγραμματισμού C. (Άρθρο από τον Νικο Γιαννακόπουλο, καθηγητή Μαθηματικών & Πληροφορικής)

-->
To BoeBot της Rarallax είναι μέχρι στιγμής ένα προϊόν κλειδί στην εκπαιδευτική ρομποτική. Τώρα όμως ο νεότερος αδερφός του, το ActivityBot αρχίζει να στρέφει τα φώτα της δημοσιότητας επάνω του!
 Ο on-board πολυπύρηνος μικροεπεξεργαστής Parallax Propeller που βρίσκεται πάνω του, κάνει αυτό το ρομπότ μία πολύ σοβαρή πρόταση στο χώρο της εκπαιδευτικής ρομποτικής. Με 8 επεξεργαστές σε ένα μόνο Chip Το ActivityBot είναι ικανό να κάνει πραγματική πολυεπεξεργασία! Εξειδικευμένοι servoκινητήρες αυξημένης ταχύτητας και οπτικοί κωδικοποιητές οδομετρίας (encoders) επιτρέπουν ελιγμούς και γρήγορες κινήσεις υψηλής ακρίβειας.
Μπορείς στην κυριολεξία να γίνεις ο απόλυτος ρομποτικός άρχοντας ελέγχοντας πόσο μακριά και πόσο γρήγορα θα πηγαίνει το ρομπότ σου. Όπως και τα υπόλοιπα kit εκπαιδευτικής ρομποτικής της Parallax και αυτό το ρομπότ υποστηρίζεται από μία μεγάλη ποικιλία αισθητήρων με τους οποίους μπορείς να δημιουργήσεις κυκλώματα πάνω στον πίνακα συνδέσεων του ρομπότ επιτρέποντας στο ρομπότ να κάνει αυτόνομη πλοήγηση. 
Ειδικά «μουστάκια» επιτρέπουν στο ρομπότ να πλοηγείται με την επαφή του σε διάφορα αντικείμενα, ο αισθητήρας υπερήχων κρατάει το ρομπότ μακριά από εμπόδια προτού καν πέσει πάνω σε αυτά. Το ActivityBot μπορεί να ανιχνεύσει τα επίπεδα φωτός με τους παρεχόμενους φωτο-αισθητήρες του και μπορεί να προγραμματιστεί ώστε ν’ ακολουθεί το φώς από έναν φακό. Με παρόμοια λειτουργικότητα οι αισθητήρες εκπομπής και λήψης υπερύθρων δίνουν άλλο ένα τρόπο στο ρομπότ να βλέπει τα αντικείμενα εμπρός του. Επίσης επειδή το AktivityBot είναι συναρμολογημένο σε ένα κλασικό αλουμινένιο σασί BoeBot, είναι απόλυτα συμβατό με όλα τα πρόσθετα εξαρτήματα του BoeBot που πιθανός να έχει κάποιος ήδη στην κατοχή του όπως: Διάταξη αισθητήρων για να ακολουθείς γραμμές στο πάτωμα, ρομποτικούς βραχίονες, περιστρεφόμενο ραντάρ υπερήχων κ.α. Όλα τα μαθήματα οι δραστηριότητες και επιδείξεις του ρομπότ βρίσκονται δωρεάν στην διεύθυνση ηλεκτρονικού εκπαιδευτικού προγράμματος της Parallax : http://learn.parallax.com/activitybot
Σε αυτή τη διεύθυνση παρέχονται όλες οι πληροφορίες που χρειάζεται κανείς ώστε να μάθει να προγραμματίζει τον πολυπύρηνο μικροεπεξεργαστή Parallax Propeller.
Ξεκινώντας από τα βασικά όπως: παρουσιάζοντας δεδομένα σε μία τερματική οθόνη, ενεργοποιώντας μαθηματικά κινητής υποδιαστολής, κανονίζοντας βρόχους επανάληψης και προσθέτοντας βιβλιοθήκες στα προγράμματά σου. Μπορείς να δημιουργήσεις απλά κυκλώματα και να μάθεις να αναβοσβήνεις ένα λαμπάκι να «διαβάζεις» ένα διακόπτη πατήματος, να βγάζεις ήχο από ένα ηχείο και να φτιάχνεις ένα μετρητή τάσης ρεύματος χρησιμοποιώντας τον μετατροπέα αναλογικού σε ψηφιακό που βρίσκεται πάνω στην μητρική πλακέτα.
Συνδέοντας απλές συσκευές σου δίνεται η δυνατότητα να έχεις πρόσβαση σε όλους τους δημοφιλείς αισθητήρες της Parallax συμπεριλαμβάνοντας να μάθεις πώς να παίζεις wav αρχεία ήχου, να ανιχνεύεις αποστάσεις με τον αισθητήρα υπερήχων (Ping sensor) και να μετράς κλίσεις και επιτάχυνση με το επιταχυνσιόμετρο MX2125.
Σε αυτές τις δικτυακές επιδείξεις (tutorials) μπορείς επίσης να μάθεις πώς να γράφεις συναρτήσεις και να κάνεις πολυπύρηνο προγραμματισμό με τις λειτουργίες της Γλώσσας προγραμματισμού C. 
Η γλώσσα προγραμματισμού Propeller C περιλαμβάνει το SimpleID. To SimpleID είναι απλό περιβάλλον διεπαφής χρήστη για ανάπτυξη ανοικτού κώδικα που σου επιτρέπει να προγραμματίσεις τον επεξεργαστή Propeller σε γλώσσα C.
Αποτελώντας ένα βασικό και αρκετά διαδεδομένο εργαλείο προγραμματισμού στην ανώτερη και ανώτατη εκπαίδευση η γλώσσα προγραμματισμού C βρίσκει τώρα τον συνδετικό της κρίκο με την εκπαιδευτική ρομποτική!!!
Το γεγονός αυτό δίνει στην Parallax ένα δυνατό προβάδισμα και τη καθιστά για μια ακόμη φορά μία από τις πιο αξιόλογες και καινοτόμες προτάσεις στο χώρο της εκπαιδευτικής ρομποτικής.
Αυτά λοιπόν μέχρι στιγμής τα νεότερα από το ActivityBot και το εκπαιδευτικό πρόγραμμα της Parallax βασισμένο στη C. Ένα πρόγραμμα που είναι διαρκώς σε εξέλιξη καθώς η εταιρεία ανανεώνει και προσθέτει καθημερινά νέα παραδείγματα, εκπαιδευτικές δραστηριότητες και εφαρμογές με όριο μόνο την φαντασία του χρήστη….


Πηγές:
Videos:

Δευτέρα 19 Δεκεμβρίου 2011

Ρομπότ αναγνώρισης φωνής με χρήση του μικροελεγκτή Parallax Propeller από το Νίκο Γιαννακόπουλο


Το project αυτό περιλαμβάνει τη κατασκευή ενός ρομπότ δύο τροχών (που ελέγχονται από σερβοκινητήρες) και ενός τρίτου βοηθητικού τροχού (two-wheeled differential drive robot) το οποίο έχει τη δυνατότητα να μαθαίνει τη φωνή του χρήστη και να υπακούει σε φωνητικές εντολές όπως : «Μπροστά», «Πίσω», «Δεξιά» και «Αριστερά»


Ο «εγκέφαλος» του ρομπότ είναι ο Parallax Propeller ο οποίος φιλοξενείται πάνω στο Propeller Demo Board το οποίο μεταξύ των άλλων συνδέσεων για εξωτερικές συσκευές διαθέτει ένα ενσωματωμένο μικρόφωνο ικανό να «ακούει» τους ήχους του περιβάλλοντος.
Το ρομπότ είναι εξαιρετικά εύκολης και απλής κατασκευής και σαν hardware το μόνο που απαιτεί είναι ένα απλό σασί ικανό να μεταφέρει το Propeller Demo Board.

Το software είναι γραμμένο σε γλώσσα προγραμματισμού SPIN η οποία είναι ένα λογισμικό ανοικτού κώδικα. Ο αρχικός κώδικας αναγνώρισης φωνής στον οποίο βασίστηκα και τροποποίησα προκειμένου να το χρησιμοποιήσω σε αυτό το ρομπότ είναι το “Goertzel Speech Recognition demo” γραμμένος από τον κ. Phil Pilgrim.
Στη συνέχεια παρουσιάζω δύο εκδοχές του ρομπότ. Η μία με χειροποίητο σασί επαναφορτιζόμενη μπαταρία και η άλλη με το έτοιμο σασί που παρέχει η Parallax στο γνωστό ρομπότ της το διάσημο Boe-Bot
A. Κατασκευή με χειροποίητο σασί

Όπως μπορεί κανείς να δει χρησιμοποιούνται δύο κομμάτια από plexiglas με μία τετράγωνη οπή εσωτερικά για να στηρίζεται η μπαταρία και δύο εξίσου χειροποίητα στηρίγματα για τους δύο σερβοκινητήρες (servo adapters).Επίσης θα χρειαστούν μερικές βίδες και παξιμάδια δύο τροχοί που να εφαρμόζουν σε servo motors και ένας βοηθητικός τροχός ελεύθερης περιστροφής. (δείτε το σχετικό video κατασκευής και λειτουργίας:
Propeller speech recognition robot
)
B. Για την κατασκευή με το έτοιμο σασί του (Boe-Bot) (προτείνεται) το ρομπότ περιλαμβάνει:


ΥΛΙΚΑ ΚΑΤΑΣΚΕΥΉΣ:
Propeller Demo Board
Boe Bot Chassis
Polyethylene Ball 1"2 X Boe-Bot/SumoBot Wheel & Tire
2 X Parallax (Futaba) Continuous Rotation Servo
4AA Battery Holder
1 X Green LED
1 X Red LED
1 X Yellow LED
2 X 1K ohm, 1/4 watt resistor
3 X 220 ohm, 1/4 watt resistor
Υλοποίηση κυκλώματος

Το κύκλωμα που υλοποιούμε πάνω στην breadboard είναι ένα κύκλωμα που εκτός από τους δύο σερβοκινητήρες διαθέτει και τρία LEDs (κόκκινο πράσινο και κίτρινο) που παίζουν το ρόλο της διεπαφής του ρομπότ με το χρήστη . Το Κόκκινο LED ανάβει όταν το ρομπότ «ακούει» μία εντολή δηλαδή όταν αρχικά «μαθαίνει» το σετ εντολών και κατόπιν όταν δέχεται μία φωνητική εντολή προς εκτέλεση. Το Πράσινο LED δείχνει ότι το ρομπότ έχει καταλάβει την εντολή και προχωρά στο επόμενο βήμα εκτέλεσης του προγράμματος. Το κίτρινο LED δείχνει ότι το ρομπότ άκουσε κάτι ακαθόριστο το οποίο δεν κατάλαβε και θα μας ζητήσει να το ξαναπούμε (θα ξανα-ανάψει αυτόματα το κόκκινο LED για νέα εισαγωγή της φωνητικής εντολής).
Το project μπορεί να προσαρμοστεί ανάλογα με τις ανάγκες του χρήστη και να δεχθεί διαφορετικό πλήθος φωνητικών εντολών που φυσικά ο προγραμματιστής πρέπει να προσθέσει τον κατάλληλο κώδικα.
Τον κώδικα μπορείτε να βρείτε στην ακόλουθη σύνδεση που παραπέμπει στο Forum της Parallax όπου δημοσιεύτηκε αρχικά το Project και κέρδισε και τον τίτλο του Project της εβδομάδας.

Το project παρουσιάστηκε στις 14 Δεκ. 2011 στην 5η Ημερίδα εκπαιδευτικών Πληροφορικής στην Πάτρα.

Παρασκευή 18 Νοεμβρίου 2011

Make ideas real with SketchUp

Inspired by the project "Make ideas real with SketchUp" I decided to make some images of my robotic creations in conjunction with their SketchUp models
Here is the result:
projects: Color sorter, Celestial globe, Nikos' 4WD Rover


Creator:Nikos Giannakopoulos (gianakop@gmail.com)

Τρίτη 9 Μαρτίου 2010

Parallax color sorter



Το πιο πρόσφατο project με τους μαθητές μου από το 3ο ΓΕΛ Πάτρας, είναι ένας χρωματικός ταξινομητής (color sorter).Τι ακριβώς κάνει; Ρίχνουμε διάφορες χρωματιστές μπάλες του Πινκγ-Πονγ μέσα σε έναν αυτόματο παροχέα που είναι ένας μηχανισμός που τις ανακατεύει και μετά τις βγάζει έξω μία-μία και ο ρομποτικός βραχίονας τις ξεχωρίζει αυτόματα τοποθετώντας σε ξεχωριστά δοχεία ανάλογα με το χρώμα τους! Την πολύπλοκη αυτή δουλειά έχει αναλάβει να κάνει ένας μικροελεγτής (microcontroller) και ένας αισθητήρας χρώματος (Color sensor) της Parallax! Και όλα αυτά φυσικά μέσα από ειδικό πρόγραμμα σε γλώσσα Bs2 που είναι φορτωμένο στη μνήμη του μικροελεγκτή από τον ηλεκτρονικό υπολογιστή μας!
Ομάδα μαθητών:
ΓΙΑΡΑΛΗΣ ΧΑΡΗΣ, ΚΑΛΗΣ ΑΝΑΣΤΑΣΙΟΣ, ΚΟΚΚΙΝΟΠΟΥΛΟΣ ΕΥΓΕΝΙΟΣ, ΛΑΜΠΡΗ ΕΛΕΝΗ, ΛΑΜΠΡΟΠΟΥΛΟΥ ΝΙΚΟΛΙΤΣΑ, ΜΑΤΣΟΥΡΗ ΚΑΣΣΙΑΝΝΗ-ΑΝΝΑ, ΜΑΥΡΟΜΑΤΗ ΒΑΣΙΛΙΚΗ, ΝΤΑΚΟΣ ΦΙΛΙΠΠΟΣ, ΞΑΝΘΗΣ ΝΙΚΟΛΑΟΣ, ΠΑΝΟΥΤΣΑΚΟΠΟΥΛΟΣ ΙΩΑΝΝΗΣ
Υπεύθυνος του project: ΓΙΑΝΝΑΚΟΠΟΥΛΟΣ ΝΙΚΟΣ
YouTube video: http://www.youtube.com/watch?v=ntmPa4EFgUY

Κυριακή 17 Ιανουαρίου 2010

2ος Πανελλήνιος διαγωνισμός εκπαιδευτικής ρομποτικής ΔΙΑΓΩΝΙΣΜΟΣ WRO2010 & Challenge ΛΥΚΕΙΟΥ

Προς τους μαθητές του Λυκείου που θα ήθελαν να συμμετάσχουν στον Πανελλήνιο διαγωνισμό εκπαιδευτικής ρομποτικής WRO2010 ή απλά και μόνο θέλουν να επιλύσουν το πρόβλημα (στα πλαίσια των μαθημάτων πληροφορικής και μόνο) ένα πολύ χρήσιμο βοήθημα που μπορούν πάρουν ιδέες για την υλοποίηση του μηχανικού μέρους του project είναι το διαδίκτυο.
Συγκεκριμένα τρείς καλές ιδέες για την υλοποίηση του ρομπότ Αναρριχητή της κατηγορίας του Λυκείου είναι κατά την προσωπική μου άποψη οι παρακάτω:
1. NXT Mindstorms Lego Climber
http://www.youtube.com/watch?v=HhRKnvZgy9A
2. Lego NXT Stair Climber
http://www.youtube.com/watch?v=1uuRyTmiGaw&feature=related
3. NXT Skyscraper Climber V1.0http://www.youtube.com/watch?v=QuLmMay4vik



Όπως είπα και παραπάνω οι τρείς προτεινόμενες ιδέες αποτελούν προσωπική άποψη σίγουρα είναι ένα πολύ μικρό δείγμα και ασφαλώς δεν πρέπει να περιορίσουν τη φαντασία σας. Ο καθένας μπορεί να ακολουθήσει οποιαδήποτε κατασκευή νομίζει ποιο λειτουργική και σε συνάρτηση πάντα με το δομικά στοιχεία Lego Mindstorms που διαθέτει αλλά και το πρόγραμμα που μπορεί να φτιάξει..
Άλλωστε το challenge του διαγωνισμού Λυκείου είναι λίγο ποιο πολύπλοκο αφού απαιτεί να παρθεί μία μπάλα από την κορυφή του στύλου και να μεταφερθεί στο έδαφος.
Περισσότερα θα διαπιστώσετε στην πράξη δοκιμάζοντας τις ιδέες που θα προκύψουν τόσο προγραμματιστικά όσο και κατασκευαστικά πάνω στην πίστα του διαγωνισμού (την οποία όσον αφορά το 3ο ΓΕΛ ΠΑΤΡΑΣ θα έχω στη διάθεσή σας στο εργαστήριο πληροφορικής του σχολείου).
Εκεί θα έχετε μια πρώτη ανάδραση και ανατροφοδότηση του προβλήματος (όπως μερικοί έχετε μάθει από το μάθημα της Τεχνολογίας Επικοινωνιών της Β’ Λυκείου) και ίσως ανακαλύψετε νέα προβλήματα που μπορούν να υπάρχουν με τις ιδέες που πιθανώς έχετε σκεφτεί από πλευράς προγραμματισμού και κατασκευής και να έχετε έτσι την ευκαιρία να τις βελτιώσετε.
Περισσότερα για τον διαγωνισμό (λεπτομέρειες, χρονοδιαγράμματα, ερωτήσεις) μπορείτε να βρείτε στο site http://www.wrohellas.gr/ (Δήλωση συμμετοχής μέχρι 1η Φεβρουαρίου 2010).ή (αφορά τους μαθητές του 3ου ΓΕΛ ΠΑΤΡΑΣ) να έρθετε σε επαφή μαζί μου στο εργαστήριο ή ηλεκτρονικά (gianakop@gmail.com). ΝΙΚΟΣ ΓΙΑΝΝΑΚΟΠΟΥΛΟΣ (ΠΕ19 - 3ο ΓΕΛ ΠΑΤΡΑΣ WEB: http://www.youtube.com/user/ngyt40).