Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων

Σχετικά έγγραφα
Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων

Γνωριμία με το Arduino

Εφαρμογές Arduino Σεμινάριο Ηλεκτρονικού Τομέα

Ενσωµατωµένα Συστήµατα

ΕΡΓΑΣΤΗΡΙΟ 4 ΕΙΣΑΓΩΓΗ ΣΤΟN ARDUINO: ΨΗΦΙΑΚΗ ΕΙΣΟΔΟΣ/ΕΞΟΔΟΣ

Μετρήσεις και συλλογή δεδομένων (Data acquisition) με μικροελεγκτές. Εισαγωγή στο Arduino. Ηλεκτρομηχανολογικός εξοπλισμός διεργασιών

ΕΦΑΡΜΟΓΕΣ ΤΗΛΕΠIΚΟΙΝΩΝΙΑΚΩΝ ΔΙΑΤΑΞΕΩΝ

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων

Μαθαίνοντας το hardware του αναπτυξιακού

ΔΙΔΑΚΤΙΚΟ ΣΕΝΑΡΙΟ ΔΗΜΙΟΥΡΓΙΑ ΣΥΣΤΗΜΑΤΟΣ ΔΙΕΞΑΓΩΓΗΣ ΠΑΙΧΝΙΔΙΟΥ ΕΡΩΤΗΣΕΩΝ/ΑΠΑΝΤΗΣΕΩΝ ΜΕ ΧΡΗΣΗ ARDUINO - QUIZ GAME ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ 3

ΡΟΜΠΟΤΙΚΗ. ΕΡΓΑΣΙΑ ΠΑΝΩ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΝΧΤ ΚΑΙ ΤΑ ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ BLUETOOTH, I2C και serial communication

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 2 USB και Σειριακή Επικοι- νωνία Σ Σειριακή Επικοινωνία

ΑΣΚΗΣΗ 1 (22 Νοεμβρίου 2017)

Εφαρμογές Σειριακής Επικοινωνίας

Ενσωματωμένα Συστήματα

Εφαρμογές Arduino Σεμινάριο Ηλεκτρονικού Τομέα

Πλακέτα Arduino. 1ο ΕΠΑΛ Περάματος - 7ο ΕΚ Πειραιά

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Σερρών Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πληροφορικής & Επικοινωνιών

WDT και Power Up timer

ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΑ ΗΛΕΚΤΡΟΝΙΚΑ

Εφαρμογές Αναλογικών Ε/Ε PWM (pulse Width Modulation)

Bread Online. Παναγιώτης Ιωαννίδης Επιβλέπων καθηγητής: Μηνάς Δασυγένης

ΕΝΟΤΗΤΑ 13 Ο ΔΙΑΥΛΟΣ I2C

Εφαρμογές αναλογικών / Ψηφιακών

ΣΤΟΙΧΕΙΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ARDUINO

ΕΝΟΤΗΤΑ 3 ΕΚΦΡΑΣΕΙΣ, ΑΝΑΜΟΝΕΣ (DELAYS), ΗΧΟΙ

Προγραμματισμο ς σε Arduino

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο,

ΕΙΣΑΓΩΓΗ ΣΤΟ ARDUINO. Υποψήφιος Διδάκτωρ

ARDUINO ΟΔΗΓΟΣ ΓΙΑ ΑΡΧΑΡΙΟΥΣ

Μάθημα 2 Δραστηριότητα 2: Δημιουργώντας το Μετεωρολογικό Σταθμό. Επανεξέταση των βασικών εννοιών της C και του προγραμματισμού.

ΒΑΣΙΚΕΣ ΠΛΗΡΟΦΟΡΙΕΣ. Τίτλος Μαθήματος. Διαλέξεις - Θεωρητική Διδασκαλία, Εποπτευόμενο Εργαστήριο Επίδειξη, Μελέτες (Projects)

Ενσωματωμένα Συστήματα

Μέτρηση Θερμοκρασίας με τον αισθητήρα TMP36. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων. Βασική δομή ενός προγράμματος στο LabVIEW.

ΔΙΑΧΥΤΑ ΚΑΙ ΕΝΣΩΜΑΤΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ

ΕΝΟΤΗΤΑ 5 Αναλογικά σήματα

