Η πλακέτα του Arduino
Ο Arduino είναι ένας single-board μικροελεγκτής, δηλαδή μια απλή μητρική πλακέτα ανοικτού κώδικα με ενσωματωμένο μικροελεγκτή και εισόδους/εξόδους, η οποία μπορεί να προγραμματιστεί με τη γλώσσα Wiring (που ουσιαστικλά είναι η γλώσσα προγραμματισμού C++ μαζί με ένα σύνολο από βιβλιοθήκες, υλοποιημένες επίσης στην C++). Ο Arduino μπορεί να χρησιμοποιηθεί για την ανάπτυξη ανεξάρτητων διαδραστικών αντικειμένων, αλλά και να συνδεθεί με υπολογιστή μέσω προγραμμάτων σε Processing, Max/MSP, Pure Data ή SuperCollider.
Η καρδιά του Arduino είναι ένας μικροεπεξεργαστής. Αυτός είναι το “μυαλό” του Arduino και είναι προγραμματισμένος με τρόπο, ώστε να ελέγχει τα 14 ψηφιακά Ι/Ο pins και τα 6 αναλογικά που υπάρχουν πάνω στην πλακέτα ανάπτυξης. Δια μέσου αυτών των 20 pins γίνονται όλες οι διασυνδέσεις με τα εξωτερικά στοιχεία (κινητήρες, LEDs, LCD οθόνες κλπ), αλλά και με τους αισθητήρες (Ultrasonic, θερμόμετρα, accelometers κ.α).
Στην πλακέτα ανάπτυξης υπάρχει μία θύρα USB, μέσω της οποίας γίνεται η μεταφορά δεδομένων προς κάποια άλλη συσκευή (συνήθως έναν υπολογιστή) και το αντίστροφο. Η κύρια χρήση αυτής της θύρας, στα αρχικά στάδια εκμάθησης, είναι η μεταφορά του προγράμματος από τον υπολογιστή στον μικροεπεξεργαστή, αλλά και η οπτικοποίηση των δεδομένων που απορρέουν από την λειτουργία της συσκευής μετά τον προγραμματισμό της.
Στην παρακάτω εικόνα παρουσιάζονται τα κύρια μέρη της πλακέτας του Αrduino.
Χαρακτηριστικά λειτουργίας:
- Τάση λειτουργίας 5V
- Τάση εισόδου/τροφοδοσίας 7-12V
- Ρεύμα εξόδου 40mA για κάθε είσοδο/έξοδο
- Ρεύμα εξόδου 50mA για την έξοδο 3.3V
- Flash μνήμη 32KB
- SRAM 2KB
- EEPROM 1KB
- Microcontroller: ATmega328
- Ψηφιακά I/O Pins: 14 (εκ των οποίων 6 περιέχουν PWM εξόδους)
- Αναλογικά Pins εισόδου: 6
- Ταχύτητα ρολογιού (Clock Speed): 16 MHz
'Εχουν αναπτυχθεί διαφορετικές πλατφόρμες Arduino, όπου η κάθε μία είτε αποτελεί εξέλιξη κάποιας άλλης, είτε έχει αναπτυχθεί για κάποιο συγκεκριμένο σκοπό:
- Arduino Uno
- Arduino Stamp
- Arduino Diecimila
- Arduino Fio
- Arduino Duemilanove
- Arduino NG
- Arduino Mega1280
- Arduino NG+
- Arduino Mega2560
- Arduino Extreme
- Arduino Mini
- Arduino Bluetooth
- Arduino Nano
- LilyPad Arduino
- Arduino USB
- Serial Arduino
Οι πλατφόρμες Arduino διαθέτουν τρείς βασικές μνήμες:
- Flash memory (32 Kbytes) στην οποία τοποθετείται κάθε φορά το πρόγραμμα που πρόκειται να εκτελεστεί, καθώς και ο φορτωτής εκκίνησης (bootloader) που διευκολύνει την διαδικασία του προγραμματισμού της πλατφόρμας.
- SRAM memory (στατική μνήμη τυχαίας προσπέλασης των 2 Kbytes) η οποία χρησιμοποιείται για την προσωρινή αποθήκευση των στατικών και των μεταβλητών δεδομένων του προγράμματος που εκτελείται.
- ΕEPROM memory (1 Kbytes) στην οποία αποθηκεύονται οι τιμές των μεταβλητών όταν η πλατφόρμα σβήσει. Χρησιμοποιείται για την αποθήκευση ρυθμίσεων και άλλων παραμέτρων του Arduino.
Η μνήμη Flash και η μνήμη ΕEPROM είναι σταθερές, δηλαδή οι πληροφορίες παραμένουν μετά την απενεργοποίησης του ρεύματος. Η μνήμη SRAM είναι ασταθής και οι πληροφορίες χάνονται όταν παύσει η τροφοδοσία της.
Το Arduino Uno τροφοδοτείται είτε από εξωτερική τροφοδοσία που παρέχεται είτε μέσω μιας υποδοχής των 2.1mm (θετικός πόλος στο κέντρο) που βρίσκεται στην κάτω αριστερή γωνία του Arduino, είτε απευθείας από την θύρα USB του υπολογιστή. H επιλογή της πηγής γίνεται αυτόματα από το αναπτυξιακό. Ως εξωτερική τροφοδοσία ορίζεται είτε μια μπαταρία, είτε μετασχηματιστής των 9Volt από 220V. Η μπαταρία μπορεί να συνδεθεί στις υποδοχές του Arduino Vin και GND, όπου τοποθετούνται ο θετικός πόλος και ο αρνητικός αντίστοιχα. Από την άλλη, αν τροφοδοτηθεί με μετασχηματιστή, απλά πρέπει να τοποθετηθεί το βύσμα στην υποδοχή που υπάρχει.
Η πλακέτα μπορεί να λειτουργήσει με εξωτερική πηγή από 6 έως 20 Volts. Αν ωστόσο τροφοδοτηθεί με λιγότερα από 7 Volt, το ενσωμετωμένο κύκλωμα σταθεροποίησης τάσης δεν θα καταφέρει να εξάγει τάση 5 Volts. Αντίθετα, αν δώσουμε πάνω από 12 Volts θα υπερθερμανθεί ο σταθεροποιητής τάσης της πλακέτας και ενδεχομένως να καταστραφεί. Συνεπώς, μια ιδανική τάση είναι τα 9 Volts.
Οι ακροδέκτες τροφοδοσίας είναι οι εξής:
- VIN. Ακροδέκτης για μη σταθεροποιημένη τάση. Συνήθως εδώ συνδέεται μια εξωτερική πηγή τροφοδοσίας.
- 5V. Ακροδέκτης σταθεροποιημένης τάσης 5Volt. Η ρυθμιζόμενη παροχή ηλεκτρικού ρεύματος που χρησιμοποιείται για την τροφοδοσία του μικροελεγκτή ή άλλων ηλεκτρονικών στοιχείων της πλακέτας. Αυτό μπορεί να προέρχεται είτε από Vin με ενσωματωμένο ρυθμιστή ή να παρέχεται από USB ή άλλη ρυθμιζόμενη παροχή 5V.
- 3V3. Μέγιστη κατανάλωση ρεύματος είναι 50mA.
- GND. Γειωμένες ακίδες