Συσκευή USB για µέτρηση µαγνητικού πεδίου µε αισθητήρα Hall (γκαουσόµετρο Hall)

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

Download "Συσκευή USB για µέτρηση µαγνητικού πεδίου µε αισθητήρα Hall (γκαουσόµετρο Hall)"

Transcript

1 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ & ΜΗΧΑΝΙΚΩΝ ΗΛ.ΥΠΟΛΟΓΙΣΤΩΝ ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ Συσκευή USB για µέτρηση µαγνητικού πεδίου µε αισθητήρα Hall (γκαουσόµετρο Hall) ΟΝΟΜΑΤΕΠΩΝΥΜΟ : ΜΠΕΛΗΣ ΓΕΩΡΓΙΟΣ ΕΠΙΒΛΕΠΩΝ : ΚΑΘΗΓΗΤΗΣ ΛΙΤΣΑΡ ΑΚΗΣ ΓΕΩΡΓΙΟΣ ΘΕΣΣΑΛΟΝΙΚΗ, 23/03/2011

2 Πρόλογος Με την ολοκλήρωση της παρούσας διπλωµατικής εργασίας, που αποτελεί και το τελευταίο στάδιο των προπτυχιακών µου σπουδών στο τµήµα Ηλεκτρολόγων Μηχανικών της Πολυτεχνικής Σχολής του Αριστοτελείου Πανεπιστηµίου Θεσσαλονίκης, επιθυµώ να ευχαριστήσω όλους όσους µε βοήθησαν και µου συµπαραστάθηκαν, τόσο πρακτικά όσο και ηθικά µέχρι την τελική της σύνταξη. Πρώτα από όλα θέλω να εκφράσω τις θερµότερες ευχαριστίες µου στον Καθηγητή Γεώργιο Λιτσαρδάκη για την ανάθεση της διπλωµατικής εργασίας, καθώς και για την ουσιαστική παρουσία του σε κάθε βήµα αυτού του εγχειρήµατος.η συνεισφορά του ήταν κάτι παραπάνω από ανεκτίµητη σε δύσκολη περίοδο της ζωής µου.μου άνοιξε πραγµατικά ένα «δρόµο» στο επίπεδο της µικροηλεκτρονικής και του προγραµµατισµού, που είναι πολύ σηµαντικός για την µετέπειτα επαγγελµατική µου σταδιοδροµία,µιας και µου γεννήθηκε το κίνητρο για περαιτέρω ενασχόλησή µου πάνω σ αυτά τα αντικείµενα. Επίσης θα ήθελα να ευχαριστήσω τους γονείς µου Σωτήρη και Βασιλική για την κατανόηση, την πολύτιµη συµπαράσταση τους αλλά και την υποστήριξή τους σε κάθε µου βήµα στην µέχρι τώρα ζωή µου. Αφιερωµένη εξαιρετικά στην µητέρα µου Βασιλική,που δεν πρόλαβε να δει τα τελευταία µου βήµατα και την ολοκλήρωση των προσπαθειών όλης της οικογένειας, στο να τελειώσω µε επιτυχία την προπτυχιακή µου φοίτηση στο Πολυτεχνείο. Θεσσαλονίκη, 22/03/2011 Γεώργιος Μπέλης Α.Ε.Μ

3 Πίνακας Περιεχοµένων 1. Περίληψη... 4 Abstract Στάθµη Γνώσεων Αισθητήρες Φαινοµένου Hall (transducers) Ανάλυση Μαγνητικού Αισθητήρα Φαινοµένου Hall Κατασκευαστική Υλοποίηση Αισθητήρα Φαινοµένου Hall-A Κατασκευή Ανάλυση και Ρύθµιση του Software του Κυκλώµατος Ανάλυση ADC Αντιστοίχιση αναλογικών τιµών σε ψηφιακές Παράδειγµα ΒΥΤΕ Αποτελέσµατος USB Επικοινωνία Η/Υ µε το κύκλωµά µας (HID) Compiler και προγραµµατισµός της USB Compiler και προγραµµατισµός του PIC 18F Κώδικας σε τύπου Basic Compiler Ανάλυση και Ρύθµιση του Hardware του κυκλώµατος Evaluation board PIC Υλικά Kρίσιµα σηµεία υλοποίησης Συµπεράσµατα Βιβλιογραφία Παράρτηµα Α: Σχέδια Κυκλωµάτων Για Την Κατασκευή Της Πλακέτας Με Το Πρόγραµµα E.A.G.L.E. 33 Παράρτηµα Β: Προγράµµατα σε C#(C-sharp) για την επικοινωνία Η/Υ-USB Θύρας Γεώργιος Μπέλης Α.Ε.Μ

4 1. Περίληψη Στην παρούσα διπλωµατική εργασία υλοποιείται ένα κύκλωµα που µετράει µαγνητική επαγωγή µέσω του αισθητήρα (transducer) Hall A3507 µε σύνδεση USB. Επειδή η υλοποίηση µας είναι γενική για να µπορεί κάποιος πάνω σε αυτή να εφαρµόσει πολλές θεωρητικές υλοποιήσεις, έχουµε προσαρµόσει στη δοκιµαστική πλακέτα ένα ποτενσιόµετρο που προσοµοιάζει όλες τις γενικές περιπτώσεις µετατροπής αναλογικού σήµατος σε ψηφιακό, οπότε και αυτό του αισθητήρα Hall. Αρχικά ο µετατροπέας µετατρέπει την αναλογική τιµή της µαγνητικής ροής σε αναλογικό επίπεδο τάσης από 0 έως 5 V. Η έξοδος του οδηγείται στο κανάλι RA0 της µονάδας µετατροπής ADC του µικροελεγκτή PIC18F4550 (pin 2)(ΠΑΡΑΡΤΗΜΑ Α,Σχήµα 1.). Στη µονάδα αυτή, η αναλογική τάση θα γίνει ψηφιακή. Ο µετατροπέας από αναλογικό σε ψηφιακό σήµα είναι της τάξεως των 10 bit. Επιπροσθέτως, προγραµµατίζεται και η θύρα USB του υπολογιστή, ώστε να λαµβάνεται η ψηφιακή τιµή που στέλνει το κύκλωµα και να εµφανίζει µέσω προγράµµατος την επιθυµητή τιµή. Παρακάτω αναλύεται ο κώδικας σωστής λειτουργίας τόσο του µικροελεγκτή PIC18F4550 όσο και της θύρας USB. Στη συνέχεια, αναλύονται οι βασικές πτυχές και τα κρίσιµα σηµεία ελέγχου της όλης υλοποίησης γενικά τόσο σε επίπεδο Hardware όσο και σε επίπεδο Software. O PIC έχει πάρα πολλές εφαρµογές και γενικά είναι απο τους πιο δηµοφιλείς µικρουπολογιστές στο κοινό ανάλογου ενδιαφέροντος. Ανοίγει ένα «κόσµο» υλοποίησης θεωρητικών σκέψεων σε πρακτικές εφαρµογές και δίνει τη λύση σε εύκολες έως πάρα πολύ δύσκολες ιδέες και σε διάφορα περιβάλλοντα εργασίας ακόµα και στα πιο αντίξοα. Οι εφαρµογές του στη σύγχρονη εποχή είναι ανεξάντλητες όπως : Η αυτοκινητοβιοµηχανία Η ροµποτική Η ιατρική Η βιοτεχνολογία (ιατρικά µηχανήµατα) Η βιοµηχανία αυτοµάτου ελέγχου. Γεώργιος Μπέλης Α.Ε.Μ

5 Abstract In our project we create a circuit that measures magnetic flow using a transducer Hall with USB connection. Because of our project, in order someone to be able to apply many theoretical implementations, we have adapted in the plaque a potentiometer that simulates all general cases of transformation of analog to digital signal, therefore also that of transducer Hall A3507. This converter transforms the analog credit of magnetic flow to analog level of operating voltage from 0 to 5 V. Exit is in channel RA0 of transformation unit ADC of the microcontroller PIC18F4550 (pin2). In this unit analog operating voltage is transformed into digital. The converter of analog to digital signal consists of 10 bits. The USB port is programmed so that the digital credit that the circuit sends is presented via a program. The code of correct operation of the microcontroller is analyzed as well as the USB port. Afterwards the main aspects and the critical points of the materialization are analyzed both in hardware and software. The PIC has many applications and is one of the most famous microprocessor. It gives results in different situations and in different work environments. Its use in the modern era are : In the car industry In the robotics In medicine In the biotechnology In the industry of automatic control Γεώργιος Μπέλης Α.Ε.Μ

6 2. Στάθµη Γνώσεων Αισθητήρες Φαινοµένου Hall (transducers) Οι αισθητήρες (transducers) µπορούν να χρησιµοποιηθούν για τον εντοπισµό ενός µεγάλου φάσµατος διαφορετικών ενεργειακών µορφών όπως της µετακίνησης, των ηλεκτρικών σηµάτων, της ακτινοβολούµενης ενέργειας, της θερµικής ή µαγνητικής ενέργειας κλπ, και υπάρχουν πολλοί διαφορετικοί τύποι συσκευών εξόδου µε αναλογική και ψηφιακή είσοδο διαθέσιµοι για να επιλέξουµε. Ο τύπος του αισθητήρα εισόδου ή εξόδου που χρησιµοποιείται, εξαρτάται από τον τύπο του σήµατος ή από την διαδικασία "Sensed" ή "Controlled", αλλά µπορούµε να ορίσουµε και ένα µετατροπέα ως µια συσκευή που µετατρέπει µία φυσική ποσότητα σε µια άλλη Ανάλυση Μαγνητικού Αισθητήρα Φαινοµένου Hall Η τάση εξόδου, η οποία ονοµάζεται τάση Hall (VH) του βασικού στοιχείου Hall είναι ευθέως ανάλογη στην ένταση του µαγνητικού πεδίου που διέρχεται από το υλικό ηµιαγωγών (εξόδου H). Αυτή η τάση εξόδου µπορεί να είναι αρκετά µικρή, ακόµη και όταν υποβάλλεται σε ισχυρά µαγνητικά πεδία. Έτσι οι περισσότερες συσκευές που είναι εµπορικά διαθέσιµες στηριζόµενες στο φαινόµενο Hall, κατασκευάζονται µε ενσωµατωµένους DC ενισχυτές, λογικά µεταβαλλόµενα κυκλώµατα και ρυθµιστές τάσης για τη βελτίωση της ευαισθησίας των αισθητήρων, της υστέρησης και της εξωτερικής τάσης. Αυτό επιτρέπει στον αισθητήρα Hall να λειτουργεί σε ένα ευρύτερο φάσµα τροφοδοσίας και συνθηκών µαγνητικού πεδίου. Γεώργιος Μπέλης Α.Ε.Μ

7 2.3. Κατασκευαστική Υλοποίηση Αισθητήρα Φαινοµένου Hall- A3507 Σχήµα 1 Κύκλωµα αισθητήρα Hall A3507 Οι Hall Effect αισθητήρες είναι διαθέσιµοι είτε µε ψηφιακή είτε µε γραµµική εξόδο. Το σήµα εξόδου για γραµµικούς (αναλογικούς) αισθητήρες λαµβάνεται απευθείας από την έξοδο του ενισχυτή, µε την τάση εξόδου να είναι άµεσα ανάλογη µε το µαγνητικό πεδίο που διέρχεται από τον αισθητήρα Hall. Αυτή η τάση εξόδου Hall δίνεται ως εξής : Γεώργιος Μπέλης Α.Ε.Μ

8 V Η είναι η Hall τάση σε volt R H είναι το φαινόµενο Hall coefficient Ι είναι η τρέχουσα ροή µέσω του αισθητήρα σε αµπέρ t είναι το πάχος του αισθητήρα σε mm b είναι η µαγνητική πυκνότητα ροής σε Teslas Σχήµα 2 ιάγραµµα φαινοµένου Hall Οι γραµµικοί ή αναλογικοί αισθητήρες δίνουν µία έξοδο συνεχούς τάσης που αυξάνεται µε ένα ισχυρό µαγνητικό πεδίο και µειώνεται µε ένα ασθενές µαγνητικό πεδίο. Στους αισθητήρες Hall µε γραµµική έξοδο, καθώς η δύναµη του µαγνητικού πεδίου αυξάνει, το σήµα εξόδου από το ενισχυτή αυξάνεται επίσης. Μετά αρχίζει ο κορεσµός µέχρι ένα όριο που επιβάλλεται από την παροχή ενέργειας. Κάθε πρόσθετη αύξηση του µαγνητικού πεδίου δεν θα έχει καµία επίπτωση στο αποτέλεσµα, αλλά το οδηγεί σε επιπλέον κορεσµό. Συγκεκριµένα ο Α3507 αισθητήρας που χρησιµοποιείται στην υλοποίηση, είναι γραµµικός µε τα εξής χαρακτηριστικά: Η έξοδός του, σε τάση είναι ανάλογη του εφαρμοζόμενου μαγνητικού πεδίου Τµηµατικά συνεχής έξοδος Μεγαλύτερη ευαισθησία Μέγιστη σταθερότητα σε μεταβολές θερμοκρασίας Λειτουργία σε τάση μεταξύ 4.5 V και 5.5 V Μικρό σε μέγεθος Μεγάλη αξιοπιστία Παρακάτω παρουσιάζονται τα ηλεκτρικά και µαγνητικά χαρακτηριστικά του µαγνητικού αισθητήρα, καθώς και ο τρόπος υπολογισµού όλων των κρίσιµων µεγεθών που διέπουν την λειτουργία του για τάση Vcc = 5 V και ρεύµα Iο = 1 ma. Γεώργιος Μπέλης Α.Ε.Μ

9 Σχήµα 3 Ηλεκτρικά Χαρακτηριστικά Αισθητήρα Σχήµα 4 Μαγνητικά Χαρακτηριστικά Αισθητήρα Γεώργιος Μπέλης Α.Ε.Μ

