Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Industrietechnik

Grundlagen der SPICE-Programmierung

Das Programmieren einer Schaltungssimulation mit SPICE ähnelt dem Programmieren in jeder anderen Computersprache:Sie müssen die Befehle als Text in eine Datei eingeben, diese Datei auf der Festplatte des Computers speichern und dann den Inhalt dieser Datei mit einem Programm (Compiler oder Interpreter), der solche Befehle versteht. In einer interpretierten Computersprache enthält der Computer ein spezielles Programm namens Interpreter das das von Ihnen geschriebene Programm übersetzt (die sogenannte Quelldatei ) in die eigene Sprache des Computers, während der Ausführung: In einer kompilierten Computersprache wird das von Ihnen geschriebene Programm von einem Spezialisten auf einmal in die eigene Sprache des Computers übersetzt Programm namens Compiler . Nachdem das von Ihnen geschriebene Programm „kompiliert“ wurde, wird die resultierende ausführbare Datei Datei bedarf keiner weiteren Übersetzung, um vom Computer direkt verstanden zu werden. Es kann nun auf einem Computer „ausgeführt“ werden, unabhängig davon, ob auf diesem Computer Compiler-Software installiert ist: SPICE ist eine interpretierte Sprache. Damit ein Computer die von Ihnen eingegebenen SPICE-Anweisungen verstehen kann, muss das SPICE-Programm (Interpreter) installiert sein: SPICE-Quelldateien werden allgemein als "Netzlisten" bezeichnet, obwohl sie manchmal als "Decks" bezeichnet werden Zeile in der Datei wird als "Karte" bezeichnet. Süß, findest du nicht? Netzlisten werden von einer Person wie Ihnen erstellt, die Anweisungen Zeile für Zeile mit einem Textverarbeitungs- oder Texteditor eingibt. Texteditoren werden bei jeder Art von Computerprogrammierung Textverarbeitungen vorgezogen, da sie reinen ASCII-Text ohne spezielle eingebettete Codes für die Texthervorhebung (wie kursiv .) erzeugen oder fett Schriftarten), die von Interpreter- und Compiler-Software nicht interpretierbar sind. Wie bei der allgemeinen Programmierung muss die Quelldatei, die Sie für SPICE erstellen, bestimmten Programmierkonventionen folgen. Es ist eine Computersprache für sich, wenn auch eine einfache. Nachdem ich in BASIC und C/C++ programmiert habe und einige Erfahrung mit dem Lesen von PASCAL- und FORTRAN-Programmen habe, bin ich der Meinung, dass die Sprache von SPICE viel einfacher ist als alle diese. Es hat ungefähr die gleiche Komplexität wie eine Auszeichnungssprache wie HTML, vielleicht weniger. Bei der Verwendung von SPICE zur Analyse einer Schaltung ist ein Zyklus von Schritten zu befolgen. Der Zyklus beginnt, wenn Sie das Textbearbeitungsprogramm zum ersten Mal aufrufen und Ihren ersten Entwurf der Netzliste erstellen. Der nächste Schritt besteht darin, SPICE auf dieser neuen Netzliste auszuführen und die Ergebnisse zu sehen. Wenn Sie ein Anfänger von SPICE sind, werden Ihre ersten Versuche, eine gute Netzliste zu erstellen, mit kleinen Syntaxfehlern behaftet sein. Keine Sorge – wie jeder Computerprogrammierer weiß, braucht es viel Übung. Wenn Ihr Probelauf Fehlermeldungen oder offensichtlich falsche Ergebnisse liefert, müssen Sie das Textbearbeitungsprogramm erneut aufrufen und die Netzliste ändern. Nachdem Sie die Netzliste geändert haben, müssen Sie SPICE erneut ausführen und die Ergebnisse überprüfen. Die Sequenz sieht dann etwa so aus:

Um ein SPICE-Programm „auszuführen“, müssen Sie einen Befehl an einer Terminal-Eingabeaufforderungsschnittstelle eingeben, wie sie beispielsweise in MS-DOS, UNIX oder der MS-Windows-DOS-Eingabeaufforderungsoption zu finden ist:

Gewürz  

