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

Σχετικά έγγραφα
Electronics μαζί με τα συνοδευτικά καλώδια και το αισθητήριο θερμοκρασίας LM335 που περιέχονται

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

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

Καςάμπαλθσ Στζλιοσ. Περιγραφι τθσ Εφαρμογισ:

Electronics μαηί με τα ςυνοδευτικά καλϊδια και το αιςκθτιριο κερμοκραςίασ LM335 που περιζχονται

USB_6008_terminal_31. PCI_6023E_terminal_68. PCI_6023E_terminal_67

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

Δραστηριότητα 9: Σύνδεση ΗΥ με το πολύμετρο METEX 3870D μέσω σειριακής επικοινωνίας RS232 και εφαρμογή σε LabView

Αρχεία Ένα αρχείο αποτελείται από μία σειρά ομοειδών δεδομένων που ονομάζονται λογικές εγγραφές (logical record)

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

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

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

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

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

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

Ανάπτυξη εφαρμογής Input-Output

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

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

ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΙΟΥΝΙΟΥ

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

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

Electronics μαζί με τα συνοδευτικά καλώδια και το αισθητήριο θερμοκρασίας LM335 που περιέχονται

Υπολογιστικά Συστήματα

ΛΥΚΕΙΟ ΣΟΛΕΑΣ Σχολική χρονιά


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

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

4. Επιλογή και Επανάληψη

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

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

Εργαστήριο 2ο. Περίγραμμα Εργαστηριακής Άσκησης

Μονοδιάστατοι Πίνακες

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

Υπολογιστικά Συστήματα

ΕΠΛ031 - Εισαγωγή στον Προγραμματισμό

Electronics θα μεταφέρονται σε Η/Υ λειτουργικό σύστημα Windows7 μέσω της σειριακής

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

4 Εισαγωγή στο Arduino

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011

Γ7.5 Αλγόριθμοι Αναζήτησης. Γ Λυκείου Κατεύθυνσης

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

Ανάπτυξη εφαρμογής Input-Output

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Ενότητα: ΔΟΜΕΣ ΕΠΑΝΑΛΗΨΗΣ ΚΥΡΟΠΟΥΛΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ. Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη)

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή

Στοιχεία Προγραμματισμού Σε Γραφικό Περιβάλλον Φύλλο εργασίας 1 ο

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

Εισαγωγή στον Προγραμματισμό

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος

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

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

Υπολογισμός - Εντολές Επανάληψης

Διάλεξη 2. Μεταβλητές - Δομές Δεδομένων - Eίσοδος δεδομένων - Έξοδος: Μορφοποίηση - Συναρτήσεις. Διοργάνωση : ΚΕΛ ΣΑΤΜ

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

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

Δραστηριότητα 2: Ρυθμίσεις Δικτύου Υπολογιστών και Κοινόχρηστοι Φάκελοι

Άσκηση 1 (α) Να διατυπώσετε την πιο κάτω λογική έκφραση στη Visual Basic κάνοντας χρήση μεταβλητών:

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

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

ΕΡΓΑΣΤΗΡΙΑΚΗ ΕΦΑΡΜΟΓΗ 4 TΟ ΡΟΜΠΟΤΙΚΟ ΟΧΗΜΑ ROGUE BLUE

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008

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

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

Συναρτήσεις στη Visual Basic 6.0

Είναι το πρωτόκολλο RS232 που χρησιμοποιείται στις σειριακές θύρες COM με τη διαφορά ότι εκτελείται σε επίπεδο τάσεων TTL. 2

(Κεφάλαιο 2.7 και 12) Αρχεία στην C. (Διάλεξη 15)

Αντικειμενοστρεφής Προγραμματισμός -Python. Κ.Π. Γιαλούρης

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

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

Κεφάλαιο 3.1, : Συναρτήσεις I. (Διάλεξη 11)

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

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

Υπολογιστικά Συστήματα

Τύποι Δεδομένων Είσοδος/Έξοδος