10 Στη συνέχεια παρουσιάζονται οι βασικοί τύποι υπολογισµού των διάφορων µεγεθών που αφορούν τον µαγνητικό αισθητήρα και οι διάφορες µετρήσιµες παράµετροι.οι τύποι έλαβαν υπ όψην µέση θερµοκρασία ίση µε Ta = 25 C. Ο τύπος 1 µας δίνει την τάση εξόδου λαµβάνοντας υπ όψην την θερµοκρασία σε GAUSS.Επίσης αυτός ο υπολογισµός οδηγεί στην ακρίβεια για θερµοκρασίες εντός των ορίων σωστής λειτουργίας που ορίζεται στο manual της συσκευής.στον δικό µας αισθητήρα οι τιµές του µαγνητικού πεδίου που εφαρµόζεται και µετράται είναι +35 και -35 GAUSS. Τύπος 1 Τάση εξόδου συναρτήση της θερµοκρασίας Ευαισθησία:Ορίζεται ως η διαφορά τάσης του θετικού πόλου του µαγνήτη µε τον αρνητικό, προς την συνολική ένταση του µαγνητικού πεδίου σε GAUSS.Η µέση ευαισθησία του αισθητήρα είναι 2.5mV/G Τύπος 2 Ευαισθησία Τύπος 3 Επί τοις 100 σταθερότητα ευαισθησίας συναρτήση της θερµοκρασίας. Ευθεία Αναλογία:Η τάση εξόδου και η ευαισθησία είναι αναλογικές στην τάση τροφοδοσίας. Τύπος 4 Επί τοις 100 Αναλογική Αλλαγή της Τάσης Τύπος 5 Επί τοις 100 Αναλογική Αλλαγή Ευαισθησίας Γεώργιος Μπέλης Α.Ε.Μ

11 Γραµµικότητα και Συµµετρία:Στους τύπους 6,7 µετράται η επί τοις 100 γραµµικότητα µε θετικό εφαρµοζόµενο µαγνητικό πεδίο και αρνητικό αντίστοιχα σε GAUSS. Τύπος 6 Επί τοις 100 γραµµικότητα της τάσης(+g) Τύπος 7 Επί τοις 100 γραµµικότητα της τάσης (-G) Στον τύπο 8 ορίζεται η συµµετρία εξόδου της τάσης. Τύπος 8 Επί τοις 100 συµµετρία εξόδου. Γεώργιος Μπέλης Α.Ε.Μ

12 3. Κατασκευή 3.1. Ανάλυση και Ρύθμιση του Software του Κυκλώματος Ανάλυση ADC Ένας µετατροπέας αναλογικού σήµατος σε ψηφιακό (ADC) είναι µια συσκευή η οποία µετατρέπει µία συνεχή ποσότητα σε διακριτό χρόνο µε ψηφιακή αναπαράσταση. Ένας ADC µπορεί επίσης να παράσχει µία µεµονωµένη µέτρηση. Η αντίστροφη λειτουργία εκτελείται από ψηφιακό σε αναλογικό µετατροπέα (DAC). Τυπικά, ένας ADC είναι µια ηλεκτρονική συσκευή που µετατρέπει ένα αναλογικό σήµα τάσης ή ρεύµατος σε ένα ψηφιακό αριθµό ανάλογο µε το µέγεθος της τάσης ή του ρεύµατος. Ωστόσο, ορισµένες µη-ηλεκτρονικές ή µόνο εν µέρει ηλεκτρονικές συσκευές, όπως περιστροφικοί κωδικοποιητές, µπορούν επίσης να θεωρηθούν ADCs. Η ψηφιακή έξοδος µπορεί να χρησιµοποιήσει διαφορετικά συστήµατα κωδικοποίησης. Τυπικά η ψηφιακή έξοδος θα είναι ένας δυαδικός αριθµός (συµπλήρωµα ως προς 2) που είναι ανάλογη µε την είσοδο. Παρακάτω δίνονται γενικά οι καταχωρητές του ADC που µπορούµε να προγραµµατίσουµε. Γεώργιος Μπέλης Α.Ε.Μ

13 Σχήµα 5 Καταχωρητές ADC Επίσης στο σχήµα 6 βλέπουµε τις αναλογικές εισόδους που δέχεται ο ADC και που µπορούµε να ελέγξουµε ώστε να παίρνουµε σωστά δεδοµένα αναλογικής εισόδου. Σχήµα 6 ιάγραµµα AD Αντιστοίχιση αναλογικών τιµών σε ψηφιακές Η αντιστοίχιση των αναλογικών τιµών σε ψηφιακές τιµές γίνεται ως εξής : Ο µετατροπέας είναι των 10 bit. Από τα ψηφιακά κυκλώµατα, αυτό σηµαίνει ότι η ελάχιστη τιµή σε bit είναι η µηδενική και σε δυαδική µορφή θα είναι , δηλαδή θα παριστάνεται από 10 µηδενικά. Αντίστοιχα η µέγιστη τιµή του µετατροπέα θα είναι η δυαδική ψηφιακή λέξη , δηλαδή θα παριστάνεται µε 10 άσους. Πώς θα γίνεται, όµως, η αντιστοιχία αναλογικών και ψηφιακών τιµών ή η διακριτικότητα του µετατροπέα ; Γεώργιος Μπέλης Α.Ε.Μ

14 Θα πρέπει αρχικά η µέγιστη τιµή των 5 V να διαιρεθεί µε την µέγιστη δυαδική τιµή του µετατροπέα. Έτσι, θα φανεί η διακριτή και όχι η συνεχής όπως θα περίµενε κάποιος, µεταβολή που εισάγει ένας µετατροπέας από αναλογικό σε ψηφιακό σήµα. Κατά αυτόν τον τρόπο βρίσκεται το ελάχιστο βήµα µετατροπής των αναλογικών τιµών σε ψηφιακές τιµές. Η ψηφιακή δυαδική λέξη είναι σε δεκαδική τιµή ίση µε 1024 ή Οπότε διαιρώντας τα 5 V µε το 1024 λαµβάνουµε την τιµή που πολλαπλασιαζόµενη µε τον δυαδικό αριθµό του µετατροπέα, βρίσκεται η αναλογική τιµή των Volt και κατά επέκταση του µετατροπέα Hall. 3. 5/1024 = Παράδειγµα Τρόπος υπολογισµού τιµών. Υποθέτουµε ότι ο µετατροπέας Hall έχει δώσει την αναλογική τιµή τάσης των 2.5 V στον ADC του PIC. Τότε, ο ADC θα δώσει έξοδο την ψηφιακή λέξη ( ) 10 3 = σε δεκαδικό ή αλλιώς σε δυαδικό ΒΥΤΕ Αποτελέσµατος Λόγω του ότι η διακριτικότητα του µετατροπέα A/D είναι 10 bit, κάθε παραγόµενη ψηφιακή λέξη θα πρέπει να καταχωρηθεί σε δύο byte των 8 bit. Λόγω όµως, του γεγονότος ότι θέλω να εκπέµψω ένα µόνο byte κάθε φορά, θα πρέπει αυτή η τιµή να µετατραπεί σε τιµή των 8 bit, ούτως ώστε να καταχωρηθεί σε ένα byte. Στα ψηφιακά συστήµατα, ο πλέον διαδεδοµένος και πιο συνηθισµένος τρόπος είναι η µετακίνηση ή ολίσθηση των bit που απαρτίζουν την µεταβλητή wadcvalue κατά 2 θέσεις δεξιά. Με αυτόν τον τρόπο χάνονται τα 2 τελευταία-ελάχιστα σηµαντικά bit ή ψηφία. Η νέα πια τιµή καταχωρείται σε µια άλλη µεταβλητή, την badcvalue. Στη συνέχεια, γίνεται η παρακάτω διαδικασία. Επειδή ο µετατροπέας A/D λειτουργεί σε κάθε κύκλο εκτέλεσης του προγράµµατος (κάθε 100 ms) θα απασχολούσε τον δίαυλο επικοινωνίας (USB) συνεχώς κάθε 100 ms. Αυτό θα είχε ως αποτέλεσµα την Γεώργιος Μπέλης Α.Ε.Μ

15 υπερφόρτωση ή την υπεραπασχόληση του προγράµµατος απεικόνισης ή ακόµα και του υπολογιστή του ίδιου, καθυστερώντας τυχόν άλλες εφαρµογές. Για το λόγο αυτό, στο σηµείο αυτό πραγµατοποιείται ο έλεγχος της τρέχουσας τιµής µετατροπής µε την αµέσως προηγούµενη και αν αυτές είναι ίδιες τότε δεν εκπέµπεται η νέα αφού είναι ίδια µε την προηγούµενη που έχει µεταδοθεί ήδη. Με την εντολή : If badcvalue <> boldadcvalue Then LatD = badcvalue 'Άναψε τα led της PotrD boldadcvalue = badcvalue USB Το επόµενο στάδιο είναι η µεταβίβαση της ψηφιολέξης στη µονάδα USB. Εκεί θα φορτωθεί στο δίαυλο USB για να σταλεί στον υπολογιστή σε µια θύρα USB. Παρακάτω βλέπουµε την υλοποίηση του κυκλώµατος της θύρας USB και το σχέδιο της. Σχήµα 7 Γενική υλοποίηση του USB Στο σχήµα 8 παρουσιάζεται η εσωτερική σύνδεση του PIC µε τη USB θύρα. Γεώργιος Μπέλης Α.Ε.Μ

16 Σχήµα 8 Εσωτερική τυπική σύνδεση PIC USB Επικοινωνία Η/Υ µε το κύκλωµά µας (HID) Η επικοινωνία του υπολογιστή µε το κύκλωµα γίνεται µέσω ενός ειδικού προγράµµατος software που λέγεται HID (Human Interface Descriptor). Η δουλειά αυτού του προγράµµατος είναι η εξής. Καταρχήν αναγνωρίζει κάθε συσκευή USB που είναι προσαρµοσµένη στον υπολογιστή. Εκεί, στο µενού του HID φαίνεται και η δική µας συσκευή USB. Με την επιλογή της συσκευής µας εµφανίζεται ένα µενού το οποίο οδηγεί σε µια οθόνη όπου απεικονίζονται οι τιµές που µετατρέπει το κύκλωµα µε τη δυνατότητα επιλογής απεικόνισης σε δυαδικό, σε δεκαδικό και σε δεκαεξαδικό. Αυτό το πρόγραµµα χρησιµοποιήθηκε δοκιµαστικά για την αρχική επικοινωνία, µέσω υπολογιστή, µε το κύκλωµα, για να ελεγχθούν ο κώδικας προγραµµατισµού του PIC, η δυνατότητα επικοινωνίας του µε τον υπολογιστή καθώς και η σωστή ή µη µετάδοση του επεξεργασµένου αναλογικού σήµατος σε ψηφιακό. Γεώργιος Μπέλης Α.Ε.Μ

17 Σχήµα 9 Έτοιµο πρόγραµµα HID (Device Monitoring) Compiler και προγραµµατισµός της USB Ο προγραµµατισµός της θύρας USB αναλύεται σε επιµέρους τµήµατα κώδικα παρακάτω.επίσης παρέχεται και σε ηλεκτρονική µορφή αποθηκευµένος σε CD. Αξίζει να αναφερθεί ότι παρ όλο τον επιµερισµό σε τµήµατα, για την καλύτερη κατανόηση του προγραµµατισµού, ο κώδικας λειτουργεί σαν ολότητα και τα τµήµατά του είναι αλληλοεξαρτόµενα και αλληλοϋποστηριζόµενα,µε «βιβλιοθήκες» προγραµµατισµού κοινές και «κλάσεις» αλληλένδετες. Μια σύντοµη περιγραφή για τα αρχεία που χρειάστηκαν για την επικοινωνία Η/Υ-USB παρατίθεται αναλυτικά στο ΠΑΡΑΡΤΗΜΑ Β και επιγραµµατικά παρακάτω: To solution (USB_Win.sln) αποτελείται από δύο projects γραµµένα σε γλώσσα C# (C-sharp): Γεώργιος Μπέλης Α.Ε.Μ

