ΕΛΕΓΧΟΣ ΚΑΥΣΤΗΡΑ ΠΕΤΡΕΛΑΙΟΥ & ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΧΩΡΟΥ



Σχετικά έγγραφα
Εφαρμογές μικροελεγκτών

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

WDT και Power Up timer

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Καταχωρητής STATUS. IRP: Bit επιλογής περιοχής μνήμης (Bank) για την έμμεση διευθυνσιοδότηση 1= Bank2, Bank3 0= Bank0, Bank1

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

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

Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

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

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

Μάθημα 4: Κεντρική Μονάδα Επεξεργασίας

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

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

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Α Γενικού Λυκείου (Μάθημα Επιλογής)

- Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών

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

Εντολές PIC16F rrf <όνομα καταχωρητή>,a a=f ή a=w H εντολή πραγματοποιεί ολίσθηση προς τα δεξιά του καταχωρητή που ακολουθεί μέσω κρατουμένου

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

ΣΥΝΘΕΤΑ ΣΥΣΤΗΜΑΤΑ ΑΥΤΟΜΑΤΙΣΜΟΥ. Μετά την ολοκλήρωση της ενότητας αυτής θα μπορείτε:

ΠΑΡΟΥΣΙΑΣΗ ΤΟΥ ΕΡΓΑΣΤΗΡΙΑΚΟΥ ΜΑΘΗΜΑΤΟΣ «ΣΥΣΤΗΜΑΤΑ ΨΗΦΙΑΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ» ή ΠΡΟΓΡΑΜΜΑΤΙΖΟΝΤΑΣ ΤΟΝ ΜΙΚΡΟΕΛΕΓΚΤΉ PIC16F877 ΤΗΣ MICROCHIP TECHNOLOGY INC

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

Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ

ΘΕΜΑ : ΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ DIGITAL ELECTRONICS

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

Δομή Ηλεκτρονικού υπολογιστή

ΕΙΣΑΓΩΓΗ. Αρχιτεκτονική Η/Υ ΗΜΟΣ ΜΠΟΛΑΝΑΚΗΣ

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

Μάθημα 3.2: Κεντρική Μονάδα Επεξεργασίας

Κεφάλαιο Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων.

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

Οδηγίες χρήσης πίνακα ελέγχου λεβήτων pellet - βιομάζας

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

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

Σελίδα 1 από 11. Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για:

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

; Γιατί είναι ταχύτερη η λήψη και αποκωδικοποίηση των εντολών σταθερού μήκους;

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM).

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

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ

Στοιχεία από την αρχιτεκτονική των μικροϋπολογιστών

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

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

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

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

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

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

ΠΛΗ10 Κεφάλαιο 2. ΠΛΗ10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: 2 2.1: Bασική Δομή του Υπολογιστή

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς

4ο Εργαστήριο: ΣΥΣΤΗΜΑΤΑ ΘΕΡΜΑΝΣΗΣ

Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή

ΘΕΜΑ : ΗΛΕΚΤΡΟΝΙΚΗ ΜΝΗΜΗ ΚΑΙ ΜΙΚΡΟΕΛΕΓΚΤΕΣ. ΔΙΑΡΚΕΙΑ: 1 περίοδος

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

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

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

ΑΝΤΙΣΤΑΘΜΙΣΗ (ανακεφαλαίωση με επιπλέον πληροφορίες)

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

*Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους.

Μάθημα 8: Επικοινωνία Συσκευών με τον Επεξεργαστή

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

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

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

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

ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ)

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

ΤΟ ΕΣΩΤΕΡΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ

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

ΕΠΙΤΟΙΧΟΣ ΛΕΒΗΤΑΣ ΑΕΡΙΟΥ EVOLUTION IN COMFORT

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

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

Αρχιτεκτονική Μνήμης

Πληροφορική Ι. Μάθημα 6 ο Εκτέλεση πράξεων, Αρχιτεκτονική Η/Υ. Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας

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

Βασική δοµή και Λειτουργία Υπολογιστή

Υλικό Υπολογιστών (Hardware) ΜΥΥ-106 Εισαγωγή στους Η/Υ και Πληροφορική

Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ)

VICTRIX 24 ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΗΣ

VITODENS 050-W Presentation 2 Version

1. Από ποια μέρη αποτελείται η περιστροφική αντλία πετρελαίου ; Πώς διανέμεται το καύσιμο στους διάφορους κυλίνδρους ;

Σύστημα τηλεχειρισμού με χρονοθερμοστάτη για λέβητες αερίου

ΗΛΕΚΤΡΙΚΟ ΣΥΣΤΗΜΑ ΑΥΤΟΚΙΝΗΤΟΥ

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

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»

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

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

ΣΥΝΟΨΗ ΠΤΥΧΙΑΚΗΣ ΕΡΓΑΣΙΑΣ

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

Κεφάλαιο 2.4: Εργασία με εικονίδια

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

Οργάνωση και Αρχιτεκτονική Υπολογιστών. Κεφάλαιο 7.4

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

Αρχιτεκτονικη υπολογιστων

Μάθημα 3.8 Τεχνικές μεταφοράς δεδομένων Λειτουργία τακτικής σάρωσης (Polling) Λειτουργία Διακοπών DMA (Direct Memory Access)

ΚΑΥΣΤΗΡΕΣ ΕΞΑΤΜΙΣΗΣ ΚΑΥΣΤΗΡΕΣ ΠΕΡΙΣΤΡΟΦΗΣ ( ΦΥΓΟΚΕΝΤΡΙΚΟΙ) ΚΑΥΣΤΗΡΕΣ ΔΙΑΣΚΟΡΠΙΣΜΟΥ

ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΗΣ

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

ΔΙΑΚΟΠΕΣ PΙC16F887(INTERRUPTS) Όταν σηματοδοτηθεί μια διακοπή στον PIC16F887, ο έλεγχος του προγράμματος μεταφέρεται στο τμήμα κώδικα που βρίσκεται

Αρχιτεκτονική Eckert-von Neumann. Πως λειτουργεί η ΚΜΕ; Κεντρική μονάδα επεξεργασίας [3] ΕΠΛ 031: ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Υπολογιστές Ι. Άδειες Χρήσης. Εισαγωγή. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Transcript:

ΑΤΕΙ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ Τμήμα Μηχανικών Πληροφορικής ΤΕ ΕΛΕΓΧΟΣ ΚΑΥΣΤΗΡΑ ΠΕΤΡΕΛΑΙΟΥ & ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΧΩΡΟΥ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Κόσσυβας Σωτήριος (ΑΜ: Τ-885) Επιβλέπων: Πετρέλλης Νικόλαος, επίκουρος καθηγητής ΛΑΡΙΣΑ 2014

«Εγώ ο/η Κόσσυβας Σωτήριος, δηλώνω υπεύθυνα ότι η παρούσα Πτυχιακή Εργασία με τίτλο <έλεγχος καυστήρα πετρελαίου & περιβάλλοντος χώρου> είναι δική μου και βεβαιώνω ότι: Σε όσες περιπτώσεις έχω συμβουλευτεί δημοσιευμένη εργασία τρίτων, αυτό επισημαίνεται με σχετική αναφορά στα επίμαχα σημεία. Σε όσες περιπτώσεις μεταφέρω λόγια τρίτων, αυτό επισημαίνεται με σχετική αναφορά στα επίμαχα σημεία. Με εξαίρεση τέτοιες περιπτώσεις, το υπόλοιπο κείμενο της πτυχιακής αποτελεί δική μου δουλειά. Αναφέρω ρητά όλες τις πηγές βοήθειας που χρησιμοποίησα. Σε περιπτώσεις που τμήματα της παρούσας πτυχιακής έγιναν από κοινού με τρίτους, α- ναφέρω ρητά ποια είναι η δική μου συνεισφορά και ποια των τρίτων. Γνωρίζω πως η λογοκλοπή αποτελεί σοβαρότατο παράπτωμα και είμαι ενήμερος(-η) για την επέλευση των νομίμων συνεπειών» < υπογραφή > < ονοματεπώνυμο >

Εγκρίθηκε από την τριμελή εξεταστική επιτροπή Τόπος: Ημερομηνία: ΕΠΙΤΡΟΠΗ ΑΞΙΟΛΟΓΗΣΗΣ 1. 2. 3.

Περίληψη Η παρούσα εργασία έχει ως στόχο της τη μελέτη ανάπτυξης, σχεδιασμού και εξομοίωσης ενός αυτοματοποιημένου συστήματος ελέγχου καυστήρα πετρελαίου και του περιβάλλοντος χώρου με τη χρήση ενός μικροελεγκτή. Στόχος είναι να γίνει επίδειξη του τρόπου με τον οποίο προγραμματίζονται, καθώς και των δυνατοτήτων που προσφέρουν γενικότερα οι μικροελεγκτές της Microchip. Οι δυνατότητες επεξεργασίας και εκτέλεσης πολύπλοκων αλγορίθμων καθιστούν απαραίτητη τη χρήση ενός τέτοιου συστήματος, που προσαρμόζεται στον έλεγχο εξωτερικών στοιχείων και την επεξεργασία δεδομένων από εξωτερικά στοιχεία εισόδου. Η ανάπτυξη ενός τέτοιου συστήματος βασίστηκε στη χρήση ενός σύγχρονου μικροελεγκτή, του PIC16F690. Η διάρθρωση του κειμένου είναι η ακόλουθη: Στο 1ο κεφάλαιο έγινε μια εισαγωγή σχετικά με το πετρέλαιο ως μέθοδο θέρμανσης. Στη συνέχεια ακολουθεί η περιγραφή λεβητοστασίου, λέβητα και καυστήρα πετρελαίου. Στο 2ο κεφάλαιο περιγράφονται οι Μικροϋπολογιστές και μικροελεγκτές ως προς τη δομή τους, τα χαρακτηριστικά τους και τις εφαρμογές τους. Επίσης περιγράφεται ο Μικροελεγκτής PIC16F690 που χρησιμοποιήθηκε στην παρούσα εργασία, ως προς τα ιδιαίτερα χαρακτηριστικά του. Στο 3ο κεφάλαιο γίνεται μια περιγραφή του απαιτούμενου υλικού ανάπτυξης το οποίο είναι ο προγραμματιστής PICkit 2 και το λογισμικό MPLAB Στο 4ο κεφάλαιο περιγράφεται το σύστημα ελέγχου καυστήρα πετρελαίου με μικροελεγκτή, η προσομοίωση του συστήματος ελέγχου καυστήρα και δίνεται αναλυτικά η δομή του κώδικα που χρησιμοποιήθηκε για τον προγραμματισμό της. -i-

