ΑΚΑΔΗΜΙΑ ΕΜΠΟΡΙΚΟΥ ΝΑΥΤΙΚΟΥ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΜΗΧΑΝΙΚΩΝ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΘΕΜΑ :ΑΙΣΘΗΤΗΡΕΣ ΓΙΑ ARDUINO 2/5

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΑΚΑΔΗΜΙΑ ΕΜΠΟΡΙΚΟΥ ΝΑΥΤΙΚΟΥ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΜΗΧΑΝΙΚΩΝ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΘΕΜΑ :ΑΙΣΘΗΤΗΡΕΣ ΓΙΑ ARDUINO 2/5"

Transcript

1 ΑΚΑΔΗΜΙΑ ΕΜΠΟΡΙΚΟΥ ΝΑΥΤΙΚΟΥ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΜΗΧΑΝΙΚΩΝ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΘΕΜΑ :ΑΙΣΘΗΤΗΡΕΣ ΓΙΑ ARDUINO 2/5 ΣΠΟΥΔΑΣΤΗΣ :ΚΑΖΑΚΗΣ ΙΩΑΝΝΗΣ ΕΠΙΒΛΕΠΟΥΣΑ ΚΑΘΗΓΗΤΡΙΑ : ΠΕΡΙΒΟΛΗ ΠΑΣΧΑΛΙΝΑ NEA ΜΗΧΑΝΙΩΝΑ

2 ΑΚΑΔΗΜΙΑ ΕΜΠΟΡΙΚΟΥ ΝΑΥΤΙΚΟΥ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΜΗΧΑΝΙΚΩΝ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΘΕΜΑ :ΑΙΣΘΗΤΗΡΕΣ ΓΙΑ ARDUINO 2/5 ΣΠΟΥΔΑΣΤΗΣ :ΚΑΖΑΚΗΣ ΙΩΑΝΝΗΣ ΑΜ : 5147 ΗΜΕΡΟΜΗΝΙΑ ΠΑΡΑΔΟΣΗΣ : ΙΟΥΝΙΟΣ 2017 Βεβαιώνεται η ολοκλήρωση της παραπάνω πτυχιακής εργασίας Η καθηγήτρια 2

3 Περίληψη Η πτυχιακή εργασία που παρουσιάζεται παρακάτω αποτελεί τμήμα ενός συλλογικού έργου που εκπονήθηκε από το εργαστήριο Συστημάτων Αυτομάτου Ελέγχου (Σ.Α.Ε.) της Σχολής Μηχανικών της Ακαδημίας Εμπορικού Ναυτικού Μακεδονίας. Το συλλογικό αυτό έργο είναι η καταγραφή, η διευθέτηση υλικών και η δημιουργία εφαρμογών σε επίπεδο κατασκευής και προγραμματισμού σε ότι αφορά την τεχνολογία Arduino. Η εργασία αποτελεί το δεύτερο μέρος από τα πέντε συνολικά μέρη του συνόλου του έργου. Ο στόχος της πτυχιακής είναι η οργάνωση των υλικών που υπάρχουν στο εργαστήριο των Σ.Α.Ε και αφορούν τμήμα των Arduino. Το εγχείρημα αυτό εστιάζει σε δυο άξονες. Ο πρώτος άξονας αφορά στη συλλογή πληροφοριών για τα υλικά Arduino του εργαστηρίου, όπως περιγραφή της λειτουργίας τους, κάποια τεχνικά χαρακτηριστικά τους και κώδικες προγραμματισμού. Ο δεύτερος άξονας αφορά στην διευθέτηση των υλικών Arduino, την τοποθέτηση τους μέσα σε ειδικά διαμορφωμένες θήκες και τέλος στην τοποθέτηση ετικετών με το εικονίδιο και το όνομα του κάθε υλικού ώστε αυτό να είναι άμεσα αναγνωρίσιμο. Ο σκοπός της πτυχιακής είναι να αποτελέσει σημαντικό εργαλείο στα χέρια των σπουδαστών και καθηγητών του εργαστήριου των Σ.Α.Ε. για την διδασκαλία του αντικειμένου. Παρακάτω στην πτυχιακή παρατίθενται οι περιγραφές και τα τεχνικά χαρακτηριστικά των υλικών Arduino καθώς και οπτικό υλικό αυτών. 3

4 Abstract The dissertation presented below is part of a collaborative work done by the Automatic Control Systems Laboratory (SAE) of the School of Engineering of the Academy of Commercial Nautical Macedonia. This collective project is the recording, the arrangement of materials and the creation of applications at the level of construction and programming in terms of Arduino technology. Work is the second part of the five overall parts of the project as a whole. The aim of the dissertation is the organization of the materials in the laboratory of SAE and the part of Arduino. This project focuses on two axes. The first pillar concerns the collection of information about Arduino materials in the lab, including a description of their function, some technical features and programming codes. The second axis concerns the arrangement of Arduino materials, their placement in specially shaped cases and finally the placement of labels with the icon and the name of each material so that it is instantly recognizable. The purpose of the diploma thesis is to be an important tool in the hands of SAE students and professors, for teaching the subject. The following are the descriptions and technical specifications of Arduino materials and their optical materials. 4

5 Πρόλογος Το Arduino είναι ένας μικροελεγκτής ο οποίος περιλαμβάνει ένα chip ATmega. Με λίγα λόγια διαθέτει εισόδους και εξόδους που αντιδρούν βάση του προγραμματισμού που κάναμε και που φορτώσαμε στο chip με τη βοήθεια του υπολογιστή. Το ολοκληρωμένο περιβάλλον ανάπτυξης (IDE) του Arduino είναι μία εφαρμογή γραμμένη σε Java, που λειτουργεί σε πολλές πλατφόρμες, και προέρχεται από το IDE για τη γλώσσα προγραμματισμού Processing και το σχέδιο Wiring. Έχει σχεδιαστεί για να εισάγει τον προγραμματισμό σε όσους δεν είναι εξοικειωμένοι με την ανάπτυξη λογισμικού. Περιλαμβάνει ένα πρόγραμμα επεξεργασίας κώδικα με χαρακτηριστικά όπως είναι η επισήμανση σύνταξης και ο συνδυασμός αγκύλων και είναι επίσης σε θέση να μεταγλωττίζει και να φορτώνει προγράμματα στην πλακέτα με ένα μόνο κλικ. Δεν υπάρχει συνήθως καμία ανάγκη να επεξεργασίας των αρχείων make. Ένα πρόγραμμα ή κώδικας που γράφτηκε για Arduino ονομάζεται σκίτσο (sketch). 5

6 ΚΕΦΑΛΑΙΟ 1 : ΕΙΣΑΓΩΓΗ ΣΤΟ ARDUINO 1.1 Γενικές πληροφορίες Το Arduino είναι μια «ανοικτού κώδικα» πλατφόρμα «προτυποποίησης» ηλεκτρονικών, βασισμένη σε ευέλικτο και εύκολο στη χρήση hardware και software που προορίζεται για οποιονδήποτε έχει λίγη προγραμματιστική εμπειρία, στοιχειώδεις γνώσεις ηλεκτρονικών και ενδιαφέρεται να δημιουργήσει διαδραστικά αντικείμενα ή περιβάλλοντα. Στην ουσία, πρόκειται για ένα ηλεκτρονικό κύκλωμα που βασίζεται στον μικροελεγκτή ATmega της Atmel και του οποίου όλα τα σχέδια, καθώς και το software που χρειάζεται για την λειτουργία του, διανέμονται μαζί με την αγορά του kit. Αφού κατασκευαστεί, μπορεί να συμπεριφερθεί σαν ένας μικροσκοπικός υπολογιστής, αφού ο χρήστης μπορεί να συνδέσει επάνω του πολλαπλές μονάδες εισόδου/εξόδου και να προγραμματίσει τον μικροελεγκτή να δέχεται δεδομένα από τις μονάδες εισόδου, να τα επεξεργάζεται και να στέλνει κατάλληλες εντολές στις μονάδες εξόδου. Λειτουργικά το Arduino μοιάζει πολύ με το NXT Brick των LegoMindstorms NXT. Άλλωστε η ρομποτική είναι μια από τις πολλές εφαρμογές στις οποίες το Arduino διαπρέπει. Το Arduino κυκλοφορεί σε διάφορες εκδόσεις, επίσημες και ανεπίσημες. Από τις επίσημες εκδόσεις αυτές που ξεχωρίζουν για την αξιοπιστία είναι οι (Duemilanove, Diecimila, Nano, Mega, Bluetooth, LilyPad, Mini, Mini USB, Pro, ProMini, Serial και Serial SS) από τις οποίες συνιστάται κυρίως η έκδοση ArduinoDuemilanove ή τουλάχιστον των Diecimila ή Mega,οι οποίες διαθέτουν υποδοχή USB και είναι συμβατές με τα shield. Όλες οι εκδόσεις εκτός από το ίδιο το Arduino, περιέχουν διάφορα άλλα εξαρτήματα και εργαλεία που μπορεί να χρειαστείτε για τις πρώτες σας εφαρμογές (όπως το απαραίτητο καλώδιο USB για την σύνδεση με τον υπολογιστή, ράστερ, καλώδια, LED, διακόπτες, ποτενσιόμετρα, αντιστάσεις, διόδους, τρανζίστορ κ.λπ.). Στην συνέχεια θα δώσουμε περισσότερες πληροφορίες όσον αφορά τα βασικά κατασκευαστικά στοιχεία ενός Arduino Starter Kit,αναλύοντας τις έννοιες του μικροελεκτή (ο οποίος αποτελέι την καρδία του Arduino), των ενσωματωμένων κουμπιών Led,είσοδοι-έξοδοι της πλακέτας,της τροφοδοσίας, και του Arduino IDE 6

7 με την με τον υπολογιστή.σκοπός αυτής της ανάλυσης μας είναι να δούμε τα μέρη από τα οποία αποτελείται μια πλακέτα και να εμβαθύνουμε τις γνώσεις μας σχετικά με τον τρόπο λειτουργίας ενός Arduino. 1.2 Μικροελεγκτής η καρδιά του Arduino Το Arduino βασίζεται στον ATmega328, έναν 8-bit RISC μικροελεγκτή, τον οποίο χρονίζει στα 16MHz. Ο ATmega328 διαθέτει ενσωματωμένη μνήμη τριών τύπων: 2Kb μνήμης SRAM που είναι η ωφέλιμη μνήμη που μπορούν να χρησιμοποιήσουν τα προγράμματά σας για να αποθηκεύουν μεταβλητές, πίνακες κ.λπ. κατά το runtime. Όπως και σε έναν υπολογιστή, αυτή η μνήμη χάνει τα δεδομένα της όταν η παροχή ρεύματος στο Arduino σταματήσει ή αν γίνει reset. 1Kb μνήμης EEPROM η οποία μπορεί να χρησιμοποιηθεί για «ωμή» εγγραφή/ανάγνωση δεδομένων (χωρίς datatype) ανά byte από τα προγράμματά σας κατά το runtime. Σε αντίθεση με την SRAM, η EEPROM δεν χάνει τα περιεχόμενά της με απώλεια τροφοδοσίας ή reset οπότε είναι το ανάλογο του σκληρού δίσκου. 32Kb μνήμης Flash, από τα οποία τα 2Kb χρησιμοποιούνται από το firmware του Arduino που έχει εγκαταστήσει ήδη ο κατασκευαστής του. Το firmware αυτό που στην ορολογία του Arduino ονομάζεται bootloader είναι αναγκαίο για την εγκατάσταση των δικών σας προγραμμάτων στον μικροελεγκτή μέσω της θύρας USB, χωρίς δηλαδή να χρειάζεται εξωτερικός hardwareprogrammer. Τα υπόλοιπα 30Kb της μνήμης Flash χρησιμοποιούνται για την αποθήκευση αυτών ακριβώς των προγραμμάτων, αφού πρώτα μεταγλωττιστούν στον υπολογιστή σας. Η μνήμη Flash, όπως και η EEPROM δεν χάνει τα περιεχόμενά της με απώλεια τροφοδοσίας ή reset. Επίσης, ενώ η μνήμη Flash υπό κανονικές συνθήκες δεν προορίζεται για χρήση runtime μέσα από τα προγράμματά σας, λόγω της μικρής συνολικής μνήμης που είναι διαθέσιμη σε αυτά (2Kb SRAM + 1Kb EEPROM), έχει σχεδιαστεί μια βιβλιοθήκη που επιτρέπει την χρήση όσου χώρου περισσεύει (30Kb μείον το μέγεθος του προγράμματός σας σε μεταγλωττισμένη μορφή). 7

8 1.3 Είσοδοι Έξοδοι Καταρχήν το Arduino διαθέτει σειριακό interface. Ο μικροελεγκτήςatmega υποστηρίζει σειριακή επικοινωνία, την οποία το Arduino προωθεί μέσα από έναν ελεγκτή Serial-over-USB ώστε να συνδέεται με τον υπολογιστή μέσω USB. Η σύνδεση αυτή χρησιμοποιείται για την μεταφορά των προγραμμάτων που σχεδιάζονται από τον υπολογιστή στο Arduino αλλά και για αμφίδρομη επικοινωνία του Arduino με τον υπολογιστή μέσα από το πρόγραμμα την ώρα που εκτελείται. Επιπλέον, στην πάνω πλευρά του Arduino βρίσκονται 14 θηλυκά pin, αριθμημένα από 0 ως 13, που μπορούν να λειτουργήσουν ως ψηφιακές είσοδοι και έξοδοι. Λειτουργούν στα 5V και καθένα μπορεί να παρέχει ή να δεχτεί το πολύ 40mA. Ως ψηφιακή έξοδος, ένα από αυτά τα pin μπορεί να τεθεί από το πρόγραμμά σας σε κατάσταση HIGH ή LOW, οπότε το Arduino θα ξέρει αν πρέπει να διοχετεύσει ή όχι ρεύμα στο συγκεκριμένο pin. Με αυτόν τον τρόπο μπορείτε λόγου χάρη να ανάψετε και να σβήσετε ένα LED που έχετε συνδέσει στο συγκεκριμένο pin. Αν πάλι ρυθμίσετε ένα από αυτά τα pin ως ψηφιακή είσοδο μέσα από το πρόγραμμά σας, μπορείτε με την κατάλληλη εντολή να διαβάσετε την κατάστασή του (HIGH ή LOW) ανάλογα με το αν η εξωτερική συσκευή που έχετε συνδέσει σε αυτό το pin διοχετεύει ή όχι ρεύμα στο pin (με αυτόν τον τρόπο λόγου χάρη μπορεί να «διαβαστεί» η κατάσταση ενός διακόπτη). Μερικά από αυτά τα 14 pin, εκτός από ψηφιακές είσοδοι/έξοδοι έχουν και δεύτερη λειτουργία. Συγκεκριμένα: Τα pin 0 και 1 λειτουργούν ως RX και TX της σειριακής όταν το πρόγραμμά σας ενεργοποιεί την σειριακή θύρα. Έτσι, όταν λόγου χάρη το πρόγραμμά σας στέλνει δεδομένα στην σειριακή, αυτά προωθούνται και στην θύρα USB μέσω του ελεγκτή Serial-Over-USB αλλά και στο pin 0 για να τα διαβάσει ενδεχομένως μια άλλη συσκευή (π.χ. ένα δεύτερο Arduino στο δικό του pin 1). Αυτό φυσικά σημαίνει ότι αν στο πρόγραμμά ενεργοποιηθεί το σειριακό interface, χάνονται 2 ψηφιακές εισόδοι/εξόδοι. Τα pin 2 και 3 λειτουργούν και ως εξωτερικά interrupt (interrupt 0 και 1 αντίστοιχα). Με άλλα λόγια, ρυθμίζονται μέσα από το πρόγραμμά ώστε να λειτουργούν αποκλειστικά ως ψηφιακές είσοδοι στις οποίες όταν συμβαίνουν συγκεκριμένες αλλαγές, η κανονική ροή του προγράμματος σταματάει 8