18 USB_IO: είναι το project που ασχολείται µε τη σύνδεση USB µε τον driver επικοινωνίας (Ι/Ο). εν πειράχτηκε σχεδόν τίποτα εδώ, παρά µόνο η διεύθυνση του USB device που σχεδιάστηκε (PID & VID). Οι ρυθµίσεις USB γίνονται στη γραµµή 64 του αρχείου USB_HandsetDevice.cs. Τα PID & VID σηµαίνουν:pid=product ID και VID=Vendor ID και χρησιµοποιούνται για την αναγνώριση USB συσκευής.είναι και τα δύο των 16-bit και ο Η/Υ χρησιµοποιεί τον συνδυασµό αυτών για να βρίσκει drives για να χρησιµοποιηθούν στην USB συσκευή.γι αυτό πρέπει ο συνδυασµός αυτών να είναι µοναδικός, ώστε κάθε συσκευή µε αυτόν τον συνδυασµό να χρησιµοποιεί αυτόν τον driver.έτσι όποτε θέλουµε έναν συγκεκριµένο driver για µια συσκευή, το µόνο που χρειαζόµαστε είναι τα µοναδικά VID/PID για αυτήν την συσκευή. Αυτοί οι κωδικοί αποκτούνται µε διάφορους τρόπους.ή θα δίνονται µαζί µε την συσκευή, ή µπορούν να αγοραστούν, ή µια τελευταία λύση είναι να γίνει µια αίτηση στην εταιρία του chipset(π.χ. microchip) για την χορήγηση των κωδικών όπως αυτήν εδώ: (http://ww1.microchip.com/downloads/en/appnotes/application%20for%20usb%20ven dor%20id%20sublicense.pdf) USB_Win: είναι το κυρίως project που περιέχει τη φόρµα διεπαφής µε τον χρήστη (GUI). Το βασικό αρχείο είναι το USB_Form.cs, όπου περιέχονται δύο τµήµατα: η φόρµα του GUI (η οποία είναι µέσα στον solution explorer του Visual Studio και µετά στο αρχείο USB_Form.cs) και ο αντίστοιχος πηγαίος κώδικα της φόρµας (ο οποίος εµφανίζεται στο αρχείο µε την επιλογή: View Code). Όλα τα υπόλοιπα αρχεία (π.χ. resx, cs, ico κλπ) είναι συµπληρωµατικά αρχεία της συνολικής λύσης (solution). Στο ΠΑΡΑΡΤΗΜΑ Β µαζί µε τον κώδικα των αρχείων παρέχεται και αναλυτικός σχολιασµός κάθε εντολής ανά γραµµή καθώς και γενικές πληροφορίες για γλώσσα assembly και χειρισµού της µέσα από την συγκεκριµένη γλώσσα(c#-c sharp). Στο σχήµα 10 βλέπουµε το Microsoft Visual C# 2008 όπoυ προγραµµατίζουµε τη USB. Γεώργιος Μπέλης Α.Ε.Μ

19 Σχήµα 10 Προγραµµατισµός σε C Sharp για το διάβασµα της USB. Σχήµα 11 Εµφάνιση της τελικής τιµής σε Volt Γεώργιος Μπέλης Α.Ε.Μ

20 Compiler και προγραµµατισµός του PIC 18F4550 Έγινε download της freeware έκδοσης του τύπου BASIC Compiler από την Σέρβικη εταιρία MIKROELEKTRONIKA (http://www.mikroe.com). Ακολούθησε µελέτη της γλώσσας προγραµµατισµού και εν συνεχεία η συγγραφή του κώδικα. Παρακάτω σε ξεχωριστή παράγραφο και κεφάλαιο αναλύονται τα σηµεία του προγραµµατισµού που έχουν αυξηµένη σηµασία για τον σωστό έλεγχο του προγράµµατος µε σχόλια για κάποιον που θα θέλει να ασχοληθεί παραπάνω, καθώς και διάφορες δυσκολίες που αντιµετωπίστηκαν στην υλοποίηση και στην επικοινωνία του κυκλώµατος µε τον υπολογιστή. Γεώργιος Μπέλης Α.Ε.Μ

21 Κώδικας σε τύπου Basic Compiler Στο παρακάτω σχήµα γίνεται η επιλογή του συγκεκριµένου µοντέλου PIC18F4550 καθώς και η συχνότητα του κρυσταλλικού ταλαντωτή 8 MHz. Σχήµα 12 Επιλογή συσκευής PIC και ρύθµιση παραµέτρων Γεώργιος Μπέλης Α.Ε.Μ

22 Σχήµα 13 Στιγµιότυπο του compiler φορτωµένο µε το πρόγραµµα λειτουργίας Ο κώδικας που χρησιµοποιήθηκε είναι τύπου BASIC καθώς και τα υποστηρικτικά προγράµµατα και βιβλιοθήκες που χρησιµοποιήθηκαν. program HID_Read_Write_Interrupt2 dim cnt as char dim readbuff as byte[1] absolute 0x500 'Buffers should be in USB RAM dim writebuff as byte[1] absolute 0x540 ' please consult datasheet dim wadcvalue as word dim badcvalue as byte dim boldadcvalue as byte sub procedure Interrupt() USB_Interrupt_Proc() end sub 'USB servicing is done inside the interrupt Γεώργιος Μπέλης Α.Ε.Μ

23 Main: 'Μέχρι την ταµπέλα ProgrammeContiniusExecute: γίνονται οι πρωτοποθετήσεις τιµών 'για τον έλεγχο των διαφόρων µονάδων που περιέχονται στο chip (εδώ το 18F4550) 'Στους καταχωριτές Tris το 1 δηλώνει είσοδο και το 0 έξοδο. 'Bit num TRISA = % ' Set PORTA as input TRISB = % ' Set PORTB as input TRISC = % ' Set PORTC as input TRISD = % ' Set PORTD as output TRISE = % ' Set PORTE bit 0,1,2 as output PortA = 0 PortB = 0 PortC = 0 PortD = 0 PortE = 0 LatA = 0 LatB = 0 LatC = 0 LatD = 0 LatE = 0 'Latency καταχωρητές 'Bit num ADCON0 = ADCON0 or % 'Enable Analog-to-Digital (A/D) Converter 'module ADCON1 = ADCON1 or % ' Set AN0 as analog input ADCON2 = ADCON2 or % CMCON = CMCON or 7 ' Disable comparators ' Enable HID communication ProgrammeContiniusExecute: 'διάβασε την αναλογική τιµή από το κανάλι 0 και βάλε την τιµή αυτή στην wadcvalue 'η οποία είναι τύπου word (2 byte). Κάνε αυτό συνεχώς. wadcvalue = ADC_Read(0) 'Λόγω του οτι η διακριτικότητα του µετατροπέα A/D είναι 10 bit αυτή περιέχεται 'σε δύο byte των 8 bit, επειδή όµως θέλω να εκπέµψω ένα µόνο byte κάθε φορά πρέπει 'αυτή την τιµή να την µετατρέψω σε τιµή των 8 bit, ο συνηθισµένος τρόπος είναι 'η µετακίνηση των bit που απαρτίζουν την wadcvalue κατα 2 θέσεις δεξιά χάνοντας 'έτσι τα 2 τελευταία ελάχιστα σηµαντικά ψηφία και καταχωρώντας την νέα τιµή σε 'µια άλλη µεταβλητή την badcvalue. badcvalue = wadcvalue >> 2 Γεώργιος Μπέλης Α.Ε.Μ

24 'Σκοπός του παρακάτω ελέγχου είναι ο εξής: 'επειδή ο µετατροπέας A/D λειτουργεί σε κάθε κύκλο εκτέλεσης του προγράµµατος '(κάθε 100 ms) θα απασχολούσε τον δίαυλο επικοινωνίας (USB) συνεχώς κάθε 100 ms 'µε πιο πιθανή συνέπεια την υπερφόρτωση ή την υπεραπασχόληση του προγράµµατος 'απεικόνισης ή και του υπολογιστή του ιδίου, καθυστερόντας τυχόν άλλες εφαρµογές. 'Έτσι λοιπόν πραγµατοποιώ έλεγχο της τρέχουσας τιµής µετατροπής µε την αµέσως 'προηγούµενη και αν αυτές είναι ίδιες τότε δεν εκπέµπεται η νέα αφού είναι ίδια 'µε την προηγούµενη που έχει µεταδοθεί ήδη. If badcvalue <> boldadcvalue Then LatD = badcvalue 'Αναψε τα led της PotrD boldadcvalue = badcvalue 'Επειδή η Writebuff ορίζεται ως πίνακας µε στοιχεία byte, κάνω απόδοση τιµής 'στο πρώτο στοιχείο του πίνακα το οποίο είναι τύπου byte. Writebuff[0] = badcvalue 'Η λειτουργία HID_Write όταν αστοχήσει στην εκποµπή δεδοµένων επιστρέφει τιµή 0 'αλλιώς επιστρέφει τον αριθµό των εκπεµποµένων byte. Έτσι αν αστοχήσει µε τον 'βρόγχο While την αναγκάζουµε να ξαναεκπέµψει τα δεδοµένα. = 0) Wend End if 'If wadcvalue <> boldadcvalue Then Delay_ms(100) Goto ProgrammeContiniusExecute End. Γεώργιος Μπέλης Α.Ε.Μ

25 Ανάλυση και Ρύθμιση του Hardware του κυκλώματος Evaluation board Πρόκειται για µια πλακέτα δοκιµής-εκτίµησης κώδικα. Η πλακέτα αυτή έχει επάνω τον PIC18F4550, τον κρυσταλλικό ταλαντωτή µε τα στοιχεία υποστήριξής του (πυκνωτές, αντιστάσεις) (σχήµα 12). Στην πλακέτα αυτή µπορούµε και προγραµµατίζουµε τον PIC και βλέπουµε, ελέγχουµε, διορθώνουµε τυχόν λάθη του προγράµµατος που δεν ανταποκρίνονται στις απαιτήσεις µας. Σχήµα 14 οκιµαστική πλακέτα µε τον PIC18F4550 Γεώργιος Μπέλης Α.Ε.Μ

26 PIC Σχήµα 15 PIC18F4550 Χαρακτηριστικά Σωστής Λειτουργίας PIC18F4550 Operating frequency DC 48 MHz Program Memory (Bytes) Program Memory (Instructions) Data Memory (Bytes) 2048 Data EEPROM Memory (Bytes) 256 Interrupt Sources 20 I/O Ports Ports A, B, C, D, E Timers 4 Capture/Compare/PWM Modules 1 Enhanced Capture/Compare/PWM Modules 1 Serial Communications MSSP, Enhanced USART Universal Serial Bus (USB) module 1 Streaming Parallel Port (SPP) Yes 10-Bit Analog to Digital Module 13 Input Channels Comparators 2 POR, BOR, RESET Instruction, Stack Resets (and Delays) Full, Stack Underflow, (PWRT, OST) MCLR (optional), WDT Programmable Low-Voltage Detect Yes Programmable Brown-out Reset Yes 75 Instructions; Instruction Set 83 with Extended Instruction Set enabled 40 Pin PDIP Packages 44 Pin QFN 44 Pin TQFP Πίνακας 1 Χαρακτηριστικά ορθής λειτουργίας PIC Γεώργιος Μπέλης Α.Ε.Μ

27 Υλικά PIC 18F4550 ΚΡΥΣΤΑΛΛΙΚΟΣ ΤΑΛΑΝΤΩΤΗΣ 8 ΜΗz ΠΥΚΝΩΤΕΣ: 2x15pF/32volt 1x220nF/32 volt 1x100nF/32 volt ΑΝΤΙΣΤΑΣΗ 1x4.7 kω USB CONNECTOR HALL EFFECT SENSOR A3507 Γεώργιος Μπέλης Α.Ε.Μ

28 4. Kρίσιµα σηµεία υλοποίησης Στην πλακέτα γενικής χρήσης-δοκιµής-εκτίµησης κώδικα, προσαρµόστηκε ένας connector USB. Το πρώτο πρόβληµα που παρουσιάστηκε ήταν η αστάθεια στην επικοινωνία µε την πλακέτα. Αυτό οφειλόταν σε θέµατα τροφοδοσίας. H θύρα USB παρέχει από µόνη της τροφοδοσία +5V/GROUND. Οπότε η πλακέτα έπρεπε να παίρνει τροφοδοσία από την θύρα USB. Έτσι διακόπηκε η παροχή τροφοδοσίας από εξωτερικό κύκλωµα και προσαρµόστηκε ένας πυκνωτής 220 nf στο pin 18 που είναι το VUSB (τροφοδοσία pic USB) και στο GROUND. Πλέον το κύκλωµα τροφοδοτείται µόνο από την θύρα USB και όλες οι µονάδες του pic λειτουργούν κανονικά. Από εδώ και πέρα ακολουθεί ο προγραµµατισµός του PIC. Αρχικά έγινε download της freeware έκδοσης του τύπου BASIC Compiler από την Σέρβικη εταιρία MIKROELEKTRONIKA (http://www.mikroe.com). Ακολούθησε µελέτη της γλώσσας προγραµµατισµού και εν συνεχεία η συγγραφή του κώδικα. Εδώ ήταν το µεγαλύτερο πρόβληµα. Στην αρχή έπρεπε να εγκατασταθεί στον υπολογιστή ένα πρόγραµµα που θα εγκαθίδρυε επικοινωνία µεταξύ υπολογιστή και θύρας USB του PIC και άρα µε όλο το κύκλωµα. Αυτό το πρόγραµµα λέγεται HID το οποίο σηµαίνει Human Interface Descriptor. Απεικονίζει τα δεδοµένα που στέλνει ο PIC στην οθόνη του υπολογιστή. Με αναζήτηση στο ίντερνετ βρέθηκε ο κατάλληλος HID που λέγεται Device Monitoring Studio. Μας δίνει την δυνατότητα ελέγχου και πρόσβασης όλων των θυρών USB του υπολογιστή και όλες τις συσκευές USB. Μετά από πολλαπλές εγκαταστάσεις προγράµµατος στον πυρήνα του PIC, το κύκλωµα πάντα παρουσίαζε αστάθεια ως προς την συµπεριφορά του. Kάποιες φορές έβλεπε ο HID την πλακέτα και µετά κολλούσε, κάποιες φορές δεν τον έβλεπε καθόλου, κάποιες φορές έστελνε δεδοµένα και µετά από λίγο κολλούσε, γενικά η διαδικασία όλη δεν προχωρούσε.αυτό οφειλόταν στο γεγονός ότι η freeware έκδοση του compiler έδινε δυνατότητα προγραµµατισµού µέχρι 2KBYTE. Mετά από επικοινωνία µε την εταιρία MIKROELEKTRONIKA, χρειάστηκε να γίνει download της πλήρους έκδοσης του compiler, δίνοντάς µας την δυνατότητα προγραµµατισµού σε όλη την µνήµη του PIC (πέραν των 2ΚΒ). Από την εταιρεία αυτή δόθηκαν και οι κατάλληλες βιβλιοθήκες και παραδείγµατα χρήσης του PIC-USB. Έτσι λοιπόν συντάχθηκε κώδικας 600 byte περίπου Γεώργιος Μπέλης Α.Ε.Μ

29 υποστηριζόµενος από τα 5.5kbyte περίπου προγραµµάτων που «τρέχουν» παράλληλα µε το κυρίως πρόγραµµα που ορίζουν,παραµετροποιούν,ελέγχουν την λειτουργία USB του PIC και γενικά την επικοινωνία του PIC µε τον υπολογιστή µέσω θύρας USB. Με την εγκατάσταση αυτού του κώδικα στον PIC λύθηκαν όλα τα προβλήµατα αναγνώρισης, επικοινωνίας και απεικόνισης (µέσω HID) της πλακέτας από τον υπολογιστή. Πλέον µπορούν να απεικονιστούν οι αναλογικές τιµές του σένσορα HALL στην οθόνη του υπολογιστή. Ο HID απεικονίζει τις τιµές του σένσορα στο δεκαδικό σύστηµα οπότε η πραγµατική τιµή του µετατροπέα θα υπολογίζεται ως εξής : µε το πολλαπλασιασµό της decimal τιµής µε τον αριθµό 0, που αντιστοιχεί στην αναλογική τιµή τάσης του ενός bit. Υπενθυµίζεται ότι η χρήση έτοιµου προγράµµατος HID έγινε δοκιµαστικά για λόγους που εξηγούνται παραπάνω, καθώς το «διάβασµα» και η απεικόνιση της τιµής που µετράµε στον υπολογιστή έγινε µε δικό µας πρόγραµµα σε visual c για windows. Γεώργιος Μπέλης Α.Ε.Μ

30 5. Συµπεράσµατα Για τη διπλωµατική αυτή µε θέµα «Συσκευή USB για µέτρηση µαγνητικού πεδίου µε αισθητήρα Hall (γκαουσόµετρο Hall)» χρησιµοποιήθηκαν ηλεκτρονικά υλικά (hardware) και κατάλληλα λογισµικά (software). Για το hardware χρησιµοποιήθηκε ο µικροελεγκτής PIC18F4550 της εταιρείας MICROCHIP TECHNOLOGΥ (http://www.microchip.com/). Οι λόγοι που χρησιµοποιήθηκε o PIC είναι οι εξής : Είναι αρχιτεκτονικής τύπου εντολών Reduced Instruction Set Computing (RISC) γεγονός που σηµαίνει ότι έχει λίγες και πάνω από όλα λειτουργικές και εύχρηστες εντολές. Όλη η σειρά ελεγκτών PIC έχει το χαρακτηριστικό ότι αν τοποθετηθεί ανάποδα στην πλακέτα λειτουργίας το CHIP, αυτό δεν καίγεται απλά δεν λειτουργεί το σύστηµα. Ο συγκεκριµένος µικροελεγκτής διαθέτει ενσωµατωµένο ADC γρήγορο, οπότε αυτό το περιφερειακό σύστηµα ενσωµατώνεται στο CHIP. ίνει τη δυνατότητα επικοινωνίας µε Η/Υ µέσω θύρας USB, διαθέτoντας on-chip το USB περιφερειακό. Το αποτέλεσµα όλων αυτών είναι η δηµιουργία µιας µικρής ηλεκτρονικής κατασκευής που διέπεται από τις προηγούµενες αρχές και επιπλέον είναι ανεξάρτητη εξωτερικής τροφοδοσίας. Αυτό συµβαίνει διότι στην πλακέτα παρέχεται τροφοδοσία από την θύρα USB 0 5 V. Όλα αυτά καθιστούν το PIC ένα πολύ έυχρηστο, αξιόπιστο εργαλείο το οποίο όµως για τον προγραµµατισµό του απαιτεί εξειδίκευση σε προγραµµατισµό σε γλώσσες τύπου assembly. Για το λόγο αυτό χρησιµοποιήθηκε ένας τύπου Basic compiler. Γενικά είναι πολύ δύσκολο να προγραµµατιστεί ένα τέτοιoυ είδους chip εάν δεν υπάρχει ανάλογη τριβή γενικά µε το αντικείµενο των µικροϋπολογιστών. Σε σχέση µε το software για την υλοποιήση του προγράµµατος της επικοινωνίας και απεικόνισης χρησιµοποιήθηκε η γλώσσα προγραµµατισµού C sharp σε περιβάλλον Microsoft Visual Studio Γενικά ο έλεγχος της θύρας USB είναι µία αρκετά πολύπλοκη διαδικασία και η δηµιουργία προγράµµατος παρακολούθησής της είναι επίπονη και απαιτεί πλήρης γνώση της λειτουργίας της θύρας USB. Η βιβλιογραφία θύρας USB είναι ανεξάντλητη και αναλύεται σε παράλληλα θεωρητικά κυρίως επίπεδα, πράγµα που καθιστά τον προγραµµατισµό της ακόµα πιο δύσκολο. Εν κατακλείδι ήταν µία διπλωµατική απαιτητική που προϋπόθεται γνώση πολλών αντικειµένων, το αποτέλεσµα όµως είναι αυτό που ανταµείβει τους κόπους κάθε ερευνητή! Γεώργιος Μπέλης Α.Ε.Μ

31 Πιθανές Βελτιώσεις : Είναι µία εφαρµογή µε ένα απλό ποτενσιόµετρο που προσοµοιώνει τέλεια τη λειτουργία κάθε αναλογικού αισθητήρα και µιας εξόδου USB. Άρα καταλαβαίνει κάποιος άµεσα ότι µπορεί να εισάγει διάφορους αναλογικούς αισθητήρες και να συλλέγει δεδοµένα µετρήσεων τα οποία µπορεί µε κατάλληλες τροποποιήσεις στο software, να προσπελαύνει θύρες USB και να απεικονίζει τα δεδοµένα αυτά στην οθόνη του υπολογιστή. Εν κατακλείδι θα µπορούσαµε να χαρακτηρίσουµε αυτή την εφαρµογή σαν µία βάση για την υλοποίηση κάθε συστήµατος αναλογικής εισόδου ψηφιακής εξόδου στον υπολογιστή µέσω USB, η οποία µε διάφορες ρυθµίσεις στο hardware και στο software θα µπορεί να µας παράγει κάθε θεωρητική προσέγγιση προβλήµατος σε απτό αποτέλεσµα. Σχήµα 16 Παράδειγµα Βελτιστοποίησης-Τελικής Μορφής Γεώργιος Μπέλης Α.Ε.Μ

32 6. Βιβλιογραφία PIC18F2455/2550/4455/4550 Data Sheet. 28/40/44-Pin High-Performance, Enhanced Flash USB Microcontrollers. with nanowatt Technology, MICROCHIP TECHNOLOGY «ΑΝΑΛΥΣΗ ΚΑΙ ΣΧΕ ΙΑΣΗ ΨΗΦΙΑΚΩΝ ΚΥΚΛΩΜΑΤΩΝ» Ι.Μ.ΚΟΝΤΟΛΕΩΝ,ΕΚ ΟΣΕΙΣ ΑΠΘ,ΘΕΣΣΑΛΟΝΙΚΗ «ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ»,Γ.Κ.ΠΑΠΑΚΩΝΣΤΑΝΤΙΝΟΥ, Π..ΤΣΑΝΑΚΑΣ,Γ.Π.ΦΡΑΓΚΑΚΗΣ,ΕΚ ΟΣΕΙΣ ΣΥΜΜΕΤΡΙΑ,1999. «ΗΛΕΚΤΡΙΚΕΣ ΜΕΤΡΗΣΕΙΣ»,ΠΕΤΡΙ ΗΣ ΒΑΣΙΛΕΙΟΣ,ΕΚ ΟΣΕΙΣ. ΑΠΘ,ΘΕΣΣΑΛΟΝΙΚΗ USB COMPLETE FOURTH EDITION THE DEVELOPER S GUIDE,JAN AXELSON,LAKEVIEW RESEARCH LLC,JUNE «8-bit microprocessor compatible A/D Converters With 8 Channels Multiplexer»,National Semiconductors,USA «E.A.G.L.E EASILY APPLICABLE GRAPHICS LIGHT EDITION». BASIC COMPILER, MICROELECTRONICA COMPANY,SERBIA «DEVICE MONITORING STUDIO». PIC Communication with USB, Roy Seifert &3508 sensor Data Sheet Γεώργιος Μπέλης Α.Ε.Μ

33 Παράρτημα Α: Σχέδια Κυκλωμάτων Για Την Κατασκευή Της Πλακέτας Με Το Πρόγραμμα E.A.G.L.E. Σχήµα 1 Ολοκληρωµένο κύκλωµα υλοποίησης Γεώργιος Μπέλης Α.Ε.Μ

34 UsbSensor-2 bottom UsbSensor-2 place plan Σχήµα 2 Πλακέτα (ΦΥΣΙΚΟ ΜΕΓΕΘΟΣ) Γεώργιος Μπέλης Α.Ε.Μ

35 Παράρτημα Β: Προγράμματα σε C#(C sharp) για την επικοινωνία Η/Υ USB Θύρας Το προγραµµατιστικό περιβάλλον της MICROSOFT VISUAL C# είναι αυτό, όπως φαίνεται παρακάτω στο Σχήµα 1 Σχήµα 1 Γεώργιος Μπέλης Α.Ε.Μ

36 1. PROJECT USB_IO Πρόγραµµα AssemblyInfo.cs using System.Reflection; using System.Runtime.CompilerServices; // // General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. // [assembly: AssemblyTitle("USB_IO")] [assembly: AssemblyDescription("USB_ Handset USB Controller")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("")] [assembly: AssemblyCopyright("")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] // // Version information for an assembly consists of the following four values: // // Major Version // Minor Version // Build Number // Revision // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: [assembly: AssemblyVersion(" ")] // // In order to sign your assembly you must specify a key to use. Refer to the // Microsoft.NET Framework documentation for more information on assembly signing. // // Use the attributes below to control which key is used for signing. // // Notes: // (*) If no key is specified, the assembly is not signed. // (*) KeyName refers to a key that has been installed in the Crypto Service // Provider (CSP) on your machine. KeyFile refers to a file which contains // a key. // (*) If the KeyFile and the KeyName values are both specified, the // following processing occurs: Γεώργιος Μπέλης Α.Ε.Μ

37 // (1) If the KeyName can be found in the CSP, that key is used. // (2) If the KeyName does not exist and the KeyFile does exist, the key // in the KeyFile is installed into the CSP and used. // (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility. // When specifying the KeyFile, the location of the KeyFile should be // relative to the project output directory which is // %Project Directory%\obj\<configuration>. For example, if your KeyFile is // located in the project directory, you would specify the AssemblyKeyFile // attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")] // (*) Delay Signing is an advanced option - see the Microsoft.NET Framework // documentation for more information on this. // [assembly: AssemblyDelaySign(false)] [assembly: AssemblyKeyFile("")] [assembly: AssemblyKeyName("")] Πρόγραµµα HIDDevice.cs using System; using System.IO; using System.Text; using System.Runtime.InteropServices; namespace USB_Win #region Custom exception /// Generic HID device exception public class HIDDeviceException : ApplicationException public HIDDeviceException(string strmessage) : base(strmessage) public static HIDDeviceException GenerateWithWinError(string strmessage) return new HIDDeviceException(string.Format("Msg:0 WinEr:1:X8", strmessage, Marshal.GetLastWin32Error())); #endregion /// Abstract HID device : Derive your new device controller class from this public abstract class HIDDevice : Win32Usb, IDisposable #region Privates variables Filestream we can use to read/write from</summary> private FileStream m_ofile; Length of input report : device gives us this</summary> private int m_ninputreportlength; Length if output report : device gives us this</summary> private int m_noutputreportlength; Γεώργιος Μπέλης Α.Ε.Μ

38 Handle to the device</summary> private IntPtr m_hhandle; #endregion #region IDisposable Members /// Dispose method public void Dispose() Dispose(true); GC.SuppressFinalize(this); /// Disposer called by both dispose and finalise /// <param name="bdisposing">true if disposing</param> protected virtual void Dispose(bool bdisposing) if (bdisposing) // if we are disposing, need to close the managed resources resources if (m_ofile!= null) m_ofile.close(); m_ofile = null; if (m_hhandle!= IntPtr.Zero) CloseHandle(m_hHandle); #endregion // Dispose and finalize, get rid of unmanaged #region Privates/protected /// Initialises the device /// <param name="strpath">path to the device</param> private void Initialise(string strpath) // Create the file from the device path m_hhandle = CreateFile(strPath, GENERIC_READ GENERIC_WRITE, 0, IntPtr.Zero, OPEN_EXISTING, FILE_FLAG_OVERLAPPED, IntPtr.Zero); if ( m_hhandle!= InvalidHandleValue ) // if the open worked... IntPtr lpdata; Γεώργιος Μπέλης Α.Ε.Μ

39 if (HidD_GetPreparsedData(m_hHandle, out lpdata)) // get windows to read the device data into an internal buffer try HidCaps ocaps; HidP_GetCaps(lpData, out ocaps); // extract the device capabilities from the internal buffer m_ninputreportlength = ocaps.inputreportbytelength; // get the input... m_noutputreportlength = ocaps.outputreportbytelength; //... and output report lengths m_ofile = new FileStream(m_hHandle, FileAccess.Read FileAccess.Write, true, m_ninputreportlength, true); // wrap the file handle in a.net file stream BeginAsyncRead(); // kick off the first asynchronous read finally HidD_FreePreparsedData(ref lpdata); // before we quit the funtion, we must free the internal buffer reserved in GetPreparsedData else // GetPreparsedData failed? Chuck an exception throw HIDDeviceException.GenerateWithWinError("GetPreparsedData failed"); else // File open failed? Chuck an exception m_hhandle = IntPtr.Zero; throw HIDDeviceException.GenerateWithWinError("Failed to create device file"); /// Kicks off an asynchronous read which completes when data is read or when the device /// is disconnected. Uses a callback. private void BeginAsyncRead() byte[] arrinputreport = new byte[m_ninputreportlength]; // put the buff we used to receive the stuff as the async state then we can get at it when the read completes m_ofile.beginread(arrinputreport, 0, m_ninputreportlength, new AsyncCallback(ReadCompleted), arrinputreport); Γεώργιος Μπέλης Α.Ε.Μ

40 /// Callback for above. Care with this as it will be called on the background thread from the async read /// <param name="iresult">async result parameter</param> protected void ReadCompleted(IAsyncResult iresult) byte[] arrbuff = (byte[])iresult.asyncstate; // retrieve the read buffer try m_ofile.endread(iresult); // call end read : this throws any exceptions that happened during the read try InputReport oinrep = CreateInputReport(); // Create the input report for the device oinrep.setdata(arrbuff); // and set the data portion - this processes the data received into a more easily understood format depending upon the report type HandleDataReceived(oInRep); // pass the new input report on to the higher level handler finally BeginAsyncRead(); // when all that is done, kick off another read for the next report catch(ioexception ex) // if we got an IO exception, the device was removed HandleDeviceRemoved(); if (OnDeviceRemoved!= null) OnDeviceRemoved(this, new EventArgs()); Dispose(); /// Write an output report to the device. /// <param name="ooutrep">output report to write</param> protected void Write(OutputReport ooutrep) try m_ofile.write(ooutrep.buffer, 0, ooutrep.bufferlength); catch(ioexception ex) Γεώργιος Μπέλης Α.Ε.Μ

41 Γεώργιος Μπέλης Α.Ε.Μ // The device was removed! throw new HIDDeviceException("Device was removed"); /// virtual handler for any action to be taken when data is received. Override to use. /// <param name="oinrep">the input report that was received</param> protected virtual void HandleDataReceived(InputReport oinrep) /// Virtual handler for any action to be taken when a device is removed. Override to use. protected virtual void HandleDeviceRemoved() /// Helper method to return the device path given a DeviceInterfaceData structure and an InfoSet handle. /// Used in 'FindDevice' so check that method out to see how to get an InfoSet handle and a DeviceInterfaceData. /// <param name="hinfoset">handle to the InfoSet</param> /// <param name="ointerface">deviceinterfacedata structure</param> /// <returns>the device path or null if there was some problem</returns> private static string GetDevicePath(IntPtr hinfoset, ref DeviceInterfaceData ointerface) uint nrequiredsize = 0; // Get the device interface details if (!SetupDiGetDeviceInterfaceDetail(hInfoSet, ref ointerface, IntPtr.Zero, 0, ref nrequiredsize, IntPtr.Zero)) DeviceInterfaceDetailData odetail = new DeviceInterfaceDetailData(); odetail.size = 5; // hardcoded to 5! Sorry, but this works and trying more future proof versions by setting the size to the struct sizeof failed miserably. If you manage to sort it, mail me! Thx if (SetupDiGetDeviceInterfaceDetail(hInfoSet, ref ointerface, ref odetail, nrequiredsize, ref nrequiredsize, IntPtr.Zero)) return odetail.devicepath; return null; #endregion

42 #region Public static /// Finds a device given its PID and VID /// <param name="nvid">vendor id for device (VID)</param> /// <param name="npid">product id for device (PID)</param> /// <param name="otype">type of device class to create</param> /// <returns>a new device class of the given type or null</returns> public static HIDDevice FindDevice(int nvid, int npid, Type otype) string strpath = string.empty; string strsearch = string.format("vid_0:x4&pid_1:x4", nvid, npid); // first, build the path search string Guid ghid; HidD_GetHidGuid(out ghid); // next, get the GUID from Windows that it uses to represent the HID USB interface IntPtr hinfoset = SetupDiGetClassDevs(ref ghid, null, IntPtr.Zero, DIGCF_DEVICEINTERFACE DIGCF_PRESENT); // this gets a list of all HID devices currently connected to the computer (InfoSet) try DeviceInterfaceData ointerface = new DeviceInterfaceData(); // build up a device interface data block ointerface.size = Marshal.SizeOf(oInterface); // Now iterate through the InfoSet memory block assigned within Windows in the call to SetupDiGetClassDevs // to get device details for each device connected int nindex = 0; while (SetupDiEnumDeviceInterfaces(hInfoSet, 0, ref ghid, (uint)nindex, ref ointerface)) // this gets the device interface information for a device at index 'nindex' in the memory block string strdevicepath = GetDevicePath(hInfoSet, ref ointerface); // get the device path (see helper method 'GetDevicePath') if (strdevicepath.indexof(strsearch) >= 0) // do a string search, if we find the VID/PID string then we found our device! HIDDevice onewdevice = (HIDDevice)Activator.CreateInstance(oType);// create an instance of the class for this device onewdevice.initialise(strdevicepath); // initialise it with the device path next one. finally return onewdevice; // and return it nindex++; Γεώργιος Μπέλης Α.Ε.Μ // if we get here, we didn't find our device. So move on to the

43 // Before we go, we have to free up the InfoSet memory reserved by SetupDiGetClassDevs SetupDiDestroyDeviceInfoList(hInfoSet); return null; // oops, didn't find our device #endregion #region Publics /// Event handler called when device has been removed public event EventHandler OnDeviceRemoved; /// Accessor for output report length public int OutputReportLength get return m_noutputreportlength; /// Accessor for input report length public int InputReportLength get return m_ninputreportlength; /// Virtual method to create an input report for this device. Override to use. /// <returns>a shiny new input report</returns> public virtual InputReport CreateInputReport() return null; #endregion Γεώργιος Μπέλης Α.Ε.Μ

44 Πρόγραµµα Report.cs using System; namespace USB_Win /// Base class for report types. Simply wraps a byte buffer. public abstract class Report #region Member variables Buffer for raw report bytes</summary> private byte[] m_arrbuffer; Length of the report</summary> private int m_nlength; #endregion /// Constructor /// <param name="odev">constructing device</param> public Report(HIDDevice odev) // Do nothing /// Sets the raw byte array. /// <param name="arrbytes">raw report bytes</param> protected void SetBuffer(byte[] arrbytes) m_arrbuffer = arrbytes; m_nlength = m_arrbuffer.length; /// Accessor for the raw byte buffer public byte[] Buffer get return m_arrbuffer; /// Accessor for the buffer length Γεώργιος Μπέλης Α.Ε.Μ

45 public int BufferLength get return m_nlength; /// Defines a base class for output reports. To use output reports, just put the bytes into the raw buffer. public abstract class OutputReport : Report /// Construction. Setup the buffer with the correct output report length dictated by the device /// <param name="odev">creating device</param> public OutputReport(HIDDevice odev) : base(odev) SetBuffer(new byte[odev.outputreportlength]); /// Defines a base class for input reports. To use input reports, use the SetData method and override the /// ProcessData method. public abstract class InputReport : Report /// Construction. Do nothing /// <param name="odev">creating device</param> public InputReport(HIDDevice odev) : base(odev) /// Call this to set the buffer given a raw input report. Calls an overridable method to /// should automatically parse the bytes into meaningul structures. /// <param name="arrdata">raw input report.</param> public void SetData(byte[] arrdata) SetBuffer(arrData); ProcessData(); Γεώργιος Μπέλης Α.Ε.Μ

46 /// Override this to process the input report into something useful public abstract void ProcessData(); Πρόγραµµα USB_AwareForm.cs using System; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace USB_Win /// Defines a simple base form class that registers itself for device notifications. public class UsbAwareForm : Form #region Member variables HID Guid</summary> private Guid m_gdeviceclass; Handle returned by RegisterForUsbEvents - need it when we unregister</summary> private IntPtr m_husbeventhandle; #endregion /// Constructor. No handle yet so can't register for USB events here public UsbAwareForm() InitializeComponent(); m_gdeviceclass = Win32Usb.HIDGuid; /// Accessor for device class guid public Guid DeviceClassGuid get return m_gdeviceclass; Event called when a new device is detected</summary> public event EventHandler DeviceArrived; Event called when a device is removed</summary> Γεώργιος Μπέλης Α.Ε.Μ

47 public event EventHandler DeviceRemoved; /// Overridable 'On' method called when a new device is detected protected virtual void OnDeviceArrived(EventArgs args) if ( DeviceArrived!= null ) DeviceArrived(this, args); /// Overridable 'On' method called when a device is removed protected virtual void OnDeviceRemoved(EventArgs args) if ( DeviceRemoved!= null ) DeviceRemoved(this, args); #region Overrides /// Override called when the window handle has been created. /// <param name="e"></param> protected override void OnHandleCreated(EventArgs e) base.onhandlecreated(e); m_husbeventhandle = Win32Usb.RegisterForUsbEvents(Handle, m_gdeviceclass); /// Override WndProc to handle incoming Windows messages. /// <param name="m">message from Windows</param> protected override void WndProc(ref Message m) if (m.msg == Win32Usb.WM_DEVICECHANGE) // we got a device change message! A USB device was inserted or removed switch(m.wparam.toint32()) // Check the W parameter to see if a device was inserted or removed case Win32Usb.DEVICE_ARRIVAL: // inserted OnDeviceArrived(new EventArgs()); break; Γεώργιος Μπέλης Α.Ε.Μ

48 removed case Win32Usb.DEVICE_REMOVECOMPLETE: // OnDeviceRemoved(new EventArgs()); break; base.wndproc(ref m); // pass message on to base form /// Clean up any resources being used. /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> protected override void Dispose(bool disposing) Win32Usb.UnregisterForUsbEvents(m_hUsbEventHandle); if (disposing && (components!= null)) components.dispose(); base.dispose(disposing); #endregion #region Windows Form Designer generated code /// Required designer variable. private System.ComponentModel.IContainer components = null; /// Required method for Designer support - do not modify /// the contents of this method with the code editor. private void InitializeComponent() this.components = new System.ComponentModel.Container(); this.text = "UsbAwareForm"; #endregion Πρόγραµµα USB_HandsetDevice.cs using System; using System.IO; using System.Text; Γεώργιος Μπέλης Α.Ε.Μ

49 namespace USB_Win /// Class which defines the state of the buttons public class ButtonStates public byte val; #region Event definitions /// Arguments for button changed event public class USB_ButtonChangedEventArgs : EventArgs Current states of the buttons</summary> public readonly ButtonStates[] Buttons; /// Constructor /// <param name="arrstates">state of the buttons</param> public USB_ButtonChangedEventArgs(ButtonStates[] arrstates) Buttons = arrstates; /// Delegate for button event public delegate void USB_ButtonChangedEventHandler(object sender, USB_ButtonChangedEventArgs args); #endregion /// Class that defines a controller of USB handsets : Representation of the USB hardware device public class USB_HandsetDevice : HIDDevice #region Public attributes/methods /// Event fired when one or more button state changes public event USB_ButtonChangedEventHandler OnButtonChanged; /// Creates an input report for use in the HID device framework /// <returns>a new input report for this device</returns> Γεώργιος Μπέλης Α.Ε.Μ

50 public override InputReport CreateInputReport() return new USB_InputReport(this); /// Finds the USB handset. /// <returns>a new USB_HandsetDevice or null if not found.</returns> public static USB_HandsetDevice FindUSB_Handset() // VID and PID for our USB Board return (USB_HandsetDevice)FindDevice(0x1234, 0x0001, typeof(usb_handsetdevice)); #endregion #region Overrides /// Fired when data has been received over USB /// <param name="oinrep">input report received</param> protected override void HandleDataReceived(InputReport oinrep) // Fire the event handler if assigned if (OnButtonChanged!= null) USB_InputReport obuzin = (USB_InputReport)oInRep; OnButtonChanged(this, new USB_ButtonChangedEventArgs(oBuzIn.Buttons)); /// Dispose. /// <param name="bdisposing">true if object is being disposed - else is being finalised</param> protected override void Dispose(bool bdisposing) base.dispose(bdisposing); #endregion #region Device reports /// Output report for USB device public class USB_OutputReport : OutputReport Γεώργιος Μπέλης Α.Ε.Μ

CYTA Cloud Server Set Up Instructions

CYTA Cloud Server Set Up Instructions CYTA Cloud Server Set Up Instructions ΕΛΛΗΝΙΚΑ ENGLISH Initial Set-up Cloud Server To proceed with the initial setup of your Cloud Server first login to the Cyta CloudMarketPlace on https://cloudmarketplace.cyta.com.cy

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

VBA ΣΤΟ WORD. 1. Συχνά, όταν ήθελα να δώσω ένα φυλλάδιο εργασίας με ασκήσεις στους μαθητές έκανα το εξής: Version 25-7-2015 ΗΜΙΤΕΛΗΣ!!!!

VBA ΣΤΟ WORD. 1. Συχνά, όταν ήθελα να δώσω ένα φυλλάδιο εργασίας με ασκήσεις στους μαθητές έκανα το εξής: Version 25-7-2015 ΗΜΙΤΕΛΗΣ!!!! VBA ΣΤΟ WORD Version 25-7-2015 ΗΜΙΤΕΛΗΣ!!!! Μου παρουσιάστηκαν δύο θέματα. 1. Συχνά, όταν ήθελα να δώσω ένα φυλλάδιο εργασίας με ασκήσεις στους μαθητές έκανα το εξής: Εγραφα σε ένα αρχείο του Word τις

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

Homework 3 Solutions

Homework 3 Solutions Homework 3 Solutions Igor Yanovsky (Math 151A TA) Problem 1: Compute the absolute error and relative error in approximations of p by p. (Use calculator!) a) p π, p 22/7; b) p π, p 3.141. Solution: For

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

Εγκατάσταση λογισμικού και αναβάθμιση συσκευής Device software installation and software upgrade

Εγκατάσταση λογισμικού και αναβάθμιση συσκευής Device software installation and software upgrade Για να ελέγξετε το λογισμικό που έχει τώρα η συσκευή κάντε κλικ Menu > Options > Device > About Device Versions. Στο πιο κάτω παράδειγμα η συσκευή έχει έκδοση λογισμικού 6.0.0.546 με πλατφόρμα 6.6.0.207.

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

ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΜΟΝΑΔΑΣ ΘΡΑΥΣΤΗΡΑ ΜΕ ΧΡΗΣΗ P.L.C. AUTOMATION OF A CRUSHER MODULE USING P.L.C.

ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΜΟΝΑΔΑΣ ΘΡΑΥΣΤΗΡΑ ΜΕ ΧΡΗΣΗ P.L.C. AUTOMATION OF A CRUSHER MODULE USING P.L.C. ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΑΝ. ΜΑΚΕΔΟΝΙΑΣ ΚΑΙ ΘΡΑΚΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ Τ.Ε ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΜΟΝΑΔΑΣ ΘΡΑΥΣΤΗΡΑ ΜΕ ΧΡΗΣΗ P.L.C. AUTOMATION OF A

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

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

ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΕΛΕΓΚΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΕΛΕΓΚΤΩΝ ATMEL AVR8 ΠΟΡΛΙΔΑΣ ΔΗΜΗΤΡΙΟΣ ATMEL AVR Atmega16 Χαρακτηριστικά Μικροελεγκτής 8-bit υψηλής απόδοσης και χαμηλής κατανάλωσης Προοδευμένη αρχιτεκτονική RISC (Reduced instruction

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

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

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

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

ΑΙΣΘΗΤΗΡΑΣ ΣΧΕΤΙΚΗΣ ΥΓΡΑΣΙΑΣ. Η πιο συνηθισμένη έκφραση για την υγρασία του αέρα είναι η σχετική υγρασία (Relative Ηumidity, RH).

ΑΙΣΘΗΤΗΡΑΣ ΣΧΕΤΙΚΗΣ ΥΓΡΑΣΙΑΣ. Η πιο συνηθισμένη έκφραση για την υγρασία του αέρα είναι η σχετική υγρασία (Relative Ηumidity, RH). ΑΙΣΘΗΤΗΡΑΣ ΣΧΕΤΙΚΗΣ ΥΓΡΑΣΙΑΣ Η πιο συνηθισμένη έκφραση για την υγρασία του αέρα είναι η σχετική υγρασία (Relative Ηumidity, RH). Η σχετική υγρασία είναι ο λόγος επί τοις εκατό (%) της μάζας των υδρατμών

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

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

Εφαρμογές μικροελεγκτών Μικροελεγκτές Έναν ορισμό που θα μπορούσαμε να δώσουμε για τους μικροελεγκτές είναι ο εξής: Μικροελεγκτής είναι ένα προγραμματιζόμενο ολοκληρωμένο κύκλωμα το οποίο διαθέτει επεξεργαστή, μνήμη, διάφορα

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

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 6/5/2006

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 6/5/2006 Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Ολοι οι αριθμοί που αναφέρονται σε όλα τα ερωτήματα είναι μικρότεροι το 1000 εκτός αν ορίζεται διαφορετικά στη διατύπωση του προβλήματος. Διάρκεια: 3,5 ώρες Καλή

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

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

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

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

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

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

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

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

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

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

ΑΝΑLOG TO DIGITAL CONVERTER (ADC)

ΑΝΑLOG TO DIGITAL CONVERTER (ADC) ΑΝΑLOG TO DIGITAL CONVERTER (ADC) O ADC αναλαμβάνει να μετατρέψει αναλογικές τάσεις σε ψηφιακές ώστε να είναι διαθέσιμες εσωτερικά στο μικροελεγκτή για επεξεργασία. Η αναλογική τάση που θέλουμε να ψηφιοποιηθεί

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

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

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

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

ιαδικτυακές Εφαρµογές

ιαδικτυακές Εφαρµογές ιαδικτυακές Εφαρµογές µε Java2 Στοιχεία ικτυακής Επικοινωνίας Όροι IP address 32bit αριθµός που χρησιµοποιείται από το Internet Protocol για την παράδοση δεδοµένων στο σωστό υπολογιστή στο δίκτυο. Port

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

ΚΥΠΡΙΑΚΟΣ ΣΥΝΔΕΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY 21 ος ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Δεύτερος Γύρος - 30 Μαρτίου 2011

ΚΥΠΡΙΑΚΟΣ ΣΥΝΔΕΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY 21 ος ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Δεύτερος Γύρος - 30 Μαρτίου 2011 Διάρκεια Διαγωνισμού: 3 ώρες Απαντήστε όλες τις ερωτήσεις Μέγιστο Βάρος (20 Μονάδες) Δίνεται ένα σύνολο από N σφαιρίδια τα οποία δεν έχουν όλα το ίδιο βάρος μεταξύ τους και ένα κουτί που αντέχει μέχρι

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

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

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

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

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

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα 1. Ποια είναι η σχέση της έννοιας του μικροεπεξεργαστή με αυτή του μικροελεγκτή; Α. Ο μικροεπεξεργαστής εμπεριέχει τουλάχιστο έναν μικροελεγκτή. Β. Ο

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

WDT και Power Up timer

WDT και Power Up timer Ο ΜΙΚΡΟΕΛΕΓΚΤΗΣ PIC O μικροελεγκτής PIC κατασκευάζεται από την εταιρεία Microchip. Περιλαμβάνει τις τρεις βασικές κατηγορίες ως προς το εύρος του δίαυλου δεδομένων (Data Bus): 8 bit (σειρές PIC10, PIC12,

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

Συστήµατα DAQ. 6.1 Εισαγωγή

Συστήµατα DAQ. 6.1 Εισαγωγή 6 Συστήµατα DAQ 6.1 Εισαγωγή Με τον όρο Acquisition (Απόκτηση) περιγράφουµε τον τρόπο µε τον οποίο µεγέθη όπως η πίεση, η θερµοκρασία, το ρεύµα µετατρέπονται σε ψηφιακά δεδοµένα και απεικονίζονται στην

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

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ USE INSTRUCTIONS

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ USE INSTRUCTIONS ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ USE INSTRUCTIONS ΤΗΛΕΦΩΝΟ ΜΕ ΑΝΑΓΝΩΡΙΣΗ ΚΛΗΣΗΣ /CORDED PHONE WITH CALLER ID ΜΟΝΤΕΛΟ/MODEL: TM09-448 DC48V Παρακαλούμε διαβάστε προσεκτικά όλες τις οδηγίες χρήσης πριν την χρήση της συσκευής

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

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

Το «κλειστό» σύστημα. Ανοικτές επικοινωνίες... Εισαγωγή στην Τεχνολογία της Πληροφορικής. Εισαγωγή στην τεχνολογία της πληροφορικής ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ Εισαγωγή στην Τεχνολογία της Πληροφορικής ΓΙΩΡΓΟΣ Ν. ΓΙΑΝΝΟΠΟΥΛΟΣ Λέκτορας στο Πανεπιστήμιο Αθηνών gyannop@law.uoa.gr Το «κλειστό» σύστημα ΕΙΣΟΔΟΣ ΕΠΕΞΕΡΓΑΣΙΑ

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

ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ. Μύρων Ε. Μπουρλάκης ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ. Μύρων Ε. Μπουρλάκης ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ Έλεγχος Συσκευών µε Embedded Ethernet και CAN Βus Μύρων

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

Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών

Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ:ΗΛΕΚΤΡΟΝΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΗΛΕΚΤΡΟΝΙΚΩΝ ΕΦΑΡΜΟΓΩΝ Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων

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

Capacitors - Capacitance, Charge and Potential Difference

Capacitors - Capacitance, Charge and Potential Difference Capacitors - Capacitance, Charge and Potential Difference Capacitors store electric charge. This ability to store electric charge is known as capacitance. A simple capacitor consists of 2 parallel metal

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

Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2)

Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2) Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Οργάνωση Προγράµµατος Header Files Μετάφραση και σύνδεση αρχείων προγράµµατος ΕΠΛ 132 Αρχές Προγραµµατισµού

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

ΑΣΚΗΣΗ 5 η Η σειριακή επικοινωνία ΙΙ 1.1 ΣΚΟΠΟΣ Σκοπός της άσκησης αυτής είναι η κατανόηση σε βάθος των λειτουργιών που παρέχονται από το περιβάλλον LabView για τον χειρισµό της σειριακής επικοινωνίας

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

Αρχές Τεχνολογίας Λογισμικού Εργαστήριο

Αρχές Τεχνολογίας Λογισμικού Εργαστήριο Αρχές Τεχνολογίας Λογισμικού Εργαστήριο Κωδικός Μαθήματος: TP323 Ώρες Εργαστηρίου: 2/εβδομάδα (Διαφάνειες Νίκου Βιδάκη) 1 JAVA Inheritance Εβδομάδα Νο. 3 2 Προηγούμενο μάθημα (1/2) Τι είναι αντικείμενο?

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

Συστήματα Μικροεπεξεργαστών

Συστήματα Μικροεπεξεργαστών Εργαστήριο 1 ο Εισαγωγή στον AVR Περίγραμμα Εργαστηριακής Άσκησης Εισαγωγή... 2 Κατηγορίες μικροελεγκτών AVR... 2 Εξοικείωση με το περιβάλλον AVR Studio 4... 3 Βήμα 1ο: Δημιουργία νέου έργου (project)...

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

Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems)

Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems) Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems) Μαθηµα 2 ηµήτρης Λιούπης 1 Intel SA-1110 µc StrongARM core. System-on-Chip. Εξέλιξη των SA-110 και SA-1100. 2 ARM cores ARM: IP (intellectual

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

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

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

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

Εργαστηριακές ασκήσεις λογικών κυκλωμάτων 11 A/D-D/A

Εργαστηριακές ασκήσεις λογικών κυκλωμάτων 11 A/D-D/A 11.1 Θεωρητικό μέρος 11 A/D-D/A 11.1.1 Μετατροπέας αναλογικού σε ψηφιακό σήμα (A/D converter) με δυαδικό μετρητή Σχ.1 Μετατροπέας A/D με δυαδικό μετρητή Στο σχήμα 1 απεικονίζεται σε block diagram ένας

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

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

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

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

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

Electronics μαζί με τα συνοδευτικά καλώδια και το αισθητήριο θερμοκρασίας LM335 που περιέχονται Τομέας: Ηλεκτρονικός Εκπαιδευτικός: Μπουλταδάκης Στέλιος Μάθημα: Συλλογή και μεταφορά δεδομένων μέσω Η/Υ, Αισθητήρες-Ενεργοποιητές Αντικείμενο: α) Μέτρηση θερμοκρασίας με το αισθητήριο LM335 και μεταφορά

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