Ευχαριστίες Θα ήθελα να ευχαριστήσω θερμά τον υπεύθυνο καθηγητή μου κ. Πετρέλλη Νικόλαο για την πολύτιμη βοήθειά του στην εκπόνηση αυτής της μελέτης. Επίσης θα ήθελα να ευχαριστήσω θερμά και την οικογένειά μου, για την συμπαράσταση της σε όλη τη διάρκεια των σπουδών μου. Ονοματεπώνυμο ημερομηνία -2-

ΠΕΡΙΕΧΌΜΕΝΑ Κεφάλαιο 1 ο Ιστορική αναδρομή 1.1 Λεβητοστάσιο.5 1.1.1. Καυστήρας...6 1.1.2. Βασικά μέρη ενός καυστήρα πετρελαίου.7 1.1.2.1 Ακροφύσιο (Μπεκ)...7 1.1.2.2 Αντλία πετρελαίου...7 1.1.2.3 Ανεμιστήρας..8 1.1.2.4 Σύστημα ανάφλεξης μείγματος....8 1.1.2.5 Φωτοκύτταρα.8 1.1.2.6 Κεφαλή καύσης.9 1.1.2.7 Ηλεκτρονική διάταξη ελέγχου..9 1.1.3 Φάσεις λειτουργίας καυστήρα...9 1.2 Λέβητας..10 1.2.1 Πίνακας λέβητα...10 1.3 Κυκλοφορητής νερού...10 1.4 Δεξαμενή καυσίμων...11 1.5 Αισθητήρες καπνού...11 1.6 Συστήματα ελέγχου...12 Κεφάλαιο 2 ο Μικροελεγκτές 2.1 Μικροεπεξεργαστές 13 2.2 Μικροελεγκτής 13 2.2.1 Διαφορές από τον μικροεπεξεργαστή...14 2.3 Εφαρμογές των μικροελεγκτών...14 2.4 Χαρακτηριστικά της αρχιτεκτονικής των μικροελεγκτών..15 2.4.1 Αρχιτεκτονική VON NEUMAN...15 2.4.2 Αρχιτεκτονική HARVARD..16 2.5 Αρχιτεκτονική CISC...17-3-

2.6 Μικροελεγκτές αρχιτεκτονικής RISC..18 2.7 Δομή Μικροελεγκτή PIC.. 18 2.7.1 Κεντρική Μονάδα Επεξεργασίας...20 2.7.2 Καταχωρητές..20 2.7.3 Μνήμη 21 2.8 Λειτουργίες διακοπτών..22 2.9 Χρονιστές...22 2.10 Περιφερειακές Μονάδες..22 2.11 Τύποι εντολών PIC..23 2.12 Κατηγορίες μικροελεγκτών..24 2.13 Μικροελεγκτής PIC 16F690....24 2.14 Αρχιτεκτονική του PIC 16F690..25 2.15 Χρονιστής.26 2.16 Αναλογικοί Συγκριτές..26 Κεφάλαιο 3 ο Περιγραφή Απαιτούμενου Υλικού Ανάπτυξης 3.1 Οι προγραμματιστές..27 3.2 Προγραμματιστής PICKit 2..27 3.2.1 Διαδικασία προγραμματισμού...28 3.3.1 Λογισμικό MPLAB.29 Κεφάλαιο 4 ο Προσομοίωση 4,1 Αρχιτεκτονική Συστήματος..31 4.2 Λογισμικό Συστήματος...33 4.3 Ανάλυση Κώδικα.36 4.4 Προσομοίωση...40 4.5 Λογισμικό για την Αναπτυξιακή Πλακέτα PICKit 2...43 Βιβλιογραφία...51-4-

ΚΕΦΑΛΑΙΟ 1 o Ιστορική αναδρομή Ο άνθρωπος, από την αρχή της εμφάνισής του πάνω στη γη, σαν έλλογο ον ξεχώρισε από τα υπόλοιπα είδη του ζωικού βασιλείου. Χρησιμοποίησε από πολύ νωρίς τεχνικές και μεθόδους για να βελτιώσει τις πολύ δύσκολες τότε συνθήκες της ζωής του. Προσπάθησε να ελέγξει και να προσαρμόσει τις συνθήκες του άμεσου περιβάλλοντός του έτσι ώστε να έχει το καλύτερο δυνατό επίπεδο διαβίωσης. Η επιτακτική ανάγκη να προστατευτεί από το κρύο τον ώθησε να ανακαλύψει πολύ σύντομα τη φωτιά. Στη συνέχεια προσπάθησε να μεταφέρει τη φλόγα στη σπηλιά του καταφέρνοντας να δημιουργήσει έστω και σε πολύ μικρό βαθμό ελεγχόμενες συνθήκες θερμοκρασίας στο μέρος, όπου διέμενε. Από την απλή χρήση της εστίας φωτιάς στους προϊστορικούς χρόνους, κατέληξε στον 20ο αιώνα να έχει καθιερώσει τα συστήματα θέρμανσης (καλοριφέρ) ως κύρια και σχεδόν αποκλειστική μέθοδο θέρμανσης ενός κλειστού χώρου. Με την εξέλιξη της τεχνολογίας ο άνθρωπος είναι ικανός να ελέγχει και να μεταβάλλει τις συνθήκες θερμοκρασίας στο περιβάλλον όπου ζει. Υπάρχουν πολλοί τρόπο θέρμανσης. Όμως για αρκετά πλέον χρόνια το πετρέλαιο θέρμανσης αποτελεί την πιο διαδεδομένη μορφή ενέργειας για την θέρμανση κτιρίων. Με τη σωστή επιλογή των συσκευών θέρμανσης μπορούμε να είμαστε βέβαιοι για τη βέλτιστη απόδοση της εγκατάστασης, τη μεγιστοποίηση της διάρκειας της ζωής της, την εξοικονόμηση του καυσίμου και την προστασία του περιβάλλοντος. Ο στόχος των σύγχρονων συστημάτων θέρμανσης είναι να δημιουργούν κατάλληλες και συνεχείς συνθήκες θερμοκρασιακής άνεσης κατά τη διάρκεια της λειτουργίας τους και συγκεκριμένα κατά τη διάρκεια της χειμερινής περιόδου. Τα συστήματα θέρμανσης παράγουν ζεστό νερό για θέρμανση χώρων και σε πολλά συστήματα παράγουν ζεστό νερό χρήσης. 1.1 Λεβητοστάσιο Το Λεβητοστάσιο είναι ο χώρος εκείνος του κτιρίου, όπου είναι τοποθετημένος όλος ο εξοπλισμός που είναι αναγκαίος για την ασφαλή παρασκευή του ζεστού νερού καθώς και τη -5-

διανομή του προς ολόκληρο το δίκτυο. ο εξοπλισμός ενός συστήματος θέρμανσης που τοποθετείται σ ένα λεβητοστάσιο είναι : à Ο καυστήρας. à Ο λέβητας. àο κυκλοφορητής νερού àο καπναγωγός. àτο κλειστό δοχείο διαστολής. àτα συστήματα ελέγχου της καύσης. àτα συστήματα ασφαλείας. àαισθητήριο καπνού àο αυτόματος πλήρωσης. àο ηλεκτρολογικός εξοπλισμός κλπ. 1.1.1 Καυστήρας Η συσκευή η οποία είναι προσαρμοσμένη πάνω στο λέβητα και επιτυγχάνει την ανάμειξη του καύσιμου υλικού, (στερεού,υγρού ή αερίου) με τον αέρα έτσι ώστε να πραγματοποιείται αλλά και να συντηρείται η καύση, ονομάζεται καυστήρας. Ξεχωρίζουμε τους καυστήρες α- νάλογα με το είδος του καυσίμου αλλά και τον τρόπο λειτουργία τους. Έτσι έχουμε καυστήρες 1) ελαφριού πετρελαίου (diesel) 2) ακάθαρτου πετρελαίου (μαζούτ) 3) φυσικού αερίου, υγραερίου, και φωταερίου, 4) ειδικών καυσίμων (όπως λιπαντικά ή βιομάζα) και των 5) μικτών καυσίμων. Καυστήρες πετρελαίου είναι οι καυστήρες που χρησιμοποιούν ως καύσιμο το πετρέλαιο. Εικόνα 1.1 καυστήρας πετρελαίου -6-

1.1.2 Τα βασικά μέρη ενός καυστήρα πετρελαίου Σήμερα υπάρχουν διάφοροι τύποι καυστήρων πετρελαίου. Η αρχιτεκτονική λειτουργίας τους όμως είναι η ίδια. Έχουν επίσης πολλές ομοιότητες στον εξοπλισμό τους. 1.1.2.1 Ακροφύσιο (μπέκ) Το ακροφύσιο (μπεκ) είναι ένα πολύ βασικό μηχανολογικό εξάρτημα του συστήματος τροφοδοσίας του καυστήρα. Σκοπός του είναι ο ψεκασμός του καυσίμου μέσα στο λέβητα σε μορφή νέφους σταγονιδίων. Ο ψεκασμός του καυσίμου σε σταγονίδια βοηθά στην ταχύτερη εξαέρωση αυτού και ταυτόχρονα στην ευκολότερη ανάμειξη του με τον καυσιγόνο ατμοσφαιρικό αέρα. Ο κάθε λέβητα δέχεται τυποποιημένη σειρά αντίστοιχων μπέκ. Εικόνα 1.2: ακροφύσιο καυστήρα 1.1.2.2 Αντλία πετρελαίου Είναι η συσκευή που αναρροφά πετρέλαιο θέρμανσης από τη δεξαμενή με σωληνώσεις, και έχει ως σκοπό να στέλνει το πετρέλαιο με πίεση στο λέβητα μέσω του ακροφυσίου (μπέκ) του καυστήρα. Από το ακροφύσιο εκτοξεύεται και διασκορπίζεται σε πολύ μικρά σταγονίδια στο λέβητα. Η κίνηση της αντλίας γίνεται με τη βοήθεια κατάλληλου ηλεκτροκινητήρα, ο κινητήρας μπορεί να είναι ασύγχρονος τριφασικός (3Φ) βραχυκυκλωμένου δρομέα (ΑΤΚ) η ασύγχρονος μονοφασικός (1Φ) βραχυκυκλωμένου δρομέα (ΑΜΚ). Εικόνα 1.3: αντλία πετρελαίου -7-

