Forum: Analoge Elektronik und Schaltungstechnik Simulation mit ngspice findet Parameter nicht


von Befedo (Gast)


Angehängte Dateien:

Lesenswert?

Hallo liebe Community,

ich versuche gerade eine Katoden-Basis-Schaltung mit gEDA und dem 
ngspice Backend zu simulieren. Hierzu habe ich den Stromlaufplan mit 
gSchem gezeichnet und daraus die Netzliste generiert. Klappt alles 
wunderbar!

Versuche ich jetzt das ganze mit ngspice zu simulieren, bekomme ich 
folgenden Fehler:

/************************************************/
Original line no.: 0, new internal line no.: 62:
Undefined number [IK]
Original line no.: 0, new internal line no.: 62:
Cannot compute substitute
Original line no.: 0, new internal line no.: 64:
Undefined number [IG]
Original line no.: 0, new internal line no.: 64:
Cannot compute substitute

ERROR: fatal error in ngspice, exit(1)
/************************************************/

Die hier angesprochenen Parameter sind in dem Subcircuit 354V (siehe 
Anhang) definiert. Welcher auch in der Netzliste (ebenfalls Anhang) 
eingebunden wird.


Hat irgendwer ne Idee bzw. ein geübtes Auge und sieht wo mein Fehler 
liegt?


MfG Befedo

von Helmut S. (helmuts)


Angehängte Dateien:

Lesenswert?

Hallo Bafedo,

du hast das SPICE-Modell "versemmelt". Da sind B-Quellen drin und keine 
.param wie bei dir. ".param" definiert Konstanten. Die müssen vor dem 
Start der Simulation bekannt sein und behalten während der Simulation 
ihren Wert. B-Quellen sind "Behavioral Sources" also abhängige Quellen 
die mit Formeln beschrieben werden.

So sieht wohl das Original aus.

* Generic triode model: 354V
* Copyright 2003--2006 by Ayumi Nakabayashi, All rights reserved.
* Version 3.01, Generated on Wed Mar 22 17:22:32 2006
.SUBCKT 354V A G K
BGG   GG   0 V=V(G,K)+0.65601816
BEP   EP   0 V=URAMP(V(A,K))+1e-10
BEG   EG   0 V=URAMP(V(G,K))+1e-10
BM1   M1   0 V=(0.006476558*(URAMP(V(EP)-1e-10)+1e-10))^-0.39630014
BM2   M2   0 
V=(0.79101402*(URAMP(V(GG)+V(EP)/32.268063)+1e-10))^1.8963001
BP    P    0 V=0.0016633526*(URAMP(V(GG)+V(EP)/40.793288)+1e-10)^1.5
BIK   IK   0 V=U(V(GG))*V(P)+(1-U(V(GG)))*0.00098151348*V(M1)*V(M2)
BIG   IG   0 V=0.00083167629*V(EG)^1.5*(V(EG)/(V(EP)+V(EG))*1.2+0.4)
BIAK  A    K 
I=URAMP(V(IK,IG)-URAMP(V(IK,IG)-(0.00089321233*V(EP)^1.5)))+1e-10*V(A,K)
BIGK  G    K I=V(IG)
* CAPS
CGA   G    A 2p
CGK   G    K 2p
CAK   A    K 2p
.ENDS


In LTspice muss man ^ durch ** ersetzen. Dann läuft es aus dem Stand. 
Siehe angehängten Dateien. Die DC-Kurven stimmen exakt mit dem 
Datenblatt überein.

Mein Tipp: Mal einfach die Schaltung in LTspice zum simulieren. Das ist 
auf die Dauer wesentlich effektiver als alle Fallen wegen 
Inkompatibilität zu PSPICE und SPICE 3 zu umschiffen. LTspice ist 
wirklich sehr kompatibel zu diesen SPICE-Klassikern.

Gruß
Helmut

von Befedo (Gast)


Lesenswert?

Danke Helmut,

für die schnelle Antwort. Habs jetzt mit LT-Spice durchgespielt und es 
läuft wie erwartet.

MfG, Befedo

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
Noch kein Account? Hier anmelden.