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

Transcript
Page 1: ρομποτικη με Arduino

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

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

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

Page 2: ρομποτικη με Arduino

Το ΛΟΓΟΤΥΠΟ ARDUINO

Page 3: ρομποτικη με Arduino

ΕΙΣΑΓΩΓΗ

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

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

Page 4: ρομποτικη με Arduino

ΕΙΣΑΓΩΓΗ

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

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

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

Page 5: ρομποτικη με Arduino

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

Page 6: ρομποτικη με Arduino

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

Page 7: ρομποτικη με Arduino

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

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

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

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

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

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

Page 8: ρομποτικη με Arduino

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

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

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

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

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

Page 9: ρομποτικη με Arduino

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

Page 10: ρομποτικη με Arduino

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

Page 11: ρομποτικη με Arduino

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

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

Page 12: ρομποτικη με Arduino

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

Page 13: ρομποτικη με Arduino

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

Page 14: ρομποτικη με Arduino

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

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

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

Page 15: ρομποτικη με Arduino

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

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

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

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

Page 16: ρομποτικη με Arduino

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

Page 17: ρομποτικη με Arduino

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

Page 18: ρομποτικη με Arduino

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

Page 19: ρομποτικη με Arduino

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

Page 20: ρομποτικη με Arduino

ΤΟ ΛΟΓΙΣΜΙΚΟ

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

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

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

Page 21: ρομποτικη με Arduino

ΤΟ ΛΟΓΙΣΜΙΚΟ

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

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

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

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

Page 22: ρομποτικη με Arduino

ΤΟ ΛΟΓΙΣΜΙΚΟ

• Για τον προγραμματισμό του μικροελεγκτή 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 Ελληνικά

Page 23: ρομποτικη με Arduino

ΠΡΟΓΡΑΜΜΑΤΑ

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

1. Δομή (structure)

2. Τιμές (values)

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

Page 24: ρομποτικη με Arduino

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

Page 25: ρομποτικη με Arduino

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

Page 26: ρομποτικη με Arduino

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

Page 27: ρομποτικη με Arduino

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

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

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

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

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

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

Page 28: ρομποτικη με Arduino

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

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

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

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

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

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

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

Page 29: ρομποτικη με Arduino

ΕΥΧΑΡΙΣΤΙΕΣ

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

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

Page 30: ρομποτικη με 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