1.1.2.3 Ανεμιστήρας Είναι μια συσκευή η οποία εκτελεί δύο λειτουργίες αφ ενός τροφοδοτεί το πετρέλαιο με την κατάλληλη ποσότητα αέρα (οξυγόνου) η οποία είναι απαραίτητη για τη σωστή καύση και αφ εταίρου παρέχει την απαραίτητη πίεση για την διοχέτευση των καυσαερίων στην καπνοδόχο. Εικόνα 1.4: ανεμιστήρας καυστήρα 1.1.2.4 Σύστημα ανάφλεξης μείγματος Αποτελείται από το μετασχηματιστή ανύψωσης τάσης, ο οποίος ανυψώνει την τάση στα 8 με 10 kv και από Τα ηλεκτρόδια, στα οποία εφαρμόζεται η ανυψωμένη τάση του μετασχηματιστή με αποτέλεσμα τη δημιουργία σπινθήρα, ο οποίος προκαλεί ανάφλεξη του μείγματος αέρα πετρελαίου. Εικόνα 1.5: μετασχηματιστής εικόνα 1.6: ηλεκτρόδια καυστήρα 1.1.2.5 Φωτοκύτταρο Είναι το αισθητήριο που αντιλαμβάνεται την ύπαρξη φλόγας στο θάλαμο καύσης και κατόπιν ενημερώνει την ηλεκτρονική διάταξη ελέγχου. Στην περίπτωση κατά την οποία δεν υπάρχει φλόγα για κάποιο χρονικό διάστημα συνήθως μέχρι 2 λεπτά, ανάλογα με τη ρύθμιση που έχουμε κάνει, διακόπτει τη λειτουργία του καυστήρα. -8-

Η χρησιμοποίηση του φωτοκύτταρου είναι απαραίτητη καθώς σε περίπτωση μη ύπαρξης φλόγας στο θάλαμο καύσης, μαζεύεται μεγάλη ποσότητα πετρελαίου, η οποία κατά την έναρξη λειτουργίας επιφέρει έκρηξη. Εικόνα 1.7: φωτοκύτταρο 1.1.2.6 Κεφαλή καύσης Εξασφαλίζει την πλήρη ανάμιξη του καυσίμου με τον αέρα, τη σταθεροποίηση της φλόγας και γενικότερα την ικανοποιητική λειτουργίας της καύσης. Το σημαντικότερο στοιχείο της κεφαλής της καύσης είναι ο "σταθεροποιητής" ή δίσκο ανάμιξης. 1.1.2.7 Ηλεκτρονική διάταξη ελέγχου Είναι η διάταξη η οποία συντονίζει και ελέγχει τη λειτουργία του καυστήρα. 1.1.3 Φάσεις λειτουργίας καυστήρα Ξεκίνημα του καυστήρα: Αρχίζει η λειτουργία του ανεμιστήρα προσαγωγής αέρα και α- νοίγει το σχετικό ρυθμιστικό διάφραγμα (ντάμπερ). Το καύσιμο, αφού διέλθει από κάποιο φίλτρο, οδηγείται απ' ευθείας στο ακροφύσιο. Ανάμιξη και εξαέρωση : το καύσιμο εκσφενδονίζεται με πίεση και με μορφή λεπτών σταγονιδίων στον χώρο καύσης και αναμιγνύεται πλήρως με στροβολίζοντα αέρα. Έναυση : ελάχιστα δευτερόλεπτα μετά την έναρξη ροής καυσίμου, ρεύμα υψηλής τάσης που προέρχεται από τον μετασχηματιστή προκαλεί στα ηλεκτρόδια ηλεκτρική εκκένωση (σπινθήρα), δια του οποίου επιτυγχάνεται η έναυση. Διακοπή λειτουργίας: Για την διακοπή λειτουργίας του καυστήρα πρέπει πρώτα να διακοπεί η ροή του καυσίμου και σχεδόν αμέσως μετά διακόπτετε η ροή του αέρα και κλείνει το σχετικό διάφραγμα (ντάμπερ). -9-

1.2 Λέβητας Ο λέβητας είναι μία μεταλλική κατασκευή στην οποία γίνεται η μετάδοση της θερμότητας που παράγεται από την καύση του καυσίμου, σε ένα ρευστό το οποίο συνήθως στα συστήματα θέρμανσης είναι το νερό. Οι λέβητες κεντρικής θέρμανσης διακρίνονται σε διάφορα είδη, ανάλογα με το υλικό κατασκευής τους, τη δομή, τα λειτουργικά χαρακτηριστικά, το μέγεθος κ.α. 1.2.1 Τεχνικά χαρακτηριστικά λεβήτων Βασικά τεχνικά χαρακτηριστικά ενός λέβητα είναι τα παρακάτω : Το υλικό κατασκευή. Χυτοσιδήρου (μαντεμένιους), Χαλύβδινους. Η θερμική τους ισχύ (kcal/h.) Μικρούς λέβητες, όταν η θερμική ισχύς τους είναι κατώτερη των 60 kw (52.000 kcal/h). Μεσαίου μεγέθους λέβητες, όταν η θερμική ισχύς τους κυμαίνεται από 60 kw έως 350 kw (52.000-300.000 kcal/h). Μεγάλους λέβητες, όταν η θερμική ισχύς τους είναι μεγαλύτερη των 350 kw (300.000 kcal/h) Το είδος του καυσίμου που θα χρησιμοποιηθεί (υγρά, αέρια καύσιμα) Οι διαστάσεις του (μήκος, πλάτος, ύψος) 1.2.2 Πίνακας λέβητα Στις εγκαταστάσεις θέρμανσης οι λέβητες, είναι εξοπλισμένοι με όργανα ασφαλείας και ελέγχου. Συνήθως όλα τα όργανα είναι τοποθετημένα σε ένα πινάκα. Ο πίνακα αυτός, είναι τοποθετημένος πάνω στον λέβητα και έχει τα παρακάτω όργανα και συσκευές ρύθμισης : Θερμόμετρο νερού : Μας επιτρέπει να βλέπουμε την εκάστοτε θερμοκρασία του νερού στο λέβητα. Μπορεί να είναι βαπτιζόμενο ή επαφής, μεταλλικό ή γυάλινο. Μανόμετρο : επιτρέπει την ανάγνωση της πίεσης του νερού στο δίκτυο θέρμανσης Θερμοστάτης κυκλοφορητή : Είναι ο ρυθμιστής της λειτουργίας του κυκλοφορητή.διακόπτει την λειτουργία του, όταν η θερμοκρασία του νερού της εγκατάστασης, πέσει κάτω από το όριο που έχει ρυθμιστεί. Το όριο είναι περίπου 40 ο C. Αυτό σημαίνει ότι, ο κυκλοφορητής δεν λειτουργεί, αν η θερμοκρασία νερού είναι κάτω από 40 ο C. Θερμοστάτης καυστήρα: Είναι ο ρυθμιστής της θερμοκρασίας νερού λέβητα. Ελέγχει τον καυστήρα. Διακόπτει την λειτουργία του, όταν η θερμοκρασία του νερού της εγκατάστασης, -10-

έχει φτάσει στο σημείο που έχει ρυθμιστεί και θέτει πάλι αυτόν σε λειτουργία, όταν η θερμοκρασία έχει πέσει κάτω από μια ορισμένη τιμή. θερμική ασφάλεια. Υπάρχει για την επιτήρηση της θερμοκρασίας του νερού του λέβητα. Διακόπτει την λειτουργία του καυστήρα σε περίπτωση υπέρβασης της θερμοκρασίας που έχουμε ρυθμίσει και δεν επαναφέρει αυτόματα σε λειτουργία τον καυστήρα. Για να ξεκινήσει ξανά ο καυστήρας, θα πρέπει να πατηθεί το κουμπί του θερμοστάτη αυτού. 1.3 κυκλοφορητής νερού Το ζεστό νερό που παράγεται από το σύστημα θέρμανσης πρέπει να μεταφερθεί στα θερμαντικά σώματα, κυκλοφορητής, αυτό επιτυγχάνεται με τον κυκλοφορητή νερού. Το μέγεθος τους εξαρτάται από την ποσότητα νερού που διακινούμε και τις αντιστάσεις του δικτύου. Εικόνα 1.8 : αντλία νερού 1.4 Δεξαμενή καυσίμων Η δεξαμενή καυσίμων αποτελεί άλλο ένα σημαντικό στοιχείο μιας εγκατάστασης κεντρικής θέρμανσης καθώς εκεί αποθηκεύεται το πετρέλαιο. Μια δεξαμενή καυσίμων μπορεί να είναι είτε μεταλλική είτε πλαστική. -11-

1.5 Αισθητήρας καπνού Υπάρχουν δύο τύποι τεχνολογίας αισθητήρων καπνού. Αυτές είναι ο ιονισμός και ο φωτοηλεκτρισμός. Οι αισθητήρες καπνού με την τεχνολογία του ιονισμού μπορούν να ανιχνεύουν αόρατα σωματίδια φωτιάς (που σχετίζονται με τις πυρκαγιές που εξελίσσονται γρήγορα ) νωρίτερα από ότι μπορούν οι αισθητήρες φωτοηλεκτρικής τεχνολογίας. Οι φωτοηλεκτρικοί αισθητήρες καπνού μπορούν να ανιχνεύσουν ορατά σωματίδια φωτιάς (που συνδέονται με αργή εξέλιξη της πυρκαγιάς ) νωρίτερα από ό, τι οι ανιχνευτές καπνού με την τεχνολογία του ιονισμού. Εικόνα 1.9: αισθητήρας καπνού 1.6 Συστήματα ελέγχου Ο στόχος ενός συστήματος έλεγχου σε μιας εγκατάσταση θέρμανσης, είναι η εξασφάλιση όσο το δυνατόν καλύτερης απόδοσης του συστήματος με το λιγότερο κόστος κατανάλωσης ενέργειας. Για τον λόγο αυτό παρακολουθούνται, ελέγχονται και ρυθμίζονται μια σειρά από κρίσιμες μεταβλητές. Μερικές από τις μεταβλητές αυτές είναι: Η εκκίνηση και διακοπή του καυστήρα Η θερμοκρασία χώρου Η θερμοκρασία νερού Η παροχή ζεστού νερού Η στάθμη πετρελαίου. Το σύστημα ελέγχου μπορεί να είναι ένα κύκλωμα υλοποιημένο με διακριτά ηλεκτρονικά στοιχεία, αναλογικοψηφιακούς μετατροπείς (ADC), λογικές πύλες, ψηφιακά κυκλώματα κτλ. Μια άλλη λύση είναι η χρήση μικροελεγκτή. Ο μικροελεγκτής είναι μία μικρογραφία υπολογιστή, με αυξημένες δυνατότητες διασύνδεσης με εξωτερικά ηλεκτρονικά συστήματα εισόδου-εξόδου. -12-

