ρομποτικη με Arduino

Post on 18-Jul-2015

96 views 1 download

Transcript of ρομποτικη με Arduino

ΡΟΜΠΟΤΙΚΗ ΜΕ ARDUINO

19ο ΓΥΜΝΑΣΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ

Εργασία των μαθητών ΚαμπερογιάννηΘανάση και Μπούτου Παναγιώτη

Το ΛΟΓΟΤΥΠΟ ARDUINO

ΕΙΣΑΓΩΓΗ

• Το Arduino είναι ένας single-board μικροελεκτής, δηλαδή μια απλή μητρική πλακέτα ανοικτού κώδικα, με ενσωματωμένο μικροελεγκτή και εισόδους/εξόδους, και η οποία μπορεί να προγραμματιστεί με τη γλώσσα Wiring C (ουσιαστικά πρόκειται για τη γλώσσα προγραμματισμού C++ και ένα σύνολο από βιβλιοθήκες, υλοποιημένες επίσης στην C++ ).

• Το Arduino μπορεί να χρησιμοποιηθεί για την ανάπτυξη ανεξάρτητων διαδραστικώναντικειμένων αλλά και να συνδεθεί με υπολογιστή μέσω προγραμμάτων σε Processing, Max/MSP, PureData, SuperCollider.

ΕΙΣΑΓΩΓΗ

• Η συγκεκριμένη πλατφόρμα είναι ανοικτής αρχιτεκτονικής.

• Οι περισσότερες εκδόσεις του Arduinoμπορούν να αγοραστούν προ-συναρμολογημένες.

• Το σχέδιο κατασκευής και λειτουργίας της και πληροφορίες για το υλικό είναι ελεύθερα διαθέσιμα για αυτούς που θέλουν να συναρμολογήσουν το Arduino μόνοι τους.

Ο μικροελεγκτής Arduino Uno χαρτογραφημένος με λεπτομέρεια

ΠΥΡΟΣΒΕΣΤΙΚΗ & ΑΣΤΥΝΟΜΙΑ

ΟΙ ΚΑΤΑΣΚΕΥΕΣ

Τα Ρομποτικά οχήματα (Πυροσβεστικής & Αστυνομίας) των εφαρμογών μας :

• υπάρχουν στο φυσικό κόσμο,

• είναι αυτόνομα δηλαδή αποφασίζουν μόνα τους για την κίνηση που θα κάνουν,

• αφουγκράζονται το περιβάλλον ανιχνεύοντας μέσω των αισθητήρων τα εμπόδια,

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

ΟΙ ΚΑΤΑΣΚΕΥΕΣ

Τα Ρομποτικά οχήματα διαθέτουν :

• το ηλεκτρονικό κύκλωμα ελέγχου που περιλαμβάνει το μικροελεγκτή Arduino και ένα πρόγραμμα ελέγχου,

• το ηλεκτρομηχανικό τμήμα που υποστηρίζει την κίνηση (υπάρχει συμπληρωματικό κύκλωμα ελέγχου ρεύματος για τα μοτέρ)

• και τους αισθητήρες που αφουγκράζονται το περιβάλλον.

ΤΟ ΠΥΡΟΣΒΕΣΤΙΚΟ ΟΧΗΜΑ “FireExplorer”

Το ΑΣΤΥΝΟΜΙΚΟ ΟΧΗΜΑ “PoliceExplorer”

ΤΑ ΥΛΙΚΑ ΚΑΤΑΣΚΕΥΗΣ

Τα Υλικά κατασκευής που χρησιμοποιήθηκαν είναι : • Πλατφόρμα Arduino Uno• Διάτρητη πλαστική πλακέτα• Led, αντιστάσεις, διακόπτες και καλώδια• Κύκλωμα οδήγησης ελέγχου μοτέρ (motor shield)• Σασί, κινητήρες και ρόδες• Αισθητήρας θερμοκρασίας• Αισθητήρας υπερήχων• Piezo Buzzer ηχείο.