Προγραμματισμός και Εφαρμογές Υπολογιστών

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

Η ΑΞΙΟΠΟΙΗΣΗ ΤΟΥ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΛΟΓΙΣΜΙΚΟΥ COACH 5 ΣΤΗΝ ΔΙΔΑΣΚΑΛΙΑ ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΤΟΥ ΗΛΕΚΤΡΟΝΙΚΟΥ ΤΟΜΕΑ ΤΩΝ Τ.Ε.Ε.

Σημειωματάριο Τετάρτης 25 Οκτ. 2017

Προγραμματισμός Ι. Είσοδος/Έξοδος. Δημήτρης Μιχαήλ. Ακ. Έτος Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Αρχεία κειμένου και η VB.NET

Οδηγίες Εγκατάστασης Pylon Entry

ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΜΑΪΟΥ-ΙΟΥΝΙΟΥ 2015

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

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

Το «κλειστό» σύστημα. Ανοικτές επικοινωνίες... Εισαγωγή στην Τεχνολογία της Πληροφορικής. Εισαγωγή στην τεχνολογία της πληροφορικής

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java

Δομημένος Προγραμματισμός (ΤΛ1006)

Κέντρο υποστήριξης HP. Εισαγωγή. Τι χρειάζεται να γνωρίζετε. Λήψη και εγκατάσταση της λύσης Vista στα Windows 8. 1 of 5 1/7/2014 2:09 μμ

Ινστιτούτο Επαγγελµατική Κατάρτιση Κορυδαλλού "ΤΕΧΝΙΚΟΣ ΣΥΣΤΗΜΑΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ" (Ερωτήσεις Πιστοποίησης στην γλώσσα προγραµµατισµού C)

ΛΥΚΕΙΟ ΑΓΙΑΣ ΦΥΛΑΞΕΩΣ ΣΧΟΛΙΚΗ ΧΡΟΝΙΑ ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΙΟΥΝΙΟΥ. Ονοµατεπώνυµο :... Τµήµα :... Αριθµός :...

Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα.

Προγραμματισμός Υπολογιστών & Εφαρμογές Python. Κ.Π. Γιαλούρης

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Αναφορές

Προγραμματισμός Η/Υ (ΤΛ2007 )

Βασικά στοιχεία από τη Θεωρία

Transcript:

1o ΕΠΑΛ- Ε.Κ. Συκεών -Τομέας: Ηλεκτρονικής, Ηλεκτρολογίας και Αυτοματισμού Εκπαιδευτικοί: Μπουλταδάκης Στέλιος Μαυρίδης Κώστας Μάθημα: Ρομποτική, Μεταφορά και Έλεγχος Δεδομένων Αντικείμενο : Μεταφορά δεδομένων μέσω του πρωτοκόλλου RS232 μεταξύ Arduino UNO R3 και Η/Υ με εφαρμογή σε γλώσσα προγραμματισμού Visual Basic 5.0 ΒΙΒΛΙΟΓΡΑΦΙΑ: Το φύλλο έργου στηρίχτηκε σε πληροφορίες 1. από την ηλεκτρονική διεύθυνση: https://www.arduino.cc 2. σε άλλα φύλλα έργου του σχολείου Στόχοι: α) κατανόηση της λειτουργίας του σειριακού πρωτοκόλλου RS232 τόσο από την πλευρά της πλακέτας Arduino UNO R3 καθώς και από την πλευρά μιας εφαρμογής εικονικού οργάνου σε LabView Τα Υλικά που θα χρειαστούμε: 1. Πλακέτα Arduino UNO με σύνδεση ενός ποτενσιόμετρου σε μία αναλογική είσοδο, 2. Καλώδια σύνδεσης USB. Βήμα 1o: (Εγκατάσταση Οδηγού πλακέτας Arduino για την πρώτη φορά αλλιώς αγνοούμε το Βήμα 1ο). Συνδέουμε το ARDUINO. σε μια θύρα USB του Η/Υ (αν δεν έχει εγκατασταθεί ο driver ) αφήνουμε το λειτουργικό σύστημα να κάνει αναζήτηση οδηγού στο διαδίκτυο, κατέβασμα του οδηγού στον H/Y και εγκατάσταση. Βήμα 2o: Εύρεση της θύρας στην οποία το λειτουργικό σύστημα βλέπει την πλακέτα Arduino. Α) Κάνουμε δεξί κλικ στο Η/Υ (windows 10: δεξί κλικ στο εικονίδιο WINDOWS κάτω αριστερά στην οθόνη) και επιλέγουμε Διαχείριση Συσκευών/Θύρες COM & LPT για να δούμε σε ποια θύρα COM (θύρα USB) έχει εγκατασταθεί συνδεθεί η πλακέτα ARDUINO.