ΚΕΦΑΛΑΙΟ 2 ο Μικροελεγκτές 2.1 Μικροεπεξεργαστές Τη δεκαετία του 1970 έκαναν την εμφάνισή τους οι πρώτοι μικροεπεξεργαστές, οι οποίοι εξέπληξαν με την παρουσία τους, καθώς ήταν η πρώτη φορά που υπήρχε κάτι σε μορφή ο- λοκληρωμένου κυκλώματος το οποίο περιείχε κεντρική μονάδα επεξεργασίας. Μια αξιόλογη δύναμη επεξεργασίας ήταν πλέον διαθέσιμη με χαμηλό κόστος. Αρχικά, η μνήμη του μικροεπεξεργαστή ήταν έξω από αυτόν, με αποτέλεσμα να υπάρχει ανάγκη υλοποίησης ενός συστήματος το οποίο και πάλι χρειαζόταν έναν μεγάλο αριθμό από ολοκληρωμένα κυκλώματα. Σιγά σιγά ο μικροεπεξεργαστής άρχισε να γίνεται πιο ανεξάρτητος, όπως για παράδειγμα, να περιλαμβάνει μαζί με την κεντρική μονάδα επεξεργασίας και τη μνήμη μέσα στο ίδιο τσιπ. Επίσης, η κεντρική μονάδα επεξεργασίας γινόταν ισχυρότερη και γρηγορότερη. Αυτό είχε σαν αποτέλεσμα ο μικροεπεξεργαστής να αναβαθμιστεί γρήγορα από 8bit σε 16bit και 32bit. 2.2 Μικροελεγκτής Ο μικροελεγκτής είναι ένας τύπος επεξεργαστή, ουσιαστικά μια παραλλαγή μικροεπεξεργαστή, ο οποίος μπορεί να λειτουργήσει με ελάχιστα εξωτερικά εξαρτήματα, λόγω των πολλών ενσωματωμένων υποσυστημάτων που διαθέτει. Χρησιμοποιείται ευρύτατα σε όλα τα ενσωματωμένα συστήματα (embedded systems) ελέγχου χαμηλού και μεσαίου κόστους, ό- πως αυτά που χρησιμοποιούνται σε αυτοματισμούς, ηλεκτρονικά καταναλωτικά προϊόντα, και ηλεκτρικές συσκευές. Η επικοινωνία με το εσωτερικό του μικροελεγκτή γίνεται μέσα από τους ακροδέκτες (pins). Σήμερα υπάρχουν εκατοντάδες διαφορετικοί τύποι μικροελεγκτών, οι οποίοι φτιάχνονται από πολυάριθμους διαφορετικούς κατασκευαστές. Ένας κατασκευαστής χτίζει μια οικογένεια μικροελεγκτών η οποία βασίζεται σε έναν συγκεκριμένο πυρήνα μικροεπεξεργαστή. Το υλικό κατασκευής ενός μικροελεγκτή έιναι συνήθως το πλαστικό. Οι διαφορετικοί τύποι μικροεπεξεργαστών μιας οικογένειας δημιουργούνται χρησιμοποιώντας τον ίδιο πυρή- -13-

να, συνδυάζοντας το με διαφορετικούς τύπους περιφερειακών μονάδων και διαφορετικά μεγέθη μνήμης. Ένας πυρήνας μπορεί να είναι 8bit με περιορισμένη δύναμη, ένας άλλος 16-bit, ή να είναι μια περίπλοκη συσκευή 32-bit. Σε κάθε πυρήνα προστίθενται διαφορετικοί συνδυασμοί περιφερειακών και μεγέθους μνήμης, με αποτέλεσμα να δημιουργηθούν διαφορετικά μοντέλα σε μια οικογένεια μικροεπεξεργαστών. Επειδή ο πυρήνας είναι συγκεκριμένος για όλα τα μοντέλα μιας οικογένειας, οι οδηγίες για την χρήση του παραμένουν ίδιες και οι χρήστες δεν δυσκολεύονται όταν χειρίζονται διαφορετικά μοντέλα. Υπάρχουν διάφορες αρχιτεκτονικές, πάνω στις οποίες είναι βασισμένοι οι μικροελεγκτές. Μερικές από τις πιο κοινές αρχιτεκτονικές είναι οι: CF (32-bit), ARM, MIPS (32-bit PIC32), S08, AVR, PIC (8-bit PIC16, PIC18, 16-bit dspic33 / PIC24), V850, PowerPC ISE, PSoC (Programmable System-on-Chip). 2.2.1 Διαφορές από τον μικροεπεξεργαστή Οι μικροελεγκτές και οι μικροεπεξεργαστές χρησιμοποιούνται ευρέως σε ενσωματωμένα συστήματα, αν και οι μικροελεγκτές προτιμώνται σε σχέση με τους μικροεπεξεργαστές σε ενσωματωμένα συστήματα λόγω της χαμηλής κατανάλωσης ενέργειας. Ένας μικροελεγκτής ενσωματώνει περισσότερες λειτουργίες απ' ότι ένας μικροεπεξεργαστής ο οποίος περιέχει μόνο κεντρική μονάδα επεξεργασίας (όπως αυτοί που χρησιμοποιούνται στους υπολογιστές). Εκτός των συνηθισμένων αριθμητικών και λογικών στοιχείων ενός μικροεπεξεργαστή, ο μικροελεγκτής διαθέτει επιπλέον λειτουργίες. Κάποιες από αυτές είναι η ικανότητα να χρησιμοποιεί μνήμη τυχαίας προσπέλασης για αποθήκευση δεδομένων (όπως η μνήμη RAM), μνήμη μόνο για ανάγνωση για αποθήκευση προγραμμάτων, μνήμη flash για αποθήκευση προσωρινών δεδομένων. Ένα από τα πλεονεκτήματα του μικροελεγκτή είναι η χαμηλή κατανάλωση του σε ισχύ, ειδικά όταν βρίσκεται σε κατάσταση που δεν επεξεργάζεται δεδομένα, αυτό κάνει τους μικροελεγκτές ιδανικούς σε συσκευές που λειτουργούν με χαμηλή τάση ή με μπαταρίες. 2.3 Εφαρμογές των Μικροελεγκτών Εκτός από τις εφαρμογές ελέγχου, όπως το σύστημα παρακολούθησης του σπιτιού, οι μικροελεγκτές συχνά συναντώνται σε ενσωματωμένα συστήματα. Ανάμεσα στις πολλές χρήσεις που μπορεί να βρει κάποιος σε ένα μικροελεγκτή είναι: εφαρμογές στην αυτοκινητοβιομηχανία, σε ηλεκτρικές συσκευές (φούρνοι, ψυγείο, τηλεοράσεις και βίντεο, στερεο- -14-

φωνικό κλπ), σε αυτοκίνητα (έλεγχος κινητήρα, διάγνωση, έλεγχος κλιματιστικού), στα μουσικά όργανα και σε χιλιάδες άλλες χρήσεις 2.4 Χαρακτηριστικά της αρχιτεκτονικής των μικροελεγκτών Υπάρχουν κυρίως δύο αρχιτεκτονικές. Η μια είναι η αρχιτεκτονική VON-NEUMAN (ή Prinseton) και η άλλη είναι η αρχιτεκτονική Harvard. Αυτές οι δύο αρχιτεκτονικές διαφέρουν στον τρόπο που τα δεδομένα και τα προγράμματα είναι αποθηκευμένα και προσβάσιμα. 2.4.1 Αρχιτεκτονική VON-NEUMAN Οι μικροελεγκτές που βασίζονται στην αρχιτεκτονική VON-NEUMAN έχουν ένα ενιαίο δίαυλο δεδομένων που χρησιμοποιείται για να μεταφέρει μαζί οδηγίες και δεδομένα. Οι οδηγίες και τα δεδομένα του προγράμματος είναι αποθηκευμένα σε μια κύρια κοινή μνήμη. Ό- ταν ένας τέτοιος μικροελεγκτής διευθύνει μια κύρια κοινή μνήμη, πρώτα μεταφέρει μια εντολή και μετά προσκομίζει τα δεδομένα για να υποστηρίξει την εντολή. Οι δύο ξεχωριστές μεταφορές επιβραδύνουν την λειτουργία του ελεγκτή. Το κύριο πλεονέκτημα της Αρχιτεκτονικής VON-NEUMAN είναι ότι απλοποιεί το σχεδιασμό του μικροελεγκτή, επειδή μόνο μια μνήμη είναι προσβάσιμη. Στους μικροελεγκτές, τα περιεχόμενα της μνήμης RAM μπορούν να χρησιμοποιηθούν για αποθήκευση δεδομένων και αποθήκευση εντολών του προγράμματος. Παράδειγμα: Μια εντολή Διάβασε ένα byte της μνήμης και αποθήκευσέ το στον καταχωρητή έχει ως εξής: - Κύκλος 1: Διάβασε την εντολή - Κύκλος 2: Διάβασε τα δεδομένα από τη RAM και μετάφερέ τα στον καταχωρητή. -15-

σχήμα 2.1: Αρχιτεκτονική VON-NEUMAN. 2.4.2 Αρχιτεκτονική HARVARD Οι μικροελεγκτές που βασίζονται στην Αρχιτεκτονική HARVARD έχουν χωριστό δίαυλο δεδομένων και δίαυλο εντολών. Αυτό επιτρέπει την εκτέλεση να συμβεί παράλληλα. Καθώς μια εντολή είναι pre-fetched (προ-μεταφερόμενη), η τρέχουσα εντολή εκτελείται στο δίαυλο δεδομένων. Μόλις η τρέχουσα εντολή ολοκληρωθεί, η επόμενη εντολή είναι έτοιμη να ξεκινήσει. Αυτή η pre-fetch θεωρητικά επιτρέπει μια πολύ γρηγορότερη εκτέλεση από την αρχιτεκτονική VON-NEUMAN. Η αρχιτεκτονική HARVARD εκτελεί τις εντολές σε λιγότερους κύκλους εντολών από ό,τι η αρχιτεκτονική VON-NEUMAN. Για παράδειγμα η οικογένεια Intel MCS-51 των μικροελεγκτών και των μικροελεγκτών PIC χρησιμοποιεί αρχιτεκτονική HARVARD. Η ίδια οδηγία, όπως φαίνεται, θα εκτελούνταν ως εξής: Κύκλος 1: Ολοκλήρωσε τις προηγούμενες οδηγίες. Διάβασε την εντολή Μετακίνησε τα δεδομένα στον καταχωρητή. Κύκλος 2: Εκτέλεσε την εντολή -16-