Test Data Management in Practice

Test Data Management in Practice Problems, Concepts, and the Swisscom Test Data Organizer Do you have issues with your legal and compliance department because test environments contain sensitive data outsourcing partners must not see?

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

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

Εισαγωγή στην Πληροφορική Εισαγωγή στην Πληροφορική Χειµερινό Εξάµηνο 2006-07 ρ. Παναγιώτης Χατζηδούκας (Π..407/80) Εισαγωγή στην Πληροφορική 1 Γενικές πληροφορίες Εισαγωγή στην Πληροφορική ιδασκαλία: Παναγιώτης Χατζηδούκας Email:

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

Right Rear Door. Let's now finish the door hinge saga with the right rear door

Right Rear Door. Let's now finish the door hinge saga with the right rear door Right Rear Door Let's now finish the door hinge saga with the right rear door You may have been already guessed my steps, so there is not much to describe in detail. Old upper one file:///c /Documents

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

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: Λειτουργίες Αρχείων Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

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

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

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΝΟΣΗΛΕΥΤΙΚΗΣ ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΝΟΣΗΛΕΥΤΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΨΥΧΟΛΟΓΙΚΕΣ ΕΠΙΠΤΩΣΕΙΣ ΣΕ ΓΥΝΑΙΚΕΣ ΜΕΤΑ ΑΠΟ ΜΑΣΤΕΚΤΟΜΗ ΓΕΩΡΓΙΑ ΤΡΙΣΟΚΚΑ Λευκωσία 2012 ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ

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

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

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

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

