Τετάρτη 20 Οκτωβρίου 2010
SPICE - circuit simulation
Εδώ και καιρό ήθελα να μάθω για το spice,αφού άκουγα γι'αυτό αρκετά πράγματα τον τελευταίο καιρό..Στη σχολή άρχισε να χρησιμοποιείται στο εργαστήριο του μαθήματος "Ψηφιακή Σχεδίαση με cad " ενώ ταυτόχρονα είναι καλό εργαλείο προσομοίωσης κυκλωμάτων και για το μάθημα της Ηλεκτρονικής και Ανάλυσης κυκλωμάτων.Επίσης ένας λόγος που έψαξα γι'αυτό είναι γιατί βαρέθηκα να λύνω ασκήσεις κυκλωμάτων θεωρητικά και όχι πρακτικά..
Στο μάθημα όταν διερωτήθηκα τί λογισμικό θα ήθελα να μάθω τον τελευταίο καιρό,απάντησα το spice,αλλά είπα ότι δεν είχα καθόλου ελεύθερο χρόνο ώστε να αρχίσω να το μαθαίνω.Έτσι σκέφτηκα να αναφερθώ σήμερα σ'αυτό,ώστε να εξοικονομήσω χρόνο απ'τη μια και από τη άλλη να κάνω επιτέλους την αρχή να το μάθω!
Γι'αυτό λοιπόν παραθέτω κάποια βοηθητικά στοιχεία που βρήκα από διάφορα tutorial στο διαδίκτυο αλλά και σε ένα cd που μας δόθηκε με το βιβλίο Microelectronic circuits,προσπαθόντας να μάθω έτσι και εγώ τα βασικά για αυτό το πρόγραμμα..
Λοιπόν,ασ ξεκινήσουμε...
Το SPICE, είναι ακρωνύμιο που σημαίνει Simulation Program
with Integrated Circuit Emphasis (πρόγραμμα εξομοίωσης με έμφαση στα
ολοκληρωμένα κυκλώματα). Αναπτύχθηκε μέσα στη δεκαετία του 1970 από την
ομάδα Ολοκληρωμένων Κυκλωμάτων του Ηλεκτρονικού Εργαστηρίου Ερευνών και
το Τμήμα Ηλεκτρολόγων Μηχανικών και Υπολογιστών του Πανεπιστημίου του
Berkeley της California των Η.Π.Α.
Ο άνθρωπος που πρώτος ανέπτυξε το SPICE είναι ο Dr Lawrence Nagel. Στο
διδακτορικό του Nagel περιγράφονται οι αλγόριθμοι και οι αριθμητικές μέθοδοι που
χρησιμοποιούνται στο SPICE. Παρόλο που o χρήστης δεν είναι αναγκαίο να γνωρίζει
τους μαθηματικούς αλγόριθμους που χρησιμοποιούνται στο SPICE, πρέπει να έχει
ειδικές γνώσεις σχεδιασμού ηλεκτρικών και ηλεκτρονικών κυκλωμάτων.
Το κύκλωμα περιγράφεται με τη χρήση ενός αρχείου (file) το οποίο αποτελεί το
αρχείο εισόδου (αρχείο εισαγωγής δεδομένων) του SPICE. Το αρχείο αυτό περιέχει
τα στοιχεία του κυκλώματος (αντιστάτες, πυκνωτές, αυτεπαγωγές, πηγές τάσης και
ρεύματος, διατάξεις ημιαγωγών κ.α.) και περιγράφει πως συνδέονται μεταξύ τους
κάνοντας χρήση αριθμών που αντιστοιχούν στους διάφορους κόμβους του
κυκλώματος. Άλλες πληροφορίες είναι αυτές που δείχνουν τη συχνότητα
των πηγών, τη θερμοκρασία, το είδος των αναλύσεων που χρειάζεται να γίνουν και
πως πρέπει να παρουσιαστούν τα αποτελέσματα της κάθε ανάλυσης. Το πρόγραμμα
SPICE διαβάζει το αρχείο εισόδου και βρίσκει πως πρέπει να συνδεθούν τα διάφορα
στοιχεία κυκλωμάτων και διατάξεις σε κάθε κόμβο.
Για την επίλυση, χρησιμοποιεί την μέθοδο των κόμβων όπου
άγνωστοι είναι τα δυναμικά των κόμβων ως προς κάποιον κόμβο αναφοράς (του
οποίου το δυναμικό λαμβάνεται ως 0). Το ρεύμα κάθε κλάδου εκφράζεται
συναρτήσει της διαφοράς δυναμικού στα άκρα του και της αγωγιμότητας του. Στη
συνέχεια χρησιμοποιείται ο νόμος των ρευμάτων του Kirchhoff και κατόπιν
καταστρώνεται ένα σύστημα εξισώσεων για το κύκλωμα το οποίο όταν λυθεί θα
προσδιορίσει τα δυναμικά (τάσεις) των κόμβων.
ΠΑΚΕΤΑ ΠΡΟΓΡΑΜΜΑΤΩΝ ΣΤΗΡΙΖΟΜΕΝΑ ΣΤΟ SPICE
Το PSpice,περιλαμβάνει τα προγράμματα Schematics και Probe. Το Schematics χρησιμοποιείGUI (Graphical User Interface) ώστε μπορεί να σχεδιάζει κανείς στην οθόνη του
υπολογιστή το κύκλωμα με τα γνωστά σύμβολα των στοιχείων και με διάφορα μενού
(menu) μπορεί να κάνει κάθε αλλαγή εύκολα. Το σχετικό αρχείο είναι τύπου .SCH .
Το Probe είναι ένα πρόγραμμα που επιτρέπει την απεικόνιση των αποτελεσμάτωνστην οθόνη, και μπορεί να ενεργοποιηθεί αν μεταξύ των εντολών υπάρχει η εντολή
.PROBE. Με κειμενογράφο μπορούμε να φτιάξουμε text files (τύπου .CIR) που
περιέχει τις κατάλληλες εντολές. Αυτό το αρχείο μπορεί να διαβαστεί από το PSpice
το οποίο, με βάση τις εντολές, πραγματοποιεί την επιδιωκόμενη ανάλυση.
ΔΙΑΔΙΚΑΣΙΑ ΧΡΗΣΗΣ ΤΟΥ SPICE
α) Δημιουργούμε ένα αρχείο εισόδου (source file) στο οποίο περιγράφει το κύκλωμα για
το οποίο θα γίνει ανάλυση ή προσομοίωση.
β) Εισάγουμε αυτό το αρχείο στο πρόγραμμα το οποίο με τη σειρά του δημιουργεί το
αρχείο εξόδου.
γ) Δίνουμε εντολή να τυπωθεί το αρχείο εξόδου και αν απαιτείται κατασκευάζει
διαγράμματα χρησιμοποιώντας αποτελέσματα του αρχείου αυτού.
Το αρχείο εισόδου (τύπου .CIR) μπορεί να γραφτεί με οποιονδήποτε κειμενογράφο,
αρκεί να μην εισάγει χαρακτήρες ελέγχου. Το PSpice διαθέτει κατάλληλο
κειμενογράφο. Το αρχείο εισόδου περιέχει, εντολές
δεδομένων που περιγράφουν το κύκλωμα, περιέχει εντολές ελέγχου οι οποίες
καθορίζουν το είδος της ανάλυσης και επίσης εντολές εξόδου οι οποίες περιγράφουν
το είδος και τον τρόπο παρουσίασης των αποτελεσμάτων. Για να φτιάξουμε στο αρχείο
εισόδου τις εντολές δεδομένων, αρχίζουμε με ένα διάγραμμα του κυκλώματος
(schematic) και σημειώνουμε σε αυτό, σύμφωνα με τους κανόνες του SPICE,
ορισμένα στοιχεία που περιγράφονται στις παρακάτω τρεις εργασίες:
1) Δίνουμε σε κάθε στοιχείο του κυκλώματος ένα όνομα. Στο PSpice τα γράμματα μπορεί
να είναι πεζά και κεφαλαία. Το πρόγραμμα SPICE, δηλαδή το πακέτο λογισμικού
SPICE2G.6 του Πανεπιστημίου Berkeley χρειάζεται κεφαλαία. Στο PSpice τα
RLOAD ή rbaseq1 παριστάνουν αντιστάτες.
2) Ορίζουμε ένα «κόμβο αναφοράς», κόμβος 0. Αυτός ονομάζεται και «κόμβος
γείωσης» και θεωρείται ότι έχει δυναμικό 0. Τα δυναμικά όλων των άλλων κόμβων
υπολογίζοντα ως προς αυτόν. Ο κόμβος αναφοράς μπορεί να μην είναι η πραγματική
γείωση του κυκλώματος αλλά απλώς ο κόμβος αναφοράς για τους υπολογισμούς.
3) Δίνουμε στους άλλους κόμβους του κυκλώματος έναν αριθμό (κομβικός αριθμός)
που πρέπει να είναι θετικός ακέραιος. Η διάταξη στην αρίθμηση των κόμβων είναι
αυθαίρετη και οι αριθμοί δεν είναι κατ’ανάγκη διαδοχικοί. Ο κάθε κόμβος πρέπει να
συνδέει τουλάχιστον δύο στοιχεία του κυκλώματος.
Στο αρχείο εισόδου χρησιμοποιούμε εντολές ελέγχου που καθορίζουν τι είδους
ανάλυση θέλουμε να κάνουμε. Το SPICE γενικώς μπορεί να κάνει ανάλυση για ac,
dc, μεταβατικά φαινόμενα (transient), συνάρτηση μεταφοράς dc, ευαισθησία σε μικρά
σήματα dc, παραμόρφωση, θόρυβο και ανάλυση Fourier. Για το σκοπό αυτό
χρειάζεται να εισαχθούν στο αρχείο εισόδου μερικές (απλές) εντολές ελέγχου. Μια
τέτοια εντολή μπορεί να καθορίζει την τιμή της τάσης ή ρεύματος κάποιας πηγής, το
εύρος συχνοτήτων που πρέπει να έχει μία πηγή ac, το χρονικό διάστημα για το οποίο
θα γίνει η ανάλυση μεταβατικών φαινομένων (μεταβατική ανάλυση) και το βήμα
χρόνου που θα χρησιμοποιηθεί. Άλλες εντολές ελέγχου καθορίζουν τον τρόπο
παρουσίασης των αποτελεσμάτων της ανάλυσης, π.χ. σε μορφή πίνακα ή σε γράφημα.
Η έξοδος του SPICE αποτελείται από πολλά μέρη. Οι εντολές εξόδου στο αρχείο
εισόδου ρυθμίζουν αυτά τα μέρη και τον τρόπο εμφάνισης των αποτελεσμάτων
Επιπλέον, το πακέτο PSpice περιλαμβάνει ένα graphics postprocessor
(μεταεπεξεργαστή γραφικών) που λέγεται PROBE. Το PROBE μας επιτρέπει να
κάνομε γραφήματα πρακτικώς κάθε φυσικού μεγέθους που μας ενδιαφέρει, μετά από
την ανάλυση του κυκλώματος από το SPICE. Το PROBE χρειάζεται να έχει
πρόσβαση σε ειδικό αρχείο για να λειτουργήσει σωστά. Ένα τέτοιο αρχείο
δημιουργείται κατά τη διάρκεια της ανάλυσης με το PSpice αν συμπεριληφθεί η
εντολή .PROBE στο αρχείο εισόδου. Αφού τελειώσει η ανάλυση μπορεί να
ενεργοποιηθεί το PROBE στο επίπεδο του λειτουργικού συστήματος ή στο επίπεδο
του κελύφους οδηγιών (command shell) όπως θα δούμε παρακάτω.
Συνοψίζοντας, η διαδικασία που ακολουθούμε είναι: Δημιουργούμε το αρχείο
εισόδου για το SPICE χρησιμοποιώντας έναν επεξεργαστή κειμένου (text editor). To PSpice έχει τον δικό του επεξεργαστή κειμένου. Το αρχείο είναι τύπου .CIR.
Χρειάζεται πάντα στην πρώτη γραμμή να υπάρχει ο τίτλος. Η τελευταία γραμμή είναι
το .END . Η διάταξη των άλλων γραμμών του κώδικα του προγράμματος μπορεί να
είναι οποιαδήποτε. Φυσικά όταν υπάρχουν υποκυκλώματα (που είναι κυκλώματα που
καλούνται όπως οι υπορουτίνες) ο κανόνας αυτός έχει τους προφανείς περιορισμούς.
Τρέχουμε το PSpice το οποίο διαβάζει το αρχείο εισόδου, κάνει την ανάλυση του
κυκλώματος και δημιουργεί το αρχείο εξόδου τύπου .OUT . Μπορούμε να έχουμε και
γραφήματα διαφόρων ηλεκτρικών μεγεθών που αφορούν το κύκλωμα.
Διαδοχικά βήματα προσομοίωσης
Η προσομοίωση με χρήση GUI πραγματοποιείται ακολουθώντας συγκεκριμένα
διαδοχικά βήματα στο περιβάλλον του προγράμματος Schematics. Εκτελώντας το
πρόγραμμα αυτό «ανοίγει» ένας χώρος εργασίας κατάλληλος για τη σχεδίαση με
χρήση συμβόλων. Παρακάτω παρουσιάζονται αναλυτικά τα βήματα της διαδικασίας
που πρέπει κανείς να ακολουθήσει:
1. Σχεδίαση του ηλεκτρονικού κυκλώματος
α) Τοποθέτηση στοιχείων
Η επιλογή και η σύνδεση των διαφόρων στοιχείων (πηγών και εξαρτημάτων)
του κυκλώματος γίνεται με έναν τρόπο ανάλογο με αυτόν που θα εφαρμόζαμε
σε πραγματικό εργαστήριο. Με το mouse και την εντολή
draw/Get New Part (ή CTRL+G) για νέο στοιχείο ή draw/Place Part (ή
CTRL+P) για ήδη χρησιμοποιημένο, επιλέγουμε από τη βιβλιοθήκη (part
browser basic) διάφορα στοιχεία και τα τοποθετούμε στο χώρο εργασίας. Ο
προσανατολισμός του κάθε εξαρτήματος μπορεί να αλλάξει κατά 90ο με
CTRL+R.
β) Ηλεκτρικές συνδέσεις
Η σύνδεση (διασυρμάτωση) μεταξύ των εξαρτημάτων γίνεται με την εντολή
Draw Wire (εικονίδιο «μολύβι») και χρήση του mouse. Οι κόμβοι του κυκλώματος δημιουργούνται αυτόματα. Είναι απαραίτητο επίσης να
τοποθετηθεί το σύμβολο το κόμβου αναφοράς AGND (analogue ground). Αν
μετά την ολοκλήρωση των συνδέσεων γίνει κάποια μετακίνηση στοιχείου, η
υπάρχουσα σύνδεση του διατηρείται, όπως και ο τυχόν γειτονικός κόμβος.
2. Ορισμός χαρακτηριστικών των στοιχείων
α) Συμβολικά ονόματα
Για κάθε στοιχείο που τοποθετείται τίθεται από το πρόγραμμα ένα
προεπιλεγμένο όνομα με δείκτη αύξουσας αρίθμησης. Όμως, μπορεί κανείς να
αλλάξει την ονομασία, με διπλό κτύπημα του mouse στο σημείο αυτό, αρκεί να
μην υπάρχει διπλή ονομασία.
β) Τιμές στοιχείων
Το κάθε στοιχείο παίρνει επίσης αυτόματα μια προεπιλεγμένη τιμή η οποία στη
συνέχεια μπορεί να αλλάξει με διπλό κτύπημα είτε πάνω στο σύμβολο είτε στο
πλαίσιο με την προεπιλεγμένη τιμή.
γ) Παράμετροι λειτουργίας πηγών
Ειδικά στις πηγές (τάσης ή ρεύματος) είναι αναγκαίο να ορισθούν πρόσθετες
παράμετροι λειτουργίας, όπως το πλάτος, η συχνότητα, η χρονική καθυστέρηση,
κ.α. ανάλογα με το είδος της πηγής. Αυτό μπορεί να γίνει με διπλό κτύπημα στο
σύμβολο της πηγής, οπότε εμφανίζεται ένα παράθυρο που περιέχει όλες τις
παραμέτρους. Η κάθε αλλαγή πρέπει να σώζεται προτού προχωρήσει κανείς
στην επόμενη.
3. Προεπιλογές προσομοίωσης
α) Είδος της ανάλυσης
Το είδος της ανάλυσης σχετίζεται με το αν κύκλωμα θα αναλυθεί στο πεδίο του
χρόνου που αναφέρεται (time domain) ή στο πεδίο συχνοτήτων (frequency
domain). Η επιλογή μπορεί να γίνει με την εντολή Analysis/Setup, όπου, στο
παράθυρο που ανοίγει, πρέπει κανείς να σημειώσει (checking) στα αντίστοιχα
κουτάκια δίπλα στα εικονίδια (π.χ. AC Sweep για ανάλυση στο πεδίο των
συχνοτήτων, Transient για ανάλυση στο πεδίο του χρόνου) τις επιλογές του. Το
εικονίδιο DC Sweep αναφέρεται σε μια σειρά από παραμέτρους που μπορεί
κανείς επίσης να μεταβάλει. Το Bias Point Detail είναι πάντα σημειωμένο διότι
το σημείο ηρεμίας στα τρανζίστορ υπολογίζεται πάντοτε.
β) Μεταβλητές και ακρίβεια ανάλυσης
Με double click στο κάθε επιλεγμένο εικονίδιο μπορεί κανείς να κάνει επιλογή
της μεταβλητής παραμέτρου (π.χ. Voltage Source, Temperature), του αριθμού
των τιμών σημείων υπολογισμού (Total Pts), του εύρους μεταβολής (Start value,
End value) καθώς και το είδος της κλίμακας (Linear, Octal, Decade). Ειδικά
στην επιλογή Transient πρέπει κανείς να δώσει τιμή Final time και Step Ceiling οπωσδήποτε, ενώ η τιμή Print Step δεν είναι απαραίτητη για απεικόνιση στην
οθόνη.
γ) Ορισμός σημείων ελέγχου
Στο ηλεκτρονικό σχεδιάγραμμα μπορεί κανείς να τοποθετήσει τα
Voltage/Level Markers ή Current Marker στα σημεία εκείνα όπου, μετά την
εκτέλεση της προσομοίωσης, θα δοθούν οι γραφικές παραστάσεις της τάσεις ή
ρεύματος συναρτήσει του χρόνου ή της συχνότητας, ανάλογα με την επιλογή
που έχει γίνει.
4. Πραγματοποίηση προσομοίωσης
α) Εκτέλεση
Αποθηκεύουμε το κύκλωμα σε αρχείο και στη συνέχεια εκτελούμε την
προσομοίωση με την εντολή Analysis/Simulate (ή F11).
β) Παρουσίαση αποτελεσμάτων
Τα αποτελέσματα της προσομοίωσης παρέχονται με τους παρακάτω τρόπους:
Οι συνεχείς τάσεις και ρεύματα απεικονίζονται πάνω στο ηλεκτρονικό
σχεδιάγραμμα με την εντολή Enable Bias Voltage Display ή Enable Bias
Current Display με single click στα αντίστοιχα εικονίδια. Οι μεταβολές των
μεγεθών (σύμφωνα με τα σημεία ελέγχου) απεικονίζονται μέσου του
προγράμματος .Probe. Στο περιβάλλον αυτό μπορεί κανείς να κάνει διάφορες
επιλογές στα διαγράμματα, όπως, απεικονιζόμενο μέγεθος, αλλαγές στις
περιοχές απεικόνισης, ανάλυση FFT κ.α. Τέλος, σχετικά αριθμητικά
αποτελέσματα δίνονται στο output file.
Ξέρω πως είναι δύσκολο να τα καταλάβουμε όλα μονομιάς γι'αυτό και η ήρεμη ανάγνωση αυτού του Post θα βοηθούσε.Και το σημαντικότερο είναι να το κατεβάσετε το spice και να πειραματιστείτε,γιατί μόνο έτσι πιστεύω θα το κατανοήσετε πραγματικά.
Όταν καταφέρω να εξοικειωθώ με το εργαλείο θα συνεχίσω το post έχοντας πλέον την εμπειρία χρήσης..Ελπίζω να καταφέρω κάποια στιγμή να βρω χρόνο,αν και δεν το νομίζω να γίνει σύντομα .......
Περισσότερα στοιχεία σχετικά με το spice μπορείτε να βρείτε στο cd που παρέχεται με το βιβλίο Microelectronic Circuits των Sendra n' Smith, καθώς και σε διάφορα tutorial στο διαδίκτυο.
Εγγραφή σε:
Σχόλια ανάρτησης (Atom)
Δεν υπάρχουν σχόλια:
Δημοσίευση σχολίου