Μετακίνησε τα δεδομένα στον Καταχωρητή. Διάβασε την επόμενη οδηγία. Ως εκ τούτου, κάθε εντολή εκτελείται αποτελεσματικά σε έναν μόνο κύκλο εντολών. σχήμα 2.2 αρχιτεκτονική HARVARD. 2.5 Αρχιτεκτονική CISC (Complex Instruction Set Computer) Σήμερα, σχεδόν όλοι οι μικροελεγκτές βασίζονται στην λογική της CISC. Όταν ένας μικροελεγκτής έχει ένα σύνολο εντολών που υποστηρίζει πολλά μοντέλα διευθύνσεων (addressing modes) για τις αριθμητικές και λογικές εντολές, μεταφορά δεδομένων και μνήμη εντολών πρόσβασης, ο μικροελεγκτής είναι αρχιτεκτονικής CISC. Ο τυπικός μικροελεγκτής CISC διαθέτει πάνω από 80 εντολές, πολλές από αυτές πολύ ισχυρές και ιδιαίτερα εξειδικευμένες για συγκεκριμένα καθήκοντα ελέγχου. Κάποιοι μπορο- -17-

ύν να λειτουργήσουν μόνο σε συγκεκριμένους χώρους διευθύνσεων και άλλοι μπορούν μόνο να αναγνωρίζουν ορισμένους κώδικες διευθύνσεων. Τα πλεονεκτήματα της αρχιτεκτονική CISC ότι πολλές από τις εντολές είναι makro-like, επιτρέποντας στον προγραμματιστή να χρησιμοποιήσει μια εντολή αντί για πολλές απλούστερες εντολές. Ένα παράδειγμα ενός μικροελεγκτή αρχιτεκτονικής CISC είναι η οικογένεια Intel 8096. 2.6 Μικροελεγκτές Αρχιτεκτονικής RISC (Reduced Instructions Set Computer = Επεξεργαστές μειωμένου συνόλου εντολών) Όταν ένας μικροελεγκτής έχει ένα σύνολο εντολών που υποστηρίζει λιγότερους κώδικες διευθύνσεων (addressing modes) για αριθμητικές και λογικές εντολές και για εντολές μεταφοράς δεδομένων, τότε ο μικροελεγκτής είναι αρχιτεκτονικής RISC. Τα οφέλη του σχεδίου RISC είναι ότι είναι ένα μικρότερο τσιπ, μικρότερος αριθμός pin και πολύ μικρή κατανάλωση ενέργειας. Μερικά από τα τυπικά χαρακτηριστικά της αρχιτεκτονικής RISC- HARVARD είναι : 1. Επιτρέπει την ταυτόχρονη πρόσβαση του προγράμματος και των δεδομένων. 2. Συγκεντρώνει ορισμένες λειτουργίες για αυξημένη απόδοση επεξεργασίας. 3. Επιτρέπει κάθε εντολή να λειτουργήσει σε κάθε καταχωρητή ή να χρησιμοποιήσει οποιοδήποτε κώδικα διευθύνσεων. 2.7 Δομή μικροελεγκτή PIC Οι μικροελεγκτές δομικά μπορούν να χωριστούν σε δύο μέρη, τον πυρήνα (core), ο οποίος περιλαμβάνει τα απαραίτητα στοιχεία για την λειτουργία του, και τις περιφερειακές μονάδες, που είναι ενσωματωμένες στους μικροελεγκτές. Αυτές τους διαφοροποιούν από τους μικροεπεξεργαστές. Συγκεκριμένα, ο πυρήνας ενός μικροελεγκτή pic περιλαμβάνει: - Κεντρική Μονάδα Επεξεργασίας -18-

- Μνήμη - Εντολές - Λειτουργίες διακοπών Στις περιφερειακές μονάδες ανήκουν: - Οι θύρες εισόδου/εξόδου γενικής χρήσης - Οι μετρητές χρόνου (τρεις μονάδες) - Η μονάδα διαμόρφωσης πλάτους - Οι θύρες σειριακής επικοινωνίας (τρεις θύρες) - Η θύρα παράλληλης επικοινωνίας - Η μονάδα παραγωγής τάσης αναφοράς - Οι συγκριτές - Ο μετατροπέας αναλογικού σήματος σε ψηφιακό Για τη διαμόρφωση των εντολών οι μικροεπεξεργαστές και μικροελεγκτές ασπάζονται την αρχιτεκτονική RISC (Reduces Instruction Set Computer) ή την αρχιτεκτονική CISC (Complex Instruction Set Computer). Για παράδειγμα, σε μικροεπεξεργαστή αρχιτεκτονικής RISC βασίζεται ένας μεγάλος κεντρικός υπολογιστής ενώ ο προσωπικός μας υπολογιστής σε μικροεπεξεργαστή αρχιτεκτονικής CISC.. Οι μικροεπεξεργαστές και οι μικροελεγκτές που βασίζονται στην αρχιτεκτονική RISC διαθέτουν λίγες απλές εντολές, μπορούν όμως να ανταποκριθούν σε όλες τις απαιτήσεις του προγραμματισμού. Οι μικροελεγκτές pic εφαρμόζουν την αρχιτεκτονικής RISC, διαθέτουν τριανταπέντε εντολές μήκους μιας λέξης δεκατεσσάρων bits. Έτσι σε αντίθεση με τους μικροελεγκτές αρχιτεκτονικής CISC, ο PIC εκτελεί την κάθε εντολή σε ένα κύκλο μηχανής, με αποτέλεσμα την σημαντική βελτίωση της ταχύτητας επεξεργασίας. Στο σημείο αυτό ας τονίσουμε ότι μοναδική εξαίρεση αποτελούν οι εντολές διακλάδωσης, οι οποίες εκτελούνται σε δύο κύκλους μηχανής. -19-

Αρχές σχεδιασμού RISC: Εκτέλεση εντολών απευθείας από το υλικό με hard-wired Control Units. Μεγιστοποίηση του ρυθμού υποβολής εντολών με υλοποίηση παράλληλων αρχιτεκτονικών προσκόμισης και εκτέλεσης εντολών. Εύκολη αποκωδικοποίηση των εντολών, οι εντολές έχουν όλες το ίδιο μήκος και την ί- δια μορφή (opcode + operands). Περιορισμός των εντολών που προσπελαύνουν την μνήμη. Αφθονία καταχωρητών γενικής χρήσης. 2.7.1 Κεντρική μονάδα επεξεργασίας Η Κεντρική Μονάδα Επεξεργασίας, γνωστή και ως CPU, είναι ο εγκέφαλος που διαχειρίζεται και εκτελεί τις εντολές του προγράμματος που έχουμε αποθηκεύσει σε μια μνήμη η οποία ονομάζεται μνήμη προγράμματος. Από τη μνήμη αυτή, η κεντρική μονάδα επεξεργασίας φέρνει με τη σειρά, εντολές του προγράμματος, τις αποκωδικοποιεί και τις εκτελεί. Μέσα στην κεντρική μονάδα επεξεργασίας βρίσκεται και η αριθμητική και η λογική μονάδα. Οι αριθμητικές πράξεις που μπορεί να εκτελεί είναι η πρόσθεση και η αφαίρεση. Επίσης, έχει τη δυνατότητα να εκτελεί λογικές πράξεις. Η κεντρική μονάδα επεξεργασίας χρησιμοποιεί ένα μετρητή προγράμματος για τη σωστή ανεύρεση των εντολών, που πρέπει να εκτελεσθούν. Στην πραγματικότητα, πρόκειται για έναν καταχωρητή, ο οποίος περιέχει τη διεύθυνση της μνήμης στην οποία βρίσκεται αποθηκευμένη η εντολή που πρέπει να εκτελεσθεί. Ο καταχωρητής αυτός ονομάζεται program counter (PC). 2.7.2 Καταχωρητές Οι καταχωρητές αποτελούν είναι ένα από τα βασικότερα στοιχεία της αρχιτεκτονικής ενός μικροελεγκτή αφού ανάλογα με το πλήθος, το είδος και τις δυνατότητες τους επηρεάζουν την ευκολία προγραμματισμού του μικροελεγκτή. Κάθε εντολή ενός προγράμματος χρησιμοποιεί έναν τουλάχιστον καταχωρητή. Οι ικανότητες προγραμματισμού ενός μικροελεγκτή εξαρτώνται από την ποιότητα του καταχωρητή Υπάρχουν δύο ομάδες καταχωρητών. Η πρώτη ομάδα, η οποία περιέχει καταχωρητές ειδικών λειτουργιών (special function registers), όπως αυτών του ελέγχου των περιφερειακών που βρίσκονται ενσωματωμένα στον μικροελεγκτή. Η δεύτερη ομάδα περιέχει καταχωρητές γενικής χρήσης και αναφέρεται ως αρχείο καταχωρητών γενικού σκοπού (general purpose -20-

register). Επίσης, ο μικροελεγκτής διαθέτει τους καταχωρητές W και PC (program counter). Ο καταχωρητής W λέγεται και καταχωρητής εργασίας. Είναι ανεξάρτητος από τους υπόλοιπους και βρίσκεται άμεσα συνδεδεμένος με την αριθμητική και λογική μονάδα του PIC. Αυτό του δίνει κάποια μοναδικά πλεονεκτήματα, με αποτέλεσμα να είναι απαραίτητος για την εκτέλεση κάποιων εντολών. Όλοι οι μικροεπεξεργαστές και μικροελεγκτές διαθέτουν τον μετρητή προγράμματος PC, μέσα από τον οποίο η κεντρική μονάδα επεξεργασία εντοπίζει στη μνήμη την εντολή που πρόκειται να εκτελέσει. Οι εντολές ενός προγράμματος, συνήθως εκτελούνται με την σειρά που βρίσκονται αποθηκευμένες στη μνήμη. Ο PC, σε κάθε εντολή που πρόκειται να εκτελεστεί, αυξάνεται κατά ένα, έτσι ώστε να έχει τη διεύθυνση της επόμενης εντολής. 2.7.3 Μνήμη Ο μικροελεγκτής PIC ακολουθεί την αρχιτεκτονική Harvard, κάτι που σημαίνει ότι πρόγραμμα και δεδομένα βρίσκονται σε ξεχωριστές μνήμες. Ενας μικροελεγκτής έχει ενσωματωμένες μνήμες RAM και ROM. Το πρόγραμμα που γράφει ο χρήστης αποθηκεύεται στην μνήμη ROM. Το μέγεθος της μνήμης προγράμματος κυμαίνεται από 2 έως 8 ΚΒytes, η οποία συνήθως είναι τύπου flash, ενώ η μνήμη δεδομένων φτάνει τα 512 Bytes συνολικά. Υπάρχουν τρεις τύποι μνήμης ROM. EPROM (γράμμα C ): Η μνήμη αυτή σβήνεται από υπεριώδη ακτινοβολία. Ο χρόνος που απαιτείται για να σβηστεί, εξαρτάται κυρίως από το μήκος κύματος, την ένταση και την απόσταση από την πηγή παραγωγής ακτινοβολίας. Για τον λόγο αυτό, τα παραθυράκια των μνήμων EPROM πρέπει να καλύπτονται με αυτοκόλλητο χαρτάκι ROM (γράμμα CR): Γράφεται από τον κατασκευαστή προσφέροντας μια φθηνότερη λύση σε σχέση με την προηγούμενη FROM(FLASH ROM - γράμμα F): Σβήνεται και γράφεται ηλεκτρικά. Χρησιμοποιείται φθηνή πλαστική κατασκευή και μπορεί να προγραμματιστεί χωρίς απομάκρυνση από το κύκλωμα που χρησιμοποιείται -21-

