Κύκλωμα αυτοματισμού ψύξης θέρμανσης pic16f877a και Hyperterminal
Το κύκλωμα αυτό προορίζεται όταν ολοκληρωθεί να γίνει ένα μικρό υποσύστημα που θα ελέγχει την θερμοκρασία σ' 'ενα κλειστό χώρο. Οι ενεργοποιητές εδώ αποτελούνται από ρελέδες που θα ζεσταίνουν ή θα ψύχουν το χώρο κλείνοντας τις επαφές τους. Τα leds δείχνουν ποιο ρελέ είναι ενεργοποιημένο.
Το ULN2803 αναλαμβάνει να οδηγήσει τα τυλίγματα των ρελέδων με ανοικτού συλλέκτη εξόδους που διαθέτει και των διόδων προστασίας που πρέπει να υπάρχουν για να προστατεύουν τα τρανζίστορ οδήγησης από τις ανάστροφες τάσεις που προκαλούν τα πηνία των τυλιγμάτων.
Υπάρχει και κύκλωμα διεπαφής για την σειριακή θύρα ενός υπολογιστή με το ολοκληρωμένο MAX232 αλλά εδώ δεν το έχουμε συνδέσει διότι δεν δουλεύει η εξομοίωση με το 9 πιν κονέκτορα της σειριακής.
Καρδιά της σχεδίασης είναι ο επεξεργαστής της microchip o pic16f877a. Εδώ θα δουλέψει με εξωτερικό κρύσταλλο των 20MHz. Ένα αισθητήριο θερμοκρασίας LM35 της NATIONAL θα μετράει την θερμοκρασία του χώρου αφού θα περάσει από τον αναλογικό σε ψηφιακό μετατροπέα του pic με τη βοήθεια του λογισμικού την μεταδίδει στην σειριακή θύρα μετά τον χαρακτήρα '>'. Αμέσως μετά ο επεξεργαστής περιμένει οδηγίες με χαρακτήρες ASCII για να θερμάνει ή να ψύξει το χώρο. To πρόγραμμα που έχουμε ενσωματώσει περιμένει ASCII χαρακτήρες H, J για να ενεργοποιήσει και να αφοπλίσει τον ρελέ 7 όπου θα φροντίσει να ζεσταίνει το χώρο. Οι χαρακτήρες C και V για να ενεργοποιήσουν και να αφοπλίσουν τον ρελέ 6 αντίστοιχα για την ψύξη του χώρου.
Το ρελέ 7 και το ρελέ 6 παίρνουν οδήγηση από την πόρτα D του επεξεργαστή και συγκεκριμένα οι ακίδες D7 και D6 στους αριθμούς 30 και 29 αντίστοιχα.
Μελλοντικά οι χαρακτήρες θα έρχονται από το LABVIEW με σειριακή ή δικτυακή διεπαφή τώρα έχει δοκιμαστεί με το Ηyperterminal. To Ηyperterminal θα επικοινωνεί με την COM4 και το κύκλωμα με την COM3. Mε ειδικό πρόγραμμα οι θύρες αυτές δημιουργούνται και ενεργοποιούνται εικονικά και συνδέονται εικονικά προς χάριν της εξομοίωσης.
Κατεβάστε το πρόγραμμα δημιουργίας εικονικών θυρών
Το πρόγραμμα απλό και εύκολο υπάρχουν επεξηγήσεις για όλη την λειτουργία του.
Διαθέτει ρουτίνες για την αρχικοποίηση της σειριακής θύρας και την αρχικοποίηση του αναλογικο-ψηφιακού μετατροπέα 8 ειδόδων. Εδώ θα δουλέψουμε με την ΑΝ0 ακίδα νούμερο 2 για την μετατροπή της αναλογικής τάσης του αισθητηρίου.
Κατεβάστε όλη την εφαρμογή από εδώ
Βελτιώσαμε το κώδικα assembly και τώρα μέσα από το hyperterminal μπορούμε να ανοίξουμε και να κλείσουμε και τους 8 ρελέδες. Πάντα με κεφαλαία λατινικά γράμματα. Συγκεκριμένα
Η και J το ρελέ 8
C και V το ρελέ 7
Q και W το ρελέ 6
A και S το ρελέ 5
Z και X το ρελέ 4
E και R το ρελέ 3
D και F το ρελέ 2
Y και U το ρελέ 1
Πρόσθετα η τιμή που επιστρέφει ο μετατροπέας μετατρέπεται σε χαρακτήρες ascii και εμφανίζεται σε κανονική μορφή, πχ. επειδή ο μετατροπέας του pic16f877a είναι 10bit και το αποτέλεσμα αποθηκεύεται σε δυο καταχωρητές των 8 μπιτ, κατά την μετατροπή του μειώνουμε την διακριτική του ικανότητα σε 8 μπιτ και η τιμή της μετατροπής αποθηκεύεται σε έναν καταχωρητή δηλαδή στην μεταβλητή ANALOG. οπότε ο δεκαεξαδικός αυτός αριθμός αν δεν μετατραπεί σε ascii θα εμφανιστεί κάποιο τυχαίο σύμβολο. Τελικά η απάντηση του pic είναι >032 μέσα από το hyperterminal και σε καμία περίπτωση αυτή η τιμή δεν είναι η τάση που επιστρέφει το LM35 και οπωσδήποτε δεν αντιπροσωπεύει την θερμοκρασία που μετράει.
Η σωστή απεικόνηση της θερμοκρασίας θα γίνει σε επόμενες αναβαθμίσεις του λογισμικού.
Κατεβάστε όλη την εφαρμογή από εδώ v2
Γυρίσαμε το κώδικα από assembly σε CCS C προκειμένου να λύσουμε τα προβλήματα απεικόνισης της θερμοκρασίας. Mέσα στο συμπιεσμένο αρχείο υπάρχει ο δεκαεξαδικός κώδικας για να μπορέσετε να προγραμματίσετε τον pic. Εάν θελήσετε να αλλάξετε τον κώδικα θα χρειαστείται compiler CCS C.
Εξομοίωση μπορεί να γίνει με το hyperterminal και το πρόγραμμα εικονικών θυρών. Εάν κατασκευαστεί η πλακέτα τότε ο έλεγχος θα γίνεται μέσω πραγματικής σειριακής θύρας com1 και κάποιο πρόγραμμα που θα κάνει χρέη τερματικού για την αποστολή χαρακτήρων εδώ προτείναμε και δοκιμάσαμε με hyperterminal. Σε λίγο θα ανεβάσουμε και τον έλεγχο της πλακέτας από άλλο λογισμικό Labview για να απεικονίσουμε με εικονικά όργανα την θερμοκρασία του χώρου, με κάποιο κουμπί το οποίο θα ρυθμίζει την θερμοκρασία στην οποία θα θέλουμε να ζεστάνουμε το χώρο ενός δωματίου του σπιτιού μας ή ενός επαγγελματικού χώρου.
Αρκετούς διακόπτες οι οποίοι θα ενεργοποιούν τους υπόλοιπους ρελέδες τις πλακέτας και αυτοί με την σειρά τους θα ενεργοποιούν φωτισμούς και διάφορες συσκευές.