9 *άμεσα* και εκτελείται μια συγκεκριμένη συνάρτηση. Τα εξωτερικά interrupt είναι ιδιαίτερα χρήσιμα σε εφαρμογές που απαιτούν συγχρονισμό μεγάλης ακρίβειας. Τα pin 3, 5, 6, 9, 10 και 11 μπορούν να λειτουργήσουν και ως ψευδοαναλογικές έξοδοι με το σύστημα PWM (PulseWidthModulation), δηλαδή το ίδιο σύστημα που διαθέτουν οι μητρικές των υπολογιστών για να ελέγχουν τις ταχύτητες των ανεμιστήρων. Έτσι, μπορεί να συνδεθεί λόγου χάρη ένα LED σε κάποιο από αυτά τα pin και να ελεγχθεί πλήρως η φωτεινότητά του με ανάλυση 8bit (256 καταστάσεις από 0-σβηστό ως 255- πλήρως αναμμένο) αντί να υπάρχει απλά η δυνατότητα αναμμένο-σβηστό που παρέχουν οι υπόλοιπές ψηφιακές έξοδοι. Είναι σημαντικό να γίνει σαφές ότι το PWM δεν είναι πραγματικά αναλογικό σύστημα και ότι θέτοντας στην έξοδο την τιμή 127, δεν σημαίνει ότι η έξοδος θα δίνει 2.5V αντί της κανονικής τιμής των 5V, αλλά ότι θα δίνει ένα παλμό που θα εναλλάσσεται με μεγάλη συχνότητα και για ίσους χρόνους μεταξύ των τιμών 0 και 5V. Στην κάτω πλευρά του Arduino, με τη σήμανση ANALOG IN, υπάρχει μια ακόμη σειρά από 6 pin, αριθμημένα από το 0 ως το 5. Το καθένα από αυτά λειτουργεί ως αναλογική είσοδος κάνοντας χρήση του ADC (AnalogtoDigitalConverter) που είναι ενσωματωμένο στον μικροελεγκτή. Για παράδειγμα, μπορούμε να τροφοδοτήσουμε ένα από αυτά με μια τάση την οποία μπορούμε να τη μεταβάλουμε με ένα ποτενσιόμετρο από 0V ως μια τάση αναφοράς Vref η οποία, αν δεν κάνουμε κάποια αλλαγή, είναι προρυθμισμένη στα 5V. Τότε, μέσα από το πρόγραμμά μας μπορούμε να «διαβάσουμε» την τιμή του pin ως ένα ακέραιο αριθμό ανάλυσης 10- bit, από 0 (όταν η τάση στο pin είναι 0V) μέχρι 1023 (όταν η τάση στο pin είναι 5V). Η τάση αναφοράς μπορεί να ρυθμιστεί με μια εντολή στο 1.1V, ή σε όποια τάση επιθυμούμε (μεταξύ 2 και 5V) τροφοδοτώντας εξωτερικά με αυτή την τάση το pin με την σήμανση AREF που βρίσκεται στην απέναντι πλευρά της πλακέτας. Έτσι, αν τροφοδοτήσουμε το pin AREF με 3.3V και στην συνέχεια δοκιμάσουμε να διαβάσουμε κάποιο pin αναλογικής εισόδου στο οποίο εφαρμόζουμε τάση 1.65V, το Arduino θα μας επιστρέψει την τιμή 512. Τέλος, καθένα από τα 6 αυτά pin, με κατάλληλη εντολή μέσα από το πρόγραμμα μπορεί να μετατραπεί σε ψηφιακό pin εισόδου/εξόδου όπως τα 14 που βρίσκονται στην απέναντι πλευρά και τα οποία 9

10 περιγράφηκαν πριν. Σε αυτή την περίπτωση τα pin μετονομάζονται από 0~5 σε 14~19 αντίστοιχα. 1.4 Τροφοδοσία Το Arduino μπορεί να τροφοδοτηθεί με ρεύμα είτε από τον υπολογιστή μέσω της σύνδεσης USB, είτε από εξωτερική τροφοδοσία που παρέχεται μέσω μιας υποδοχής φις των 2.1mm (θετικός πόλος στο κέντρο) και βρίσκεται στην κάτωαριστερή γωνία του Arduino.Για να μην υπάρχουν προβλήματα, η εξωτερική τροφοδοσία πρέπει να είναι από 7 ως 12V και μπορεί να προέρχεται από ένα κοινό μετασχηματιστή του εμπορίου, από μπαταρίες ή οποιαδήποτε άλλη πηγή DC. Δίπλα από τα pin αναλογικής εισόδου, υπάρχει μια ακόμα συστοιχία από 6 pin με την σήμανση POWER. Η λειτουργία του καθενός έχει ως εξής: Το πρώτο, με την ένδειξη RESET, όταν γειωθεί (σε οποιοδήποτε από τα 3 pin με την ένδειξη GND που υπάρχουν στο Arduino) έχει ως αποτέλεσμα την επανεκκίνηση του Arduino. Το δεύτερο, με την ένδειξη 3.3V, μπορεί να τροφοδοτήσει τα εξαρτήματά με τάση 3.3V. Η τάση αυτή δεν προέρχεται από την εξωτερική τροφοδοσία αλλά παράγεται από τον ελεγκτή Serial-over-USB και έτσι η μέγιστη ένταση που μπορεί να παρέχει είναι μόλις 50mA. Το τρίτο, με την ένδειξη 5V, μπορεί να τροφοδοτήσει τα εξαρτήματά με τάση 5V. Ανάλογα με τον τρόπο τροφοδοσίας του ίδιου του Arduino, η τάση αυτή προέρχεται είτε άμεσα από την θύρα USB (που ούτως ή άλλως λειτουργεί στα 5V), είτε από την εξωτερική τροφοδοσία αφού αυτή περάσει από ένα ρυθμιστή τάσης για να την «φέρει» στα 5V. Το τέταρτο και το πέμπτο pin, με την ένδειξη GND, είναι φυσικά γειώσεις. Το έκτο και τελευταίο pin, με την ένδειξη Vin έχει διπλό ρόλο. Σε συνδυασμό με το pin γείωσης δίπλα του, μπορεί να λειτουργήσει ως μέθοδος εξωτερικής τροφοδοσίας του Arduino, στην περίπτωση που δεν βολεύει να χρησιμοποιήθεί η υποδοχή του φις των 2.1mm. Αν όμως υπάρχει ήδη συνδεδεμένη εξωτερική τροφοδοσία μέσω του φις, μπορούμε να χρησιμοποιήσουμε αυτό το pin για να τροφοδοτήσουμε εξαρτήματα με την 10

11 πλήρη τάση της εξωτερικής τροφοδοσίας (7~12V), πριν αυτή περάσει από τον ρυθμιστή τάσης όπως γίνεται με το pin των 5V. 1.5 Ενσωματωμένα κουμπιά και LED Πάνω στην πλακέτα του Arduino υπάρχει ένας διακόπτης micro-switch και 4 μικροσκοπικά LED επιφανειακής στήριξης. Η λειτουργία του διακόπτη (που έχει την σήμανση RESET) και του ενός LED με την σήμανση POWER είναι μάλλον προφανής. Τα δύο LED με τις σημάνσεις TX και RX, χρησιμοποιούνται ως ένδειξη λειτουργίας του σειριακού interface, καθώς ανάβουν όταν το Arduino στέλνει ή λαμβάνει (αντίστοιχα) δεδομένα μέσω USB. Σημειώστε ότι τα LED αυτά ελέγχονται από τον ελεγκτή Serial-over-USB και συνεπώς δεν λειτουργούν όταν η σειριακή επικοινωνία γίνεται αποκλειστικά μέσω των ψηφιακών pin 0 και 1. Τέλος, υπάρχει το LED με την σήμανση L. Η βασική δοκιμή λειτουργίας του Arduino είναι να του αναθέσετε να αναβοσβήνει ένα LED. Για να μπορείτε να το κάνετε αυτό από την πρώτη στιγμή, χωρίς να συνδέσετε τίποτα πάνω στο Arduino, οι κατασκευαστές του σκέφτηκαν να ενσωματώσουν ένα LED στην πλακέτα, το οποίο σύνδεσαν στο ψηφιακό pin 13. Έτσι, ακόμα και αν δεν έχουμε συνδέσει τίποτα πάνω στο φυσικό pin 13, αναθέτοντάς του την τιμή HIGH μέσα από το πρόγραμμά μας, θα ανάψει αυτό το ενσωματωμένο LED 1.6 Arduino IDE και σύνδεση με τον υπολογιστή Ότι χρειάζεται για την διαχείριση του Arduino από τον υπολογιστή μας το παρέχει το ArduinoIDE.ΤοArduino IDE είναι βασισμένο σε Java και συγκεκριμένα παρέχει ένα πρακτικό περιβάλλον για την συγγραφή των προγραμμάτων μας (τα οποία ονομάζονται sketch στην ορολογία του Arduino) με συντακτική χρωματική σήμανση, αρκετά έτοιμα παραδείγματα, μερικές έτοιμες βιβλιοθήκες για προέκταση της γλώσσας και για εύκολο χειρισμό μέσα από τον κώδικά των εξαρτήματα που συνδέονται στο Arduino, τον compiler για την μεταγλώττιση των sketch, ένα serial monitor που παρακολουθεί τις επικοινωνίες της σειριακής (USB), αναλαμβάνει να στείλει αλφαριθμητικά της επιλογής στο Arduino μέσω αυτής και είναι ιδιαίτερα χρήσιμο για το debugging των sketch για να ανέβει το μεταγλωττισμένο sketch στο Arduino. Για τα δύο τελευταία χαρακτηριστικά βέβαια, το Arduino πρέπει να έχει συνδεθεί σε μια από τις θύρες USB του υπολογιστή και, λόγω του ελεγκτή 11

12 Sirial-over-USB, θα πρέπει να αναγνωριστεί από το λειτουργικό σύστημα ως εικονική σειριακή θύρα. Για την σύνδεση θα χρειαστεί ένα καλώδιο USB από Type A σε Type B, όπως αυτό των εκτυπωτών. Για την αναγνώριση από το λειτουργικό θα χρειαστεί να εγκατασταθεί ο οδηγός του FTDI chip (δηλαδή του ελεγκτή Serial-over-USB), ο οποίος υπάρχει στον φάκελο drivers του Arduino IDE. 12

13 2 ΚΕΦΑΛΑΙΟ_Ο ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΤΟΥ ARDUINO 2.1 Γενικές πληροφορίες Η γλώσσα του Arduino βασίζεται στη γλώσσα Wiring, μια παραλλαγή C/C++ για μικροελεγκτές αρχιτεκτονικής AVR όπως ο ATmega, και υποστηρίζει όλες τις βασικές δομές της C καθώς και μερικά χαρακτηριστικά της C++. Για compiler χρησιμοποιείται ο AVR gcc και ως βασική βιβλιοθήκη C χρησιμοποιείται η AVR libc. Λόγω της καταγωγής της από την C, στην γλώσσα του Arduino μπορείτε να χρησιμοποιήσετε ουσιαστικά τις ίδιες βασικές εντολές και συναρτήσεις, με την ίδια σύνταξη, τους ίδιους τύπων δεδομένων και τους ίδιους τελεστές όπως και στην C. Πέρα από αυτές όμως, υπάρχουν κάποιες ειδικές εντολές, συναρτήσεις και σταθερές που βοηθούν για την διαχείριση του ειδικού hardware του Arduino. Η βασική ρουτίνα setup() εκτελείται μια φορά μόνο κατά την εκκίνηση του προγράμματος ενώ η βασική ρουτίνα loop() περιέχει τον βασικό κορμό του προγράμματος και η εκτέλεσή της επαναλαμβάνεται συνέχεια σαν ένας βρόγχος while(true). Παρακάτω θα αναλύσουμε επαρκώς την δομή του προγράμματος σε ξεχωριστό κεφάλαιο. 2.2 H Δομή του προγράμματος Ένα τυπικό πρόγραμμα Arduino έχει την παρακάτω δομή: //δήλωση μεταβλητών voidsetup () //αρχικοποιήσεις voidloop () //Κώδικας Υπάρχουν δυο ειδικές συναρτήσεις που είναι μέρος του κάθε sketch του Arduino οι οποίες είναι η setup() και η loop(). Η setup() καλείται μια φορά, όταν το 13

14 sketch ξεκινά ή όποτε κάνει επαναφορά (reset) η πλατφόρμα Arduino. Κυρίως, σε αυτήν γίνονται οι αρχικοποιήσεις των μεταβλητών, η ρύθμιση της κατάστασης των ακίδων (pins) και η προετοιμασία των βιβλιοθηκών. Αντιθέτως, η συνάρτηση loop() καλείται ξανά και ξανά επιτρέποντας έτσι στο πρόγραμμα να ανταποκριθεί σε εξωτερικά ερεθίσματα. Και οιδυο συναρτήσεις πρέπει να περιλαμβάνονται στο sketch, ακόμα και αν δεν περιέχουν κάτι και να είναι κενές. 2.3 Ψηφιακές ακίδες (Digitalpins) Οι ακίδες αυτές στο Arduino μπορούν να ρυθμιστούν είτε ως είσοδοι είτε ως έξοδοι, όμως από προεπιλογή είναι ρυθμισμένες ως είσοδοι. Επίσης αξίζει να σημειωθεί, ότι η πλειοψηφία των αναλογικών ακίδων του Arduino (Atmega), μπορεί να ρυθμιστεί και να χρησιμοποιηθεί, με τον ίδιο ακριβώς τρόπο όπως οι ψηφιακές ακίδες. Οι συναρτήσεις ψηφιακής εισόδου και εξόδου είναι οι παρακάτω: pinmode(): Ρυθμίζει τη συγκεκριμένη ακίδα να συμπεριφέρεται ως είσοδος/ έξοδος Σύνταξη: pinmode(pin, mode)\ digitalwrite(): Γράφει μια υψηλή (HIGH) ή μια χαμηλή (LOW) τιμή σε μια ψηφιακή ακίδα. Αν η ακίδα έχει ρυθμιστεί ως έξοδος με την συνάρτηση pinmode(), τότε η τάση της θα καθορίσει στην αντίστοιχη τιμή: 5V για HIGH και 0V για LOW. Αν η ακίδα έχει ρυθμιστεί ως είσοδος, γράφοντας HIGH στην συνάρτηση digitalwrite() θα ενεργοποιήσει μια εσωτερική pullup-αντίσταση των 20 Κ ενώ γράφοντας LOW θα την απενεργοποιήσει. Σύνταξη: digitalwrite(pin,value) digitalread():διαβάζει την τιμή από μια συγκεκριμένη ψηφιακή ακίδα, που είναι είτε HIGH είτε LOW. Σύνταξη: digitalread(pin) 14

15 2.4 Αναλογικές ακίδες εισόδου (Analog inputp ins) Οι ελεγκτές Atmega που χρησιμοποιούνται για την πλατφόρμα Arduino περιέχουν έναν ενσωματωμένο αναλογικό-σε-ψηφιακό μετατροπέα 6 καναλιών. Ο μετατροπέας διαθέτει ανάλυση 10 bit, επιστρέφοντας ακέραιους από 0 έως Ενώ η κύρια λειτουργία της αναλογικής ακίδας για τους περισσότερους χρήστες Arduino είναι να διαβάζει αναλογικούς αισθητήρες, οι αναλογικές ακίδες έχουν επίσης όλες τιςλειτουργίες των γενικών ακίδων εισόδου/εξόδου. Οι συναρτήσεις αναλογικής εισόδου και εξόδου είναι οι παρακάτω: analogwrite():γράφει μια αναλογική τιμή (PWM κύμα) σε μια ακίδα. Μπορεί ναχρησιμοποιηθεί για παράδειγμα να ανάψει ένα LED σε διάφορες φωτεινότητες ήνα οδηγήσει ένα κινητήρα σε διάφορες ταχύτητες. Μετά από μια κλήση της analogwrite(), η ακίδα θα δημιουργήσει ένα σταθερό τετραγωνικό κύμα τουκαθορισμένου κύκλου λειτουργίας μέχρι την επόμενη κλήση της analogwrite() (ήμια κλήση της digitalwrite() ή digitalread() για την ίδια ακίδα). Η συχνότητα τουσήματος PWM είναι περίπου 490 Hz. Στις περισσότερες πλατφόρμες Arduino ησυνάρτηση αυτή λειτουργεί στις ακίδες 3, 5, 6, 9, 10, 11. Σύνταξη: analogwrite(pin, value) analogread():διαβάζει την τιμή από την καθορισμένη αναλογική ακίδα. Σύνταξη: analogread(pin) 2.5 Βασικές δομές και λειτουργίες προγραμματισμού Παρακάτω, ακολουθούν μερικές από τις πιο βασικές δομές και λειτουργίες που μπορεί να αξιοποιηθούν ως εργαλεία κατά την συγγραφή ενός προγράμματος Arduino : 15

16 ADVANCED I/O (Προηγμένες συναρτήσεις εισόδου και εξόδου) tone() (παράγει ένα τετραγωνικό σήμα ορισμένης συχνότητας) notone() (διακόπτει την παραγωγή μιας συχνότητας σε ένα καθορισμένο πείρο) Σύνταξη: notone(pin); shiftout() (ολισθαίνει τα ψηφία μιας τιμής σε μία επαφή εξόδου) Σύνταξη: shiftout(datapin,clockpin,bitorder,data); shiftout(datapin,clockpin,bitorder,data,count); shiftout(datapin,clockpin,bitorder,data,count,delaytime); pulsein() (επιστρέφει την διάρκεια σε μs ενός παλμού HIGH ή LOW) Σύνταξη: pulsein(pin, value); pulsein(pin, value, timeout); TIME (Συναρτήσεις χρόνου) millis() (Επιστρέφει την διάρκεια εκτέλεσης του προγράμματος σε ms) Σύνταξη : millis(); micros() (Επιστρέφει την διάρκεια εκτέλεσης του προγράμματος σε μs.) Σύνταξη : micros(); delay() (Επέρχεται παύση του προγράμματος - η διάρκεια παύσης δίδεται σε ms) Σύνταξη: delay(milliseconds); delaymicroseconds() (Επέρχεται παύση του προγράμματος - η διάρκεια παύσης δίδεται σε μs) Σύνταξη : delaymicroseconds(microseconds); 16