RAM (Random Access Memory) η αποθήκευση των δεδομένων είναι προσωρινή αν χαθεί η τάση τροφοδοσίας χάνονται και τα δεδομένα. 2.8 Λειτουργίες διακοπών Καθώς ο μικροελεγκτής PIC εκτελεί μια εντολή, μπορεί να διακόψει την εκτέλεση αυτής, αν το κρίνει απαραίτητο εξαιτίας κάποιου σημαντικού συμβάντος, στο οποίο δίνει προτεραιότητα και εκτελεί εκείνο. Τη σπουδαιότητα κάποιων συμβάντων την κρίνουν οι περιφερειακές συσκευές που διενεργούν τους ελέγχους. Όταν διαπιστωθεί ένα τέτοιο συμβάν δίνεται εντολή στην Κεντρική Μονάδα Επεξεργασίας του μικροελεγκτή,, ο οποίος θα σταματήσει την διεργασία που εκτελεί. Αυτή η εντολή λέγεται διακοπή και προωθεί την εκτέλεση ενός κώδικα που λέγεται ρουτίνα εξυπηρέτησης της διακοπής. Ενας μικροελεγκτής PIC δέχεται πολλές διακοπές οι οποίες προέρχονται από διάφορες περιφερειακές μονάδες. Μια περιφερειακή μονάδα μονάδα μπορεί να δώσει ένα σήμα διακοπής, υπάρχουν όμως και μονάδες που δίνουν περισσότερες από μία διακοπές, όπως για παράδειγμα το περιφερειακό σειριακής επικοινωνίας. 2.9 Χρονιστές Ένα από τα χαρακτηριστικά του PIC που χρησιμοποιείται πολύ συχνά, είναι οι χρονιστές. Υπάρχουν δύο τύποι χρονιστών, που μπορούν να χρησιμοποιηθούν. Ο πρώτος είναι ο χρονιστής που συμβολίζεται και ως TMR0, είναι ένας απαριθμητής των 8-bits που δέχεται με εναλλακτικά χρονισμό, από δύο διαφορετικές πηγές και ο δεύτερος χρονιστής είναι ο χρονιστής επιτήρησης ή Watchdog Timer, ο οποίος ανήκει στα εσωτερικά κυκλώματα του PIC. Διαφορετικές εκδόσεις του PIC μπορεί να περιέχουν επιπλέον χρονιστές για διάφορες λειτουργίες. 2.10 περιφερειακές μονάδες Τα περιφερειακά συστήματα ενός μικροελεγκτή PIC, τα οποία έχει ενσωματωμένα, τον βοηθούν να εκτελέσει ένα μεγάλο σύνολο εφαρμογών. Διαθέτει 5 θύρες εισόδου / εξόδου, που η καθεμιά διαθέτει 8 δυαδικά ψηφία. χρησιμοποιούνται σαν απλές θύρες ή σαν θύρες των περιφερειακών. Η 4 η και η 5 η χρησιμοποιούνται για παράλληλη επικοινωνία. -22-

Διαθέτει τρεις μετρητές χρόνου, που του δίνουν μεγάλες δυνατότητες σε εφαρμογές όπου οι πολλαπλές μετρήσεις χρόνου είναι απαραίτητες. Παράλληλα, είναι εφικτή η παραγωγή παλμών ελεγχόμενης διάρκειας, κάτι που είναι πολύ χρήσιμο για την παραγωγή ρυθμιζόμενης συνεχούς τάσης. Επιπροσθέτως, ο μικροελεγκτής παρέχει έξοδο παλμοσειράς με ρυθμιζόμενο εύρος. Αυτή μπορεί να χρησιμοποιηθεί για την ρύθμιση διαφόρων βιομηχανικών συσκευών. Διαθέτει ένα μετατροπέα αναλογικού σήματος σε ψηφιακό. Ο μετατροπέας αυτός είναι οχτώ καναλιών, που σημαίνει ότι έχει τη δυνατότητα να λαμβάνει και να μετατρέπει οχτώ διαφορετικά αναλογικά σήματα. Το αποτέλεσμα της μετατροπής, για κάθε κανάλι, είναι ένας αριθμός 8bit. Στον μικροελεγκτή μας δε λείπει και η δυνατότητα σειριακής επικοινωνίας. Μάλιστα, διαθέτει δύο περιφερειακά: Ένα για σύγχρονη ή ασύγχρονη επικοινωνία, του γνωστού μας τύπου USART και ένα για σύγχρονη, μόνον, επικοινωνία, το οποίο SSP. 2.11 Τύποι εντολών του PIC Οι εντολές του PIC είναι μήκους μιας λέξης, με 14 δυαδικά ψηφία. Η δομή της λέξης είναι διαφορετική στην κάθε εντολή. Σε όλες τις λέξεις, το πρώτο τμήμα περιέχει τον κωδικό της εντολής (OPCODE), ενώ το υπόλοιπο περιέχει πληροφορίες για την εκτέλεση της εντολής. Αυτός ο κωδικός είναι καθορισμένος από την αρχιτεκτονική του συστήματος, είναι μοναδικός για κάθε εντολή και δεν μπορεί να αλλαχθεί. Η Κ. Μ. Ε. διαβάζοντας τον κωδικό μιας εντολής, γνωρίζει ακριβώς τις εργασίες που πρέπει να εκτελέσει, ενώ οι απαιτούμενες για την εκτέλεση τους πληροφορίες βρίσκονται στο υπόλοιπο τμήμα της λέξης. Οι εντολές του PIC χωρίζονται σε τέσσερις γενικές κατηγορίες, ως εξής: Εντολές επεξεργασίας Byte Εντολές επεξεργασίας bit Εντολές άλματος (αλλαγής ροής προγράμματος) Λοιπές εντολές -23-

2.12 Κατηγορίες μικροελεγκτών PIC O μικροελεγκτής PIC κατασκευάζεται από την εταιρεία Microchip. Περιλαμβάνει τις τρεις βασικές κατηγορίες ως προς το εύρος του δίαυλου δεδομένων (Data Bus): 8 bit (σειρές PIC10, PIC12, PIC16, PIC18) 16 bit (σειρές PIC24, dspic) 32 bit (σειρά PIC32) Διαθέτουν επεξεργαστή αρχιτεκτονικής RISC (Reduced Instruction Set Computing) Υπάρχουν μικροελεγκτές με πληθώρα περιφερειακών όπως τα παρακάτω: Timers, EEPROM, ADC, DAC, SPI, USART,PSP, PMP, Capture/Compare/PWM (CCP), Comparators, CTMU, RTC, DMA, Peripheral Pin Select (PPS), CRC, USB, CAN, Ethernet Tα περιφερειακά αυτά από οικογένεια σε οικογένεια παρουσιάζουν διαφορές ως προς τις δυνατότητες άρα και ως προς την πολυπλοκότητά τους. 2.13 Μικροελεγκτής PIC16F690 Ο μικροελεγκτής PIC16F690 είναι της 8μπιτης οικογένειας PIC16. Όπως όλοι οι PIC είναι βασισμένος στην αρχιτεκτονική RISC. Διατίθεται σε συσκευασία των είκοσι (20) ακροδεκτών, καθιστώντας εύκολη την εγκατάστασή του και σε πλακέτες μικρού μεγέθους. Όλοι οι ακροδέκτες εκτός από τους δύο της τροφοδοσίας αντιστοιχούν σε ακροδέκτες θυρών, και είναι ταυτόχρονα και πολλαπλών λειτουργιών. -24- Εικόνα 2.3: ο μικροελεγκτής PIC16F690

Ένα από τα πλεονεκτήματα του συγκεκριμένου μικροελεγκτή είναι η πολύ χαμηλή κατανάλωση ρεύματος, που σε συνδυασμό με το μεγάλο εύρος τάσεων τροφοδοσίας που δέχεται, τον καθιστούν ιδιαίτερα κατάλληλο για συσκευές οι οποίες τροφοδοτούνται με μπαταρία. 2.14 Αρχιτεκτονική του PIC 16F690 Όπως όλοι οι PIC, έτσι και ο PIC16F690 βασίζεται στην αρχιτεκτονική RISC. Το σύνολο εντολών του περιορίζεται σε 35 εντολές. Όπως σε κάθε αρχιτεκτονική RISC, δεν υπάρχουν εντολές μεταφοράς (από μνήμη-καταχωρητές) και επεξεργασίας δεδομένων, αλλά οι δύο κατηγορίες εργασιών εκτελούνται με διαφορετικές εντολές. Υπάρχουν εντολές πρόσθεσης, α- φαίρεσης και λογικές πράξεις σε επίπεδο λέξης AND,OR, XOR και NOT. Δεν υπάρχουν ωστόσο εντολές πολλαπλασιασμού και διαίρεσης, καθώς δεν περιλαμβάνονται τα αντίστοιχα κυκλώματα. Οι πράξεις αυτές μπορούν να εκτελεστούν με τη βοήθεια κατάλληλων προγραμμάτων. Η υλοποίηση πράξεων σε λογισμικό (software) είναι πολύ πιο αργή από ότι αν ήταν υλοποιημένες σε υλικό (hardware), ωστόσο η αρχιτεκτονική RISC του PIC του επιτρέπει να λειτουργεί σε σχετικά υψηλές ταχύτητες, αντισταθμίζοντας σε μεγάλο βαθμό το πρόβλημα αυτό. Οι εντολές του είναι λέξεις των 14 bit, και όλες χρειάζονται μόνο ένα κύκλο μηχανής για να εκτελεστούν, με εξαίρεση τις εντολές διακλάδωσης, που χρειάζονται δύο κύκλους μηχανής. Ο κύκλος μηχανής στο PIC16F690 διαρκεί τέσσερις κύκλους του ρολογιού λειτουργίας του. Ο PIC16F690 διαθέτει 256 byte μνήμης RAM, 4KB μνήμης προγράμματος τύπου Flash, και 256 byte μνήμης EEPROM δεδομένων. -25-