Περιεχόµενα. 1 Εισαγωγή στις οµές εδοµένων 3. 2 Στοίβα (Stack) 5

Περιεχόµενα. 1 Εισαγωγή στις οµές εδοµένων 3. 2 Στοίβα (Stack) 5 Περιεχόµενα 1 Εισαγωγή στις οµές εδοµένων 3 2 Στοίβα (Stack) 5 i ΠΕΡΙΕΧΟΜΕΝΑ ΠΕΡΙΕΧΟΜΕΝΑ ii Πληροφορίες Εργαστηρίου Σκοπός του εργαστηρίου Το εργαστήριο οµές εδοµένων αποσκοπεί στην εφαρµογή των τεχνολογιών

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

Advanced Subsidiary Unit 1: Understanding and Written Response

Advanced Subsidiary Unit 1: Understanding and Written Response Write your name here Surname Other names Edexcel GE entre Number andidate Number Greek dvanced Subsidiary Unit 1: Understanding and Written Response Thursday 16 May 2013 Morning Time: 2 hours 45 minutes

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

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

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Έλεγχος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Σχεσιακοί Τελεστές και Ισότητας Ένα πρόγραμμα εκτός από αριθμητικές πράξεις

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

Areas and Lengths in Polar Coordinates

Areas and Lengths in Polar Coordinates Kiryl Tsishchanka Areas and Lengths in Polar Coordinates In this section we develop the formula for the area of a region whose boundary is given by a polar equation. We need to use the formula for the

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

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 11/3/2006

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 11/3/2006 ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 11/3/26 Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Ολοι οι αριθμοί που αναφέρονται σε όλα τα ερωτήματα μικρότεροι το 1 εκτός αν ορίζεται διαφορετικά στη διατύπωση

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

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων 2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει

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

ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων

ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων 2.1 Αρχιτεκτονική Υπολογιστών 2.1 Αρχιτεκτονική Υπολογιστών 2.2 Γλώσσα Μηχανής 2.3 Εκτέλεση προγράµµατος 2.4 Αριθµητικές και λογικές εντολές 2.5 Επικοινωνία µε άλλες συσκευές

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