Das Wort „spice“ ruft das SPICE-Interpretationsprogramm auf (vorausgesetzt, die SPICE-Software wurde auf dem Computer installiert!), das „<“-Symbol leitet den Inhalt der Quelldatei an den SPICE-Interpreter und example.cir ist der Name der Quelldatei für dieses Schaltungsbeispiel. Die Dateierweiterung „.cir “ ist nicht obligatorisch; Ich habe ".inp . gesehen “ (für „Eingabe“) und einfach „.txt “ funktioniert auch gut. Es funktioniert sogar, wenn die Netzlistendatei keine Erweiterung hat. SPICE ist es egal, wie Sie es nennen, solange es einen Namen hat, der mit dem Dateisystem Ihres Computers kompatibel ist (für alte MS-DOS-Rechner zum Beispiel darf der Dateiname nicht länger als 8 Zeichen sein, mit einer 3 Zeichenerweiterung und keine Leerzeichen oder andere nicht alphanumerische Zeichen). Wenn dieser Befehl eingegeben wird, liest SPICE den Inhalt der example.cir Datei, analysieren Sie die von dieser Datei angegebene Schaltung und senden Sie einen Textbericht an die Standardausgabe des Computerterminals (normalerweise der Bildschirm, an dem Sie sehen können, dass er vorbeirollt). Eine typische SPICE-Ausgabe enthält mehrere Bildschirme mit Informationen, also sollten Sie sie mit einer leichten Modifikation des Befehls durchsehen:

Gewürz  

Diese Alternative „leitet“ die Textausgabe von SPICE an das Dienstprogramm „more“ weiter, das es ermöglicht, immer nur eine Seite gleichzeitig anzuzeigen. Dies bedeutet (auf Englisch), dass die Textausgabe von SPICE nach einem vollen Bildschirm angehalten wird und wartet, bis der Benutzer eine Tastaturtaste drückt, um den nächsten Bildschirm voller Text anzuzeigen. Wenn Sie nur Ihre Beispielschaltkreisdatei testen und auf Fehler überprüfen möchten, ist dies eine gute Möglichkeit.

Gewürz  ​​example.txt 

Diese zweite Alternative (oben) leitet die Textausgabe von SPICE in eine andere Datei namens example.txt . um , wo es eingesehen oder ausgedruckt werden kann. Diese Option entspricht dem letzten Schritt im zuvor aufgeführten Entwicklungszyklus. Es wird von diesem Autor empfohlen, diese Technik der „Umleitung“ zu einer Textdatei erst zu verwenden, nachdem Sie bewiesen haben, dass Ihre Beispiel-Schaltungsnetzliste gut funktioniert, damit Sie keine Zeit damit verschwenden, einen Texteditor aufzurufen, nur um die Ausgabe zu sehen während der Phasen des „Debuggens“. Sobald Sie eine SPICE-Ausgabe in einer .txt gespeichert haben, Datei können Sie einen Texteditor oder (noch besser!) ein Textverarbeitungsprogramm verwenden, um die Ausgabe zu bearbeiten, unnötige Banner und Nachrichten zu löschen und sogar alternative Schriftarten anzugeben, um die Überschriften und/oder Daten für ein besseres Erscheinungsbild hervorzuheben. Anschließend können Sie die Ausgabe natürlich auf Papier ausdrucken, wenn Sie dies wünschen. Da die direkte SPICE-Ausgabe reiner ASCII-Text ist, ist eine solche Datei auf jedem Computer universell interpretierbar, unabhängig davon, ob SPICE darauf installiert ist oder nicht. Außerdem stellt das Nur-Text-Format sicher, dass die Datei im Vergleich zu den von „Point-and-Click“-Simulatoren erzeugten grafischen Screenshot-Dateien sehr klein ist. Das von SPICE benötigte Netzlisten-Dateiformat ist recht einfach. Eine Netzlistendatei ist nichts anderes als eine einfache ASCII-Textdatei mit mehreren Textzeilen, wobei jede Zeile entweder eine Schaltungskomponente oder einen speziellen SPICE-Befehl beschreibt. Die Schaltungsarchitektur wird spezifiziert, indem den Verbindungspunkten jeder Komponente in jeder Leitung Nummern zugewiesen werden, Verbindungen zwischen Komponenten, die durch gemeinsame Nummern gekennzeichnet sind. Untersuchen Sie den folgenden Beispielschaltplan und die entsprechende SPICE-Datei. Bitte beachten Sie, dass der Schaltplan nur existiert, um die Simulation für den Menschen leichter verständlich zu machen. SPICE versteht nur Netzlisten:

Beispielnetzliste v1 1 0 dc 15 r1 1 0 2,2k r2 1 2 3,3 k r3 2 0 150 .Ende 

Jede Zeile der oben gezeigten Quelldatei wird hier erklärt:

  • v1 steht für die Batterie (Spannungsquelle 1), positiver Pol mit 1, negativer Pol mit 0, mit einer Gleichspannung von 15 Volt.
  • r1 repräsentiert den Widerstand R1 im Diagramm, verbunden zwischen den Punkten 1 und 0, mit einem Wert von 2,2 kΩ.
  • r2 repräsentiert den Widerstand R2 im Diagramm, verbunden zwischen den Punkten 1 und 2, mit einem Wert von 3,3 kΩ.
  • r3 repräsentiert den Widerstand R3 im Diagramm, verbunden zwischen den Punkten 2 und 0, mit einem Wert von 150 kΩ.