Β) Αντίστοιχα δηλώνουμε την ίδια σειριακή θύρα από την οποία θα μεταφερθεί το πρόγραμμα από το IDE Arduino στον H/Y προς την πλακέτα Arduino. Βήμα 3o: Στο περιβάλλον IDE Arduino γράφουμε τον παρακάτω κώδικα για τον οποίο ενημερωνόμαστε από τον καθηγητή (αρχείο: Serial_Comm_Arduino_Visual_Basic.ino). //======== Δηλώσεις σειριακού ελέγχου ====== unsigned int integervalue=0; // Mεγ. τιμή 65535 const int analogpin = A2; // ορισμός ακροδέκτη αναλογικής εισόδου για ποτενσιόμετρο int levels = 0; float voltage = 0.0; int i, len,k; char incomingbyte; // δεκαδική τιμή της ψηφιακής λέξης που δίνει ο A/D μετατροπέας // μεταβλητή της τάσης σε δεκαδική μορφή String incomingserial=""; // ' ':για ένα χαρακτήρα, "": για πολλούς χαρακτήρες (string) //================================================================================= void setup() { analogreference(default); // Ξεκινά τη σειριακή επικοινωνία: Serial.begin(9600); while (!Serial) { ; // και περιμένει να ανοίξει η θύρα: // Στέλνει ένα εισαγωγικό μήνυμα: Serial.println("Arduino"); //Ορισμός τάσης αναφοράς για τον εσωτερικό μετατροπέα A/D //===================================================================================== void loop() { if (Serial.available() > 0) // αν φτάσει κάτι στη σειριακή θύρα όπως τυχαία ο χαρακτήρας D { // το διαβάζει χαρακτήρα προς χαρακτήρα και το κάνει συμβολοσειρά while(1) { incomingbyte = Serial.read(); // επαναλαμβάνει συνεχώς.. //διαβάζει ένα χαρακτήρα μετά τον άλλο μέχρι να //συναντήσει'\n\'=ascii(10)=line feed,ascii(13)=carriage Return if (incomingbyte == '\n') break; // βγαίνει από το while(1) όταν συναντήσει '\n\' if (incomingbyte == -1) continue; // συνεχίζει στο while(1) αν δεν εισαχθούν χαρακτήρες (η σειριακή θύρα επιστρέφει -1) levels = analogread(analogpin); // διάβασε τη δεκαδική τιμή της ψηφιακής λέξης του A/D voltage=levels*5.0/1023; // μετατροπή σε τιμές αναλογικής τάσης (5 Volts <--> 1024 levels)

Serial.println(voltage); // εκτύπωση και αλλαγή γραμμής delay(100); // τέλος διαβάσματος των εισαχθέντων χαρακτήρων incomingserial=""; //σβήνει τους χαρακτήρες αφού εκτελεστεί η εντολή Στη συνέχεια κάνουμε μεταγλώττιση, έλεγχο και μεταφορά του κώδικα σύμφωνα με τις οδηγίες του καθηγητή. Βήμα 4o: Σχεδιάζουμε την παρακάτω φόρμα στη γλώσσα προγραμματισμού Visual Basic 5.0 Ο κώδικας προγραμματισμού είναι ο παρακάτω (αρχείο: RS232-ΣΧΟΛΕΙΟ_arduino.frm). Option Explicit Option Base 1 Dim a() As Variant ' η εντολή Dim για τον ορισμό του πίνακα μπορεί να ' ορισθεί και στην ενότητα γενικών δηλώσεων του πίνακα ' και επίσης μπορεί και να μην έχει ορίσματα σις παρενθέσεις Dim counter As Integer Dim numofmeas As Integer ===================================================