Βασίλης Χριστοφίδης Επαναληπτική Εξέταση (3 ώρες) Ηµεροµηνία: 21 Σεπτεµβρίου 2012

Βασίλης Χριστοφίδης Επαναληπτική Εξέταση (3 ώρες) Ηµεροµηνία: 21 Σεπτεµβρίου 2012 Πανεπιστήµιο Κρήτης Τµήµα Επιστήµης Υπολογιστών ΗΥ-252 Αντικειµενοστρεφής Προγραµµατισµός Βασίλης Χριστοφίδης Επαναληπτική Εξέταση (3 ώρες) Ηµεροµηνία: 21 Σεπτεµβρίου 2012 Θέμα 1 Θέμα 2 Θέμα 3 Θέμα 4 Θέμα

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

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

ΦΩΤΟΓΡΑΜΜΕΤΡΙΚΕΣ ΚΑΙ ΤΗΛΕΠΙΣΚΟΠΙΚΕΣ ΜΕΘΟΔΟΙ ΣΤΗ ΜΕΛΕΤΗ ΘΕΜΑΤΩΝ ΔΑΣΙΚΟΥ ΠΕΡΙΒΑΛΛΟΝΤΟΣ AΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΕΙΔΙΚΕΥΣΗΣ ΠΡΟΣΤΑΣΙΑ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΚΑΙ ΒΙΩΣΙΜΗ ΑΝΑΠΤΥΞΗ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΦΩΤΟΓΡΑΜΜΕΤΡΙΚΕΣ

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

Στο εστιατόριο «ToDokimasesPrinToBgaleisStonKosmo?» έξω από τους δακτυλίους του Κρόνου, οι παραγγελίες γίνονται ηλεκτρονικά.