Φύλλο εργασίας 7 - Δημιουργώ τα δικά μου χρώματα με το RGB LED

για τις ρυθμίσεις LabView μέσα από το κανάλι και του καλωδίου USB.

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 1. Arduino + LabVIEW: Μέτρηση Έντασης Φωτός με Φωτοαντίσταση. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων

ΑΣΚΗΣΗ 2 (29 Νοεμβρίου 2016)

ΕΝΟΤΗΤΑ 12 ΣΕΙΡΙΑΚΗ ΔΙΕΠΑΦΗ

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. Σχεδίαση και ανάπτυξη οχήματος που ακολουθεί μια γραμμή

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα

Ι ΑΣΚΩΝ ΚΑΘΗΓΗΤΗΣ: ΚΑΘΗΓΗΤΗΣ ΕΦΑΡΜΟΓΩΝ. ΤΕΙ ΥΤΙΚΗΣ ΜΑΚΕ ΟΝΙΑΣ

Arduino Teachers Workshop

Ψηφιακά Αντικείμενα Μάθημα 1 Δραστηριότητα 1. Προγραμματισμός Φυσικών Συστημάτων. Νέα Ψηφιακά Αντικείμενα

Αρχιτεκτονική Υπολογιστών

ΕΛΕΓΧΟΣ ΑΝΤΛΙΟΣΤΑΣΙΟΥ ΜΕ ΔΕΞΑΜΕΝΗ ΜΕΣΩ GSM CHECK IN TANK PUMPING THROUGH GSM

Αθήνα 29 ΝΟΕ, 2016 ΘΕΜΑ: ΑΙΤΗΜΑ ΑΓΟΡΑΣ ΥΛΙΚΩΝ ΓΙΑ ΤΟ ΕΡΓΑΣΤΗΡΙΟ ΣΥΛΛΟΓΗΣ & ΕΠΕΞΕΡΓΑΣΙΑΣ ΔΕΔΟΜΕΝΩΝ

ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. ΚΕΦΑΛΑΙΟ 4ο ΜΝΗΜΕΣ. (c) Αμπατζόγλου Γιάννης, Ηλεκτρονικός Μηχανικός, καθηγητής ΠΕ17

1ο ΕΠΑΛ Περάματος -7ο ΕΚ Πειραιά. Εφαρμογές Arduino. Σεμινάριο Ηλεκτρονικού Τομέα. Φεβρουάριος 2014

Συλλογή & Επεξεργασία Δεδομένων Εξαμηνιαία ΡομποΚαθαριστής Μέρος Β : Το Πρόγραμμα. Σχεδίαση Συστήματος Πραγματικής Εφαρμογής (Prototyping).

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο

G&K ELECTRONICS AVR ATMEGA DEVELOPMENT BOARD

Α. Βασική Χρήση κινητήρα - Servo με τη βιβλιοθήκη <Servo.h>

Σημειώσεις : Χρήστος Μουρατίδης. Κάντε κλικ για έναρξη

ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. ΚΕΦΑΛΑΙΟ 2ο ΚΑΤΑΧΩΡΗΤΕΣ. (c) Αμπατζόγλου Γιάννης, Ηλεκτρονικός Μηχανικός, καθηγητής ΠΕ17

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο,

Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Project 5: Συνθέτοντας μουσική

ΡΟΜΠΟΤΙΚΗ ΜΕ ARDUINO - ARDUINO ΚΑΙ ΗΧΟΣ I. Δημιουργός: Δρ.Αθανάσιος Μπαλαφούτης Επιβλέπων: Πετεινάτος Ηλίας Υποψήφιος Διδάκτωρ

Α.Ε.Ι. ΠΕΙΡΑΙΑ Τ.Τ Φεβρουάριος 2017

ΜΙΚΡΟΕΛΕΓΚΤΗΣ PICAXE 18M2

Συλλογή & Επεξεργασία Δεδομένων. Προγραμματίζοντας τον Arduino Μέρος Ι: Μεταβλητές, Εντολές Εισόδου & Εξόδου. Ολοκληρωμένο Περιβάλλον Ανάπτυξης (IDE)

