Der Qucs-S-Simulator für elektronische Schaltungen lebt wieder / Sudo Null IT News

Qucs-S ist eine Open-Source-Simulationssoftware für elektronische Schaltungen. Qucs-S ist plattformübergreifend (Linux, Windows und FreeBSD werden unterstützt), in C++ unter Verwendung einer Reihe von Qt-Bibliotheken geschrieben und vollständig privat entwickelt (anders als beispielsweise KiCAD, das von CERN gesponsert wird). Im Februar dieses Jahres ist das Projekt von den Toten auferstanden und hat 0.0.23 veröffentlicht. Die wesentliche Neuerung der Version 0.0.23 war, dass das Programm nun auf Qt5 portiert wird, was die Kompilierbarkeit auf modernen Linux-Distributionen gewährleistet. Die aktuelle Version ist im Moment 0.0.24 https://github.com/ra3xdh/qucs_s/releases/tag/0.0.24, das mehrere neue Simulationen hinzufügt. Als nächstes werden die Hauptfunktionen des Programms betrachtet und es wird gezeigt, wie man eine Schaltung in Qucs-S simuliert.

Qucs-S ist ein Fork des Qucs-Projekts, das 2003 von den Deutschen Stefan Jahn und Michael Margraf gestartet wurde. Derzeit ist das übergeordnete Projekt praktisch inaktiv und die letzte Veröffentlichung war im Jahr 2017. Qucs kam ursprünglich mit einer eigenen Simulations-Engine, die mehr darauf abzielte, HF-Schaltungen im Frequenzbereich zu analysieren. Diese Engine hatte schwerwiegende Konvergenzprobleme bei Zeitbereichssimulationen und war nicht mit SPICE kompatibel, das keine direkte Verwendung von Modellen elektronischer Komponenten erlaubte, die von Herstellern vertrieben wurden.

Im Jahr 2014 begann ich mit der Entwicklung einer Reihe von Patches, die es ermöglichen würden, Ngspice als Engine mit Qucs zu verbinden. Infolgedessen führte diese Entwicklung zur Schaffung eines Forks von Qucs-S (Qucs mit SPICE). In den Jahren 2017-2020 gab es drei Veröffentlichungen von Qucs-S, von denen die letzten korrektiv waren, das Projekt war ziemlich tot. Dieses Jahr habe ich ein Nekromantie-Ritual durchgeführt, Qucs-S auf Qt5 portiert und damit das Programm wieder zum Leben erweckt.

Meine vorherigen Artikel erzählen von den Grundlagen der Arbeit in Qucs und von Qucs-S:

Qucs-S unterstützt derzeit vier Simulations-Engines:

  • ngspice Dies ist der empfohlene Simulator. Es ist mit den meisten Modellen kompatibel, die auf einer Vielzahl von Ressourcen zu finden sind. Das Projekt wird nun von Holger Vogt von der Universität Duisburg-Essen geleitet.
  • XYCE Es ist ein Simulator, der von Grund auf von den Sandia National Laboratories entwickelt wurde. Es ist möglich, harmonische Balance (HB) und S-Parameter zu simulieren.
  • SpiceOpus
  • Qucsator Dies ist die Original-Engine, die in Qucs verwendet wird. Hat die Fähigkeit, S-Parameter zu simulieren, ist aber im Zeitbereich instabil.

Qucs-S unterstützt alle Arten von Simulationen, die in der angewandten SPICE-Engine implementiert sind, nämlich Zeit- und Frequenzbereichssimulationen, Rauschanalyse, harmonische Verzerrungsanalyse, Fourier-Analyse, harmonische Gleichgewichtssimulationen.

Für Linux gibt es Repositories für Debian/Ubuntu, Fedora und OpenSUSE. Es gibt auch Pakete für Arch, die über das AUR installiert werden können, und eine Portierung für FreeBSD. Für nicht standardmäßige Fälle können Sie Qucs-S aus der Quelle erstellen oder AppImage verwenden. Unterstützung für Ihre Linux-Distribution kann sein überprüfe hier. Binärpakete werden automatisch mit dem OpenSUSE Build Service erstellt.

Qucs-S selbst bietet keine Simulations-Engine. Es wird empfohlen, Ngspice zu verwenden, das als Abhängigkeit für Debian/Ubuntu installiert wird, andernfalls muss es manuell installiert werden.

Laden Sie für Windows das ZIP-Archiv mit der portablen Version von Qucs-S von der Release-Seite herunter. Als nächstes müssen Sie das Archiv entpacken und die Datei qucs-s.exe aus dem Unterverzeichnis bin ausführen. Ngspice sollte von der offiziellen Seite heruntergeladen und in C:\Spice64 installiert werden, sonst funktionieren XSPICE-Modelle nicht. Beim ersten Start sollten Sie in den Programmeinstellungen den Pfad zur Datei ngspice_con.exe angeben. Neuere Versionen von Ngspice für Windows enthalten jetzt zwei ausführbare Dateien, ngspice.exe und ngspice_con.exe. Qucs-S benötigt ngspice_con.exe, um ordnungsgemäß zu funktionieren, das Protokolle auf die Konsole schreiben kann. Normal ngspice.exe startet ein grafisches Fenster und alle Textnachrichten bleiben in diesem Fenster.

Wenn Sie Qucs-S zum ersten Mal starten, werden Sie aufgefordert, eine Simulations-Engine auszuwählen und das im Screenshot gezeigte Dialogfeld zu öffnen. Später können die Einstellungen im Menü Simulation->Standardsimulator auswählen geändert werden. Unter Linux befindet sich Ngspice normalerweise unter /usr/bin/ngspice, während es unter Windows standardmäßig unter C:/Spice64/bin/ngspice_con.exe installiert wird