Στο εστιατόριο «ToDokimasesPrinToBgaleisStonKosmo?» έξω από τους δακτυλίους του Κρόνου, οι παραγγελίες γίνονται ηλεκτρονικά. Διαστημικό εστιατόριο του (Μ)ΑστροΈκτορα Στο εστιατόριο «ToDokimasesPrinToBgaleisStonKosmo?» έξω από τους δακτυλίους του Κρόνου, οι παραγγελίες γίνονται ηλεκτρονικά. Μόλις μια παρέα πελατών κάτσει σε ένα

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

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η μέθοδος main(), εμφάνιση μηνυμάτων, Java προγράμματα που εκτελούν αριθμητικές πράξεις Γαβαλάς Δαμιανός

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

Προγραμματισμός Ι. Πίνακες, Δείκτες, Αναφορές και Δυναμική Μνήμη. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Πίνακες, Δείκτες, Αναφορές και Δυναμική Μνήμη. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Πίνακες, Δείκτες, Αναφορές και Δυναμική Μνήμη Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Πίνακες Αντικειμένων Όπως στην C μπορούμε να έχουμε πίνακες από

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

ιδάσκων: ηµήτρης Ζεϊναλιπούρ

ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 1.3-1.4: Εισαγωγή Στον Προγραµµατισµό ( ιάλεξη 2) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Περιεχόµενα Εισαγωγικές Έννοιες - Ορισµοί Ο κύκλος ανάπτυξης προγράµµατος Παραδείγµατα Πότε χρησιµοποιούµε υπολογιστή?

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

ιαδικτυακές Εφαρµογές Πραγµατικού Χρόνου µε Java

ιαδικτυακές Εφαρµογές Πραγµατικού Χρόνου µε Java ιαδικτυακές Εφαρµογές Πραγµατικού Χρόνου µε Java Java Media Framework Ηβιβλιοθήκη JMF Εγκαθίσταται επιπρόσθετα στη Java Αναπαραγωγή πολυµέσων Αποστολή και λήψη πολυµέσων σε πραγµατικό χρόνο Γραφικά αντικείµενα

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

SOAP API. https://bulksmsn.gr. Table of Contents

SOAP API. https://bulksmsn.gr. Table of Contents SOAP API https://bulksmsn.gr Table of Contents Send SMS...2 Query SMS...3 Multiple Query SMS...4 Credits...5 Save Contact...5 Delete Contact...7 Delete Message...8 Email: sales@bulksmsn.gr, Τηλ: 211 850

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

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΒΑΛΕΝΤΙΝΑ ΠΑΠΑΔΟΠΟΥΛΟΥ Α.Μ.: 09/061. Υπεύθυνος Καθηγητής: Σάββας Μακρίδης

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΒΑΛΕΝΤΙΝΑ ΠΑΠΑΔΟΠΟΥΛΟΥ Α.Μ.: 09/061. Υπεύθυνος Καθηγητής: Σάββας Μακρίδης Α.Τ.Ε.Ι. ΙΟΝΙΩΝ ΝΗΣΩΝ ΠΑΡΑΡΤΗΜΑ ΑΡΓΟΣΤΟΛΙΟΥ ΤΜΗΜΑ ΔΗΜΟΣΙΩΝ ΣΧΕΣΕΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ «Η διαμόρφωση επικοινωνιακής στρατηγικής (και των τακτικών ενεργειών) για την ενδυνάμωση της εταιρικής

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

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

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

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

Εργαστηριακές σημειώσεις για το μάθημα: «Εισαγωγή στην Μηχατρονική»

Εργαστηριακές σημειώσεις για το μάθημα: «Εισαγωγή στην Μηχατρονική» Εργαστηριακές σημειώσεις για το μάθημα: «Εισαγωγή στην Μηχατρονική» Τμήμα Μηχανολογίας Δρ. Φασουλάς Γιάννης, jfasoulas@staff.teicrete.gr Τ.Ε.Ι. Κρήτη, Σχολή Τεχνολογικών Εφαρμογών, Ηράκλειο Κρήτης, (2013)

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

FSM Toolkit Exercises

FSM Toolkit Exercises ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ Τμήμα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Τομέας Τηλεπικοινωνιών Αναπληρωτής Καθηγητής: Αλέξανδρος Ποταμιάνος Ονοματεπώνυμο: Α Μ : ΗΜΕΡΟΜΗΝΙΑ: ΤΗΛ 413 : Συστήματα Επικοινωνίας

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

LESSON 14 (ΜΑΘΗΜΑ ΔΕΚΑΤΕΣΣΕΡΑ) REF : 202/057/34-ADV. 18 February 2014

LESSON 14 (ΜΑΘΗΜΑ ΔΕΚΑΤΕΣΣΕΡΑ) REF : 202/057/34-ADV. 18 February 2014 LESSON 14 (ΜΑΘΗΜΑ ΔΕΚΑΤΕΣΣΕΡΑ) REF : 202/057/34-ADV 18 February 2014 Slowly/quietly Clear/clearly Clean Quickly/quick/fast Hurry (in a hurry) Driver Attention/caution/notice/care Dance Σιγά Καθαρά Καθαρός/η/ο

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

Τμήμα Πολιτικών και Δομικών Έργων

Τμήμα Πολιτικών και Δομικών Έργων Τμήμα Πολιτικών και Δομικών Έργων Πτυχιακή Εργασία: Τοπογραφικό διάγραμμα σε ηλεκτρονική μορφή κεντρικού λιμένα Κέρκυρας και κτιρίου νέου επιβατικού σταθμού σε τρισδιάστατη μορφή και σχεδίαση με AutoCAD

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

5.1 Θεωρητική εισαγωγή

5.1 Θεωρητική εισαγωγή ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ - ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 5 ΚΩ ΙΚΟΠΟΙΗΣΗ BCD Σκοπός: Η κατανόηση της µετατροπής ενός τύπου δυαδικής πληροφορίας σε άλλον (κωδικοποίηση/αποκωδικοποίηση) µε τη µελέτη της κωδικοποίησης BCD

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

Οδηγίες για την Διαδικασία αποθήκευσης στοιχείων ελέγχου πινάκων για επίλυση θέματος Οριοθέτησης.

Οδηγίες για την Διαδικασία αποθήκευσης στοιχείων ελέγχου πινάκων για επίλυση θέματος Οριοθέτησης. Οδηγίες για την Διαδικασία αποθήκευσης στοιχείων ελέγχου πινάκων για επίλυση θέματος Οριοθέτησης. 1. SMART BOARD SERIAL NUMBER: Ο σειριακός αριθμός του Διαδραστικού πίνακα βρίσκεται στην δεξιά πλαϊνή μεριά

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

Η θέση ύπνου του βρέφους και η σχέση της με το Σύνδρομο του αιφνίδιου βρεφικού θανάτου. ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ

Η θέση ύπνου του βρέφους και η σχέση της με το Σύνδρομο του αιφνίδιου βρεφικού θανάτου. ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Η θέση ύπνου του βρέφους και η σχέση της με το Σύνδρομο του αιφνίδιου βρεφικού θανάτου. Χρυσάνθη Στυλιανού Λεμεσός 2014 ΤΕΧΝΟΛΟΓΙΚΟ

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

TeleCost Hotel για Panasonic TDA

TeleCost Hotel για Panasonic TDA TeleCost Hotel για Panasonic TDA 1. Οδηγίες Εγκατάστασης του Λογισμικού του Συστήματος Telecost Hotel Γενικά Για την εγκατάσταση του Λογισμικού του Συστήματος TeleCost HL θα πρέπει να ακολουθηθούν συνοπτικά

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

Special edition of the Technical Chamber of Greece on Video Conference Services on the Internet, 2000 NUTWBCAM

Special edition of the Technical Chamber of Greece on Video Conference Services on the Internet, 2000 NUTWBCAM NUTWBCAM A.S. DRIGAS Applied Technologies Department NCSR DEMOKRITOS Ag. Paraskevi GREECE dr@imm.demokritos.gr http://imm.demokritos.gr Το NutWBCam είναι ένα RealVideo πρόγραµµα που σας δίνει τη δυνατότητα

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

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

Υπολογιστικά Συστήματα Υπολογιστικά Συστήματα Ενότητα 3: Βασικά στοιχεία της γλώσσας προγραμματισμού Visual Basic for Applications (VBA) Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

FOSSCOMM 2013 6ο Συνέδριο Κοινοτήτων Ανοιχτού Λογισμικού Σάββατο 20 Απριλίου 2013. Ομάδα Σχολής Ικάρων Εργαστήριο Arduino

FOSSCOMM 2013 6ο Συνέδριο Κοινοτήτων Ανοιχτού Λογισμικού Σάββατο 20 Απριλίου 2013. Ομάδα Σχολής Ικάρων Εργαστήριο Arduino FOSSCOMM 2013 6ο Συνέδριο Κοινοτήτων Ανοιχτού Λογισμικού Σάββατο 20 Απριλίου 2013 Ομάδα Σχολής Ικάρων Εργαστήριο Arduino Arduino Workshop LAB 1 : Παιχνίδι με έναν αισθητήρα φωτός Τι θα χρειαστούμε: 1 LED

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

Οδηγίες χρήσης υλικού D U N S Registered

Οδηγίες χρήσης υλικού D U N S Registered Οδηγίες χρήσης υλικού D U N S Registered Οδηγίες ένταξης σήματος D U N S Registered στην ιστοσελίδα σας και χρήσης του στην ηλεκτρονική σας επικοινωνία Για οποιαδήποτε ερώτηση, σας παρακαλούμε επικοινωνήστε

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

Εισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών

Εισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών Εισαγωγή στη γλώσσα προγραμματισμού JAVA Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών Το πρώτο φλιτζάνι Java Λίστα με τα απαραίτητα Το πρώτο μου πρόγραμμα(hello World) Συνεχίζοντας

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

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

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

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

FHL Wind Data Logger By FURUNO Hellas SA

FHL Wind Data Logger By FURUNO Hellas SA FHL Wind Data Logger By FURUNO Hellas SA FHL Wind Data logger. Γενικά Το FHL Wind Data logger ειναι ενα προγραμμα που λαμβάνει, απεικονίσει και καταγραφει δεδομενα μέρους του ναυτιλιακού εξοπλισμου γέφυρας.

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

Case 1: Original version of a bill available in only one language.

Case 1: Original version of a bill available in only one language. currentid originalid attributes currentid attribute is used to identify an element and must be unique inside the document. originalid is used to mark the identifier that the structure used to have in the

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

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

ΠΑΝΔΠΙΣΗΜΙΟ ΜΑΚΔΓΟΝΙΑ ΠΡΟΓΡΑΜΜΑ ΜΔΣΑΠΣΤΥΙΑΚΧΝ ΠΟΤΓΧΝ ΣΜΗΜΑΣΟ ΔΦΑΡΜΟΜΔΝΗ ΠΛΗΡΟΦΟΡΙΚΗ ΠΑΝΔΠΙΣΗΜΙΟ ΜΑΚΔΓΟΝΙΑ ΠΡΟΓΡΑΜΜΑ ΜΔΣΑΠΣΤΥΙΑΚΧΝ ΠΟΤΓΧΝ ΣΜΗΜΑΣΟ ΔΦΑΡΜΟΜΔΝΗ ΠΛΗΡΟΦΟΡΙΚΗ ΑΝΑΠΣΤΞΗ ΓΤΝΑΜΙΚΗ ΙΣΟΔΛΙΓΑ ΓΙΑ ΣΟ ΓΔΝΙΚΟ ΚΑΣΑΣΗΜΑ ΚΡΑΣΗΗ ΓΡΔΒΔΝΧΝ ΜΔ ΣΗ ΒΟΗΘΔΙΑ PHP MYSQL Γηπισκαηηθή Δξγαζία ηνπ Υξήζηνπ

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

Περιεχόµενα. I Βασικές Γνώσεις 1

Περιεχόµενα. I Βασικές Γνώσεις 1 Περιεχόµενα I Βασικές Γνώσεις 1 1 Μοντελοποίηση Προγραµµάτων 3 1.1 Ψευδογλώσσα....................... 6 1.2 Διαγράµµατα Ροής..................... 6 1.3 Παραδείγµατα σε Ψευδογλώσσα και Διαγράµµατα Ροής.

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

ΚΑΘΟΡΙΣΜΟΣ ΠΑΡΑΓΟΝΤΩΝ ΠΟΥ ΕΠΗΡΕΑΖΟΥΝ ΤΗΝ ΠΑΡΑΓΟΜΕΝΗ ΙΣΧΥ ΣΕ Φ/Β ΠΑΡΚΟ 80KWp

ΚΑΘΟΡΙΣΜΟΣ ΠΑΡΑΓΟΝΤΩΝ ΠΟΥ ΕΠΗΡΕΑΖΟΥΝ ΤΗΝ ΠΑΡΑΓΟΜΕΝΗ ΙΣΧΥ ΣΕ Φ/Β ΠΑΡΚΟ 80KWp ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΣΥΣΤΗΜΑΤΩΝ ΜΕΤΑΔΟΣΗΣ ΠΛΗΡΟΦΟΡΙΑΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΛΙΚΩΝ ΚΑΘΟΡΙΣΜΟΣ ΠΑΡΑΓΟΝΤΩΝ ΠΟΥ ΕΠΗΡΕΑΖΟΥΝ ΤΗΝ ΠΑΡΑΓΟΜΕΝΗ ΙΣΧΥ

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

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

ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ ΣΥΣΤΗΜΑΤΩΝ ΑΥΤΟΜΑΤΟΥ ΕΛΕΓΧΟΥ Ι ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ ΣΥΣΤΗΜΑΤΩΝ ΑΥΤΟΜΑΤΟΥ ΕΛΕΓΧΟΥ Ι ΕΛΕΓΧΟΣ ΣΤΑΘΜΗΣ ΥΓΡΟΥ ΕΞΑΜΕΝΗΣ 1. ΠΕΡΙΓΡΑΦΗ ΕΡΓΑΣΤΗΡΙΑΚΗΣ ΙΑΤΑΞΗΣ Τα βασικά µέρη της εργαστηριακής διάταξης είναι κατασκευασµένα από την εταιρεία LUCAS-NULLE.

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