FOSSCOMM ο Συνέδριο Κοινοτήτων Ανοιχτού Λογισμικού Σάββατο 20 Απριλίου Ομάδα Σχολής Ικάρων Εργαστήριο Arduino

Ανάπτυξη τηλεπικοινωνιακού υποσυστήματος σε UAV για λήψη δεδομένων από επίγειους ανιχνευτές

ΠΛΗΡΟΦΟΡΙΚH ΓΙΑ ΤΗΝ ΤEΧΝΗ Η ΕΞAΜΗΝΟ

ΠΕΡΙΓΡΑΦΗ ΥΛΙΚΟΥ AVR 1. ΕΙΣΑΓΩΓΗ 1.1 ΓΕΝΙΚΗ ΔΟΜΗ 1.2 ΟΙΚΟΓΕΝΕΙΕΣ 1.3 ΤΥΠΟΙ 1.4 ΕΡΓΑΛΕΙΑ

Μάθημα 1 ΑΙΣΘΗΤΗΡΕΣ Ο Αισθητήρας Δύναμης. Επανεξέταση των βασικών εννοιών της C και του προγραμματισμού.

Φύλλο εργασίας 6 - Θερμόμετρο εξωτερικού χώρου. Το κύκλωμα σε breadboard

Μελέτη και υλοποίηση γεννήτριας σήματος, βασισμένη στην πλατφόρμα Arduino

Εξαμηνιαία Εργασία 2013 Προγραμματίζοντας τον Arduino στη C Μέρος Α : Υλικά

«Σχεδιασμός Ψηφιακών Συστημάτων σε FPGA» Εαρινό εξάμηνο

ΕΝΟΤΗΤΑ 10: ΟΔΗΓΗΣΗ ΚΙΝΗΤΗΡΩΝ

ΕΝΟΤΗΤΑ 7: ΑΙΣΘΗΤΗΡΕΣ ΥΠΕΡΥΘΡΩΝ

Έλεγχος κινητήρα συνεχούς ρεύματος με τρανζίστορ και Arduino

1o ΕΠΑΛ- Ε.Κ. Συκεών -Τομέας: Ηλεκτρονικής, Ηλεκτρολογίας και Αυτοματισμού Εκπαιδευτικοί: Μπουλταδάκης Στέλιος Μαυρίδης Κώστας

Φύλλο εργασίας 3 - Χριστουγεννιάτικα φωτάκια (σταδιακή αύξηση και μείωση φωτεινότητας ενός LED) Το κύκλωμα σε breadboard

Μικροεπεξεργαστές. Σημειώσεις Μαθήματος Υπεύθυνος: Δρ Άρης Παπακώστας,

Κύρια μνήμη. Μοντέλο λειτουργίας μνήμης. Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (ΙI)

Προηγμένοι Μικροεπεξεργαστές. Εργαστήριο 5 - Editor

«ΠΡΟΜΗΘΕΙΑ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΕΡΙΦΕΡΙΑΚΩΝ ΣΥΣΚΕΥΩΝ» ΤΟΥ ΔΗΜΟΥ ΙΩΑΝΝΙΤΩΝ ΤΕΧΝΙΚΗ ΜΕΛΕΤΗ

Arduino. δουλεύοντας με το... Υλικό αναφοράς και χρήσης της ανοιχτής πλατφόρμας

Ψηφιακή Επεξεργασία Σήματος

Η δυναμική του Arduino στο μάθημα της Τεχνολογίας. Φάσουρας Δημήτριος Ηλεκτρολόγος ΠΕ 17,03

Τεχνικές Προδιαγραφές Συστήματος

Το κύκλωμα σε breadboard

ΣΕΙΡΑ ΚΑΤΑΓΡΑΦΙΚΩΝ Ultima

Φύλλο εργασίας 4 - Δημιουργώ τα δικά μου χρώματα με το RGB LED

ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ: ΜΙΚΡΟΕΛΕΓΚΤΕΣ

ΕΝΟΤΗΤΑ 14 Πρωτόκολλα Επικοινωνίας

Οργάνωση Υπολογιστών (ΙI)

CTMU. => C = 50pF 10pF = 40 pf. C stray. d (C V ) I= I = C V. C= I t. Ι = dq dt