Σχήμα 2.4 ακροδέκτες του μικροελεγκτή PIC16F690 2.15 Χρονιστής Ο PIC16F690 είναι εφοδιασμένος με τρεις χρονιστές. Τους 8μπιτους TIMER0 και TIMER2, και τον 16μπιτο TFMER1. 2.16 αναλογικοί Συγκριτές Ο PIC16F690 διαθέτει δύο αναλογικούς συγκριτές, οι οποίοι μπορούν να δώσουν τη τιμή της σύγκρισης δύο αναλογικών σημάτων. Η μία είσοδος μπορεί να είναι μία εξωτερική αναλογική τάση αναφοράς, ή μία σταθερή τάση παραγόμενη εσωτερικά στο μικροελεγκτή. Η άλλη αναλογική είσοδος μπορεί να επιλεγεί από τέσσερις αναλογικές εισόδους σε ισάριθμους ακροδέκτες. Εκτός από τη χρήση του αποτελέσματος της σύγκρισης από το πρόγραμμα, τα σήματα του αποτελέσματος της σύγκρισης μπορούν να εξαχθούν σε δύο ακροδέκτες (διαφορετικούς για κάθε συγκριτή). Οι αναλογικοί συγκριτές προσθέτουν λειτουργικότητα στο μικροελεγκτή και βοηθούν τη διασύνδεση με τον αναλογικό κόσμο -26-

ΚΕΦΑΛΑΙΟ 3 ο ΠΕΡΙΓΡΑΦΗ ΑΠΑΙΤΟΥΜΕΝΟΥ ΥΛΙΚΟΥ ΑΝΑΠΤΥΞΗΣ 3.1 Οι προγραμματιστές Για να μεταφέρουμε έναν κώδικα, ο οποίος είναι γραμμένος σε γλώσσα μηχανής, στον μικροελεγκτή χρησιμοποιούμε μια συσκευή η οποία ονομάζεται προγραμματιστής (programmer). Στην πλειοψηφία οι μικροελεγκτές PIC έχουν εφαρμογές ICSP (In Circuit Serial Programming) και LVP (Low Voltage Programming), με τις οποίες μπορούμε να προγραμματίσουμε τον μικροελεγκτή χωρίς να τον αφαιρούμε από το κυρίως κύκλωμα 3.2 προγραμματιστής PICkit 2 Το PICKit2 αποτελείται από μια αναπτυξιακή πλακέτα (development board) και από έ- ναν ειδικό προγραμματιστή, ο οποίος συνδέεται μέσω ενός καλωδίου usb με τον Η/Υ και μπορεί μέσω του MPLAB, το οποίο αναλύουμε παρακάτω, να προγραμματιστεί ο μικροελεγκτής PIC16F690, ο οποίος είναι ενσωματωμένος στην πλακέτα. Η πλακέτα διαθέτει επίσης μπουτόν, τέσσερα leds και ποτενσιόμετρο και μπορεί να χρησιμοποιηθεί για διάφορες εφαρμογές. -27-

Εικόνα 3.1: PICkit 2 Starter Kit for PIC16F690 devices Το PICkit 2 έχει 6 ακροδέκτες οι οποίοι συνδέονται στον μικροελεγκτή που θέλουμε να προγραμματίσουμε. Υποστηρίζει τον προγραμματισμό ICSP ο οποίος απαιτεί 5 σήματα: Vpp - Programming Voltage: Τάση προγραμματισμού. ICSPCLK ή PGC - Programming Clock ICSPDAT ή PGD - Programming Data VDD - Power Supply positive voltage: Τάση τροφοδοσίας VSS - Power Supply ground reference: Γείωση 3.2.1 Διαδικασία Προγραμματισμού Η διαδικασία προγραμματισμού του μικροελεγκτή με τη βοήθεια του PICit2 έχει ως ε- ξής: Στο πρώτο στάδιο ο χρήστης αφού έχει γράψει το πρόγραμμα σε συμβολική γλώσσα (assembly) ή γλώσσα υψηλού επιπέδου (πχ C), το μεταφράζει και προκύπτει ένα αρχείο HEX. Το αρχείο αυτό περιέχει σε δεκαεξαδική μορφή τους κωδικούς των εντολών, το πρόγραμμα δηλαδή σε γλώσσα μηχανής. Η Microchip παρέχει δωρεάν το απαραίτητο λογισμικό -28-

πακέτο PICit2 Programmer, το οποίο ελέγχει από το PC τη διαδικασία του προγραμματισμού. Με τη βοήθεια του πακέτου αυτού ο χρήστης επιλέγει το επιθυμητό αρχείο HEX. Στη συνέχεια το πρόγραμμα μεταφέρεται στη πλακέτα μέσω του PICit2. Με τη βοήθεια του PICit2 Programmer ο χρήσης μπορεί να επιλέξει και επιπλέον λειτουργίες όπως το σβήσιμο της μνήμης flash του μικροελεγκτή, και το κλείδωμα του κώδικα. 3.3 Λογισμικό MPLAB Το λογισμικό MPLAB είναι ένα ολοκληρωμένο περιβάλλον ανάπτυξης (Integrated Development Enviroment - IDE), το οποίο διατίθεται δωρεάν από την microchip.. Το λογισμικό αυτό μας δίνει την δυνατότητα να εκτελούμε εικονικά τον κώδικα που έχουμε δημιουργήσει για τον μικροελεγκτή χωρίς την προϋπόθεση του Hardware. Επίσης μας δίνει την δυνατότητα να διορθώσουμε τυχόν λάθη μας κατά την λειτουργία του προγράμματος. Μερικές από τις δυνατότητες του MPLAB είναι οι εξής: Διαθέτει (Debugger) για την αποσφαλμάτωση του κώδικα (Assembler) για τη μετατροπή του πηγαίου κώδικα σε γλώσσα μηχανής. Περιέχει εξομοιωτή (simulator) που μιμείται ακριβώς τη συμπεριφορά του μικροελεγκτή που έχουμε επιλέξει. Διαθέτει προγραμματιστή (Programmer) για προγραμματισμό της μνήμης των μικροελεγκτών μέσα από το ίδιο το πρόγραμμα. -29-

-30- Εικόνα 3.2: Το περιβάλλον εργασίας του MPLAB

ΚΕΦΑΛΑΙΟ 4 ο Προσομοίωση Σύστημα ελέγχου καυστήρα και περιβάλλοντα χώρου με χρήση μικροελεγκτή και προσομοίωση τους συστήματος 4.1 Αρχιτεκτονική Συστήματος Σε αυτό το κεφάλαιο θα δούμε ένα κύκλωμα με τον ελεγκτή PIC 16F690 στον ο- ποίο είναι συνδεδεμένοι τέσσερις διακόπτες για είσοδοι, οι οποίοι παριστάνουν τους αισθητήρες- διακόπτες του συστήματος. Επίσης στον μικροελεγκτή έχουμε συνδέσει για έξοδο τέσσερα LED τα οποία θα αντιπροσωπεύουν τις λειτουργίες του συστήματος οι οποίες είναι οι εξής: Το LED 1 αντιστοιχεί στην ένδειξη ότι ανιχνεύθηκε καπνός στο χώρο. Το LED 2 αντιστοιχεί στην έναρξη παύση του καυστήρα. Το LED 3 αντιστοιχεί στην έναρξη παύση του κυκλοφορητή. για την έναρξη κυκλοφορίας ζεστού νερού στο δίκτυο. Το LED 4 αντιστοιχεί στην ένδειξη για ανεφοδιασμό καυσίμου. Για την είσοδο των δεδομένων στο σύστημα μας, όπως αναφέραμε και πιο πάνω, έχουμε συνδέσει τέσσερις διακόπτες οι οποίοι αναπαριστούν τους αισθητήρες. Τον διακόπτη1, ο οποίος αντιστοιχεί στον αισθητήρα καπνού τον έχουμε συνδέσει στο RC4 του μικροελεγκτή. Ο διακόπτης2, που αντιστοιχεί στο θερμοστάτη χώρου, είναι συνδεδεμένος στο RC2. Ο διακόπτης3 αντιστοιχεί στο αισθητήριο θερμοκρασίας νερού, τον οποίο έχουμε συνδέσει στο RC6 και τέλος στο RC7 έχουμε συνδέσει το διακόπτη4, ο οποίος αντιστοιχεί στο αισθητήριο στάθμης πετρελαίου.

Για την κατανόηση του τρόπου λειτουργίας του συστήματος ελέγχου του καυστήρα και του περιβάλλοντα χώρου έκανα έναν αλγόριθμο, στον οποίο δείχνω βήμα βήμα τον τρόπο λειτουργίας του συστήματός μας. Αλγόριθμος: Όσο switch1= LOW //δεν ανιχνεύει καπνό και συνεχίζει κανονικά η λειτουργία του συστήματος τότε LED 1 = LOW // LED 1 off Αλλιώς LED 1=HIGH //σβήσε όλα τα LED και άναψε την ένδειξη για καπνό LED 2=LOW LED 3=LOW LED 4=LOW Αν Switch 2= HIGH //θερμοστάτης on Τότε LED2 = HIGH //έναρξη καυστήρα Αλλιώς LED 2 = LOW //παύση καυστήρα LED 3 = LOW //παύση κυκλοφορητή LED 4 = LOW Αν switch 3 = HIGH //εντολή από το αισθητήριο νερού τότε