17 ΒITS AND BYTES (Συναρτήσεις επεξεργασίας δυαδικών αριθμών) lowbyte() (επιστρέφει το χαμηλό( το δεξιότερο ) byte μίας μεταβλητής) Σύνταξη: lowbyte(wordvalue) highbyte() (επιστρέφει το υψηλότερο(δηλαδή το αριστερότερο) byte μίας μεταβλητής σε 2byte(16bit)) Σύνταξη: highbyte(wordvalue) bitread() (διαβάζει ένα συγκεκριμένο ψηφίο μίας μεταβλητής) Σύνταξη: var=bitread(bytevalue,n) bitwrite() (γράφει σε ένα συγκεκριμένο ψηφίο μιας μεταβλητής) Σύνταξη: var=bitwrite(byteval,n,bitval) bitset() (θέτει την τιμή 1 σε ένα καθορισμένο ψηφίο μίας μεταβλητής) Σύνταξη: var=bitset(byteval,n) bitclear() (θέτει την τιμή 0 σε ένα καθορισμένο ψηφίο μιας μεταβλητής) Σύνταξη: var=bitclear(bytevalue,n) bit() (υπολογίζει ενα συγκεκριμένο bit με βάση το 2) Σύνταξη: bit(n) EXTERNAL INTERRUPTS (Συναρτήσεις χρήσης ρουτινών εξυπηρέτησης διακοπών) attachinterrupt() (ενεργοποιεί μία ρουτίνα εξυπηρέτησης διακοπής υπηρεσίας(isr) Σύνταξη: attachinterrupt(digitalpintointerrupt(pin),isr,mode); attachinterrupt(interrupt,function,mode) attachinterrupt(pin,isr,mode)(arduino Due only) 17

18 detachinterrupt() (απενεργοποιεί μία ρουτίνα εξυπηρέτησης διακοπής) Σύνταξη: detachinterrupt(interrupt) detachinterrupt(pin)arduino Due only) INTERRUPTS (Συναρτήσεις ενεργοποίησης και απενεργοποίησης διακοπών) interrupts() (ενεργοποιεί τα σήματα διακοπής) Σύνταξη: interrupts() nointerrupts() (απενεργοποιεί τα σήματα διακοπής) Σύνταξη: nointerrupts() DATA TYPES (Τύποι δεδομένων) boolean (λογική δυαδική τιμή -> true or false) Σύνταξη: booleanvar booleanvar=booleanvalue char (προσημασμένος χαρακτήρας 8 ψηφίων) Σύνταξη: charvar Charvar =value unsignedchar (μη προσημασμένος χαρακτήρας 8 ψηφίων) Σύνταξη: unsigned char var Unsigned char var =value byte (μη προσημασμένος χαρακτήρας 8 ψηφίων) Σύνταξη: byte var bytevar = value int (προσημασμένος ακέραιος αριθμός 16 ψηφίων) Σύνταξη : intvar intvar = value 18

19 unsignedint(μη προσημασμένος ακέραιος αριθμός 16 ψηφίων) Σύνταξη: unsigned intvar unsignedintvar = value word (μη προσημασμένος ακέραιος αριθμός 16 ψηφίων) Σύνταξη: word var wordvar = value long (προσημασμένος ακέραιος αριθμός 32 ψηφίων) Σύνταξη: long var longvar = value unsignedlong (μη προσημασμένος ακέραιος αριθμός 32 ψηφίων) Σύνταξη: unsigned long var unsigned long var = value float, double(αριθμός κινητής υποδιαστολής απλής ακρίβειας) Σύνταξη: float foo float foo = value String (αντικείμενο αλφαριθμητικού με χρήσιμες μεθόδους) Σύνταξη: String(val)String(val, base) CONVERSION (Συναρτήσεις μετατροπής τύπων) char(), byte() int(), word(), long() float(), double() 19

20 CONTROL STRUCTURES (Δομές ελέγχου ροής) if (δομή ελέγχου μίας συνθήκης) Σύνταξη: if (expression) statements if... else (δομή ελέγχου πολλαπλών συνθηκών) Σύνταξη: if (expression) statements1 else statements2 for (δομή επαναληπτικού ελέγχου συνθήκης) Σύνταξη: for(initialization;test;increment) //statements while (δομή επαναληπτικού ελέγχου συνθήκης) Σύνταξη: while(expression) //statemen do... while (δομή επαναληπτικού ελέγχου συνθήκης) Σύνταξη: do //statement while(test condition); switch... case (δομή ελέγχου περιπτώσεων) Σύνταξη switch (expression) case label: // statements break; case label: 20

21 // statements break; default: // statements break (εντολή διακοπής μιας επαναληπτικής δομής) Σύνταξη: break; continue (εντολή παράλειψης της τρέχουσας επανάληψης) Σύνταξη: continue; return (εντολή επιστροφής από μία συνάρτηση) Σύνταξη: return [value]; goto (εντολή μετάβασης σε κάποιο σημείο του κώδικα) Σύνταξη: label: //some name goto label; //jump to label COMPARISON OPERATORS (Τελεστές σύγκρισης) == (ισότητα)!=(ανισότητα) <(μικρότερο) >(μεγαλύτερο) <=(μικρότερο ή ίσο) >= (μεγαλύτερο ή ίσο) POINTER ACCESS OPERATORS (Τελεστέςδεικτών) * (τελεστής απόκτησης περιεχομένου) &(τελεστής απόκτησης διεύθυνσης) 21

22 MATHANDTRIGONOMETRY (Μαθηματικές και Τριγωνομετρικές συναρτήσεις) max() (βρίσκει τον μεγαλύτερο ανάμεσα σε δύο αριθμούς) Σύνταξη: max(x,y) min() (βρίσκει τον μικρότερο ανάμεσα σε δύο αριθμούς) Σύνταξη: min(x, y) abs() (επιστρέφει την απόλυτη τιμή ενός αριθμού) Σύνταξη: abs(x) constrain() (ελέγχει για υπερχείλιση ή υποχείλιση ορίων) Σύνταξη: constrain(x, a, b) map() (πραγματοποιεί γραμμικό μετασχηματισμό ορίων) Σύνταξη: map(value, fromlow, fromhigh, tolow, tohigh) pow() (επιστρέφει το αποτέλεσμα μίας δύναμης) Σύνταξη: x=pow(base,exponent) sqrt() (επιστρέφει την ρίζα ενός αριθμού) Σύνταξη: y=sqrt(x) sin() (υπολογίζει το ημίτονο ενός αριθμού) Σύνταξη: sin(rad) cos() (υπολογίζει το συνημίτονο ενός αριθμού) Σύνταξη: cos(rad) tan() (υπολογίζει την εφαπτομένη ενός αριθμού) Σύνταξη: tan(rad) 22

23 RANDOM NUMBERS (Συναρτήσεις γεννήτριας ψευδοτυχαίων αριθμών) random() (δίδεται ένας νέος αριθμός από την γεννήτρια) Σύνταξη:random(value1); random(value1, value2); randomseed() (θέτει τον σπόρο της γεννήτριας παραγωγής) Σύνταξη: randomseed(value); ARITHMETIC OPERATORS (Αριθμητικοί τελεστές) = (τελεστής εκχώρησης) Σύνταξη:var = value; + (τελεστής πρόσθεσης) Σύνταξη: //variablesorconstants sum=var1+var2; //sum -(τελεστής αφαίρεσης) Σύνταξη: sub=var1-var2; //difference *(τελεστής πολλαπλασιασμού) Σύνταξη: mul=var1*var2; //product / (τελεστής διαίρεσης) Σύνταξη: div=var1/var2 //quotient % (τελεστής υπόλοιπου ακεραίας διαίρεσης) Σύνταξη: res=dividend%divisor; BOOLEAN OPERATORS (Λογικοί τελεστές) && (λογική σύζευξη) Σύνταξη:expression1 && expression2 23

24 (λογική διάζευξη) Σύνταξη: expression1 expression2! (λογική άρνηση) Σύνταξη:!expression BITWISE OPERATORS(Δυαδικοί τελεστές) & (δυαδική σύζευξη) Σύνταξη: expression1 & expression2 (δυαδική διάζευξη) Σύνταξη: expression1 expression2 ^ (δυαδική αποκλειστική διάζευξη) Σύνταξη: expression1 ^ expression2 ~ (δυαδική άρνηση) Σύνταξη: ~expression << (δυαδική αριστερή ολίσθηση) Σύνταξη: variable <<number_of_bits >> (δυαδική δεξιά ολίσθηση) Σύνταξη: variable >>number_of_bits COMPOUNDOPERATORS (Τελεστές αύξησης και μείωσης) ++ (αύξηση κατά μία ακέραιη μονάδα) --(μείωση κατά μία ακέραιη μονάδα) 24

25 COMPOUND (Σύνθετοι τελεστές) +=, -=, *=, /=, %= (σύνθετοι αριθμητικοί τελεστές) &=, =, ^=, ~=, <<=, >>= (σύνθετοι δυαδικοί τελεστές) 2.6 Υποστήριξη Βιβλιοθηκών (Libraries) Η χρήση βιβλιοθηκών προσφέρουν περισσότερο λειτουργικότητα σε συνεργασία με το υλικό και τον χειρισμό των δεδομένων. Για να χρησιμοποιηθεί μια βιβλιοθήκη σε ένα sketch, μπορεί να επιλεγεί από το μενού Sketch Import Library. Αυτό θα εισάγει μια ή περισσότερες βιβλιοθήκες #include δηλώσεις στην κορυφή του sketch. Επειδή οι βιβλιοθήκες φορτώνονται στην πλακέτα με το sketch, αυξάνουν το μέγεθος του χώρου που καταλαμβάνεται. Εάν ένα sketch δεν χρειάζεται πλέον μια βιβλιοθήκη, απλά μπορούμε να την διαγράψουμε από την κορυφή του κώδικα. Για την εγκατάσταση των βιβλιοθηκών που δεν υπάρχουν ήδη στο λογισμικό, μπορεί να δημιουργηθεί ένας κατάλογος με την ονομασία libraries (βιβλιοθήκες), μέσα στον κατάλογο του sketchbook. Στην συνέχεια αποσυμπιέζουμε τη βιβλιοθήκη εκεί το Arduino: Παρακάτω ακολουθούν μερικές από τις βιβλιοθήκες που υποστηρίζονται από Standard Arduino Libraries EEPROM: Για την ανάγνωση και εγγραφή σε μόνιμη αποθήκευση. Ethernet: Για την σύνδεση με το διαδίκτυο χρησιμοποιώντας το Arduino Ethernet Shield. Ethernet 2: Για την σύνδεση με το διαδίκτυο χρησιμοποιώντας το Arduino Ethernet Shield2 και τοarduino Leonardo Eth. Firmata:Για την επικοινωνία με τις εφαρμογές στον υπολογιστή χρησιμοποιώντας ένα τυπικό σειριακό πρωτόκολλο. GSM: Για την σύνδεση σε δίκτυο GSM/GRPS με την ασπίδα GSM. GSM2: Η βιβλιοθήκη GSM Shield 2 έχει νέες εντολές ήχου για τις φωνητικές κλήσεις και τη θέση εντολών. Liquid Crystal: Για τον έλεγχο οθονών υγρών κρυστάλλων. 25

26 9 Axes Motion: Για τον έλεγχο της ασπίδας 9 AxesMotion. SD: Για τον έλεγχο και την εγγραφή καρτών SDs. Servo: Για τον έλεγχο σερβοκινητήρων. SPI: Για την επικοινωνία με συσκευές που χρησιμοποιούν το πρόγραμμα Serial Peripheral Interface (SPI) Bus. SoftwareSerial: Για την σειριακή επικοινωνία με οποιαδήποτε ψηφιακά Pins. Stepper: Για τον έλεγχο κινητήρων Stepper. TFT: Για την εισαγωγή κειμένου, εικόνων και σχημάτων στην οθόνη του Arduino TFT. WiFi: Για την σύνδεση με το διαδίκτυο χρησιμοποιώντας την ασπίδα Arduino WiFi. Wire: Με την διασύνδεση δύο αγωγών TWI/I2C με σκοπό την αποστολή και λήψη δεδομένων μέσω συσκευών και αισθητήρων. Braccio: Για τον έλεγχο του Arduino Tinker Kit Braccio. Lucky: Για τον έλεγο του Arduino Lucky Shield ArduinoLoRaShieldLibraries LoRa Node: Για τον έλεγχο της ασπίδας του Arduino LoRa Node Arduino Primo Libraries ArduinoLowPower: Για όσο το δυνατόν καλύτερη διαχείριση του Arduino Primo. BLE: Για την διαχείριση Bluetooth στο Arduino Primo. CLR: Για την διαχείριση IR στο Arduino Primo. Comparator: Για την σύγκριση μιας αναλογικής εισόδου με ένα σήμα αναφοράς. NFC: Για την διαχείριση της ετικέτας NFC στο Arduino Primo. PPI: Προγραμματιζόμενη Περιφερειακή Διασύνδεση για Arduino Primo. 26

27 WiFi Link: Για την σύνδεση της πλακέτας με το WiFi Arduino Star OTTO Libraries Wifi Link: Για την σύνδεση της πλακέτας με το WiFi. Audio: Για την αναπαραγωγή και εγγραφή αρχείων ήχου από τις κάρτες μνήμης SD. Arduino Graphics: Για την ανάπτυξη μιας βιβλιοθήκης γραφικών που θα χρησιμοποιηθεί στο Arduino Star OTTO Linino boards (Yun/ Yun Mini/ Industrial 101/ Tian) Libraries Ciao: Μια εύκολη στην χρήση και ισχυρή τεχνολογία που απλοποιεί την αλληλεπίδραση μεταξύ του μικροελεκτη και του έξω κόσμου. Bridge: Για την επικοινωνίαςμεταξύ του επεξεργαστή Linux και των πινάκων Linino ATSAMD21G18 boards (M0/ M0 Pro/ Zero Pro/ Tian) Libraries RTC: Για τον εσωτερικό ελεγχο του RTC στους πίνακες ATSAMD21G18. Energy Saving: Αυτή η βιβλιοθήκη μπορεί να θέσει σε κατάσταση αναμονής τον μικροελεκτή και να τον αφυπνίσει μέσω εξωτερικού διακόπτη προειδοποίησης,μόνο στους πίνακες ATSAMD21G Due Only Libraries Audio: Για την αναπαραγωγή αρχείων ήχου μέσω καρτών SD. Scheduler : Για την διαχέιριση πολλαπών non-blocking εργασιών. USB Host: Για την επικοινωνία περιφερειακά μέσω θυρών USB όπως ποντίκια, πληκτρολόγια. 27

28 2.6.8 Esplora Only Library Esplora: Αυτή η βιβλιοθήκη σου δίνει την δυνατότητα να έχεις εύκολη πρόσβαση σε διάφορους αισθητήρες ενεργοποιητές οι οποίοι είναι τοποθετημένοι στον πίνακα Esplora Board Arduino Robot Library Robot: Αυτή η βιβλιοθήκη επιτρέπει την εύκολη πρόσβαση στις λειτουργίες του Arduino Robot Arduino USB Libraries Keyboard: Για την αποστολή των πληκτρολογήσεων στον συνδεδεμένο υπολογιστή. Mouse: Για τον έλεγχο κίνησης του δρομέα σε ένα συνδεδεμένο υπολογιστή Contributed Libraries CapacitiveSensingLibrary :Για την μετατροπή δύο ή περισσότερων Pins του Arduino σε ένα χωρητικό αισθητήρα. Τέλος μετά την εκτενή αναφορά στον προγραμματισμό ενός Arduino καθώς και στην περιγραφή των βασικών δομών και λειτουργιών αυτού, θα συνεχίσουμε την πτυχιακή με την περιγραφή μερικών αισθητήρων από το Starter SensorKit V1.0 for Arduino, αναλύοντας τον τρόπο λειτουργίας αυτών καθώς και τρόπο κατασκευής τους. 28

29 3 ΚΕΦΑΛΑΙΟ ΑΙΣΘΗΤΗΡΕΣ ΓΙΑ ARDUINO 3.1 Ψηφιακή μονάδα θερμοκρασίας Η ψηφιακή μονάδα θερμοκρασίας συνδέεται στην θέση 13 LED της πλακέτας του Arduino δημιουργώντας έτσι ένα απλό κύκλωμα. Ο ψηφιακός αισθητήρας θερμοκρασίας συνδέεται ψηφιακά με τρείς διασυνδέσεις και λειτουργεί ως μεταβλητή αντίσταση (NTC/PTC). Πιο συγκεκριμένα δουλεύει ως εξής: καθώς αυξάνεται η θερμοκρασία, μειώνεται η τάση στη έξοδο του αισθητήρα. Αφού λάβει ένα εύρος τιμών της τάσης εξόδου, ρυθμίζεται κατάλληλα ώστε σύμφωνα με τις τιμές αυτές να μετατρέπει την τιμή της θερμοκρασία σε κατάλληλη τάση εξόδου. Όταν ο ψηφιακός αισθητήρας θερμοκρασίας ανιχνεύσει αισθανθεί το κατάλληλο σήμα - κλειδί, τότε τo Led ανάβει,σε διαφορετική περίπτωση παραμένει σβηστό. Εικόνα 3.1: Ψηφιακή μονάδα θερμοκρασίας 29

30 Ο κώδικας προγραμματισμού για τη ψηφιακή μονάδα επεξεργασίας είναι ο παρακάτω: intled = 13 ; intbuttonpin = 3; intval ; voidsetup () / / Ορίστε την διεπαφήled / / Καθορίστε την διεπαφή του ψηφιακού αισθητήρα θερμοκρασίας / / Ορίστε αριθμητικές μεταβλητές val / / Δήλωση λειτουργίας που ισχύει για όλο το πρόγραμμα pinmode (Led, OUTPUT) ; pinmode (buttonpin, INPUT) ; / / ΟρίστετοLedωςδιεπαφήεξόδου / / Καθορίστε την διεπαφή εξόδου του ψηφιακού αισθητήρα voidloop () / / Δήλωση λειτουργίας που εκτελείται συνέχεια val = digitalread (buttonpin) ; / / Στηψηφιακήδιεπαφήθαδοθεί μια αρχική τιμή 3 για να διαβαστεί η τιμή val if (val =HIGH) / / Όταν ο ψηφιακός αισθητήρας θερμοκρασίας ανιχνεύσει ένα σήμα,η λυχνία Ledαναβοσβήνει. digitalwrite (Led, HIGH); else digitalwrite (Led, LOW); 30

