Wie rechnet Spice? Nehmen wir z.b. eine Spannungsteiler 5V--100Ohm--o--200Ohm--GND ( o ist der Knotenpunkt zwischen den Widerständen ) Wie rechnet Spice dynamisch z.B. für einen RC-Tiefpass?
So weit ich weiß hangelt es sich von Timestep zu Timestep. Also aproximiert das dynamische nur. Aber diese Angabe ist ohne Gewähr
Die Blöcke sind soweit ich (und Wikipedia) weiß, durch algebraische und gewöhnliche Differentialgleichungen beschrieben. Die Simulation enthält dann einen Continious-Time-Discrete-Event Löser für das Gleichungssystem, dass durch die Topologie (Schaltung) bestimmt ist. Die Gleichungen werden zwischen den Diskreten Events (z.B. Digitalflanke, Taster, Ein-/Ausschalten) numerisch gelöst.
Ein kleiner Überblick ist hier. http://www.ecircuitcenter.com/SpiceTopics/Overview/Overview.htm Allerdings halte ich es für vergebliche Mühe das selber zu programmieren. Dafür haben die wenigstens Leute das nötige Wissen. Es gibt sicher ausführlichere Beschreibungen. Je detailierter die sind umso weniger wird ein "Normalo" die noch verstehen.
Was SPICE genau macht, hängt stark von der Frage ab. Generell wird immer der DC-Arbeitspunkt berechnet. Da macht es im Prinzip nichts anderes als das Knotenpotentialverfahren für einfache, lineare Schaltungen. Während das rein algebraisch geht (Gauß-Algorithmus z.B.), funktioniert das für nichtlineare Schaltungen idR nicht, das wird dann numerisch gelöst (Newton-Verfahren). Die weitere Analyse hängt von der Frage ab wie oben erwähnt, also ob es eine .tran, .ac, .noise, ... Analyse ist. Eine AC-Anaylse basiert z.B. auf den Kleinsignal-Modellen, die für den vorher berechneten DC-Arbeitspunkt aufgestellt werden. Die können dann ähnlich berechnet werden wie beim DC-Arbeitspunkt. Dann gibt es die komplexeste Art von Analyse, die transiente Analyse. Hier werden die Differenzialgleichungen der Schaltung tatsächlich "direkt" durch numerische Integration über meist recht kleine Zeitschritte numerisch angenähert.
damit hat sich der Herr Lange in den 80ern auseinadergesetzt leider habe ich nur Fotokopien aus einer Vorveröffentlichung in der Radio Fernseh Elektronik 1986-1989 hier ein Link auf das Buch zum einlesen https://books.google.at/books?id=ZCWbBgAAQBAJ&pg=PA1&lpg=PA1&dq=netzwerkanalyse+Basic&source=bl&ots=MIBViHXxc7&sig=04GcgSbJ_qv3WztsGS83gerjvgY&hl=de&sa=X&ved=0ahUKEwiaiJvf24vKAhUFPBQKHRQzDWcQ6AEIXTAJ#v=onepage&q=netzwerkanalyse%20Basic&f=false
>Ein kleiner Überblick ist hier. >http://www.ecircuitcenter.com/SpiceTopics/Overview... Das ist ein sehr guter Link. Für mich interessant ist die Transientenanalyse: http://www.ecircuitcenter.com/SpiceTopics/Transient%20Analysis/Transient%20Analysis.htm Der wesentliche Knackpunkt ist es, die Ströme zwischen den Knoten zu berechnen. Nach ähnlichem Prinzip hatte ich es schon einmal versucht, so in Excel zu rechnen. Ein schwieriger Fall ist folgendes Konstrukt: GND--C1--1kOhm--C2--GND U(C1)=5V; U(C2)=0V; Mann kann jetzt ausrechnen, wie viel Strom von C1 nach C2 und umgekehrt fließt. Danach kann man über die abgeflossene Ladungen die Spannung an den Kondensatoren neu berechnen. Das einzige Problem: Die Rechnung neigt zur Schwingung. Es kann nämlich passieren, dass bei fast gleichen Kondensatorspannungen die Ladung immer zwischen den beiden Kondensatoren hin und her hüpft.
chris_ schrieb: > Es kann nämlich > passieren, dass bei fast gleichen Kondensatorspannungen die Ladung immer > zwischen den beiden Kondensatoren hin und her hüpft. da darf maximal 1 Bit hin und her hüpfen, das ist halt so
mit partielle Differentialgleichung die schwachbesetzte Matrixen ergeben (da ist Excel nicht das richtige Werkzeug für)
Ich persönlich glaube ja, dass die Hochschulmathematik oft den Blick auf das Wesentliche vernebelt. Ich finde, man kann grundlegende Zusammenhänge auch mit einfachen Rechnungen darstellen, so dass sie für jeden Verständlich werden und dank diesem Verständnis auch weiterentwickelt werden können. Nehmen wir also mal die 3 obigen Sätze und analysieren sie mit Hilfe des oben genannten Links: >1. mit partielle Differentialgleichung >2. die schwachbesetzte Matrixen ergeben >3. (da ist Excel nicht das richtige Werkzeug für) 1. mit partielle Differentialgleichung Ein interessanter Hinweis findet sich im Link http://www.ecircuitcenter.com/SpiceTopics/Transient%20Analysis/Transient%20Analysis.htm gleich im ersten Absatz: "Yes, you could formulate and solve the differential equations to get the response versus time, but SPICE is not a differential equation solver." Und tatsächlich, der korrekte mathematische Begriff wäre nicht "Differentialgleichung", sonder Differenzengleichung: https://de.wikipedia.org/wiki/Differenzengleichung Mir kommt es so vor, als wenn viele Leute den Unterschied zwischen Differenzengleichung und Differentialgleichung nicht verstehen und die Begriffe deshalb verwechseln. 2. die schwachbesetzte Matrixen ergeben Der Begriff "schwachbesetzte Matrix" hilf im vorliegenden Fall nicht weiter. Interessant ist das Verfahren, mit die Gleichungen für die Spannungsberechnungen aufgestellt werden. Beschrieben wird im Link dazu die Knotenanalyse: http://www.ecircuitcenter.com/SpiceTopics/Nodal%20Analysis/Nodal%20Analysis.htm Bezeichnender Weise ist die Matrix in dem Beispiel noch nicht einmal "schwach besetzt". 3.(da ist Excel nicht das richtige Werkzeug für) Um Zusammenhänge einfach und erfahrbar dar zu stellen, kann Excel ein nützliches Tool sein. Dazu bietet der Link auch gleich ein passendes Beispielfile an: http://www.ecircuitcenter.com/SpiceTopics/Transient%20Analysis/Transient_Simulation.xls
Für das Knotenpotentialverfahren gab es vor langer Zeit mal Basic- sowie auch Pascal- und Delphiprogramme. Teilweise mit der Eingabe von Textdateien und auch der Ausgabe als Text.Was davon allerdings zugänglich ist und noch einsetzbar, keine Ahnung. Pspice gabs schon für DOS, stark limitiert frei, die große Version nur mit Hardware-Kopierschutz (am LPT-Port ? ).
>Pspice gabs schon für DOS, stark limitiert frei, >die große Version nur mit Hardware-Kopierschutz (am LPT-Port ? ). Ich hatte auch schon mal davon gehört, dass Spice Open Source ist. Gerade eben bin ich zufälligerweise über einen Link in der Wikipedia zurück im MC-Netz gelandet. Da gibt es ja eine ausführliche Linkseite: http://www.mikrocontroller.net/articles/Schaltungssimulation
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.