Private Sub cmdclear_click() Picture1.Cls =================================================== Private Sub cmdenable_click() Call RS232 ================================================= Private Sub cmdexit_click() 'MSComm1.PortOpen = False End ================================================= Public Sub RS232() Dim Instring As String Dim k1 As String Dim k2 As Variant ' Use COM as #9. Είναι ο αριθμός COM στον οποίο απεικονίζεται ο ακροδέκτης USB στον οποίο ' συνδέθηκε το Arduino MSComm1.CommPort = 9 ' 9600 baud, no parity, 8 data, and 1 stop bits. MSComm1.Settings = "9600,N,8,1" ' Tell the control to read entire buffer when Input ' is used. MSComm1.InputLen = 0 ' Open the port. MSComm1.PortOpen = True ' Fisrt message from Arduino Instring = MSComm1.Input txtrs232.text = Instring For counter = 1 To numofmeas ' κάνουμε μετρήσεις ' MSComm1.Output = "D" + Chr$(13) MSComm1.Output = "D" + "\n" ' Wait for data to come to the serial port from arduino Do DoEvents

Loop Until MSComm1.InBufferCount >= 5 ' Read the response data in the serial port from arduino. Instring = MSComm1.Input txtrs232.text = Instring ' k1 = Mid(Instring, 4, 6) ' k2 = Val(k1) k2 = Val(Instring) a(counter) = k2 ' τοποθετώ τις μετρήσεις σε πίνακα για ' προσωρινή αποθήκευση στη μνήμη RAM txtcounter.text = counter txttemp.text = k2 '--- ζωγραφίζω τα σημεία Picture1.PSet (counter, k2), vbred Next counter ' Close the serial port. MSComm1.PortOpen = False ========================================================= Private Sub cmdopen_click() Dim filename As String filename = InputBox("Δώστε το όνομα Αρχείου", "Αποθήκευση σε αρχείο",, _ 8000, 5000) Open filename For Input As 1 Input #1, numofmeas For counter = 1 To numofmeas ' διαβάζω μετρήσεις από αρχείο Input #1, counter, a(counter) ' ζωγραφίζω τις μετρήσεις Picture1.PSet (counter, a(counter)), vbred Next counter Close 1 ============================================================ Private Sub cmdsave_click() Dim filename As String filename = InputBox("Δώστε το όνομα Αρχείου στον δίσκο D..", "Αποθήκευση σε αρχείο",, _ 8000, 5000)

Open filename For Output As 1 Print #1, numofmeas For counter = 1 To numofmeas Print #1, counter, a(counter) Next counter Close 1 =========================================================== Private Sub Form_Load() ' ορίζω πόσες μετρήσεις θερμοκρασίας θα πάρω numofmeas = InputBox("Πόσες μετρήσεις θα κάνετε :", "Πλήθος μετρήσεων",, _ 8000, 5000) ReDim a(numofmeas) '---ρυθμίσεις γραφικών Picture1.ScaleMode = 0 Picture1.Scale (1, 5)-(numofmeas, 0) ' scale 0-5 Volts Picture1.BackColor = vbwhite Picture1.DrawWidth = 3 Picture1.AutoRedraw = True '--- ρυθμίσεις πεδίων κειμένου txtcounter.fontsize = 12 txtcounter.forecolor = vbblue txttemp.fontsize = 30 txttemp.forecolor = vbred ============================================================== ΚΑΛΗ ΕΠΙΤΥΧΙΑ