LED 3 = HIGH //έναρξη κυκλοφορίας ζεστού νερού Αν switch 4 = HIGH //εντολή από το αισθητήριο στάθμης πετρελαίου τότε LED 4 = HIGH //ένδειξη για ανεφοδιασμό 4.2 Λογισμικό Συστήματος Το Λογισμικό του συστήματος ελέγχου αφορά τον προγραμματισμό του μικροελεγκτή PIC 16F690. Ο προγραμματισμός έγινε μέσω του λογισμικού MPLAB x IDE ν.2.05 της Microchip. Ο κώδικας του μικροελεγκτή είναι γραμμένος σε γλώσσα μηχανής. Στη δική μας περίπτωση για τον προγραμματισμό του μικροελεγκτή επιλέξαμε ως γλώσσα προγραμματισμού την assembly. ;---------------------------------------------------------------------------------------------- ; PIC16F690 ; ; ΕΛΕΓΧΟΣ ΚΑΥΣΤΗΡΑ ΠΕΤΡΕΛΑΙΟΥ & ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΧΩΡΟΥ ; ; ΕΙΣΟΔΟΙ ΈΞΟΔΟΙ ; RC4-αισθητηριο καπνού RC0-ένδειξη καπνού στο χώρο ; RC5-θερμοστάτης χώρου RC1-έναρξη καυστήρα ; RC6-αισθητήριο θερμοκρασίας νερού RC2-έναρξη κυκλοφορητή ; RC7-αισθητήριο στάθμης πετρελαίου RC3-ένδειξη πετρελαίου ;---------------------------------------------------------------------------------------------- list p=16f690 #include <p16f690.inc> config (_INTRC_OSC_NOCLKOUT & _WDT_OFF & _PWRTE_OFF & _MCLRE_OFF & _CP_OFF & _BOR_OFF & _IESO_OFF & _FCMEN_OFF) cblock 0x20

endc org 0 Start: bsf STATUS,RP0 movlw b'11110000' movwf TRISC bcf STATUS,RP0 main: BTFSS PORTC,4 ; αν είναι LOW (δεν υπάρχει καπνός στο χώρο) bcf PORTC,0 ; τότε RCO LOW (το LED 1 είναι off) BTFSC PORTC,4 ;αν είναι HIGH (ανίχνευση καπνού στο χώρο) call Funct1 ;κάλεσε τη συνάρτηση Funct1 BTFSC PORTC,5 ;αν είναι HIGH (θερμοστάτης χώρου on τότε) bsf PORTC,1 ; RC1 HIGH (LED 2 on έναρξη καυστήρα)

BTFSS PORTC,5 ;αν είναι LOW τότε bcf PORTC,1 ;(σβήσε τον καυστήρα) BTFSC PORTC,6 ;αν είναι HIGH (αισθητήριο θερμοκρασίας νερού) bsf PORTC,2 ; νερού) ;τότε RC2 HIGH (LED 3 έναρξη κυκλοφορίας ζεστού BTFSS PORTC,6 ;αν είναι LOW τότε bcf PORTC,2 ;RC2 LOW (διακοπή κυκλοφορίας ζεστού νερού) BTFSS PORTC,7 ;αν είναι LOW (αισθητήριο στάθμης) bcf PORTC,3 ;τότε RC3 LOW (υπάρχει πετρέλαιο στη δεξαμενή) BTFSC PORTC,7 ;αν είναι HIGH call Funct2 ;κάλεσε τη συνάρτηση Funct2 goto main Funct1: bcf PORTC,1 ;σβησε το LED 2 (καυστήρας)

bcf PORTC,2 ;σβήσε το LED 3 (κυκλοφορητής) bcf PORTC,3 ;σβήσε το LED 4 (ένδειξη πετρελαίου) bsf PORTC,0 ;άναψε το LED 1 (ένδειξη καπνού) goto main Funct2: bsf PORTC,3 ;άναψε το LED 3 (ένδειξη πετρελαίου) return end 4.3 Ανάλυση του Κώδικα Σε αυτό το υποκεφάλαιο γίνεται ανάλυση του κώδικα που χρησιμοποιήσαμε για τον προγραμματισμό του μικροελεγκτή. Στην πρώτη γραμμή του κώδικα ορίζεται ο μικροελεγκτής τον οποίο χρησιμοποιεί η εφαρμογή. Στις επόμενες δύο γραμμές καθορίζουμε κάποιες παραμέτρους για τον μικροελεγκτή όπως την επιλογή του εσωτερικού ταλαντωτή _INTRC_OSC_NOCLKOUT καθώς και την απενεργοποίηση του χρονιστή επιτήρησης _WDT_OFF. Mε την εντολή _PWRTE_OFF γίνεται απενεργοποίηση του

χρονιστή PWRT. Mε την εντολή _MCLRE_OFF απενεργοποιεί τη δυνατότητα για επανεκκίνηση του μικροελεγκτή από την ακίδα MCLR. Με την _CP_OFF απενεργοποιεί την προστασία του κώδικα. Με την εντολή _BOR_OFF απενεργοποιείται η επανεκκίνηση όταν πέσει η τάση. Με την _IESO_OFF γίνεται απενεργοποίηση της επιλογής για μετάβαση από εσωτερικό σε εξωτερικό ταλαντωτή και τέλος με την εντολή _FCMEN_OFF απενεργοποιείται η επιλογή FCSM #include <p16f690.inc> config (_INTRC_OSC_NOCLKOUT & _WDT_OFF & _PWRTE_OFF & _MCLRE_OFF & _CP_OFF & _BOR_OFF & _IESO_OFF & _FCMEN_OFF) cblock 0x20 ; δέσμευση της περιοχής μνήμης endc org 0 ; ξεκίνημα από την διεύθυνση 0000h Start: bsf STATUS,RP0 ; επιλογή του BANK 1 movlw b'11110000' ; επιλέγουμε τις εισόδους και τις εξόδους movwf TRISC ; με ταφορά της προηγούμενης εντολής ;στηνtpisc bcf STATUS,RP0 ; επιλογή BANK 1

main: BTFSS PORTC,4 ; αν είναι LOW (δεν υπάρχει καπνός στο χώρο) bcf PORTC,0 ; τότε RCO LOW (το LED 1 είναι off) BTFSC PORTC,4 ;αν είναι HIGH (ανίχνευση καπνού στο χώρο) call Funct1 ;κάλεσε τη συνάρτηση Funct1 BTFSC PORTC,5 ;αν είναι HIGH (θερμοστάτης χώρου on τότε) bsf PORTC,1 ; RC1 HIGH (LED 2 on έναρξη καυστήρα) BTFSS PORTC,5 ;αν είναι LOW τότε bcf PORTC,1 ;(σβήσε τον καυστήρα) BTFSC PORTC,6 ;αν είναι HIGH (αισθητήριο θερμοκρασίας νερού) bsf PORTC,2 ;τότε RC2 HIGH (LED 3 έναρξη κυκλοφορίας ζεστού ; νερού) BTFSS PORTC,6 ;αν είναι LOW τότε bcf PORTC,2 ;RC2 LOW (διακοπή κυκλοφορίας ζεστού νερού)

BTFSS PORTC,7 ;αν είναι LOW (αισθητήριο στάθμης) bcf PORTC,3 ;τότε RC3 LOW (υπάρχει πετρέλαιο στη δεξαμενή) BTFSC PORTC,7 ;αν είναι HIGH call Funct2 ;κάλεσε τη συνάρτηση Funct2 goto main Funct1: bcf PORTC,1 ;σβησε το LED 2 (καυστήρας) bcf PORTC,2 ;σβήσε το LED 3 (κυκλοφορητής) bcf PORTC,3 ;σβήσε το LED 4 (ένδειξη πετρελαίου) bsf PORTC,0 ;άναψε το LED 1 (ένδειξη καπνού) goto main Funct2: bsf PORTC,3 ;άναψε το LED 3 (ένδειξη πετρελαίου) return

end 4.4 Προσομοίωση Για την προσομοίωση του συστήματος ελέγχου χρησιμοποιήσαμε το πρόγραμμα MPLAB x IDE ν. 2.05 το οποίο παρέχει δωρεάν η Microchip. Με το λογισμικό αυτό έχουμε τη δυνατότητα να ελέγξουμε τον κώδικα για τυχόν λάθη, καθώς επίσης μπορεί να γίνει προσομοίωση του μικροελεγκτή, όπως θα λειτουργούσε ένας πραγματικός μικροελεγκτής. Εικόνα 4.1 : Το περιβάλλον εργασίας του MPLAB x IDE v2.05

Το MPLAB διαθέτει δεκάδες εργαλεία μέσα από τα οποία μπορούμε να παρακολουθούμε τις εισόδους εξόδους του μικροελεγκτή, καθώς και να έχουμε πρόσβαση σε αυτές κατά τη διάρκεια εκτέλεσης του κώδικα. Ένα από τα εργαλεία του MPLAB που χρησιμοποιήσαμε για την ανάγκη της προσομοίωσης του κώδικα είναι το stimulus μέσα από το οποίο αλλάξαμε την κατάσταση των εισόδων από LOW σε HIGH και το αντίστροφο. Εικόνα 4.2. : Το παράθυρο stimulus του MPLAB Ένα άλλο εργαλείο είναι το I/O Pins-editor μέσα από το οποίο βλέπουμε την κατάσταση στην οποία βρίσκονται οι έξοδοι του μικροελεγκτή, όπως και πολλά άλλα χαρακτηριστικά τους, π.χ. αν είναι αναλογικοί ή ψηφιακοί. Εικόνα 4.3.: Το παράθυρο I/O pins-editor του MPLAB

Με τη χρήση του προγράμματος εξομοίωσης MPLAB πήραμε τα κατάλληλα screenshots μέσα από τα οποία θα παρουσιάσουμε τη λειτουργία του συστήματος ε- λέγχου. Ξεκινώντας την προσομοίωση του προγράμματος παρατηρούμε στο παράθυρο I/O pins ότι κανένα από τα LED δεν είναι αναμμένο. Πηγαίνοντας στο παράθυρο stimulus και αλλάζοντας την κατάσταση του RC5 το οποίο στην περίπτωση μας είναι ο θερμοστάτης χώρου, από LOW σε HIGH όπως φαίνεται στην παρακάτω εικόνα, θα παρατηρήσουμε στο παράθυρο I/O pins πως ανάβει το RC1-LED 2 που σημαίνει την έναρξη του καυστήρα. Εικόνα 4.4.: αλλαγή της κατάστασης του RC5 σε HIGH Εικόνα 4.5.: LED 2 αναμμένο έναρξη λειτουργίας του καυστήρα