ΡΟΜΠΟΤΙΚΗ ΜΕ ARDUINO - ARDUINO ΚΑΙ ΗΧΟΣ II. Δημιουργός: Δρ.Αθανάσιος Μπαλαφούτης Επιβλέπων: Πετεινάτος Ηλίας Υποψήφιος Διδάκτωρ

Σχεδιασμός και Υλοποίηση οχήματος ελεγχόμενου μέσω Bluetooth

Δρ. Π. Ασβεστάς Τμήμα Μηχανικών Βιοϊατρικής Τεχνολογίας Τ.Ε

Ψηφιακή Λογική Σχεδίαση

Transcript:

Εργαστήριο ενσωματωμένων συστημάτων Παρουσίαση 2: Βασικός Προγραμματισμός Arduino (AVR) Εργαστήριο Αυτομάτου Ελέγχου

Η πλατφόρμα Arduino Microcontroller: ATmega328 Operating Voltage: 5V Digital I/O Pins: 14 (of which 6 provide PWM output) Analog Input Pins: 6 Flash Memory: SRAM: 32 KB (ATmega328) 2 KB (ATmega328) EEPROM: 1 KB (ATmega328) Clock Speed: 16 MHz

Θύρες εισόδων/εξόδων (I/O) Βασικές θύρες GPIO (General Purpose Input/Output) Οι AVR μικροελεγτές χαρακτηριστικά. και όχι μόνο Παράδειγματα: Είσοδος: Διακόπτης button Pin: Λογικό 0 Pin: Λογικό 1 Έξοδος: LED Σήμα Εισόδου Pin: Λογικό 0 Σήμα Εισόδου Pin: Λογικό 1 διαθέτουν pins με on-off

Θύρες εισόδων/εξόδων (I/O) Σειριακή θύρα (UART) Οι σειρακές θύρες χρησιμοποιούν το πρωτόκολλο επικοινωνίας UART για να μεταφέρονται τα δεδομένα ασύχρονα απο μία συσκευή σε μία άλλη και αντίστροφα.

Θύρες εισόδων/εξόδων (I/O) Ψηφιακόι Παλμοί (PWM) Οι θύρες PWM μπρούν να χρησιμοποιηθούν είτε ως είσοδοι, είτε ως έξοδοι. Ρυθμίζοντας το πλάτος του παλμού μπρούμε να δώσουμε ή να πάρουμε ουσιαστικά διαφορετικές τιμές σε ένα ψηφιακό σήμα. Παράδειγματα: Είσοδος: RPM Sensor Έξοδος: Servo Motor

Θύρες εισόδων/εξόδων (I/O) Διάυλος I²C Ο δίαυλος I²C είναι ένας σειριακός δίαυλος και χρησιμοποιείται για την σύνδεση περιφερειακών μικρής ταχύτητας. Χρησιμοποιεί μόνο δύο καλώδια, τα οποία είναι αμφίδρομης κατεύθυνσης: Τα SCL και SDA. Η γραμμή SCL είναι η γραμμή ρολογιού, ενώ η SDA είναι η γραμμή δεδομένων. Εγγραφή σε συσκευή Ανάγνωση απο συσκευή

Προγραμματισμός Arduino Η γλώσσα του Arduino βασίζεται στη γλώσσα Wiring. Υποστηρίζει όλες τις βασικές δομές της C καθώς και κάποιες της C++. Υπάρχουν έτοιμες βιβλιοθήκες για την επικοινωνία με συσκευές εισόδων/εξόδων. Ο χρήστης θα πρέπει να ορίσει δύο βασικές λειτουργίες για να κάνουν ένα πρόγραμμα κυκλικής εκτέλεσης: void setup() void loop() Xρησιμοποιεί το GNU toolchain και το AVR Libc για να μεταγλωττίζει προγράμματα.