31 3.2 Κόκκινη και πράσινη μονάδα Led (κοινής καθόδου) Τα προϊόντα αυτά χρησιμοποιούνται ευρέως σε ηλεκτρονικές συσκευές, PDA, MP3, στα ακουστικά, στις ψηφιακές φωτογραφικές μηχανές, στα DVD, στις επικοινωνίες, στους φορτιστές, στους υπολογιστές και στα κινητά τηλέφωνα καθώς και σε πολλά άλλα πεδία εφαρμογών. Αυτή η λυχνία Led περιέχει δύο διόδους εκπομπής φωτός. Αποτελείται από 3 ακροδέκτες από τους οποίους ο ένας είναι της γείωσης GND, ο ένας του πράσινου φωτός και ο άλλος του κόκκινου. Αν τροφοδοτήσουμε τη γείωση (GND) και έναν από τους ακροδέκτες μπορούμε να δούμε μόνο μια δέσμη φωτός (π.χ μόνο πράσινο ή μόνο κόκκινο χρώμα). Σε περίπτωση που τροφοδοτήσουμε τη γείωση και ταυτόχρονα και τους δύο ακροδέκτες αναμειγνύουμε το χρώμα και παίρνουμε μία κίτρινο/πορτοκαλί απόχρωση. Η συγκεκριμένη μονάδα λειτουργεί ανάλογα με την τάση που δίνεται.η τάση του κόκκινου χρώματος κυμαίνεται από Vκαι του πράσινου χρώματος από V. Εικόνα3. 2: Κόκκινη και πράσινη μονάδα Led (κοινής καθόδου) -Διάμετρος : 5mm -Ρεύμα(mA) : 20mA -Χρώμα Περιβλήματος : Κανένα -Τάση (V): Πράσινο : V -Τύπος Πακέτου : Διάχυση -Τάση (V): Κόκκινο : V. -Χρώμα : Πράσινο +Κόκκινο 31

32 Ο κώδικας προγραμματισμού είναι ο παρακάτω: intredpin = 11; intbluepin = 10; / / Επιλέξτε το pin για την κόκκινη λυχνία LED / / Επιλέξτε το pin για την μπλε λυχνία LED intval; void setup () pinmode (redpin, OUTPUT); pinmode (bluepin, OUTPUT); Serial.begin (9600); void loop () for (val = 255; val> 0; val -) analogwrite (11, val); analogwrite (10, 255-val); SunFounder delay (15); for (val = 0; val<255; val + +) analogwrite (11, val); analogwrite (10, 255-val); delay (15); Serial.println (val, DEC); 32

33 3.3 Αισθητήρας κρούσης Ένας αισθητήρας κρούσεων, είναι ένας ηλεκτρονικός διακόπτης που ανιχνεύει ένα πλάτος κραδασμών και μεταφέρει τα σήματα που παράγονται στο κύκλωμα, ενεργοποιώντας το. Αποτελείται από ένα αγώγιμο ελατήριο κραδασμών, από έναν διακόπτη και από τον πείρο ενεργοποίησης. Ο αισθητήρας κρούσεων λειτουργεί ως εξής: το αγώγιμο ελατήριο κραδασμών και ο πείρος ενεργοποίησης τοποθετούνται με ακρίβεια στον διακόπτη και στερεώνονται με κόλλα. Κανονικά, το ελατήριο και ο πείρος ενεργοποίησης δεν βρίσκονται σε επαφή. Μόλις όμως ο αισθητήρας ανιχνεύσει-δεχτεί την κρούση, το ελατήριο θα υποστεί μια δόνηση με αποτέλεσμα να έρθει σε επαφή με τον πείρο ενεργοποίησης, κλείνοντας έτσι κύκλωμα. Αυτό έχει σαν αποτέλεσμα να παράγεται ένα σήμα εξόδου ενεργοποιώντας μία εντολή όπως πχ να ανάψει μία λυχνία Led. Ο αισθητήρας κρούσης είναι πολύ ευαίσθητος, αφού μπορεί να αισθάνεται ακόμη και πολύ μικρής εντάσεως δόνηση. Εικόνα 3.3: Αισθητήρας κρούσης 33

34 Ο κώδικας προγραμματισμού είναι ο παρακάτω: intled = 13 ; intshock = 3 intval ; / / Καθορίστε την διεπαφήled / / Καθορίστε την διεπαφή του αισθητήρα κρούσης / / Ορίστε αριθμητικές μεταβλητές val SunFounder voidsetup () pinmode (Led, OUTPUT) ; pinmode (Shock, INPUT) ; / / ΟρίστετοLedως διεπαφή εξόδου / / Ορίστε την διεπαφή εξόδου του αισθητήρα κρούσης voidloop () val = digitalread (Shock) ; if (val == HIGH) / / Αναγνώριση της ψηφιακήςδιεπαφής αποδίδοντας την τιμή 3 στην θέσηval / / Όταν θα έχουμε κρούση τότε ο αισθητήρας θα ανιχνεύσει ένα σήμα και το Ledθα αναβοσβήσει digitalwrite (Led, LOW); else digitalwrite (Led, HIGH); 34

35 3.4 Υπέρυθρος αισθητήρας αποφυγής εμποδίων Ο υπέρυθρος αισθητήρας αποφυγής εμποδίων έχει σχεδιαστεί για την κατασκευή ενός τροχοφόρου ρομπότ που να μπορεί να αποφεύγει εμπόδια από μακριά. Ένας αισθητήρας αποφυγής εμποδίων χρησιμοποιεί την αρχή υπέρυθρης ανάκλασης για την ανίχνευση εμποδίων, έχοντας μεγάλη ακρίβεια. Όταν δεν υπάρχει κανένα αντικείμενο μπροστά, ο υπέρυθρος δέκτης δεν λαμβάνει σήματα. Ενώ όταν υπάρχει ένα αντικείμενο μπροστά, το υπέρυθρο φως θα μπλοκαριστεί από αυτό και θα αντικατοπτριστεί προς τον υπέρυθρο δέκτη ο οποίος θα λάβει σήμα, αναγνωρίζοντας έτσι ότι υπάρχει αντικείμενο κοντά του. Ένας αισθητήρας αποτελείται κυρίως από έναν υπέρυθρο πομπό, έναν υπέρυθρο δέκτη και ένα ποτενσιόμετρο. Σύμφωνα με τον αντανακλαστικό χαρακτήρα ενός αντικειμένου, αν δεν υπάρχει κανένα εμπόδιο, η υπέρυθρη ακτίνα που εκπέμπεται από τον πομπό θα αποδυναμωθεί από την απόσταση διάδοσης και τελικά θα εξαφανιστεί. Αντίθετα εάν υπάρχει εμπόδιο, όταν η υπέρυθρη ακτινοβολία συναντήσει το εμπόδιο, θα αντανακλαστεί πίσω στον υπέρυθρο δέκτη. Στη συνέχεια, ο υπέρυθρος δέκτης ανιχνεύει αυτό το σήμα και επιβεβαιώνει ότι υπάρχει εμπόδιο μπροστά του. Η απόσταση αποφυγής εμποδίων του αισθητήρα υπερύθρων είναι ρυθμιζόμενη η οποία ρυθμίζεται περιστρέφοντας το ποτενσιόμετρο. Εικόνα 3.4: Υπέρυθρος αισθητήρας αποφυγής εμποδίων 35

36 Χαρακτηριστικά: - ΣήμαΕξόδου :ΕπίπεδοTTL(στο χαμηλό επίπεδο υπάρχει εμπόδιο, δεν υπάρχει μεγάλο εμπόδιο) -Τάση λειτουργίας : DC 3.3V-5V -Θερμοκρασία λειτουργίας : Απόσταση ανίχνευσης -IOδιεπαφή -Βάρος :2-40cm : 4-διεπαφές καλωδίων (- / + / S / EN) : 9g - Μέγεθος : 28mm 23mm - Αποτελεσματική γωνία : 35 - Ρεύμα εργασίας 20mA Ο κώδικας προγραμματισμού είναι ο παρακάτω: 36

37 intled = 13 ; intbuttonpin = 3; intval ; / / Καθορίστε την διεπαφήled / / Καθορίστε την διεπαφή του αισθητήρα αποφυγής εμποδίων / / Ορίστε τις αριθμητικές μεταβλητές val voidsetup () pinmode (Led, OUTPUT) ; / / Καθορίστε την επαφή εξόδου του Led pinmode (buttonpin, INPUT) ;/ / Καθορίστε τηνεπαφή εξόδου του αισθητήρα αποφυγήςεμποδίων voidloop () val = digitalread (buttonpin) ;/ / Στην ψηφιακή διεπαφή θα δοθεί μια τιμή 3 για να διαβαστεί η τιμή val if (val == HIGH) // Όταν ο αισθητήρας αποφυγής εμποδίων εντοπίσει ένα σήμα,η λυχνία Led θα αναβοσβήσει digitalwrite (Led, HIGH); else digitalwrite (Led, LOW); 37

38 3.5 Mονάδα Led χρωμάτων που αναβοσβήνει αυτόματα ΗμονάδαLed 7 χρωμάτων αναβοσβήνει αυτόματα χρησιμοποιώντας μια δίοδο εκπομπής φωτός υψηλής φωτεινότητας με διάμετρο 5mm και έχει τα ακόλουθα χαρακτηριστικά: Τύπος Προϊόντος Σχήμα Χρώμα Τύπος φακού Συγκεκριμένη τάση λειτουργίας : LED : ΣτρογγυλόLED 5mmDIPtype : ροζ, κίτρινο, πράσινο (υψηλής φωτεινότητας) : λευκή ομίχλη : V Εικόνα 3.5: Mονάδα Led χρωμάτων που αναβοσβήνει αυτόματα Ο κώδικας προγραμματισμού είναι ο παρακάτω: 38

39 / * Blink Ενεργοποιεί μια ενδεικτική λυχνία για δυο δευτερόλεπτα,στη συνέχεια απενεργοποιείται για δυο δευτερόλεπτα, επανειλημμένα. Αυτός ο κωδικας είναι. * / voidsetup () SunFounder / / Αρχικοποιήστε τον ψηφιακό ακροδέκτη ως έξοδο pinmode (13, OUTPUT); void loop () / / Η επαφή-ακίδα 13 εχει ένα Led συνδεδεμένο στις περισσότερες πλακέτες Arduino digitalwrite (13, HIGH); delay (2000); digitalwrite (13, LOW); delay (2000); / / ανάβει η λυχνίαled / / περιμένουμε για ένα δευτερόλεπτο / / σβήνει η λυχνίαled / / περιμένουμε για ένα δευτερόλεπτο 39

40 3.6 Αναλογικός αισθητήρας μαγνητικού πεδίου Ο παραπάνω αισθητήρας αποτελεί ένα μαγνητικό διακόπτη. Αν δεν υπάρχει ανιχνεύσιμο μαγνητικό πεδίο, η γραμμή σήματος του αισθητήρα βρίσκεται στην θέση HIGH (στα 3,5 V).Όταν παρουσιαστεί ένα μαγνητικό πεδίο κοντά στον αισθητήρα,η γραμμή σήματος οδηγείται στη θέση LOW και ταυτόχρονα ανάβει η ενδεικτική λυχνία ledτου αισθητήρα. Η πολικότητα του μαγνητικού πεδίου είναι αυτή που επηρεάζει την δράση μεταγωγής Μεταγωγή: είναι η διαδικασία μετάδοσης της πληροφορίας μέσω διαδοχικών ενδιάμεσων κόμβων προκειμένου να επικοινωνήσουν δύο τερματικοί κόμβοι δηλαδή πομπού και δέκτη και χρησιμοποιείται σε δίκτυα επικοινωνίας. Η εμπρόσθια πλευρά του αισθητήρα χρησιμοποιεί την αντίστροφη πολικότητα καθώς το πίσω μέρος του αισθητήρα ενεργοποιείται. Στο παρακάτω κώδικα προγραμματισμού το LED στο ARDUINO (pin 13) θα ανάψει όταν υπάρχει ένα μαγνητικό πεδίο. Στην κατάσταση ηρεμίας η κατανάλωση ισχύος είναι 3 ma ενώ όταν το Led ενεργοποιείται η κατανάλωση φτάνει στα 8mA. Εικόνα 3.6: Αναλογικός αισθητήρας μαγνητικού πεδίου Γνωρίζουμε ότι η ηλεκτρική ενέργεια που μεταφέρεται μέσω ενός αγωγού παράγει ένα μαγνητικό πεδίο, το οποίο ποικίλλει ανάλογα με την ένταση του ρεύματος. Ο συγκεκριμένος αισθητήρας μπορεί να χρησιμοποιηθεί για την μέτρηση 40

41 του ρεύματος αυτού χωρίς να διακόψει το κύκλωμα και αυτό γίνεται μέσω του αναλογικού σήματος που μεταδίδει μετατρέποντας την μαγνητική ενέργεια του ηλεκτρικού ρεύματος σε τάση εξόδου. Συνήθως αυτός ο αισθητήρας είναι ενσωματωμένος με ένα πυρήνα τυλίγματος ή αλλιώς ένας μόνιμος μαγνήτης περιβάλλει τον προς μέτρηση αγωγό. Ο κώδικας προγραμματισμού είναι ο παρακάτω: IntsensorPin = A5; intledpin = 13; intsensorvalue = 0; τον αισθητήρα / / Eπιλέξτε τον ακροδέκτη εισόδου / / Eπιλέξτε τον ακροδέκτη για την λυχνία Led / / Αποθηκεύστε την τιμή της μεταβλητής που προέρχεται από void setup () SunFounder pinmode (ledpin, OUTPUT); Serial.begin (9600); void loop () sensorvalue = analogread (sensorpin); digitalwrite (ledpin, HIGH); delay (sensorvalue); digitalwrite (ledpin, LOW); delay (sensorvalue); Serial.println (sensorvalue, DEC); 41

42 3.7 Μεταλλικός αισθητήρας επαφής Ο μεταλλικός αισθητήρας αφής είναι ένας τύπος διακόπτη, ο οποίος λειτουργεί μόνο όταν έρθει σε επαφή η καμπυλωτή ακίδα του τρανζίστορ με ένα φορτισμένο σώμα. Το τρανζίστορ υψηλής συχνότητας μεταφέρει ηλεκτρισμό όταν λαμβάνει ηλεκτρομαγνητικά σήματα. Πιο συγκεκριμένα λειτουργεί ως εξής: Όταν αγγίξουμε το ηλεκτρόδιο βάσης του τρανζίστορ με τα δάκτυλα μας ή με οποιοδήποτε άλλο μέρος του σώματος (όπως είναι γνωστό το ανθρώπινο σώμα είναι ένα είδος αγωγού) μία κεραία μπορεί να λάβει τα ηλεκτρομαγνητικά σήματα μέσω του αέρα. Αυτά τα σήματα των ηλεκτρομαγνητικών κυμάτων που συλλέγονται στο τρανζίστορ από το ανθρώπινο σώμα, ενισχύονται μέσω αυτού και στην συνέχεια επεξεργάζονται από την συγκριτή της μονάδας, για να παραχθούν εν τέλει σταθερά σήματα εξόδου. Με το Led να είναι συνδεδεμένο στον ακροδέκτη 13 του Arduino και ταυτόχρονα ο ακροδέκτης D0 του αισθητήρα στο D7 της πλακέτας, έχει ως αποτέλεσμα η λυχνία Led να ανάψει όταν ο μεταλλικός αισθητήρας επαφής εντοπίσει σήματα αφής, διαφορετικά θα είναι εκτός λειτουργίας Εικόνα 7 : Μεταλλικός αισθητήρας επαφής 42

43 Ο κώδικας προγραμματισμού είναι ο παρακάτω: intled = 13 ; intbuttonpin = 3; intval ; / / Καθορίστε την επαφή Led / / Καθορίστε τη διεπαφή του αισθητήρα / / Ορίστε αριθμητικές μεταβλητές val voidsetup () pinmode (Led, OUTPUT) ; pinmode (buttonpin, INPUT) ; / / OρίστετoLedωςεπαφήεξόδου / / Ορίστετηνδιεπαφήεξόδου του μεταλλικού αισθητήραεπαφής SunFounder voidloop () val = digitalread (buttonpin) ; / / Στηψηφιακήδιεπαφήδόθηκεητιμή 3 γιαναδιαβαστείητιμήval if (val == HIGH) / / Ότανομεταλλικόςαισθητήραςαφήςεντοπίσειένασ ήμα,λυχνίαledαναβοσβήνει. digitalwrite (Led, HIGH); else digitalwrite (Led, LOW); 43