Η ΠΛΑΤΦΟΡΜΑ ARDUINO UNO

ΔΙΑΤΡΗΤΗ ΠΛΑΣΤΙΚΗ ΠΛΑΚΕΤΑ Ή ΡΑΣΤΕΡ (BREADBOARD)

Η ΣΥΝΔΕΣΜΟΛΟΓΙΑ

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

• Ένα κύκλωμα πάντα συνδέεται στην κύρια πλακέτα με τουλάχιστον δύο καλώδια. Σίγουρα θα πρέπει ένα καλώδιο του κυκλώματος να φτάνει στη γείωση (GND) του Arduino (υπάρχουν 3 θύρες) και ένα άλλο καλώδιο σε κάποιο από τα pin Vin ή 5V ή 3.3V ή κάποια άλλη ψηφιακή ή αναλογική θύρα.

Η ΣΥΝΔΕΣΜΟΛΟΓΙΑ

• Κατά τη διάρκεια των συνδέσεων προσέχουμε ιδιαίτερα τον προσανατολισμό του ράστερ και των εξαρτημάτων, ώστε να μειώσουμε την πιθανότητα λάθους.

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

• Δεν συνδέουμε ποτέ το pin των 5V ή της Vin (τάσης εισόδου) με τη γείωση, χωρίς να μεσολαβεί αντίσταση.

ΥΛΙΚΑ ΚΑΤΑΣΚΕΥΗΣ(Led και αισθητήρας θερμοκρασίας)

ΥΛΙΚΑ ΚΑΤΑΣΚΕΥΗΣ(Σερβοκινητήρας και αισθητήρας υπερήχων)

ΥΛΙΚΑ ΚΑΤΑΣΚΕΥΗΣ(Ελεγκτής των κινητήρων και κινητήρες με ρόδες)

ΥΛΙΚΑ ΚΑΤΑΣΚΕΥΗΣ(Piezo Buzzer Ηχείο)

ΤΟ ΛΟΓΙΣΜΙΚΟ

• Το ολοκληρωμένο περιβάλλον ανάπτυξης (IDE) του Arduinoείναι μία εφαρμογή γραμμένη σε Java, που λειτουργεί σε πολλές πλατφόρμες, και προέρχεται από το IDE για τη γλώσσα προγραμματισμού Processing και το σχέδιο Wiring.

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

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

ΤΟ ΛΟΓΙΣΜΙΚΟ

• Δεν υπάρχει συνήθως καμία ανάγκη να επεξεργαστείτε αρχεία make ή να τρέξετε προγράμματα σε ένα περιβάλλον γραμμής εντολών. Ένα πρόγραμμα ή κώδικας που γράφτηκε για Arduino ονομάζεται σκίτσο (sketch).

• Τα Arduino προγράμματα είναι γραμμένα σε C ή C++. Το Arduino IDE έρχεται με μια βιβλιοθήκη λογισμικού που ονομάζεται "Wiring" από το πρωτότυπο σχέδιο Wiring γεγονός που καθιστά πολλές κοινές λειτουργίες εισόδου/εξόδου πολύ πιο εύκολες. Οι χρήστες πρέπει μόνο να ορίσουν δύο λειτουργίες για να κάνουν ένα πρόγραμμα κυκλικής εκτέλεσης:

-setup(): μία συνάρτηση που τρέχει μία φορά στην αρχή του προγράμματος η οποία αρχικοποιεί τις ρυθμίσεις

-loop(): μία συνάρτηση η οποία καλείται συνέχεια μέχρι η πλακέτα να απενεργοποιηθεί

ΤΟ ΛΟΓΙΣΜΙΚΟ

• Για τον προγραμματισμό του μικροελεγκτή Arduino UNO η γλώσσα προγραμματισμού που χρησιμοποιείται είναι η Wiring C (παραλλαγή της γλώσσας C++ ) ενώ μέσα από την προσθήκη βιβλιοθηκών υποστηρίζονται περισσότερες λειτουργίες και δυνατότητες. Πληκτρολογούμε τον κώδικα στο περιβάλλον Arduino IDE το οποίο έχουμε κατεβάσει δωρεάν από την διεύθυνση http://arduino.cc/en/main/software.