Nachdem der Simulator ausgewählt wurde, öffnet sich das Schaltplan-Editor-Fenster. Jetzt können Sie jede Schaltung simulieren. Lassen Sie uns zum Beispiel einen invertierenden Norton-Verstärker auf einem Operationsverstärker NE5532 montieren. Das Bearbeiten einer Schaltung in Qucs ist intuitiv und diejenigen, die mit anderen elektrischen CAD-Systemen gearbeitet haben, werden den Editor leicht verstehen. Mehrere Merkmale sind zu beachten. Simulationsansichten und Diagramme sind ebenfalls Bestandteile und werden auf dem Diagramm platziert. Sie befinden sich in den Gruppen Simulationen und Diagramme und werden im Komponentenbereich auf der rechten Seite des Fensters ausgewählt, von wo aus sie auf das Schaltplanfeld gezogen werden können. Der Operationsverstärker ist eine Bibliothekskomponente und sollte aus der Registerkarte „Bibliotheken“ auf der rechten Seite des Fensters entnommen werden. Wir stellen das Schema zusammen und platzieren die Modellierungsarten darauf. Es wird benötigt, um den Einschwingvorgang (Transisentanalyse) und den Frequenzgang der Schaltung (AC-Analyse) zu simulieren. Es sollte wie im Screenshot aussehen. Der Ein- und Ausgang der Schaltung muss mit Insert->Wire label beschriftet werden.

Eine Gleichung ist ebenfalls eine spezielle Komponente und wird über das Menü Einfügen→Gleichung oder eine Schaltfläche in der Symbolleiste eingefügt. Die Art und Weise, wie Gleichungen in Qucs-S definiert sind, unterscheidet sich von der in Qucs. Nun müssen Sie im ersten Parameter aus der Liste auswählen, zu welcher Simulationsart die Gleichung gehört, da für Spannungen und Ströme die SPICE-Notation verwendet wird. Beispielsweise stellt v(out) die Spannung am Ausgangsknoten dar. Das Dialogfeld, das sich öffnet, wenn Sie auf die Gleichung doppelklicken, ist im Screenshot dargestellt. Diese Gleichung berechnet die Schaltungsverstärkung in Dezibel.

Nachdem die Schaltung zusammengebaut ist, wählen Sie im Hauptmenü Simulation->Simulieren oder drücken Sie F2 auf der Tastatur und starten Sie die Simulation. Es erscheint ein Fenster, das besagt, dass Ngspice die Schaltung fehlerfrei modelliert hat.

Nachdem Sie den Simulatorbericht überprüft haben, drücken Sie Beenden und gehen Sie zur Ansichtsseite, auf der Sie Diagramme platzieren können. Diagramme können auch direkt auf dem Diagramm platziert werden, wie dies beim KDPV der Fall ist. Die auf dem Chart anzuzeigenden Signale können im Chart-Eigenschaften-Dialog ausgewählt werden. Die nächsten beiden Screenshots zeigen den Diagrammeigenschaften-Dialog und das Viewer-Fenster mit dem Frequenzgang und den Wellenformen der Ein- und Ausgangssignale. Es ist ersichtlich, dass der Verstärker das Signal verstärkt.

Sie können Markierungen auf Diagrammen platzieren, die sich wie Cursor auf einem digitalen Oszilloskop verhalten. Ab Qucs-S 0.0.24 ist es nun möglich, die exakte Position des Markers entlang der X-Achse im Eigenschaftsdialog einzustellen. Beispielsweise können Sie den Marker im Frequenzgangdiagramm genau auf 1 kHz setzen.

Ngspice unterstützt seit Version 37, die im Mai dieses Jahres veröffentlicht wurde, die S-Parameter-Modellierung. In Qucs-S ist es seit Version 0.0.24 auch möglich, S-Parameter mit Ngspice zu modellieren und es ist nicht mehr notwendig, Qucsator für diesen Zweck zu installieren und zu verwenden. Ein Beispiel für eine Hochfrequenz-Breitband-Verstärkerschaltung für einen HF-Transceiver ist im Screenshot dargestellt.

Vor Qucs-S 0.0.24 war es notwendig, ein Ngspice-Postprozessorskript zu schreiben, um eine Spektrumanalyse (FFT) durchzuführen. Ab Version 0.0.24 implementiert die Anwendung eine spezielle Art der Modellierung: Spektrumanalyse (FFT). Ein Beispiel für die Modellierung des Spektrums am Ausgang eines Diodenringmischers ist im Screenshot dargestellt. Die Parameter für diese Simulation sind Bandbreite (BW), Frequenzschritt (dF) und Fensterfunktionstyp.

Der Qucs-S-Simulator ist von den Toten auferstanden und wird nun weiterentwickelt. Ich habe Pläne, Releases mit neuen Funktionen zu synchronisieren, die in Ngspice erscheinen. Beispielsweise planen die Entwickler in Ngspice-38 die Unterstützung für digitale Komponenten hinzuzufügen, die in der Netzliste und der Netzlistensyntax mit LTSpice kompatibel sind. Sobald sie in Ngspice verfügbar sind, werde ich sie in Qucs-S unterstützen. Für die nächste Version sind auch einige Verbesserungen der Benutzeroberfläche geplant.

Hilfe bei der Entwicklung ist willkommen. Im Projektprofil auf GitHub findet man den Bugtracker und Pläne weitere Programmentwicklung. Wenn Sie eine Art globale Verbesserung planen, wird empfohlen, dass Sie zuerst schreiben und angeben, was Sie tun werden. Sie können das Projekt auch finanziell über die Seite weiter unterstützen Boostig und damit auch das nächste Release näher rücken.

Similar Posts

Leave a Reply

Your email address will not be published.