[Circuit x Python] Aktivieren des linearen Schaltungsanalysepakets Lcapy

Was ist Lcapy?

Lcapy ist ein Python-Paket zur Analyse linearer Schaltkreise und verwendet Sympy für die Symbolanalyse.

Offizielle Dokumentation: Willkommen in der Dokumentation von Lcapy!

Lcapy kann numerische und symbolische Analysen von Schaltkreisen durchführen. Die numerische Analyse drückt das Analyseergebnis numerisch aus, wie das vom SPICE-Simulator ausgegebene Ergebnis. Die Symbolanalyse soll die Übertragungsfunktion und Impedanz einer Schaltung mit Symbolen (mathematischen Formeln) ausdrücken. Mit dieser Funktion können Sie den Computer die Aufgabe haben, störende Schaltungsgleichungen zu lösen.

Lcapy kann auch Schaltpläne in Lehrbuchqualität auf Befehlsbasis zeichnen [^ 1].

Zum 31. Oktober 2020 gab es keine Informationen über Lcapy in Qiita. Als ich es bei Google nachgeschlagen habe, gab es in englischsprachigen Ländern fast keine Treffer, geschweige denn in japanischsprachigen Ländern.

Was können Sie mit Lcapy machen? Ich denke, Sie sollten [Übersicht der offiziellen Dokumentation] lesen (http://lcapy.elec.canterbury.ac.nz/overview.html). Last but not least kann mein Artikel über Lcapy Ihnen helfen, die Funktionen von Lcapy zu verstehen.

Dieser Artikel beschreibt, wie Sie Lcapy aktivieren. Wir hoffen, dass die Anzahl der Lcapy-Benutzer zunimmt und wir nützliche Informationen austauschen können.

Wie benutzt man

Gemäß der offiziellen Dokumentationsinstallation sind die folgenden Python-Pakete erforderlich. Installieren Sie sie also mit pip. lcapy, sympy, numpy, matplotlib, networkx

Wenn Sie die Funktion zum schematischen Zeichnen nicht verwenden, ist die Installation beendet.

Versuche dich zu bewegen

Lassen Sie uns nach der Installation den Betrieb auf dem Jupyter-Notebook überprüfen. In Lcapy kann die Übertragungsfunktion der Schaltung durch verschiedene Verfahren erhalten werden, und ein Beispiel ist unten gezeigt.

Schaltung zum Auffinden der Übertragungsfunktion: image.png

Finden Sie die Übertragungsfunktion symbolisch


from lcapy import Circuit, s
cct = Circuit("""
Vi 1 0 
R 1 2 RF
C 2 0 CF
""")

H = (cct.C.V(s) / cct.Vi.V(s)).simplify()
H

Das Ausführungsergebnis ist wie folgt und die Übertragungsfunktion der Schaltung könnte symbolisch analysiert werden. $\frac{1}{C_{F} R_{F} s + 1}$

In der Lage sein, einen Schaltplan zu erstellen

Wenn Sie die schematische Zeichenfunktion verwenden möchten, müssen Sie TeX installieren.

Gemäß der offiziellen Dokumentationsinstallation benötigen Sie pdflatex, Circuitikz und Ghostscript. Bei der Prüfung wird pdflatex als W32TeX [^ 2] verteilt, und das Circuitikz-Paket scheint standardmäßig auf diesem W32TeX [^ 3] installiert zu sein. Es scheint, dass Ghostscript mithilfe des W32TeX-Installationsprogramms installiert werden kann. Mit anderen Worten, wenn Sie nur W32TeX installieren, haben Sie alles, was Sie brauchen. W32TeX kann einfach mit TeX Installer 3 installiert werden.

Versuche dich zu bewegen

Zeichnen Sie einen Schaltplan


from lcapy import Circuit
cct = Circuit("""
Vi 1 0_1 step; down
R 1 2; right, size=1.5
C 2 0; down
W 0_1 0; right
W 0 0_2; right, size=0.5
P1 2_2 0_2; down
W 2 2_2;right, size=0.5""")

cct.draw()

Das Ausführungsergebnis ist wie folgt und ein schönes Schaltbild wird gezeichnet. image.png

Der obige Code stammt aus dem Folgenden: https://github.com/mph-/lcapy/tree/master/doc/examples/notebooks

Informationen zur Schaltungssymbolanalyse

Ich bin seit mehreren Jahren in der Schaltungsplanung tätig, wusste aber bis vor kurzem nicht, dass es ein Tool gibt, mit dem Schaltungssymbole analysiert werden können.

Die folgende Doktorarbeit ist hilfreich für die Arten und Werkzeuge der Schaltungsanalyse. Über das mathematische Verhalten elektrischer Schaltkreise und ihre symbolischen Berechnungen

In Tabelle 1.1 des Dokuments werden SAPWIN, SCAM als Tools zur Analyse von Schaltungssymbolen verwendet. 3443-Betrug-ein-Werkzeug-zum-symbolischen Lösen von Schaltungsgleichungen), WASABI werden eingeführt, aber zusätzlich zu diesen [QSapecNG] Es scheint Tools wie (http://qsapecng.sourceforge.net/) und CircuitNAVI zu geben. Ich denke, es ist am besten, das beste Werkzeug für das zu wählen, was Sie tun möchten.

In meinem Fall wollte ich Folgendes tun:

  1. Analysieren Sie symbolisch die Übertragungsfunktion der Schaltung
  2. Erweitern Sie die erhaltene Übertragungsfunktion (finden Sie den Pol usw.)
  3. Berechnen Sie die erhaltene Übertragungsfunktion numerisch
  4. Zeigen Sie das Ergebnis der numerischen Berechnung in einem schönen Diagramm an. Python (Lcapy) war dafür die beste Wahl.

Ich habe den folgenden Artikel über Lcapy geschrieben, also schauen Sie bitte auch dort nach. [Circuit x Python] So finden Sie die Übertragungsfunktion eines Schaltkreises mithilfe von Lcapy [Circuit x Python] Erweitern und Berechnen von Übertragungsfunktionen mit Lcapy [^ 1]: Lcapy kann nichtlineare Geräte wie Dioden und MOS nicht analysieren, kann jedoch als Schaltplan gezeichnet werden.

Recommended Posts

[Circuit x Python] Aktivieren des linearen Schaltungsanalysepakets Lcapy
[Circuit x Python] So ermitteln Sie die Übertragungsfunktion eines Schaltkreises mit Lcapy
[Algorithmus x Python] Verwendung der Liste
[Circuit x Python] So erweitern und berechnen Sie Übertragungsfunktionen mit Lcapy
So erhalten Sie die Python-Version
So verpacken und verteilen Sie Python-Skripte
Verwendung der C-Bibliothek in Python
[Python] So ändern Sie das Datumsformat (Anzeigeformat)
Excel X Python Die schnellste Arbeitstechnik
So löschen Sie die von Python ausgegebenen Zeichen
So erhalten Sie die Dateien im Ordner [Python]
Verwendung von Ruby's PyCall zum Aktivieren von pyenv Python
Ich habe untersucht, wie der Arbeitsablauf mit Excel x Python optimiert werden kann
[Python] So entfernen Sie doppelte Werte aus der Liste
So rufen Sie den n-ten größten Wert in Python ab
So erhalten Sie den Variablennamen selbst in Python
Überlegen Sie, wie Sie Python auf Ihrem iPad programmieren können
So ermitteln Sie die Anzahl der Stellen in Python
[Für Anfänger] So studieren Sie den Python3-Datenanalysetest
[Einführung in Python] Wie iteriere ich mit der Bereichsfunktion?
Wie Sie das aktuelle Verzeichnis in Python in Blender kennen
[Wiedereinführung in Python] Importieren über das übergeordnete Verzeichnis
Ich habe versucht herauszufinden, wie der Arbeitsablauf mit Excel x Python optimiert werden kann
Verwendung von Raspeye Relay Module Python
[Python] So legen Sie den Download-Speicherort mit youtube-dl fest
So installieren Sie Python
[Python] Verwendung der Diagrammerstellungsbibliothek Altair
So erstellen Sie ein Python-Paket mit VS Code
Ich habe untersucht, wie der Arbeitsablauf mit Excel x Python optimiert werden kann
[Einführung in die Udemy Python3 + -Anwendung] 27. Verwendung des Wörterbuchs
[Einführung in die Udemy Python3 + -Anwendung] 30. Verwendung des Sets
[Python] Zusammenfassung, wie die Farbe der Figur angegeben wird
Verwendung des in Lobe in Python erlernten Modells
[Einführung in Python] Wie stoppe ich die Schleife mit break?
[Python] So schreiben Sie den Tabellenstil mit python-pptx um [python-pptx]
Wie man Python auf Android genießt !! Programmieren für unterwegs !!
[Python] So geben Sie Listenwerte der Reihe nach aus
Ich habe untersucht, wie der Arbeitsablauf mit Excel x Python optimiert werden kann
Ich habe versucht zu simulieren, wie sich die Infektion mit Python ausbreitet
Versuchen Sie, die Funktionsliste des Python> os-Pakets abzurufen
[Python] So überprüfen Sie, ob der Schlüssel im Wörterbuch vorhanden ist
So wechseln Sie die Konfigurationsdatei, die von Python gelesen werden soll
So debuggen Sie eine Standard-Python-Bibliothek in Visual Studio
[Python] Verwendung von Matplotlib, einer Bibliothek zum Zeichnen von Diagrammen
Verwendung der Methode __call__ in der Python-Klasse
[Hyperledger Iroha] Hinweise zur Verwendung des Python SDK
So stellen Sie Pybot, das einfachste Python-Lehrbuch, auf Heroku bereit
Wie erstelle ich ein Python-Paket (geschrieben für Praktikanten)
So erhalten Sie den letzten (letzten) Wert in einer Liste in Python
Ich wusste nicht, wie ich die [Python] für die Anweisung verwenden sollte
So gelangen Sie mit Vagrant in die Python-Entwicklungsumgebung
Meteorologie x Python ~ Von der Wetterdatenerfassung bis zur Spektrumanalyse ~
Ruby vs Python Performance. Wie wählt man die richtige Technologie aus?
[Einführung in Python] So erhalten Sie Daten mit der Funktion listdir
[Neueste Version 2020.8] So installieren Sie Python
So installieren Sie Python [Windows]
python3: Verwendung der Flasche (2)