• Η μεταφορά (μεταφόρτωση) του κώδικα στο μικροελεγκτή του Arduinoπεριλαμβάνει αυτόματα και την μεταγλώττιση του. (File Upload).

• Πριν τη μεταφορά θα πρέπει να συνδέσουμε σε μια θύρα USB το Arduino και να ρυθμίσουμε και την ίδια θύρα στο περιβάλλον IDE(Tools Serial Port COM1).

• Επίσης θα πρέπει να έχουμε δηλώσει και την έκδοση του Arduino που χρησιμοποιούμε. (Tools Board Arduino Uno).

• Μπορούμε επίσης να επιλέξουμε την ελληνική έκδοση ρυθμίζοντας File Preferences Editor language Ελληνικά

ΠΡΟΓΡΑΜΜΑΤΑ

Τα προγράμματα του Arduino διαιρούνται σε 3 μέρη:

1. Δομή (structure)

2. Τιμές (values)

3. Συναρτήσεις (functions)

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΤΟ ΠΕΡΙΒΑΛΛΟΝ ARDUINO IDE

ΠΡΟΓΡΑΜΜΑ ΣΕ WIRING C

ΠΡΟΓΡΑΜΜΑ ΣΕ WIRING C

ΠΛΕΟΝΕΚΤΗΜΑΤΑ ΤΟΥ ARDUINO

Τα βασικότερα πλεονεκτήματα του Arduino είναι :

• Χαμηλό κόστος (starter kit και περιβάλλον ανάπτυξης)

• Συμβατότητα (με διάφορα λειτουργικά συστήματα Windows, Mac OS X και Linux)

• Απλότητα ( χρησιμοποιείται εύκολα και από αρχάριους χρήστες)

• Επεκτάσιμο λογισμικό ανοικτού κώδικα

ΧΡΗΣΗ ΣΤΗΝ ΕΚΠΑΙΔΕΥΣΗ

Χαρακτηριστικά του Arduino για χρήση στην εκπαίδευση

• Διαθεματικότητα

• Διερευνητική μάθηση

• Ομαδοσυνεργατική μάθηση

• Ελκυστικό για τους μαθητές

• Χαμηλό κόστος

ΕΥΧΑΡΙΣΤΙΕΣ

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

• Επίσης ευχαριστούμε τους επιμορφωτές μας γιατί προτείνοντας μαθησιακές δραστηριότητες με το Arduino αύξησαν τις γνώσεις μας και την δημιουργικότητα μας .

ΒΙΒΛΙΟΓΡΑΦΙΑ-ΔΙΑΔΙΚΤΥΟ

1. Banzi Massimo. Getting Started with Arduino. (σελ.130) O’Reilly Media Inc (2nd Edition) U.S.A (2011).

2. Timmis Harold. Practical Arduino Engineering. Technology in Action. (σελ.320) Apress U.S.A (2011).

3. Karvinen Tero & Kimmo. Make a Mind-Controlled Arduino Robot. Use your Brain as a Remote. (σελ. 98) Maker Media Inc. U.S.A (2012).

4. Παπάζογλου Παναγιώτης, ΛιωνήςΣπυρίδων-Πολυχρόνης. Ανάπτυξη εφαρμογών με το Arduino. Ένας πλήρης οδηγός για αρχάριους και προχωρημένους (σελ.356). Εκδόσεις Τζιόλα (2014).

5. The Arduino Starter Kit .http://arduino.cc/en/Main/ArduinoStarterKit6. Planitek Basic Kit (Arduinocompatible) (στα ελληνικά).http://www.planitario.gr/arduino-basic-compatible-kit.html7. Βικιπαίδεια Αrduinohttp://el.wikipedia.org/wiki/Arduino