44 3.8 Μονάδα ανίχνευσης ήχου υψηλής ευαισθησίας O παραπάνω αισθητήρας μπορεί να ανιχνεύσει τον ήχο και έχει δύο εξόδους: Η 1 η εκπέμποντας από το μικρόφωνο του Sun Founder ένα αναλογικό σήμα σε πραγματικό χρόνο Η 2 η όσο και ένα ψηφιακό σήμα όταν η ένταση του ήχου φτάσει ένα συγκεκριμένο όριο παράγοντας αναλόγως σήμα υψηλής ή χαμηλής τάσης εξόδου (Το Οριο-αντιπροσωπεύει την ευαισθησία του αισθητήρα η οποία μπορεί να ρυθμιστεί μέσω ποτενσιόμετρου. Για παράδειγμα η ψηφιακή έξοδος μπορει να ενεργοποιηθεί μέσω ενός χτυπήματος των δυο χεριών μας (παλαμάκια) με σκοπο να ανάψουμε ή να σβήσουμε τα φώτα του σπιτού. Αυτός ο αισθητήρας είναι πολύ χρήσιμος σε συνδιασμό με μια μονάδα ρελέ,αφου μπορούν να συνδιαστούν σε ηλεκτρονικά κυκλώματα κάνοντας την ζωή μας πιο εύκολη. Εικόνα 3.8 : Μονάδα ανίχνευσης ήχου υψηλής ευαισθησίας 44

45 Τα χαρακτηριστικά της μονάδος : -Υπάρχει μια οπή στερέωσης διαμέτρου 3 mm -Χρησιμοποιεί εναλλασσόμενο ρεύμα τάσεως 5 Vμε αναλογική έξοδο -Υπάρχουν flip εξόδου με συγκεκριμένα επίπεδα ορίων -Χρησιμοποιεί υψηλής ευαισθησίας μικρόφωνο και ενδεικτικών λυχνιών Και τέλος η τάση εξόδουτου σήματος από τον συγκριτή είναι μικρής εντάσεως. Ο κώδικας προγραμματισμού είναι ο παρακάτω: 1 Ψηφιακή έξοδος: intled = 13 ; intbuttonpin = 3 / Καθορίστε την διεπαφήled / Καθορίστε την διεπαφή του αισθητήρα D0 ; Intval ; / / Ορίστε αριθμητικές μεταβλητές val voidsetup () pinmode (Led, OUTPUT) ; pinmode (buttonpin, INPUT) ; αισθητηρας / / Ορίστε το Ledως διεπαφή εξόδου / / Η διεπαφή εξόδου D0 είναι ο καθορισμένος voidloop () val = digitalread (buttonpin) ; / / Στη ψηφιακή διεπαφή θαδ οθεί μια τιμή 3 ώστε να διαβαστεί η τιμή val if (val == HIGH) / / ; Όταν η μονάδα ανίχνευσης ήχου ανιχνεύσει ένα σήμα, η λυχνία Led αναβοσβήνει digitalwrite (Led, HIGH) ; else 45

46 digitalwrite (Led, LOW) ; 2 Αναλογική έξοδος: intsensorpin = A5; ποτενσιόμετρο intledpin = 13; intsensorvalue = 0; / / Επιλέξτε τον ακροδέκτη εισόδου για το / / Επιλέξτε τον ακροδέκτη για την λυχνία Led / / Αποθηκεύστε τις μεταβλητές τιμές που προέρχονται από τον αισθητήρα voidsetup () pinmode (ledpin, OUTPUT); Serial.begin (9600); void loop () sensorvalue = analogread (sensorpin); digitalwrite (ledpin, HIGH); SunFounder delay (sensorvalue); digitalwrite (ledpin, LOW); delay (sensorvalue); Serial.println (sensorvalue, DEC); 46

47 3.9 Μονάδα μικροφώνου για ανίχνευση ήχου Γενικά υπάρχουν δύο είδη αισθητήρων ανίχνευσης ήχου αυτού που περιγράψαμε παραπάνω ο οποίος είναι ο αισθητήρας ανίχνευσης ήχου υψηλής ευαισθησίας και αυτός που θα περιγράφουμε τώρα που είναι ο αισθητήρας μικροφώνου. Η μόνη διαφορά αυτών των δύο αισθητήρων αφορά την ευαισθησία, όπου ο αισθητήρας μικροφώνου είναι χαμηλότερης ευαισθησίας. O παραπάνω αισθητήρας μπορεί να ανιχνεύσει τον ήχο και να έχει δύο εξόδους: 1. Εκπέμποντας απο το μικρόφωνο του Sun Founder ένα αναλογικό σήμα σε πραγματικό χρόνο 2. Όσο και ένα ψηφιακό σήμα, όταν η ένταση του ήχου φτάσει ένα συγκεκριμένο όριο παράγοντας αναλόγως σήμα υψηλής ή χαμηλής τάσης εξόδου (Το Οριοαντιπροσωπεύει την ευαισθησία του αισθητήρα η οποία μπορεί να ρυθμιστεί μέσω ποτενσιόμετρου). Εικόνα 3.9 : Μονάδα μικροφώνου για ανίχνευση ήχου 47

48 Μονάδα μικροφώνου για ανίσχευση ήχου Η αρχή λειτουργίας του αισθητήρα είναι: Το μικρόφωνο μετατρέπει το ηχητικό σε ηλεκτρικό σήμα (σε αναλογική ποσότητα),στην συνέχεια την αναλογική ποσότητα σε ψηφιακή τιμή με την βοήθεια του ADCκαι να το μεταφέρει σε MCUμε σκοπό την επεξεργασία του. Για να γίνει πιο κατανοητή ο τρόπος λειτουργίας χρησιμοποιώ το παρακάτω παραδειγμα Στο παρακάτω σχήμα απεικονίζεται ο συγκριτής τάσης LM393. Όταν η τάση του ακροδέκτη εντός φάσης (ακροδέκτης 3) είναι υψηλότερη από αυτή του ακροδέκτη αναστροφής (ακροδέκτη 2),ο ακροδέκτης εξόδου 1 θα αποδώσει υψηλή τάση εξόδου, διαφορετικά εξέρχεται χαμηλή τάση εξόδου. Αρχικά όμως πρέπει να ρυθμίσουμε το ποτενσιόμετρο ώστε η τάση για τον ακροδέκτη 2 του LM393 να είναι μικρότερη από 5V.Όταν δεν υπάρχει φωνητική είσοδος, η αντίσταση του μικροφώνου είναι μεγάλη. Η τάση σε αυτή την φάση στον ακροδέκτη 3 του LM393 είναι κοντά στην τάση τροφοδοσίας (5V) με αποτέλεσμα ο ακροδέκτης 1 να αποδώσει υψηλή τάση εξόδου και η ενδεικτική λυχνία να είναι αναμμένη. Όταν τώρα υπάρχει φωνητική είσοδος, η αντίσταση του μικροφώνου μειώνεται, η τάση εξόδου του ακροδέκτη 1 γίνεται χαμηλής τιμής και η λυχνία Led σβήνει.τέλος συνδέουμε τον ακροδέκτη 1 στην πλακέτα του Arduino στην θέση ΙΟ για να ανιχνεύσουμε τους ήχους αφού πρώτα το προγραμματίσουμε μέσω του παρακάτω κώδικα 48

49 Ο κώδικας προγραμματισμού είναι ο παρακάτω: 1 Ψηφιακή έξοδος intled = 13 ; intbuttonpin = 3 intval ; / / Καθορίστε την διεπαφήled / / Καθορίστε την διεπαφή του αισθητήρα DO / / Ορίστε αριθμητικές μεταβλητές val voidsetup () SunFounder pinmode (Led, OUTPUT) ;/ / Ορίστετο Led ως διεπαφή εξόδου pinmode (buttonpin, INPUT) ; // η διεπαφή εξόδου DΟ είναι καθορισμένος αισθητήρας voidloop () val = digitalread (buttonpin) ; / / Στην ψηφιακή διεπαφή θα δοθεί μια τιμή 3 ώστε να διαβαστεί η τιμή val if (val == HIGH) / / ; Όταν η μονάδα ανίχνευσης ήχου ανιχνεύσει ένα σήμα,η λυχνία Led αναβοσβήνει digitalwrite (Led, HIGH) else digitalwrite (Led, LOW) 2)Αναλογική έξοδος: intsensorpin = A5; intledpin = 13; / / Επιλέξτε τον ακροδέκτη εισόδου για το ποτενσιόμετρο / / Επιλέξτε τον ακροδέκτη για την λυχνία Led 49

50 intsensorvalue = 0; / / Αποθηκεύστε τις μεταβλητές τιμές που προέρχονται από τον αισθητήρα void setup () pinmode (ledpin, OUTPUT); Serial.begin (9600); void loop () sensorvalue = analogread (sensorpin); digitalwrite (ledpin, HIGH); delay (sensorvalue); digitalwrite (ledpin, LOW); delay (sensorvalue); Serial.println (sensorvalue, DEC); 50

51 3.10 Μονάδα δακτυλικής μέτρησης καρδιακών παλμών Η μονάδα δακτυλικής μέτρησης καρδιακών παλμών χρησιμοποιεί ένα υπέρυθρο φωτεινό IR Led και ένα φωτοτρανζίστορ για να ανιχνεύσει τον παλμό του δακτύλου. Ένα κόκκινο Led αναβοσβήνει σε κάθε παλμό. Πιο αναλυτικά η παρακολούθηση των παλμών λειτουργεί ως εξής: Το Led αποτελεί την φωτεινή πλευρά του δακτύλου και το φωτοτρανζίστορ, το οποίο χρησιμοποιείται για να λάβει του παλμούς της αρτηριακής πίεσης που εκπέμπονται από το δάκτυλο. Όταν η αντίσταση του φωτοτρανζίστορ αλλάξει ελαφρώς, η φωτεινή ένδειξη Ledθα μεταβληθεί. Εικόνα 3.10 :Μονάδα δακτυλικής μέτρησης καρδιακών παλμών Ο κώδικας προγραμματισμού είναι ο παρακάτω: ARDUINO test code: / / Pulse Monitor Test Script intledpin = 13; intsensorpin = 0; double alpha = 0.75; 51

52 int period = 20; double change = 0.0; void setup () pinmode (ledpin, OUTPUT); Serial.begin (115200); SunFounder void loop () static double oldvalue = 0; static double oldchange = 0; intrawvalue = analogread (sensorpin); double value = alpha * oldvalue + (1 - alpha) * rawvalue; Serial.print (rawvalue); Serial.print (","); Serial.println (value); oldvalue = value; delay (period); 52

53 3.11 Αισθητήρας παρακολούθησης Ένας αισθητήρας παρακολούθησης έχει την ίδια αρχή με έναν αισθητήρα αποφυγής εμποδίων, αλλά έχει εκπομπή μικρής ισχύος. Πιο αναλυτικά η αρχή λειτουργίας του παραπάνω αισθητήρα είναι: Όταν ο υπέρυθρος πομπός εκπέμψει ακτίνες σε ένα κομμάτι χαρτί,διότι το χαρτί έχει λευκή επιφάνεια, αυτές θα λάμψουν πάνω σε αυτό, θα αντανακλαστούν και θα ληφθούν από τον δέκτη, κάνοντας τον ακροδέκτη Sνα εξάγει χαμηλή τάση εξόδου. Αντίθετα εάν οι ακτίνες συναντήσουν μαύρες γραμμές, θα απορροφηθούν από αυτές και έτσι ο δέκτης δεν λάβει τίποτα πίσω, κάνοντας τον ακροδέκτη S να εξάγει υψηλή τάση εξόδου. Η λειτουργία του θα γίνει κατανοητή μέσω της περιγραφής ενός πειράματος. Σε αυτό το πείραμα θα χρησιμοποιήσουμε έναν αισθητήρα αποφυγής εμποδίων και ένα Ledσυνδεδεμένο στον ακροδέκτη 13 της πλακέτας του Arduino Sun Founder ώστε να δημιουργήσουμε ένα απλό κύκλωμα με σκοπό να φτιάξουμε ένα φως παρακολούθησης. Δεδομένου ότι έχει συνδεθεί μία ενδεικτική λυχνία στον ακροδέκτη 13,συνδέουμε την ακίδα στην θέση D8 της πλακέτας. Έτσι όταν ο αισθητήρας παρακολούθησης ανιχνεύσει σήματα αντανάκλασης (λευκό) η λυχνία Ledθα ανάψει, διαφορετικά όταν ανιχνεύει μαύρη γραμμή η λυχνία Led θα απενεργοποιηθεί. Εικόνα 3.11 :Αισθητήρας παρακολούθησης 53

54 Ο κώδικας προγραμματισμού είναι ο παρακάτω: Routines source code: intled = 13 ; intbuttonpin = 3; intval ; / / Όρισε την επαφή Led / / Όρισε την επαφή του αισθητήρα παρακολούθησης / / Όρισε τις αριθμητικές μεταβλητές val void setup () pinmode (Led, OUTPUT) ; / / Καθόρισε τοledως επαφή εξόδου pinmode (buttonpin, INPUT) ;/ / Καθόρισε τον αισθητήρα παρακολούθησης ως επαφή εξόδο void loop () val = digitalread (buttonpin) ;/ / digital interface will be assigned a value of 3 to read val SunFounder if (val == HIGH) / / Όταν ο αισθητήρας παρακολούθησης ανιχνεύσει ένα σήμα, το Ledθα ανάψει digitalwrite (Led, HIGH); else digitalwrite (Led, LOW); 54

55 3.12 Περιστροφικός κωδικοποιητής Ένας περιστροφικός κωδικοποιητής είναι μια ηλεκτρομηχανική συσκευή που μετατρέπει την κίνηση ενός άξονα ή την γωνιακή του θέση,σε ένα αναλογικό ή ψηφιακό κώδικα. Οι περιστροφικοί κωδικοποιητές τοποθετούνται συνήθως στην πλευρά που είναι κάθετη προς τον άξονα.λειτουργούν ως αισθητήρες για την ανίχνευση της γωνίας, της ταχύτητας, του μήκους, της θέσης και της επιτάχυνσης στο πεδίο αυτοματισμού. Υπάρχουν κυρίως δύο τύποι περιστροφικού κωδικοποιητή: οι απόλυτοι και οι αυξητικοί (ή αλλιώς σχετικοί). Η έξοδος των απόλυτων κωδικοποιητών δείχνει την τρέχουσα θέση του άξονα, καθιστώντας τους ως μεταγωγείς γωνίας. Η έξοδος των αυξητικών κωδικοποιητών παρέχει πληροφορίες σχετικά με την κίνηση του άξονα, η οποία τυπικά επεξεργάζεται περαιτέρω σε άλλες πληροφορίες, όπως η ταχύτητα, η απόσταση και η θέση. Εικόνα 3.12 : Περιστροφικός κωδικοποιητής Για να γίνει πιο κατανοητή η λειτουργία ενός περιστροφικού αισθητήρα μπορούμε να παρακολουθήσουμε το παρακάτω πείραμα: Χρησιμοποιούμε έναν βαθμιδωτό κωδικοποιητή ο οποίος ανήκει στην κατηγορία του περιστροφικού αισθητήρα, για να μετατρέψουμε την περιστροφική μετατόπιση σε μια σειρά ψηφιακών παλμών. Στη συνέχεια οι παλμοί θα 55

56 χρησιμοποιηθούν για τον έλεγχο της γωνιακής μετατόπισης. Ο κωδικοποιητής δημιουργεί τετράγωνα κύματα δύο φάσεων των οποίων η διαφορά φάσης είναι 90. Συνήθως τα τετράγωνα κύματα ονομάζονται κανάλι Α και κανάλι Β. Για λεπτομέρειες, υπάρχει το παρακάτω σχήμα. Είναι δύσκολο να γίνει διάκριση ανάμεσα στην αριστερή και τη δεξιά στροφή κατά τον προγραμματισμό. Για αυτό το λόγο, χρησιμοποιώντας έναν παλμογράφο ο οποίος παρατηρεί την αριστερή και τη δεξιά στροφή ενός διακόπτη, βρίσκουμε μια διαφορά φάσης μεταξύ των σημάτων των δύο ακίδων εξόδου όπως φαίνεται παρακάτω. 56

57 Έτσι αν η έξοδος 1 και η έξοδος 2 είναι υψηλή, τότε ο διακόπτης περιστρέφεται δεξιόστροφα. Αν η έξοδος 1 είναι υψηλή και η έξοδος 2 χαμηλή, τότε ο διακόπτης περιστρέφεται αριστερόστροφα. Ως αποτέλεσμα, κατά τη διάρκεια του προγραμματισμού SCM, αν η έξοδος 1 είναι υψηλή, τότε μπορούμε να πούμε αν ο περιστροφικός κωδικοποιητής στρέφεται αριστερά ή δεξιά όσο γνωρίζουμε την κατάσταση της εξόδου 2. Ο κώδικας προγραμματισμού είναι ο παρακάτω: int redpin = 2; int yellowpin = 3; int greenpin = 4; int apin = 6; int bpin = 7; int buttonpin = 5; int state = 0; intlongperiod = 5000; intshortperiod = 700; / / Time at green or red / / Time period when changing int targetcount = shortperiod; int count = 0; void setup () pinmode (apin, INPUT); pinmode (bpin, INPUT); pinmode (buttonpin, INPUT); pinmode (redpin, OUTPUT); pinmode (yellowpin, OUTPUT); pinmode (greenpin, OUTPUT); 57

58 void loop () count + +; if (digitalread (buttonpin)) setlights (HIGH, HIGH, HIGH); else int change = getencoderturn (); int newperiod = longperiod + (change * 1000); if (newperiod> = 1000 && newperiod <= 10000) longperiod = newperiod; SunFounder if (count> targetcount) setstate (); count = 0; delay (1); int getencoderturn () / / Return -1, 0, or +1 58

59 static int olda = LOW; static int oldb = LOW; int result = 0; int newa = digitalread (apin); int newb = digitalread (bpin); if (newa! = olda newb! = oldb) / / Something has changed if (olda == LOW && newa == HIGH) result = - (oldb * 2-1); olda = newa; oldb = newb; return result; int setstate () if (state == 0) setlights (HIGH, LOW, LOW); targetcount = longperiod; state = 1; else if (state == 1) 59

60 setlights (HIGH, HIGH, LOW); targetcount = shortperiod; state = 2; else if (state == 2) SunFounder setlights (LOW, LOW, HIGH); targetcount = longperiod; state = 3; else if (state == 3) setlights (LOW, HIGH, LOW); targetcount = shortperiod; state = 0; void setlights (int red, int yellow, int green) digitalwrite (redpin, red); digitalwrite (yellowpin, yellow); digitalwrite (greenpin, green); 60

61 4 ΚΕΦΑΛΑΙΟ: ΔΙΕΥΘΕΤΗΣΗ ΥΛΙΚΩΝ ARDUINO Σε αυτό το κεφάλαιο παρουσιάζεται η διευθέτηση των υλικών Arduino, η τοποθέτηση τους μέσα σε ειδικά διαμορφωμένες θήκες και η τοποθέτηση ετικετών με το εικονίδιο και το όνομα του κάθε υλικού ώστε αυτό να είναι άμεσα αναγνωρίσιμο. Εικόνα 4.1 : Διευθέτηση των υλικών Arduino 61

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

Γνωριμία με το Arduino Γνωριμία με το Arduino Τι είναι το Arduino; Το arduino είναι ένας μικρός υπολογιστής σε μέγεθος παλάμης που περιλαμβάνει ένα μικροελεγκτή (για εκτέλεση εντολών) και ένα σύνολο εισόδων/εξόδων για επικοινωνία

Διαβάστε περισσότερα

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

ΕΝΟΤΗΤΑ 5 Αναλογικά σήματα ΕΝΟΤΗΤΑ 5 Αναλογικά σήματα Σκοπός και περίγραμμα της Ενότητας 5 Σκοπός της παρουσίασης Να δώσουμε τις βασικές ιδέες για τα αναλογικά σήματα και την χρήση διαφορετικών ειδών περιφερειακών Σύνοψη Επεξήγηση

Διαβάστε περισσότερα

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

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, 2016-2017 Mηχανοτρονική Το Arduino είναι μια «ανοικτού κώδικα» πλατφόρμα «πρωτοτυποποιημένων» ηλεκτρονικών βασισμένη σε ευέλικτο και εύκολο στη χρήση

Διαβάστε περισσότερα

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

Εφαρμογές Σειριακής Επικοινωνίας Εφαρμογές Σειριακής Επικοινωνίας Εισαγωγή Στο μάθημα αυτό θα μάθουμε πώς να χρησιμοποιούμε την βιβλιοθήκη serial για την επικοινωνία από την πλατφόρμα Arduino πίσω στον υπολογιστή μέσω της θύρας usb. Τι

Διαβάστε περισσότερα

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

ΑΣΚΗΣΗ 1 (22 Νοεμβρίου 2017) ΑΣΚΗΣΗ 1 (22 Νοεμβρίου 2017) Περιγραφή της Άσκησης Ο σκοπός της πρώτης άσκησης είναι κυρίως η εξοικείωση με το περιβάλλον προγραμματισμού του Arduino, γι αυτό και δεν είναι ιδιαίτερα σύνθετη. Αρχικά, θα

Διαβάστε περισσότερα

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

Πλακέτα Arduino. 1ο ΕΠΑΛ Περάματος - 7ο ΕΚ Πειραιά Πλακέτα Arduino Το 2005 oι Massimo Banzi και David Cueartielles στο Ivrea Δημιουργούν την υπολογιστική πλατφόρμα Arduino. Το Arduino είναι βασισμένο σε μια απλή μητρική πλακέτα ανοικτού κώδικα, με ενσωματωμένο

Διαβάστε περισσότερα

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

ΕΦΑΡΜΟΓΕΣ ΤΗΛΕΠIΚΟΙΝΩΝΙΑΚΩΝ ΔΙΑΤΑΞΕΩΝ ΕΦΑΡΜΟΓΕΣ ΤΗΛΕΠIΚΟΙΝΩΝΙΑΚΩΝ ΔΙΑΤΑΞΕΩΝ ΟΙΚΟΝOΜΟΥ ΧΑΡΗΣ (6424) ΦΩΚΟΣ ΝΙΚΟΛΑΟΣ(6592) ΚΑΜΒΥΣΗΣ ΝΙΚΟΛΑΟΣ(7178) 2013-2014 ΠΕΡΙΕΧΟΜΕΝΑ Σκοπός της εργασίας Ανάλυση Arduino Uno Δημιουργία πληροφορίας Αποστολή και

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Εφαρμογές Αναλογικών Ε/Ε PWM (pulse Width Modulation) Εφαρμογές Αναλογικών Ε/Ε PWM (pulse Width Modulation) Εισαγωγή Σε αυτή την ενότητα θα δούμε εφαρμογές που χρησιμοποιούν τις αναλογικές Εισόδους/Εξόδους του Arduino ή την τεχνική PWM. Ψηφιακό vs Αναλογικό

Διαβάστε περισσότερα

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

Εφαρμογές Arduino Σεμινάριο Ηλεκτρονικού Τομέα Εφαρμογές Arduino Σεμινάριο Ηλεκτρονικού Τομέα 1ο ΕΠΑΛ Περάματος 7ο ΕΚ Πειραιά Πλακέτα Arduino Το 2005 oι Massimo Banzi και David Cueartielles στο Ivrea Δημιουργούν την υπολογιστική πλατφόρμα Arduino.

Διαβάστε περισσότερα

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

ΕΝΟΤΗΤΑ 3 ΕΚΦΡΑΣΕΙΣ, ΑΝΑΜΟΝΕΣ (DELAYS), ΗΧΟΙ ΕΝΟΤΗΤΑ 3 ΕΚΦΡΑΣΕΙΣ, ΑΝΑΜΟΝΕΣ (DELAYS), ΗΧΟΙ Σκοπός και περίγραμμα της Ενότητας 3 Σκοπός της παρουσίασης Να δούμε πιο προσεκτικά τις μεταβλητές, τις σταθερές και τις εκφράσεις γενικότερα. Να σας παρουσιάσουμε

Διαβάστε περισσότερα

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

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα για εφαρμογές πραγματικού χρόνου Εφαρμογές με τον Arduino Ιωάννης Καλόμοιρος Αναπληρωτής Καθηγητής Τμήμα Μηχανικών Πληροφορικής Μάθημα 10 1 Συναρτήσεις αναλογικής εξόδου: PWM Το

Διαβάστε περισσότερα

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

ΕΡΓΑΣΤΗΡΙΟ 4 ΕΙΣΑΓΩΓΗ ΣΤΟN ARDUINO: ΨΗΦΙΑΚΗ ΕΙΣΟΔΟΣ/ΕΞΟΔΟΣ ΕΡΓΑΣΤΗΡΙΟ 4 ΕΙΣΑΓΩΓΗ ΣΤΟN ARDUINO: ΨΗΦΙΑΚΗ ΕΙΣΟΔΟΣ/ΕΞΟΔΟΣ Σκοπός της άσκησης Οι φοιτητές θα εξοικειωθούν με την πλακέτα του μικροελεγκτή και θα αναγνωρίσουν τα βασικά της στοιχεία. Επίσης θα εξοικειωθούν

Διαβάστε περισσότερα

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

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων Εργαστήριο ενσωματωμένων συστημάτων Παρουσίαση 2: Βασικός Προγραμματισμός Arduino (AVR) Εργαστήριο Αυτομάτου Ελέγχου Η πλατφόρμα Arduino UNO Microcontroller: ATmega328 Operating Voltage: 5V Digital I/O

Διαβάστε περισσότερα

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

ΕΙΣΑΓΩΓΗ ΣΤΟ ARDUINO. Υποψήφιος Διδάκτωρ ΕΙΣΑΓΩΓΗ ΣΤΟ ARDUINO Δημιουργός: Επιβλέπων: Μπακάλη Ιωάννα Πετεινάτος Ηλίας Υποψήφιος Διδάκτωρ 1 ΤΙ ΕΙΝΑΙ ΤΟ ARDUINO; Είναι ένας συνδυασμός Υλικού (πλακέτας, μικροελεγκτή, αντιστάσεων κτλ) και Λογισμικού

Διαβάστε περισσότερα

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

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 2 USB και Σειριακή Επικοι- νωνία Σ Σειριακή Επικοινωνία Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 2 USB και Σειριακή Επικοινωνία. Σειριακή Επικοινωνία USB Σύνδεση / Πρωτόκολλο Σκοπός Εντολή επιλογής (if) Εντολή Επανάληψης (while) Πίνακες 1 Μέρος Α : Σκοπός

Διαβάστε περισσότερα

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

Προγραμματισμο ς σε Arduino Προγραμματισμο ς σε Arduino Arduino UNO & Innoesys Educational Shield www.devobox.com Ηλεκτρονικά Εξαρτήματα & Υλικά Κατασκευής Πρωτοτύπων Λέανδρου 79, 10443, Κολωνός +30 210 51 55 513, info@devobox.com

Διαβάστε περισσότερα

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

ΣΤΟΙΧΕΙΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ARDUINO ΣΤΟΙΧΕΙΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ARDUINO Αντώνιος Καραγεώργος Βασικά Στοιχεία της Γλώσσας Προγραμματισμού Arduino Constants: HIGH/LOW Ορίζουν το επίπεδο της τάσης εισόδου/εξόδου ενός pin INPUT/OUTPUT Ορίζουν την

Διαβάστε περισσότερα

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

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ ARDUINO Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

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

Ψηφιακά Αντικείμενα Μάθημα 1 Δραστηριότητα 1. Προγραμματισμός Φυσικών Συστημάτων. Νέα Ψηφιακά Αντικείμενα Σκοπός Ψηφιακά Αντικείμενα Μάθημα 1 Δραστηριότητα 1 ΜΕΤΡΩΝΤΑΣ ΑΠΟΣΤΑΣΗ ΜΕ ΤΟΝ ΑΙΣΘΗΤΗΡΑ ΥΠΕΡΗΧΩΝ (SR04). Ψηφιακά Αντικείμενα Μικροελεγκτής Προγραμματισμός Φυσικών Συστημάτων Νέα Ψηφιακά Αντικείμενα Αισθητήρες

Διαβάστε περισσότερα

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

Εφαρμογές αναλογικών / Ψηφιακών Εφαρμογές αναλογικών / Ψηφιακών 1 ΕΙΣΑΓΩΓΗ Σε αυτήν την ενότητα θα δούμε μερικές ακόμα εφαρμογές ψηφιακών / αναλογικών εισόδων/ εξόδων που μπορούμε να φτιάξουμε με την βοήθεια του Arduino, χρησιμοποιώντας

Διαβάστε περισσότερα

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

Ενσωµατωµένα Συστήµατα Ενσωµατωµένα Συστήµατα για εφαρµογές πραγµατικού χρόνου Μικροελεγκτής Arduino Ιωάννης Καλόµοιρος Αναπληρωτής Καθηγητής Τµήµα Μηχανικών Πληροφορικής Μάθηµα 7ο Τι είναι το Arduino... Ένα open-hardware σύστηµα

Διαβάστε περισσότερα

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

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων Εργαστήριο ενσωματωμένων συστημάτων Παρουσίαση 2: Βασικός Προγραμματισμός Arduino (AVR) Εργαστήριο Αυτομάτου Ελέγχου Η πλατφόρμα Arduino Microcontroller: ATmega328 Operating Voltage: 5V Digital I/O Pins:

Διαβάστε περισσότερα

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

Η δυναμική του Arduino στο μάθημα της Τεχνολογίας. Φάσουρας Δημήτριος Ηλεκτρολόγος ΠΕ 17,03 Η δυναμική του Arduino στο μάθημα της Τεχνολογίας Φάσουρας Δημήτριος Ηλεκτρολόγος ΠΕ 17,03 dfasouras@gmail.com Τι είναι το Arduino ; Το Arduino είναι μια απλή μητρική πλακέτα ανοικτού κώδικα. Διαθέτει

Διαβάστε περισσότερα

Arduino Teachers Workshop

Arduino Teachers Workshop Arduino Teachers Workshop Εισαγωγή στο Arduino Προγραμματισμός στο Arduino IDE Επικοινωνία με τον υπολογιστή μέσω USB Πλακέτα εύκολων συνδέσεων Breadboard Projects Led Blink Αναλογική ανάγνωση Ποτενσιόμετρου

Διαβάστε περισσότερα

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

ΕΝΟΤΗΤΑ 7: ΑΙΣΘΗΤΗΡΕΣ ΥΠΕΡΥΘΡΩΝ ΕΝΟΤΗΤΑ 7: ΑΙΣΘΗΤΗΡΕΣ ΥΠΕΡΥΘΡΩΝ Σκοπός και περίγραμμα της Ενότητας 7 Σκοπός της παρουσίασης ΒΑΣΙΚΕΣ ΓΝΩΣΕΙΣ ΥΠΕΡΥΘΡΟΥ ΦΩΤΟΣ Χρήση αισθητήρα υπέρυθρων για τον εντοπισμό αντικειμένων, εμποδίων, παρουσίας

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 5. Ρυθμίζοντας τη Φορά Περιστροφής. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 5. Ρυθμίζοντας τη Φορά Περιστροφής. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Σκοπός Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 5 Ρυθμίζοντας τη Φορά Περιστροφής DC Κινητήρα. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Βασική δομή ενός προγράμματος στο LabVIEW. Εμπρόσθιο Πλαίσιο (front

Διαβάστε περισσότερα

Lab 1: Experimenting on Arduino & AI Sense

Lab 1: Experimenting on Arduino & AI Sense Lab 1: Experimenting on Arduino & AI Sense 1. Εισαγωγή A. Arduino Robokit Το Robokit, όπως και όλες οι πλακέτες τύπου Arduino, λειτουργεί χάρη σε έναν μικροελεγκτή. Ως μικροελεγκτή μπορούμε να φανταστούμε

Διαβάστε περισσότερα

Σκοπός. Προγραμματίζοντας τον Arduino ΙΙ Εντολή Εκχώρησης & Εντολές. Συλλογή & Επεξεργασία Δεδομένων. Πρόγραμμα. Εντολές Επεξεργασίας Δεδομένων

Σκοπός. Προγραμματίζοντας τον Arduino ΙΙ Εντολή Εκχώρησης & Εντολές. Συλλογή & Επεξεργασία Δεδομένων. Πρόγραμμα. Εντολές Επεξεργασίας Δεδομένων Σκοπός Συλλογή & Επεξεργασία Δεδομένων Προγραμματίζοντας τον Arduino ΙΙ Εντολή Εκχώρησης & Εντολές Ελέγχου. Πρόγραμμα Εντολές Επεξεργασίας Δεδομένων Εντολή Εκχώρησης Εντολές Ελέγχου Λογική συνθήκη Εντολή

Διαβάστε περισσότερα

2017 Κατασκευάζω και Προγραμματίζω με τον μικροελεγκτή Arduino

2017 Κατασκευάζω και Προγραμματίζω με τον μικροελεγκτή Arduino 2017 Κατασκευάζω και Προγραμματίζω με τον μικροελεγκτή Arduino Αριστείδης Παλιούρας e-mail: arispaliouras@gmail.com ISBN: 978-960-93-8945-7 Κατασκευάζω και Προγραμματίζω με τον μικροελεγκτή Arduino Copyright

Διαβάστε περισσότερα

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

ΕΛΕΓΧΟΣ ΑΝΤΛΙΟΣΤΑΣΙΟΥ ΜΕ ΔΕΞΑΜΕΝΗ ΜΕΣΩ GSM CHECK IN TANK PUMPING THROUGH GSM ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΏΝ ΕΦΑΡΜΟΓΏΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ Τ.Ε. ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ CHECK IN TANK PUMPING THROUGH GSM Επιβλέπων Καθηγητής: Κόγιας Παναγιώτης Επιβλέπουσα Καθηγήτρια: Κόγια Φωτεινή ΚΑΒΑΛΑ, ΦΕΒΡΟΥΑΡΙΟΣ

Διαβάστε περισσότερα

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

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Σερρών Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πληροφορικής & Επικοινωνιών Τεχνολογικό Εκπαιδευτικό Ίδρυμα Σερρών Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πληροφορικής & Επικοινωνιών Υλοποίηση δικτύου ασύρματης ραδιοεπικοινωνίας μεταξύ δύο ενσωματωμένων κόμβων (κόμβος ταυτοποίησης

Διαβάστε περισσότερα

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

Μέτρηση Θερμοκρασίας με τον αισθητήρα TMP36. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων. Βασική δομή ενός προγράμματος στο LabVIEW. Σκοπός Μάθημα 2 Δραστηριότητα 1 Μέτρηση Θερμοκρασίας με τον αισθητήρα TMP36. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Βασική δομή ενός προγράμματος στο LabVIEW. Εμπρόσθιο Πλαίσιο (front panel). Σχεδίαση

Διαβάστε περισσότερα

ΔΡΑΣΤΗΡΙΟΤΗΤΑ ΕΙΣΑΓΩΓΗ ΣΤΟ ARDUINO- 01a

ΔΡΑΣΤΗΡΙΟΤΗΤΑ ΕΙΣΑΓΩΓΗ ΣΤΟ ARDUINO- 01a ΔΡΑΣΤΗΡΙΟΤΗΤΑ ΕΙΣΑΓΩΓΗ ΣΤΟ ARDUINO- 01a Βασικό κύκλωμα προγραμματισμός μικροελεγκτή Πλακέτα Arduino, 1 Να δημιουργήσετε και να προγραμματίσετε ένα πολύ απλό σύστημα που να αναβοσβήνει ένα λαμπάκι (έξοδος)

Διαβάστε περισσότερα

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

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων Εργαστήριο ενσωματωμένων συστημάτων Παρουσίαση 2: Βασικός Προγραμματισμός Arduino (AVR) Εργαστήριο Αυτομάτου Ελέγχου Η πλατφόρμα Arduino Microcontroller: ATmega328 Operating Voltage: 5V Digital I/O Pins:

Διαβάστε περισσότερα

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

Το κύκλωμα σε breadboard Φύλλο εργασίας 8 - Ανιχνευτής απόστασης Σε αυτήν τη δραστηριότητα θα κατασκευάσουμε έναν ανιχνευτή απόστασης. Θα χρησιμοποιήσουμε τον αισθητήρα υπερήχων (ή απόστασης) HC-SR04 για τον υπολογισμό της απόστασης.

Διαβάστε περισσότερα

Κεφάλαιο 1.5: Τα βασικά μέρη ενός υπολογιστή

Κεφάλαιο 1.5: Τα βασικά μέρη ενός υπολογιστή Κεφάλαιο 1.5: Τα βασικά μέρη ενός υπολογιστή 1.5.1 Ανάλυση των μερών ενός υπολογιστή Μονάδα συστήματος Είναι το κουτί του υπολογιστή το οποίο φαίνεται αρκετά συμπαγές, αλλά στην πραγματικότητα αποτελείται

Διαβάστε περισσότερα

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

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων Εργαστήριο ενσωματωμένων συστημάτων Παρουσίαση 1: Εισαγωγή στα ενσωματωμένα συστήματα (embedded systems) Εργαστήριο Αυτομάτου Ελέγχου Ενσωματωμένα συστήματα (Embedded Systems) Ενσωματωμένα συστήματα (Embedded

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Φύλλο εργασίας 9 - Αυτόνομο ρομποτικό όχημα αποφυγής εμποδίων

Φύλλο εργασίας 9 - Αυτόνομο ρομποτικό όχημα αποφυγής εμποδίων Φύλλο εργασίας 9 - Αυτόνομο ρομποτικό όχημα αποφυγής εμποδίων Σε αυτήν τη δραστηριότητα θα κατασκευάσουμε ένα αυτόνομο ρομποτικό όχημα αποφυγής εμποδίων. Εκτός από τον μικροελεγκτή Arduino, το breadboard,

Διαβάστε περισσότερα

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

Α.Ε.Ι. ΠΕΙΡΑΙΑ Τ.Τ Φεβρουάριος 2017 Α.Ε.Ι. ΠΕΙΡΑΙΑ Τ.Τ Φεβρουάριος 2017 Τεχνολογικό Εκπαιδευτικό Εκπαιδευτικό Ίδρυμα Ίδρυμα Πειραιά Πειραιά Τμήμα Ηλεκτολογίας Τμήμα Ηλεκτρολογίας Υλοποίηση Υλοποίηση ενός σύστημα Ενός Συναγερμού Αυτοκίνητου

Διαβάστε περισσότερα

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

Arduino. δουλεύοντας με το... Υλικό αναφοράς και χρήσης της ανοιχτής πλατφόρμας δουλεύοντας με το... Arduino Υλικό αναφοράς και χρήσης της ανοιχτής πλατφόρμας έκδοση των μαθητών της Β τάξης Γενικού Ενιαίου Λυκείου Φαλάνης, του Εργαστηρίου Πληροφορικής και του εκπαιδευτικού Γιώργου

Διαβάστε περισσότερα

Σημειώσεις κεφαλαίου 16 Αρχές επικοινωνίας με ήχο και εικόνα

Σημειώσεις κεφαλαίου 16 Αρχές επικοινωνίας με ήχο και εικόνα Σημειώσεις κεφαλαίου 16 Αρχές επικοινωνίας με ήχο και εικόνα ΠΩΣ ΛΕΙΤΟΥΡΓΟΥΝ ΟΙ ΗΛΕΚΤΡΟΝΙΚΕΣ ΕΠΙΚΟΙΝΩΝΙΕΣ Ένα σύστημα ηλεκτρονικής επικοινωνίας αποτελείται από τον πομπό, το δίαυλο (κανάλι) μετάδοσης και

Διαβάστε περισσότερα

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

ΑΣΚΗΣΗ 2 (29 Νοεμβρίου 2016) ΑΣΚΗΣΗ 2 (29 Νοεμβρίου 2016) Περιγραφή της Άσκησης Στόχος της άσκησης είναι η δημιουργία ενός συστήματος διαχείρισης φωτισμού. Μία φωτομεταβαλλόμενη αντίσταση (LDR) θα διαπιστώνει την ποσότητα του φωτός

Διαβάστε περισσότερα

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

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων Εργαστήριο ενσωματωμένων συστημάτων Παρουσίαση 3: Βασικός Προγραμματισμός Arduino (AVR) (Συνέχεια) Εργαστήριο Αυτομάτου Ελέγχου Η πλατφόρμα Arduino Microcontroller: ATmega328 Operating Voltage: 5V Digital

Διαβάστε περισσότερα

Εξαμηνιαία Εργασία 2013 Προγραμματίζοντας τον Arduino στη C Μέρος Β : Επικοινωνία Υπολογιστή με Μικροελεγκτή

Εξαμηνιαία Εργασία 2013 Προγραμματίζοντας τον Arduino στη C Μέρος Β : Επικοινωνία Υπολογιστή με Μικροελεγκτή Σκοπός Εξαμηνιαία Εργασία 2013 Προγραμματίζοντας τον Arduino στη C Μέρος Β : Επικοινωνία Υπολογιστή με Μικροελεγκτή Μικροελεγκτές Πλακέτα Arduino Προγραμματισμός Μικροελεγκτών στη C. Επικοινωνία Υπολογιστή

Διαβάστε περισσότερα

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

Φύλλο εργασίας 6 - Θερμόμετρο εξωτερικού χώρου. Το κύκλωμα σε breadboard Φύλλο εργασίας 6 - Θερμόμετρο εξωτερικού χώρου Σε αυτήν την δραστηριότητα θα κατασκευάσουμε ένα θερμόμετρο εξωτερικού χώρου. Θα χρησιμοποιήσουμε τον αισθητήρα θερμοκρασίας LM35 και για την ένδειξη της

Διαβάστε περισσότερα

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

Εφαρμογές Arduino Σεμινάριο Ηλεκτρονικού Τομέα Εφαρμογές Arduino Σεμινάριο Ηλεκτρονικού Τομέα 1ο ΕΠΑΛ Περάματος 7ο ΕΚ Πειραιά Πλακέτα Arduino Το 2005 oι Massimo Banzi και David Cueartielles στο Ivrea Δημιουργούν την υπολογιστική πλατφόρμα Arduino.

Διαβάστε περισσότερα

Profitstore.gr ΡΟΛΟΙ ΚΑΜΕΡΑ KJ402. Εισαγωγή: Περιγραφή Ψηφιακού Ρολογιού:

Profitstore.gr ΡΟΛΟΙ ΚΑΜΕΡΑ KJ402. Εισαγωγή: Περιγραφή Ψηφιακού Ρολογιού: Εισαγωγή: ΡΟΛΟΙ ΚΑΜΕΡΑ KJ402 Το ρολόι είναι ιδανικό για ασφάλεια και κρυφή παρακολούθηση. Μια κάμερα και ένας αναγνώστης καρτών Micro SD (η κάρτα Micro SD δεν περιλαμβάνεται) για εγγραφή είναι κρυμμένα

Διαβάστε περισσότερα

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

ΕΝΟΤΗΤΑ 12 ΣΕΙΡΙΑΚΗ ΔΙΕΠΑΦΗ ΕΝΟΤΗΤΑ 12 ΣΕΙΡΙΑΚΗ ΔΙΕΠΑΦΗ Στόχος και Περίγραμμα της Ενότητας 12 Στόχος της παρουσίασης Παρουσίαση της βασικής ιδέα και απλών παραδειγμάτων που δίνουν στο Arduino τη δυνατότητα να επικοινωνήσει με οποιαδήποτε

Διαβάστε περισσότερα

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

ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΑ ΗΛΕΚΤΡΟΝΙΚΑ ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΑ ΗΛΕΚΤΡΟΝΙΚΑ 1.1 ΕΙΣΑΓΩΓΗ ΣΤΑ ΑΝΑΛΟΓΙΚΑ ΗΛΕΚΤΡΟΝΙΚΑ 1 1.1.1 Αναλογικά σήματα 1 1.1.2 Οι αντιστάσεις 3 1.1.3 Οι πυκνωτές 7 1.1.4 Τα πηνία 11 1.1.5 Οι δίοδοι 13 1.1.6

Διαβάστε περισσότερα

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

ΠΛΗΡΟΦΟΡΙΚH ΓΙΑ ΤΗΝ ΤEΧΝΗ Η ΕΞAΜΗΝΟ ΠΛΗΡΟΦΟΡΙΚH ΓΙΑ ΤΗΝ ΤEΧΝΗ Η ΕΞAΜΗΝΟ ΑΜΑΛIΑ ΦΩΚA ΕΠIΚΟΥΡΗ ΚΑΘΗΓHΤΡΙΑ Περιεχόμενο Μαθήματος 2 Arduino Τι είναι το Arduino; 3 μικρή συσκευή (μικροεπεξεργαστής) που συνδέεται με USB στον υπολογιστή μια πλατφόρμα

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

LFT169 - LFR169 ΠΟΜΠΟΣ ΚΑΙ ΔΕΚΤΗΣ ΨΗΦΙΑΚΩΝ ΚΑΙ ΑΝΑΛΟΓΙΚΩΝ ΣΗΜΑΤΩΝ

LFT169 - LFR169 ΠΟΜΠΟΣ ΚΑΙ ΔΕΚΤΗΣ ΨΗΦΙΑΚΩΝ ΚΑΙ ΑΝΑΛΟΓΙΚΩΝ ΣΗΜΑΤΩΝ LFT169 - LFR169 ΠΟΜΠΟΣ ΚΑΙ ΔΕΚΤΗΣ ΨΗΦΙΑΚΩΝ ΚΑΙ ΑΝΑΛΟΓΙΚΩΝ ΣΗΜΑΤΩΝ Οδηγίες Παραμετροποίησης Power Electronics Control Ε.Π.Ε. Τύποι Συσκευών: LFT169 - LFR169 Περιγραφή: Πομπός και Δέκτης Τηλεχειρισμού 169MHz

Διαβάστε περισσότερα

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

Ψηφιακά Αντικείμενα Μάθημα 1 Δραστηριότητα 2. Προγραμματισμός Φυσικών Συστημάτων. Συστήματα Πραγματικών Εφαρμογών. Νέα Ψηφιακά Αντικείμενα Σκοπός Ψηφιακά Αντικείμενα Μάθημα 1 Δραστηριότητα 2 ΤΟ ΣΥΣΤΗΜΑ ΣΑΡΩΣΗΣ ΤΟΥ ΟΠΤΙΚΟΥ ΠΕΔΙΟΥ. Ψηφιακά Αντικείμενα Μικροελεγκτής Προγραμματισμός Φυσικών Συστημάτων Συστήματα Πραγματικών Εφαρμογών Νέα Ψηφιακά

Διαβάστε περισσότερα

Το υλικό του υπολογιστή

Το υλικό του υπολογιστή Το υλικό του υπολογιστή Ερωτήσεις 1. Τι αντιλαμβάνεστε με τον όρο υλικό; Το υλικό(hardware) αποτελείται από το σύνολο των ηλεκτρονικών τμημάτων που συνθέτουν το υπολογιστικό σύστημα, δηλαδή από τα ηλεκτρονικά

Διαβάστε περισσότερα

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

ΕΝΟΤΗΤΑ 10: ΟΔΗΓΗΣΗ ΚΙΝΗΤΗΡΩΝ ΕΝΟΤΗΤΑ 10: ΟΔΗΓΗΣΗ ΚΙΝΗΤΗΡΩΝ Στόχος και Περίγραμμα της Ενότητας 10 Στόχος της παρουσίασης Παρουσίαση της βασικής ιδέα και απλών παραδειγμάτων για την οδήγηση DC και βηματικών κινητήρων με το Arduino.

Διαβάστε περισσότερα

Εγχειρίδιο χρήσης. Ασύρματο εσωτερικό ραντάρ GSC-P829

Εγχειρίδιο χρήσης. Ασύρματο εσωτερικό ραντάρ GSC-P829 Εγχειρίδιο χρήσης Ασύρματο εσωτερικό ραντάρ GSC-P829 ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΛΕΙΤΟΥΡΓΙΑΣ Ο GSC-P829 παθητικός υπέρυθρος ανιχνευτής συνδυάζει ψηφιακή, διπλού-πυρήνα ελέγχου, ασαφής λογικής, τεχνολογία επεξεργασίας

Διαβάστε περισσότερα

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

Εξαμηνιαία Εργασία 2013 Προγραμματίζοντας τον Arduino στη C Μέρος Α : Υλικά Σκοπός Εξαμηνιαία Εργασία 2013 Προγραμματίζοντας τον Arduino στη C Μέρος Α : Υλικά Μικροελεγκτές Πλακέτα Arduino Προσομοίωση Μικροελεγκτών Προγραμματισμός Μικροελεγκτών στη C. 7.1 ΕΠΙΔΙΩΞΗ ΤΗΣ ΕΡΓΑΣΙΑΣ

Διαβάστε περισσότερα

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 3 Μέτρηση Θερμοκρασίας Σύστημα Ελέγχου Θερμοκρασίας. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων

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

Διαβάστε περισσότερα

Β1.1 Δημιουργία Εφαρμογής στο Περιβάλλον Προγραμματισμού EdScratch του Edison ρομπότ

Β1.1 Δημιουργία Εφαρμογής στο Περιβάλλον Προγραμματισμού EdScratch του Edison ρομπότ Β1.1 Δημιουργία Εφαρμογής στο Περιβάλλον Προγραμματισμού EdScratch του Edison ρομπότ Τι θα μάθουμε σήμερα: Να γνωρίσουμε την Ρομποτική Να προετοιμάσουμε και να γνωρίσουμε το Edison ρομπότ Να μεταφερόμαστε

Διαβάστε περισσότερα

Βασικές Έννοιες της Πληροφορικής

Βασικές Έννοιες της Πληροφορικής Βασικές Έννοιες της Πληροφορικής Ηλεκτρονικός Υπολογιστής Αυτόματη ηλεκτρονική μηχανή που δέχεται, φυλάσσει, επαναφέρει, επεξεργάζεται και παρουσιάζει πληροφορίες σύμφωνα με προκαθορισμένες εντολές. Δεδομένα

Διαβάστε περισσότερα

διατίθεται με άδεια χρήσης GPL για πλατφόρμες Linux, MAC και Windows.

διατίθεται με άδεια χρήσης GPL για πλατφόρμες Linux, MAC και Windows. Arduino ΕΙΣΑΓΩΓΗ ΣΤΟ ARDUINO Α. Ανδρεάτος Κεφ. 1/ Εισαγωγή - Τι είναι το Arduino; Σύμφωνα με τον δημιουργό του, το Arduino είναι μια πλατφόρμα ανάπτυξης ηλεκτρονικών κατασκευών ανοικτών τεχνολογιών (υλικού

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΤΗ ΔΙΟΙΚΗΣΗ ΚΑΙ ΣΤΗΝ ΟΙΚΟΝΟΜΙΑ 2 Ο ΜΑΘΗΜΑ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΑΠΟΣΤΟΛΙΑ ΠΑΓΓΕ Υπολογιστής Συνοπτικό λεξικό Οξφόρδης -> «ηλεκτρονική υπολογιστική μηχανή»

Διαβάστε περισσότερα

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

ΜΙΚΡΟΕΛΕΓΚΤΗΣ PICAXE 18M2 ΘΕΜΑ : ΜΙΚΡΟΕΛΕΓΚΤΗΣ PICAXE 18M2 ΔΙΑΡΚΕΙΑ:? περίοδος Οι μικροελεγκτές είναι υπολογιστές χωρίς περιφερειακά, σε ολοκληρωμένα κυκλώματα. Μπορούν να συνδυάσουν αρκετές από τις βασικές λειτουργίες άλλων ειδικών

Διαβάστε περισσότερα

Ασύρματα στερεοφωνικά ακουστικά με μικρόφωνο ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ. AP-B250MV

Ασύρματα στερεοφωνικά ακουστικά με μικρόφωνο ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ.   AP-B250MV ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ AP-B250MV www.sven.fi Lietotāja Εγχειρίδιο rokasgrāmata χρήσης AP-B250MV MS-302 Σας ευχαριστούμε που αγοράσατε τα στερεοφωνικά ακουστικά ТМ SVEN! ΠΝΕΥΜΑΤΙΚΑ ΔΙΚΑΙΩΜΑΤΑ 2015. SVEN PTE.

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ 6 ΟΔΗΓΗΣΗ ΑΠΕΙΚΟΝΙΣΕΩΝ SSD ΚΑΙ LCD

ΕΡΓΑΣΤΗΡΙΟ 6 ΟΔΗΓΗΣΗ ΑΠΕΙΚΟΝΙΣΕΩΝ SSD ΚΑΙ LCD ΕΡΓΑΣΤΗΡΙΟ 6 ΟΔΗΓΗΣΗ ΑΠΕΙΚΟΝΙΣΕΩΝ SSD ΚΑΙ LCD Σκοπός του εργαστηρίου: Οι φοιτητές εξοικειώνονται με βασικές απεικονίσεις αριθμητικών ψηφίων και χαρακτήρων, καθώς και με τη βασική οδήγηση τέτοιων απεικονίσεων,

Διαβάστε περισσότερα

Αντικειμενοστρεφής Προγραμματισμός

Αντικειμενοστρεφής Προγραμματισμός Αντικειμενοστρεφής Προγραμματισμός Διδάσκουσα: Αναπλ. Καθηγήτρια Ανδριάνα Πρέντζα aprentza@unipi.gr Εργαστηριακός Συνεργάτης: Δρ. Βασιλική Κούφη vassok@unipi.gr Εργαστήριο 2 Βασικοί Τύποι Μεταβλητών Java

Διαβάστε περισσότερα

Σημειώσεις στο μάθημα «Συντήρηση Η/Υ»

Σημειώσεις στο μάθημα «Συντήρηση Η/Υ» Σημειώσεις στο μάθημα «Συντήρηση Η/Υ» Β Τάξη ΕΠΑ.Λ. Τομέας Πληροφορικής 1. Εισαγωγή Υπολογιστικό Σύστημα Ο υπολογιστής είναι μία συσκευή η λειτουργία της οποίας βασίζεται στην τεχνολογία των ηλεκτρονικών

Διαβάστε περισσότερα

ΕΝΟΤΗΤΑ 4 Λήψη Αποφάσεων και Συναρτήσεις Ελέγχου

ΕΝΟΤΗΤΑ 4 Λήψη Αποφάσεων και Συναρτήσεις Ελέγχου ΕΝΟΤΗΤΑ 4 Λήψη Αποφάσεων και Συναρτήσεις Ελέγχου Σκοπός και περίγραμμα της Ενότητας 4 Σκοπός της παρουσίασης Να μελετήσουμε τις συναρτήσεις που ελέγχουν την ροή και την εκτέλεση ενός προγράμματος Σύνοψη

Διαβάστε περισσότερα

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

Μαθαίνοντας το hardware του αναπτυξιακού 1. ΑΣΚΗΣΗ 1 Μαθαίνοντας το hardware του αναπτυξιακού Προϋποθέσεις Το εργαστήριο αυτό προϋποθέτει το διάβασμα και χρήση των εξής: Αρχείο mcbstr9.chm HTML, που δίδεται με τα υπόλοιπα αρχεία του εργαστηρίου.

Διαβάστε περισσότερα

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 4. Οδηγώντας έναν DC Κινητήρα. Το κύκλωμα της Λειτουργίας DC Κινητήρα

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 4. Οδηγώντας έναν DC Κινητήρα. Το κύκλωμα της Λειτουργίας DC Κινητήρα Σκοπός Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 4 Οδηγώντας έναν DC Κινητήρα. Το κύκλωμα της Λειτουργίας DC Κινητήρα Τρανζίστορ στη Λειτουργία ενός DC Κινητήρα. Η Χρήση της Διόδου. Το Πρόγραμμα που Οδηγεί

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Μ.Π.Σ. «ΠΡΟΗΓΜΕΝΕΣ ΜΕΘΟΔΟΙ ΚΑΤΑΣΚΕΥΗΣ ΠΡΟΙΟΝΤΩΝ ΑΠΟ ΞΥΛΟ» Μάθημα: Σχεδίαση και Εφαρμογές Διαδραστικών Συστημάτων. Διδάσκοντας: Α.

Μ.Π.Σ. «ΠΡΟΗΓΜΕΝΕΣ ΜΕΘΟΔΟΙ ΚΑΤΑΣΚΕΥΗΣ ΠΡΟΙΟΝΤΩΝ ΑΠΟ ΞΥΛΟ» Μάθημα: Σχεδίαση και Εφαρμογές Διαδραστικών Συστημάτων. Διδάσκοντας: Α. Μ.Π.Σ. «ΠΡΟΗΓΜΕΝΕΣ ΜΕΘΟΔΟΙ ΚΑΤΑΣΚΕΥΗΣ ΠΡΟΙΟΝΤΩΝ ΑΠΟ ΞΥΛΟ» Μάθημα: Σχεδίαση και Εφαρμογές Διαδραστικών Συστημάτων Διδάσκοντας: Α. Καραγεώργος 24-05-2016 Επαναληπτικές Ερωτήσεις 1. Πότε τα έπιπλα καλούνται

Διαβάστε περισσότερα

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

Bread Online. Παναγιώτης Ιωαννίδης Επιβλέπων καθηγητής: Μηνάς Δασυγένης Bread Online Σχεδιασμός και μετατροπή μιας απλής οικιακής συσκευής σε επαναπρογραμματιζόμενη συσκευή IP Παναγιώτης Ιωαννίδης Επιβλέπων καθηγητής: Μηνάς Δασυγένης Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών

Διαβάστε περισσότερα

Αυτοματισμοί και Συστήματα Αυτομάτου Ελέγχου. Ενότητα 2

Αυτοματισμοί και Συστήματα Αυτομάτου Ελέγχου. Ενότητα 2 Αυτοματισμοί και Συστήματα Αυτομάτου Ελέγχου Ενότητα 2 Τι είναι το PLC ΠΕΡΙΕΧΟΜΕΝΑ 2 Τι είναι το PLC. 2.1 Πλεονεκτήματα των PLC. 2.2 Η δομή ενός PLC. 2.3 Τα PLC της αγοράς. 2.4 Αρχή λειτουργίας ενός PLC.

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΑ. Περιγραφή. 1. Ενεργοποίηση/Απενεργοποίηση 2. Ρύθμιση 3. Βραχίονας 4. Ενδείκτης ισχύος 5. Ανίχνευση κίνησης (Ενεργοποίηση)

ΕΛΛΗΝΙΚΑ. Περιγραφή. 1. Ενεργοποίηση/Απενεργοποίηση 2. Ρύθμιση 3. Βραχίονας 4. Ενδείκτης ισχύος 5. Ανίχνευση κίνησης (Ενεργοποίηση) Εισαγωγή Ο ανιχνευτής κίνησης είναι ιδανικός για κρυφή ασφάλεια και παρατήρηση. Στο περίβλημα PIR υπάρχει μια συσκευή ανάγνωσης κάρτας SD (δεν περιλαμβάνεται κάρτα SD) για εγγραφή, ενσωματωμένη με τη μοναδική

Διαβάστε περισσότερα

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

ARDUINO ΟΔΗΓΟΣ ΓΙΑ ΑΡΧΑΡΙΟΥΣ ARDUINO ΟΔΗΓΟΣ ΓΙΑ ΑΡΧΑΡΙΟΥΣ ΤΙ ΕIΝΑΙ ΤΟ ARDUINO; Το Arduino είναι μια «ανοικτού κώδικα» πλατφόρμα βασισμένη σε ευέλικτο και εύκολο στη χρήση hardware και software. Αυτό σημαίνει ότι ο καθένας μπορεί να

Διαβάστε περισσότερα

Εγκατάσταση του Arduino IDE

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

Διαβάστε περισσότερα

Mini DVR. Οδηγίες χρήσης MDS 660

Mini DVR. Οδηγίες χρήσης MDS 660 Mini DVR MDS 660 Βασικά χαρακτηριστικά Σύστημα ανίχνευσης κίνησης με ενσωματωμένο σύστημα καταγραφής εικόνας. Από τη στιγμή που ανιχνεύεται εισβολή στον επιτηρούμενο χώρο το αισθητήριο ανίχνευσης κίνησης

Διαβάστε περισσότερα

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

ΡΟΜΠΟΤΙΚΗ. ΕΡΓΑΣΙΑ ΠΑΝΩ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΝΧΤ ΚΑΙ ΤΑ ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ BLUETOOTH, I2C και serial communication ΡΟΜΠΟΤΙΚΗ ΕΡΓΑΣΙΑ ΠΑΝΩ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΝΧΤ ΚΑΙ ΤΑ ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ BLUETOOTH, I2C και serial communication ΜΠΑΝΤΗΣ ΑΝΤΩΝΙΟΣ 533 ΤΣΙΚΤΣΙΡΗΣ ΔΗΜΗΤΡΙΟΣ 551 ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΟΥ ΡΟΜΠΟΤ LEGO NXT Το ρομπότ

Διαβάστε περισσότερα

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

Σημειώσεις : Χρήστος Μουρατίδης. Κάντε κλικ για έναρξη Σημειώσεις : Χρήστος Μουρατίδης Κάντε κλικ για έναρξη Γενική εικόνα Στο σχήμα βλέπουμε μία γενική εικόνα του εσωτερικού της Κεντρική Μονάδας του υπολογιστή: Τροφοδοτικό Είναι μία ηλεκτρική μικροσυσκευή,

Διαβάστε περισσότερα

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

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο 2006-07 Ενότητα 4 Εισαγωγή στην Πληροφορική Κεφάλαιο 4Α: Αναπαράσταση πληροφορίας Κεφάλαιο 4Β: Επεξεργαστές που χρησιµοποιούνται σε PCs Χειµερινό Εξάµηνο 2006-07 ρ. Παναγιώτης Χατζηδούκας (Π..407/80) Εισαγωγή

Διαβάστε περισσότερα

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή 1. Ηλεκτρονικός Υπολογιστής Ο Ηλεκτρονικός Υπολογιστής είναι μια συσκευή, μεγάλη ή μικρή, που επεξεργάζεται δεδομένα και εκτελεί την εργασία του σύμφωνα με τα παρακάτω

Διαβάστε περισσότερα

Τεχνολογικό+Eκπαιδευτικό+Ίδρυμα+Kρήτης+ TMHMA+MHXANOΛOΓIAΣ+ (

Τεχνολογικό+Eκπαιδευτικό+Ίδρυμα+Kρήτης+ TMHMA+MHXANOΛOΓIAΣ+ ( Τεχνολογικό+Eκπαιδευτικό+Ίδρυμα+Kρήτης+ TMHMA+MHXANOΛOΓIAΣ+ ( + + Εισαγωγή+στην+Μηχατρονική++ + Εισαγωγή+στους+μικροελεγκτές++ και+στη+υπολογιστική+πλατφόρμα+arduino+ + + + + Δρ.+Φασουλάς+Γιάννης+ jfasoulas@staff.teicrete.gr(

Διαβάστε περισσότερα

Κεφάλαιο 1.6: Συσκευές αποθήκευσης

Κεφάλαιο 1.6: Συσκευές αποθήκευσης Κεφάλαιο 1.6: Συσκευές αποθήκευσης 1.6.1 Συσκευές αποθήκευσης Μνήμη τυχαίας προσπέλασης - RAM Η μνήμη RAM (Random Access Memory Μνήμη Τυχαίας Προσπέλασης), κρατεί όλη την πληροφορία (δεδομένα και εντολές)

Διαβάστε περισσότερα

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

Φύλλο εργασίας 7 - Δημιουργώ τα δικά μου χρώματα με το RGB LED Φύλλο εργασίας 7 - Δημιουργώ τα δικά μου χρώματα με το RGB LED Στην δραστηριότητα αυτή θα δουλέψουμε με το RGB LED για να παράγουμε μια μεγάλη ποικιλία χρωμάτων. Το RGB LED είναι στην ουσία τρία διαφορετικά

Διαβάστε περισσότερα

Δομή (Structure) Προγραμματισμός Arduino. Η λειτουργία setup()

Δομή (Structure) Προγραμματισμός Arduino. Η λειτουργία setup() Προγραμματισμός Arduino Δομή (Structure) Ο κώδικας που φορτώνεται στη μνήμη του Arduino μετά την μετάφρασή του στον υπολογιστή μας, εκτελείται σε δύο φάσεις. Πρώτα εκτελείται η λειτουργία setup() για μία

Διαβάστε περισσότερα

Μια πρόταση διδασκαλίας για το μάθημα του προγραμματισμού Η/Υ στο Λύκειο με τη μεθοδολογία STEM

Μια πρόταση διδασκαλίας για το μάθημα του προγραμματισμού Η/Υ στο Λύκειο με τη μεθοδολογία STEM Μια πρόταση διδασκαλίας για το μάθημα του προγραμματισμού Η/Υ στο Λύκειο με τη μεθοδολογία STEM Οδηγίες για την υλοποίηση της διδακτικής παρέμβασης 1η διδακτική ώρα: Υλοποίηση του φύλλου εργασίας 1 με

Διαβάστε περισσότερα

ΦΩΤΕΛΛΗΣ Α.Ε. ΣΥΣΤΗΜΑΤΑ ΑΣΦΑΛΕΙΑΣ

ΦΩΤΕΛΛΗΣ Α.Ε. ΣΥΣΤΗΜΑΤΑ ΑΣΦΑΛΕΙΑΣ Α. ΓΕΝΙΚΑ Η εγκατάσταση ενός ολοκληρωμένου συστήματος συναγερμού αποσκοπεί στην προστασία χώρων όπως οικίες, επιχειρήσεις, βιομηχανίες, στρατιωτικές εγκαταστάσεις κλπ. σε περιπτώσεις: Ανεπιθύμητης εισόδου

Διαβάστε περισσότερα

ΡΟΜΠΟΤΙΚΗ ΚΑΙ ΑΥΤΟΜΑΤΙΣΜΟΣ

ΡΟΜΠΟΤΙΚΗ ΚΑΙ ΑΥΤΟΜΑΤΙΣΜΟΣ ΡΟΜΠΟΤΙΚΗ ΚΑΙ ΑΥΤΟΜΑΤΙΣΜΟΣ ΡΟΜΠΟΤΙΚΗ Η Ρομποτική είναι ο κλάδος της επιστήμης που κατασκευάζει και μελετά μηχανές που μπορούν να αντικαταστήσουν τον άνθρωπο στην εκτέλεση μιας εργασίας. Tι είναι το ΡΟΜΠΟΤ

Διαβάστε περισσότερα

Απλή Δομή Επιλογής. Ο κώδικας. //με χρήση μεταβλητών. delay (3000);

Απλή Δομή Επιλογής. Ο κώδικας. //με χρήση μεταβλητών. delay (3000); Απλή Δομή Επιλογής Να κατασκευάσετε το κύκλωμα το οποίο θα υλοποιεί τα φανάρια. Στη συνέχεια να αναπτύξετε τον κατάλληλο κώδικα ώστε όταν ανάβει το κόκκινο θα ανάβει και το άσπρο, όταν θα σβήνει το κόκκινο

Διαβάστε περισσότερα

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

Δρ. Π. Ασβεστάς Τμήμα Μηχανικών Βιοϊατρικής Τεχνολογίας Τ.Ε Ιατρικά Ηλεκτρονικά Δρ. Π. Ασβεστάς Τμήμα Μηχανικών Βιοϊατρικής Τεχνολογίας Τ.Ε Βιβλιογραφία B. Evans, Beginning Arduino Programming, 2011. J. Purdum, Beginning C for Arduino,Apress,2012. M. Margolis,

Διαβάστε περισσότερα

Calisto Ηχείο ανοικτής ακρόασης USB. Εγχειρίδιο χρήσης

Calisto Ηχείο ανοικτής ακρόασης USB. Εγχειρίδιο χρήσης Calisto 7200 Ηχείο ανοικτής ακρόασης USB Εγχειρίδιο χρήσης Περιεχόμενα Επισκόπηση 3 Σύνδεση με υπολογιστή 4 Καθημερινή χρήση 5 Λειτουργία 5 Ένταση ήχου 5 Σίγαση/Κατάργηση σίγασης 5 Απάντηση ή τερματισμός

Διαβάστε περισσότερα

ΟΚΙΜΑΣΤΙΚΟ MS 48 NS Σύντοµες οδηγίες χρήσης

ΟΚΙΜΑΣΤΙΚΟ MS 48 NS Σύντοµες οδηγίες χρήσης ΟΚΙΜΑΣΤΙΚΟ MS 48 NS Σύντοµες οδηγίες χρήσης Προσοχή: i) Απαγορεύεται η χρήση του δοκιµαστικού από παιδιά. ii) H χρήση του συγκεκριµένου δοκιµαστικού εργαλείου απαιτεί να τηρούνται όλοι οι κανόνες προστασίας

Διαβάστε περισσότερα

Οδηγίες Εγκατάστασης GSM-GPRS LINK INTERFACE

Οδηγίες Εγκατάστασης GSM-GPRS LINK INTERFACE Οδηγίες Εγκατάστασης GSM-GPRS LINK INTERFACE Ο ORION-G είναι μία συσκευή η οποία εξομοιώνει την αναλογική τηλεφωνική γραμμή (PSTN), αξιοποιώντας το δίκτυο της κινητής τηλεφωνίας, και χρησιμοποιείται για

Διαβάστε περισσότερα

DICENTIS. Wireless Conference System. User manual

DICENTIS. Wireless Conference System. User manual DICENTIS Wireless Conference System el User manual DICENTIS Πίνακας περιεχομένων el 3 Πίνακας περιεχομένων 1 Ασφάλεια 4 2 Πληροφορίες για το εγχειρίδιο 5 2.1 Κοινό 5 2.2 Πνευματικά δικαιώματα και δήλωση

Διαβάστε περισσότερα

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

1ο ΕΠΑΛ Περάματος -7ο ΕΚ Πειραιά. Εφαρμογές Arduino. Σεμινάριο Ηλεκτρονικού Τομέα. Φεβρουάριος 2014 1 1ο ΕΠΑΛ Περάματος -7ο ΕΚ Πειραιά Εφαρμογές Arduino Σεμινάριο Ηλεκτρονικού Τομέα Φεβρουάριος 2014 2 Εισαγωγή Με αυτό το σεμιναρίο φιλοδοξούμε να μάθουμε ο ένας στον άλλο βασικές αρχές και εφαρμογές που

Διαβάστε περισσότερα

Το υποσύστηµα "αίσθησης" απαιτήσεις και επιδόσεις φυσικά µεγέθη γενική δοµή και συγκρότηση

Το υποσύστηµα αίσθησης απαιτήσεις και επιδόσεις φυσικά µεγέθη γενική δοµή και συγκρότηση Το υποσύστηµα "αίσθησης" απαιτήσεις και επιδόσεις φυσικά µεγέθη γενική δοµή και συγκρότηση Το υποσύστηµα "αίσθησης" είσοδοι της διάταξης αντίληψη του "περιβάλλοντος" τροφοδοσία του µε καθορίζει τις επιδόσεις

Διαβάστε περισσότερα