Elektrisch gemeinsame Punkte (oder "Knoten") in einer SPICE-Schaltungsbeschreibung haben gemeinsame Nummern, ähnlich wie Drähte, die gemeinsame Punkte in einer großen Schaltung verbinden, normalerweise gemeinsame Drahtbezeichnungen haben. Um diese Schaltung zu simulieren, würde der Benutzer diese sechs Textzeilen in einen Texteditor eingeben und sie als Datei mit einem eindeutigen Namen speichern (z. B. example.cir ). Sobald die Netzliste erstellt und in einer Datei gespeichert ist, verarbeitet der Benutzer diese Datei mit einer der zuvor gezeigten Befehlszeilenanweisungen (spice ) und erhalten diese Textausgabe auf dem Bildschirm ihres Computers:

1********10/10/99 ******** Gewürz 2g.6 15.03.83 ********07:32:42**** * 0Beispielnetzliste 0**** Temperatur der Eingabeliste =27.000 Grad c v1 1 0 dc 15 r1 1 0 2,2k r2 1 2 3,3 k r3 2 0 150 .Ende *****10.10.99 ********* Gewürz 2g.6 15.03.83 ******07:32:42******* 0Beispielnetzliste 0**** Kleinsignal-Bias-Lösungstemperatur =27.000 Grad c Knotenspannung Knotenspannung ( 1) 15.0000 ( 2) 0.6522 Spannungsquellenströme Name aktuell v1 -1.117E-02 Gesamtverlustleistung 1,67E-01 Watt Job abgeschlossen 0 Gesamtarbeitszeit 0,02 1********10.10.99 ******** Gewürz 2g.6 15.03.83 ******07:32:42***** 0**** Temperatur der Eingabeliste =27.000 Grad c 

SPICE beginnt mit dem Drucken von Uhrzeit, Datum und Version oben in der Ausgabe. Anschließend werden die Eingabeparameter (die Zeilen der Quelldatei) aufgelistet, gefolgt von einer Anzeige der DC-Spannungsmesswerte von jedem Knoten (Referenznummer) gegen Masse (immer Referenznummer 0). Darauf folgt eine Liste der aktuellen Messwerte durch jede Spannungsquelle (in diesem Fall gibt es nur eine, v1). Abschließend wird die Gesamtverlustleistung und Rechenzeit in Sekunden ausgedruckt. Alle von SPICE bereitgestellten Ausgabewerte werden in wissenschaftlicher Schreibweise angezeigt. Die oben gezeigte SPICE-Ausgabeliste ist für den Geschmack der meisten Leute etwas ausführlich. Für eine abschließende Präsentation kann es sinnvoll sein, den gesamten unnötigen Text zu entfernen und nur das Wesentliche zu belassen. Hier ist ein Beispiel derselben Ausgabe, umgeleitet in eine Textdatei (spice ​​example.txt ), dann mit einem Texteditor für die endgültige Präsentation umsichtig beschnitten und gedruckt:

Beispielnetzliste v1 1 0 dc 15 r1 1 0 2,2k r2 1 2 3,3 k r3 2 0 150 .Ende
Knotenspannung Knotenspannung ( 1) 15.0000 ( 2) 0.6522
Spannungsquellenströme Name aktuell v1 -1.117E-02 Gesamtverlustleistung 1,67E-01 Watt

Eines der sehr schönen Dinge an SPICE ist, dass sowohl die Eingabe- als auch die Ausgabeformate Klartext sind, das universellste und am einfachsten zu bearbeitende elektronische Format überhaupt. Praktisch jeder Computer in der Lage sein, dieses Format zu bearbeiten und anzuzeigen, selbst wenn das SPICE-Programm selbst nicht auf diesem Computer resident ist. Wenn der Benutzer es wünscht, kann er oder sie die erweiterten Fähigkeiten von Textverarbeitungsprogrammen verwenden, um die Ausgabe schicker aussehen zu lassen. Kommentare können sogar zwischen den Zeilen der Ausgabe eingefügt werden, um dem Leser mehr Klarheit zu verschaffen.


Industrietechnik

  1. Einführung in SPICE
  2. Geschichte von SPICE
  3. Die Befehlszeilenschnittstelle
  4. Schaltungskomponenten
  5. Mikroprozessorprogrammierung
  6. Halbleiterbauelemente in SPICE
  7. Computersimulation elektrischer Schaltungen
  8. Namespaces in der C#-Programmierung
  9. C-Programmieroperatoren
  10. C-Tutorial