Περιγραφή ψηφιακών συστημάτων με τη γλώσσα VHDL και ανάπτυξη σε προγραμματιζόμενες ολοκληρωμένες

Περιγραφή ψηφιακών συστημάτων με τη γλώσσα VHDL και ανάπτυξη σε προγραμματιζόμενες ολοκληρωμένες Περιγραφή ψηφιακών συστημάτων με τη γλώσσα VHDL και ανάπτυξη σε προγραμματιζόμενες ολοκληρωμένες ηλεκτρονικές διατάξεις(fpga) Η χρήση της πλατφόρμας Altera DE-nano και του εργαλείου σχεδίασης Quartus-II

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

4.6 Autoregressive Moving Average Model ARMA(1,1)

4.6 Autoregressive Moving Average Model ARMA(1,1) 84 CHAPTER 4. STATIONARY TS MODELS 4.6 Autoregressive Moving Average Model ARMA(,) This section is an introduction to a wide class of models ARMA(p,q) which we will consider in more detail later in this

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

ΠΕΡΙΛΗΨΗ. Είναι γνωστό άτι καθημερινά διακινούνται δεκάδες μηνύματα (E~mail) μέσω του διαδικτύου

ΠΕΡΙΛΗΨΗ. Είναι γνωστό άτι καθημερινά διακινούνται δεκάδες μηνύματα (E~mail) μέσω του διαδικτύου GREEKLISH: ΜΙΑ ΝΕΑ ΔΙΑΛΕΚΤΟΣ ΤΟΥ ΔΙΑΔΙΚΤΥΟΥ; Α.Καράκος, Λ.Κωτούλας ΠΕΡΙΛΗΨΗ Είναι γνωστό άτι καθημερινά διακινούνται δεκάδες μηνύματα (E~mail) μέσω του διαδικτύου {INTERNEη από την μια άκρη του κόσμου

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

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ "ΠΟΛΥΚΡΙΤΗΡΙΑ ΣΥΣΤΗΜΑΤΑ ΛΗΨΗΣ ΑΠΟΦΑΣΕΩΝ. Η ΠΕΡΙΠΤΩΣΗ ΤΗΣ ΕΠΙΛΟΓΗΣ ΑΣΦΑΛΙΣΤΗΡΙΟΥ ΣΥΜΒΟΛΑΙΟΥ ΥΓΕΙΑΣ "

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΠΟΛΥΚΡΙΤΗΡΙΑ ΣΥΣΤΗΜΑΤΑ ΛΗΨΗΣ ΑΠΟΦΑΣΕΩΝ. Η ΠΕΡΙΠΤΩΣΗ ΤΗΣ ΕΠΙΛΟΓΗΣ ΑΣΦΑΛΙΣΤΗΡΙΟΥ ΣΥΜΒΟΛΑΙΟΥ ΥΓΕΙΑΣ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΑΛΑΜΑΤΑΣ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΜΟΝΑΔΩΝ ΥΓΕΙΑΣ ΚΑΙ ΠΡΟΝΟΙΑΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ "ΠΟΛΥΚΡΙΤΗΡΙΑ ΣΥΣΤΗΜΑΤΑ ΛΗΨΗΣ ΑΠΟΦΑΣΕΩΝ. Η ΠΕΡΙΠΤΩΣΗ ΤΗΣ ΕΠΙΛΟΓΗΣ ΑΣΦΑΛΙΣΤΗΡΙΟΥ ΣΥΜΒΟΛΑΙΟΥ

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

Writing kernels for fun and profit

Writing kernels for fun and profit Writing kernels for fun and profit Γιάννης Τσιομπίκας nuclear@memberfsforg 23 Μαρτίου 2011 Γιατί; It s FUN! Εξοικείωση με το hardware Εμβάθυνση στον θαυμαστό κόσμο των λειτουργικών συστημάτων Μια καλή

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

Προγραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος 2011-2012. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος 2011-2012. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Δυναμική Διαχείριση Μνήμης Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2011-2012 Ανάγκη για Δυναμική Μνήμη Στατική Μνήμη Μέχρι τώρα χρησιμοποιούσαμε

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

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

ΘΕΜΑ : ΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ DIGITAL ELECTRONICS ΘΕΜΑ : ΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ DIGITAL ELECTRONICS ΔΙΑΡΚΕΙΑ: 1 περιόδους 16/11/2011 10:31 (31) καθ. Τεχνολογίας ΚΑΤΗΓΟΡΙΕΣ ΜΕΓΕΘΩΝ ΑΝΑΛΟΓΙΚΟ (ANALOGUE) ΨΗΦΙΑΚΟ (DIGITAL) 16/11/2011 10:38 (38) ΕΙΣΑΓΩΓΗ ΣΤΑ

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

Περιεχόμενο: Δομή υπολογιστή Συστήματα αρίθμησης

Περιεχόμενο: Δομή υπολογιστή Συστήματα αρίθμησης Περιεχόμενο: Δομή υπολογιστή Συστήματα αρίθμησης ΟΜΗ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ Ένας υπολογιστής αποτελείται από την Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ), τη µνήµη, τις µονάδες εισόδου/εξόδου και το σύστηµα διασύνδεσης

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

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

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

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

Οδηγός Βήμα-Βήμα για να εγκαταστήσετε τα Windows 7 στον Η/Υ σας

Οδηγός Βήμα-Βήμα για να εγκαταστήσετε τα Windows 7 στον Η/Υ σας Οδηγός Βήμα-Βήμα για να εγκαταστήσετε τα Windows 7 στον Η/Υ σας ΒΗΜΑ 1 Εφεδρικό Αντίγραφο Ασφαλείας ΠΡΟΣΟΧΗ: Πριν εφαρμόσουμε τον οδηγό εγκατάστασης στον Η/Υ μας κρατούμε αντίγραφα ασφαλείας των σημαντικών

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

ΠΑΝΔΠΗΣΖΜΗΟ ΠΑΣΡΩΝ ΣΜΖΜΑ ΖΛΔΚΣΡΟΛΟΓΩΝ ΜΖΥΑΝΗΚΩΝ ΚΑΗ ΣΔΥΝΟΛΟΓΗΑ ΤΠΟΛΟΓΗΣΩΝ ΣΟΜΔΑ ΤΣΖΜΑΣΩΝ ΖΛΔΚΣΡΗΚΖ ΔΝΔΡΓΔΗΑ

ΠΑΝΔΠΗΣΖΜΗΟ ΠΑΣΡΩΝ ΣΜΖΜΑ ΖΛΔΚΣΡΟΛΟΓΩΝ ΜΖΥΑΝΗΚΩΝ ΚΑΗ ΣΔΥΝΟΛΟΓΗΑ ΤΠΟΛΟΓΗΣΩΝ ΣΟΜΔΑ ΤΣΖΜΑΣΩΝ ΖΛΔΚΣΡΗΚΖ ΔΝΔΡΓΔΗΑ ΠΑΝΔΠΗΣΖΜΗΟ ΠΑΣΡΩΝ ΣΜΖΜΑ ΖΛΔΚΣΡΟΛΟΓΩΝ ΜΖΥΑΝΗΚΩΝ ΚΑΗ ΣΔΥΝΟΛΟΓΗΑ ΤΠΟΛΟΓΗΣΩΝ ΣΟΜΔΑ ΤΣΖΜΑΣΩΝ ΖΛΔΚΣΡΗΚΖ ΔΝΔΡΓΔΗΑ Γηπισκαηηθή Δξγαζία ηνπ Φνηηεηή ηνπ ηκήκαηνο Ζιεθηξνιόγσλ Μεραληθώλ θαη Σερλνινγίαο Ζιεθηξνληθώλ

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

Εγχειρίδιο Χρήσης Ενημέρωσης Λογισμικού Bluetooth Windows 7

Εγχειρίδιο Χρήσης Ενημέρωσης Λογισμικού Bluetooth Windows 7 Εγχειρίδιο Χρήσης Ενημέρωσης Λογισμικού Bluetooth Windows 7 Ισχύει για προϊόντα από το 2012 και μετά CDE-13xBT & CDE-W235BT & CDA-137BTi Αυτό το εγχειρίδιο περιγράφει τα βήματα που απαιτούνται για την

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

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

Προγραμματισμός Ι. Είσοδος/Έξοδος. Δημήτρης Μιχαήλ. Ακ. Έτος 2009-2010. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Είσοδος/Έξοδος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2009-2010 Είσοδος/Έξοδος Μέχρι τώρα όποτε θέλαμε να διαβάσουμε χρησιμοποιούσαμε πάντα

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

ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ 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

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

Διπλωματική Εργασία της φοιτήτριας του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών

Διπλωματική Εργασία της φοιτήτριας του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ:ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΑΣ ΕΡΓΑΣΤΗΡΙΟ:ΕΝΣΥΡΜΑΤΗΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΑΣ Διπλωματική Εργασία της φοιτήτριας

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

ZWCAD 2010 ΠΡΟΓΡΑΜΜΑΤΟΣ. Εισαγωγή

ZWCAD 2010 ΠΡΟΓΡΑΜΜΑΤΟΣ. Εισαγωγή ZWCAD 2010 Ο ΗΓΟΣ ΕΓΚΑΤΑΣΤΑΣΗΣ & ΕΝΕΡΓΟΠΟΙΗΣΗΣ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ Η Αξιόπιστη λύση CAD για Σχεδίαση 2D & 3D! Εισαγωγή Ευχαριστούµε που επιλέξατε το ZWCAD! Ο οδηγός αυτός περιγράφει την διαδικασία σχετικά

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

ΕΘΝΙΚΗ ΣΧΟΛΗ ΔΗΜΟΣΙΑΣ ΔΙΟΙΚΗΣΗΣ ΙΓ' ΕΚΠΑΙΔΕΥΤΙΚΗ ΣΕΙΡΑ

ΕΘΝΙΚΗ ΣΧΟΛΗ ΔΗΜΟΣΙΑΣ ΔΙΟΙΚΗΣΗΣ ΙΓ' ΕΚΠΑΙΔΕΥΤΙΚΗ ΣΕΙΡΑ ΕΘΝΙΚΗ ΣΧΟΛΗ ΔΗΜΟΣΙΑΣ ΔΙΟΙΚΗΣΗΣ ΙΓ' ΕΚΠΑΙΔΕΥΤΙΚΗ ΣΕΙΡΑ ΤΜΗΜΑ ΤΟΠΙΚΗΣ ΑΥΤΟΔΙΟΙΚΗΣΗΣ ΚΑΙ ΠΕΡΙΦΕΡΕΙΑΚΗΣ ΑΝΑΠΤΥΞΗΣ ΤΕΛΙΚΗ ΕΡΓΑΣΙΑ: ΠΕΡΙΒΑΛΛΟΝ ΚΑΙ ΑΝΑΠΤΥΞΗ: ΠΡΟΣΕΓΓΙΣΗ ΜΕΣΩ ΔΕΙΚΤΩΝ Επιβλέπων: Αθ.Δελαπάσχος

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

Math 6 SL Probability Distributions Practice Test Mark Scheme

Math 6 SL Probability Distributions Practice Test Mark Scheme Math 6 SL Probability Distributions Practice Test Mark Scheme. (a) Note: Award A for vertical line to right of mean, A for shading to right of their vertical line. AA N (b) evidence of recognizing symmetry

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΣΥΣΤΗΜΑΤΩΝ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΕΡΓΑΣΤΗΡΙΟ ΥΨΗΛΩΝ ΤΑΣΕΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΣΥΣΤΗΜΑΤΩΝ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΕΡΓΑΣΤΗΡΙΟ ΥΨΗΛΩΝ ΤΑΣΕΩΝ Διπλωµατική Εργασία Της Φοιτήτριας του Τµήµατος Ηλεκτρολόγων

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

ΓΗΠΛΧΜΑΣΗΚΖ ΔΡΓΑΗΑ ΑΡΥΗΣΔΚΣΟΝΗΚΖ ΣΧΝ ΓΔΦΤΡΧΝ ΑΠΟ ΑΠΟΦΖ ΜΟΡΦΟΛΟΓΗΑ ΚΑΗ ΑΗΘΖΣΗΚΖ

ΓΗΠΛΧΜΑΣΗΚΖ ΔΡΓΑΗΑ ΑΡΥΗΣΔΚΣΟΝΗΚΖ ΣΧΝ ΓΔΦΤΡΧΝ ΑΠΟ ΑΠΟΦΖ ΜΟΡΦΟΛΟΓΗΑ ΚΑΗ ΑΗΘΖΣΗΚΖ ΔΘΝΗΚΟ ΜΔΣΟΒΗΟ ΠΟΛΤΣΔΥΝΔΗΟ ΥΟΛΖ ΠΟΛΗΣΗΚΧΝ ΜΖΥΑΝΗΚΧΝ ΣΟΜΔΑ ΓΟΜΟΣΑΣΗΚΖ ΓΗΠΛΧΜΑΣΗΚΖ ΔΡΓΑΗΑ ΑΡΥΗΣΔΚΣΟΝΗΚΖ ΣΧΝ ΓΔΦΤΡΧΝ ΑΠΟ ΑΠΟΦΖ ΜΟΡΦΟΛΟΓΗΑ ΚΑΗ ΑΗΘΖΣΗΚΖ ΔΤΘΤΜΗΑ ΝΗΚ. ΚΟΤΚΗΟΤ 01104766 ΔΠΗΒΛΔΠΧΝ:ΑΝ.ΚΑΘΖΓΖΣΖ ΗΧΑΝΝΖ

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

Ψηφιακή Λογική Σχεδίαση

Ψηφιακή Λογική Σχεδίαση Ψηφιακή Λογική Σχεδίαση Επιμέλεια: Γεώργιος Θεοδωρίδης, Επίκουρος Καθηγητής Ανδρέας Εμερετλής, Υποψήφιος Διδάκτορας Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Σημείωμα Αδειοδότησης Το παρόν

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