Σκοπός Μάθημα 2 Δραστηριότητα 1 Μέτρηση Θερμοκρασίας με τον αισθητήρα TMP36. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Βασική δομή ενός προγράμματος στο LabVIEW. Εμπρόσθιο Πλαίσιο (front panel). Σχεδίαση του front panel για ένα πρόγραμμα Συλλογής & Επεξεργασίας Μετρήσεων. Δομικό Διάγραμμα (block diagram). Δομές προγραμματισμού. Η δομή Επανάληψης. Συνάρτηση δημιουργίας τυχαίων αριθμών. 1
Μέρος Α : Σκοπός και Περιγραφή της Άσκησης 2.1 ΕΠΙΔΙΩΞΗ ΤΗΣ ΑΣΚΗΣΗΣ Σ αυτή την άσκηση, εξετάζουμε την επικοινωνία του υπολογιστή με αισθητήρες, μέσα από έναν μικροελεγκτή, μετρώντας θερμοκρασία με τον αισθητήρα και παριστάνοντας / αναλύοντας, αυτές τις τιμές θερμοκρασίας. Μέσα από τη μέτρηση θερμοκρασίας / τη διάταξη που δημιουργούμε για να μετρούμε θερμοκρασία και αυτόματα, να παίρνουμε στον υπολογιστή τις τιμές θερμοκρασίας, δημιουργούμε ένα απλό, αλλά ολοκληρωμένο Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων και βλέπουμε στη πράξη την επικοινωνία του υπολογιστή με αισθητήρες και γενικά, με αναλογικές συσκευές που περιλαμβάνει: Την μετάδοση των τιμών / αναλογικών τιμών από τον αισθητήρα (ες) στον υπολογιστή και την επεξεργασία τους, στον υπολογιστή. Την επίδραση / τη δυνατότητα της επίδρασης του υπολογιστή στο εξωτερικό περιβάλλον, στη βάση της ανάλυσης των μετρήσεων από τους αισθητήρες, εκτελώντας λειτουργίες, όπως η περιστροφή ενός κινητήρα που σ αυτή την άσκηση παριστάνονται από το αναβόσβημα μίας LED. Τη διαρκή / συνεχή μετάδοση σημάτων από τους αισθητήρες στον υπολογιστή και εντολών από τον υπολογιστή στους αισθητήρες / κινητήρες σε πραγματικό χρόνο. 2.2 To Πείραμα Σ αυτή την άσκηση, επιχειρούμε να μετρήσουμε την εξωτερική θερμοκρασία, χρησιμοποιώντας τον αισθητήρα θερμοκρασίας TMP36. 2.3 Πειραματική Διάταξη Στη σχεδίαση αυτού του συστήματος, βλέπουμε / χρειάζεται να λύσουμε κάποια βασικά σχεδιαστικά προβλήματα των συνθετότερων συστημάτων μέτρησης. Το πρώτο από αυτά τα προβλήματα είναι πως ο αισθητήρας θερμοκρασίας λειτουργεί, δημιουργώντας μία αναλογική τάση, σ έναν από τους ακροδέκτες του που είναι ανάλογη της εξωτερικής θερμοκρασίας. Πως ο υπολογιστής / ο μικροεπεξεργαστής που επεξεργάζεται μόνον ψηφιακά σήματα / ψηφιακή πληροφορία, στη μορφή παλμών 0 V ή 5 V, μπορεί να διαβάσει μία αναλογική τάση? Υπάρχουν διαφορετικοί τρόποι για να συνδέουμε αναλογικές συσκευές στον υπολογιστή και να μετατρέπουμε τα σήματα αυτών των συσκευών σε μία μορφή που ο υπολογιστής μπορεί να διαβάζει, επιτρέποντας την επικοινωνία του υπολογιστή με αυτές τις συσκευές. Σ αυτή την άσκηση, για την επικοινωνία του υπολογιστή με αναλογικές συσκευές αισθητήρες και τη μετάδοση των σημάτων αυτών των συσκευών στον 2
Εικόνα 1: Πειραματική διάταξη, για τη μέτρηση θερμοκρασίας. υπολογιστή, χρησιμοποιούμε τον Arduino. Ο Arduino αποτελεί έναν απλό και πρακτικό σύστημα / τρόπο, για να συνδέουμε τον υπολογιστή σε αναλογικές συσκευές που μετρούν τον εξωτερικό κόσμο. Παρέχει σ αυτές τις αναλογικές συσκευές, συνεχή τάση V cc = 5 V, μέσα από τη θύρα (output pin) V cc, ground (GND) και αναλογικές εισόδους, όπου μπορούμε να συνδέουμε τον ακροδέκτη εξόδου των αναλογικών συσκευών. Συνδέεται πολύ εύκολα στον υπολογιστή. Μπορεί να μετατρέπει τις αναλογικές 3
Εικόνα 2: Το πρόγραμμα, για τη μέτρηση θερμοκρασίας. τάσεις στις εισόδους του σε ψηφιακές και να μεταφέρει τις ψηφιοποιημένες τάσεις, στον υπολογιστή, μέσα από την σύνδεση του, στη USB θύρα του υπολογιστή που λειτουργεί σαν σειριακή θύρα. 2.4 Η Πειραματική Διάταξη Συνδέουμε τον έναν ακραίο ακροδέκτη του TMP36, στην έξοδο V cc = 5 V και τον άλλο ακραίο ακροδέκτη στο GND του Arduino, όπως παριστάνεται στην Εικόνα 1. Συνδέουμε τον μεσαίο ακροδέκτη, όπου δημιουργείται μία τάση ανάλογη της εξωτερικής θερμοκρασίας στην αναλογική θύρα 0 του Arduino. Η συνδεσμολογία της μέτρησης θερμοκρασίας είναι πολύ απλή και παριστάνεται στην Εικόνα 1. 4
Εικόνα 3: Οι βασικές λειτουργίες του προγράμματος, για τη μέτρηση θερμοκρασίας. 2.5 Το Πρόγραμμα Όλη η διαδικασία της μέτρησης της εξωτερικής θερμοκρασίας με τον αισθητήρα LM 335 και της μετάδοσης των τιμών θερμοκρασίας, δηλαδή της ψηφιοποιημένης τάσης από τον αισθητήρα, στον υπολογιστή, ρυθμίζεται από ένα πρόγραμμα που εκτελείται στον μικροεπεξεργαστή του Arduino. Το πρόγραμμα για τη μέτρηση της θερμοκρασίας και οι βασικές λειτουργίες του προγράμματος, παριστάνονται στην Εικόνα 2. Η διαδικασία εκτέλεσης του προγράμματος είναι απλή. Αφού γράψουμε το πρόγραμμα στο αναπτυξιακό περιβάλλον του Arduino, το φορτώνουμε στον Arduino, επιλέγοντας την εντολή: Αρχείο Φόρτωση Τότε το πρόγραμμα θα αρχίσει να εκτελείται, εμφανίζοντας στη σειριακή οθόνη του υπολογιστή τις τιμές θερμοκρασίας που παίρνει / διαβάζει από τον αισθητήρα 5
Εικόνα 4: Ενδεικτικά αποτελέσματα, από τη μέτρηση θερμοκρασίας. θερμοκρασίας (Εικόνα 4). Όμως, οι τιμές που παίρνουμε στη σειριακή οθόνη του υπολογιστή δεν είναι ούτε τιμές θερμοκρασίας, ούτε τιμές τάσης. Η εντολή analogread διαβάζει τη τάση στην είσοδο 0 του Arduino, κάθε 500 ms και μετατρέπει αυτή τη τάση σε μία τιμή στο πεδίο τιμών [0, 1023]. Έτσι, για παράδειγμα η τιμή 153 που παίρνουμε στην σειριακή οθόνη του υπολογιστή από τη μέτρηση θερμοκρασίας, αντιστοιχεί σε μία τάση: V in = (153 / 1023) * 5 V = 0,7478 V = 747,8 mv Πως μετατρέπουμε αυτή τη τάση σε μία τιμή θερμοκρασίας? Στη βάση των χαρακτηριστικών του LM 335, κάθε ένας βαθμός C αντιστοιχεί σε 10 mv τάσης από τον LM 335. H χαρακτηριστική καμπύλη για τον LM 335, παριστάνεται στην Εικόνα 5. Επομένως, αν από τον αισθητήρα θερμοκρασίας παίρνουμε μία τάση V(t), μπορούμε 6
Εικόνα 5: Η χαρακτηριστική καμπύλη του LM 335.. να μετατρέψουμε αυτή τη τιμή τάσης σε θερμοκρασία, από την εξίσωση της χαρακτηριστικής καμπύλης του αισθητήρα: T = 100 * (V 0.5) 7
Εικόνα 6: Το πρόγραμμα, για να αναβοσβήνει μία LED... Εφαρμογή 3.3 Τροποποιείστε τη διάταξη μέτρησης θερμοκρασίας, συνδέοντας μία LED, σ αυτή τη διάταξη, όπως παριστάνεται στην Εικόνα 1. Το πρόγραμμα μέτρησης θερμοκρασίας, θα πρέπει να ανάβει τη LED, όταν η θερμοκρασία πέφτει κάτω από ένα καθορισμένο όριο. Για τη λειτουργία της LED, μπορούμε να χρησιμοποιήσουμε το πρόγραμμα, στην Εικόνα 6. 8