Βασικές συναρτήσεις Ψηφιακές θύρες: pinmode(pin,mode) : Ορίζει την λειτουργία του pin (είσοδος/έξοδος) digitalwrite(pin,val): Γραφει την τιμή εξόδου του pin (LOW/HIGH) val = digitalread(pin): Διαβάζει την τιμή του pin Αναλογικές θύρες: analogwrite(pin,val): (PWM) Γραφει την τιμή % duty cycle του pin (0-255) val = analogread(pin): Διαβάζει την τιμή του pin (0-1023) Χρονιστές time = millis(): time = micros(): delay(val): Επιστρέφει τον χρόνο σε ms από τότε που άρχισε το πρόγραμμα Επισρέφει τον χρόνο σε μs από τότε που άρχισε το πρόγραμμα Κάνει πάυση το πρόγραμμα για val ms delaymicroseconds(val): Κάνει πάυση το πρόγραμμα για val μs

Βασικές συναρτήσεις Σειριακές θύρες / USB Με την σειριακή θύρα μπορείς να επικοινωνήσεις είτε με άλλες συσκευές που διαθέτουν σειριακές θύρες ή με τον υπολογιστή μεσω USB. Βασικές συναρτήσεις δομής: val = avaliable() : Επιστρέφει τον αριθμό των bytes που είναι διαθέσιμα στην θύρα begin(baudrate): Ξεκινάει/Ρυθμίζει την σειριακή θύρα. Συνήθως δίνουμε μόνο το baudrate print(val): Τυπώνει την τιμή val σε ASCII text println(val): Τυπώνει την τιμή val σε ASCII text και αλλάζει γραμμή ('\r') val = read(): Διαβάζει ένα byte απο την σειριακή readbytes(buffer,length): Διαβάζει length bytes απο την σειριακή και τα σώζει στον buffer.

Βασικές βιβλιοθήκες Servo Η βιβλιοθήκη Servo επιτρέπει τον έλεγχο σερβοκινητήρων από τον Arduino, μέσω σημάτων PWM. Βασικές συναρτήσεις δομής: attach(pin) : Αντιστοιχίζει ένα αντικείμενο servo σε μία PWM θύρα του Arduino write(degrees): Στρέφει τον άξονα του σερβοκινητήρα στις degree μοίρες

Βασικές βιβλιοθήκες Επικοινωνία με I2C (Wire, I2Cdev) Η βιβλιοθήκη Wire, η οποία περιλαμβάνεται στην βασική έκδοση του Arduino IDE, ενσωματώνει τις βασικές λειτουργίες επικοινωνίας με I2C περιφερειακές συσκευές. Βασικές συναρτήσεις δομής: begin()/begin(address): Συνδέει την συσκευή στον δίαυλο I2C ως master ή ως slave με διεύθυνση address. begintransmission(address): Ξεκινά την επικοινωνία μεταξύ master και του slave στη διεύθυνση address. endtransmission(address): Λήγει την τρέχουσα επικοινωνία. write(val): Στέλνει στον slave το περιεχόμενο της val (τιμή, string, array) requestfrom(address, quantity): Ζητά από τον slave στη διεύθυνση address απάντησ μήκους quantity val = read(): Διαβάζει ένα byte απο τον slave

Βασικές βιβλιοθήκες Επικοινωνία με I2C (Wire, I2Cdev) #2 Η βιβλιοθήκη I2Cdev δεν αποτελεί μέρος της επίσημης έκδοσης του Arduino IDE, όμως διευκολύνει σημαντικά την επικοινωνία με δημοφιλείς I2C συσκευές, παρέχοντας προεπιλεγμένες ρυθμίσεις. Καθώς δεν είναι επίσημη Arduino βιβλιοθήκη, χρειάζεται να αντιγράψουμε στο φάκελο libraries της εγκατάστασης του Arduino. την Μαζί με την I2Cdev, παρέχονται και έτοιμες, εξειδικευμένες βιβλιοθήκες που αφορούν συγκεκριμένες συσκευές (πχ την IMU MPU6050). Οι βιβλιοθήκες αυτές χρησιμοποιούν την I2Cdev για να παράσχουν έναν πολύ αφηρημένο και εύχρηστο τρόπο επικοινωνίας με την εκάστοτε συσκευή. Χρειάζεται να προσθέσουμε την βιβλιοθήκη της συσκευής που μας ενδιαφέρει στον φάκελο libraries

Ολοκληρωμένο Παράδειγμα

Εργαστήριο ενσωματωμένων συστημάτων Τέλος Παρουσίασης Εργαστήριο Αυτομάτου Ελέγχου