Forum: PC-Programmierung gEDA: ngspice findet model nicht


You were forwarded to this site from EmbDev.net. Back to EmbDev.net
von wucherpfennig (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

Ich würde gerne eine einfache Sourceschaltung simulieren, doch leider 
funktioniert das Zusammenspiel zwischen gschem und ngspice nicht...

Ich zeichne den Schaltplan mit gschem und übersetzte ihn mit
1
gnetlist -g spice-sdb -o fet_labor_1.net fet_labor_1.sch

was auch funktioniert. Lade ich nun die Netzliste in ngspice, erhalte 
ich folgenden Fehler:
1
Error on line 22 : mq2 ua 3 0 2n7002
2
Unable to find definition of model  - default assumed

Die Netzliste ist folgende:
1
* gnetlist -g spice-sdb -o fet_labor_1.net fet_labor_1.sch
2
*********************************************************
3
* Spice file generated by gnetlist                      *
4
* spice-sdb version 4.28.2007 by SDB --                 *
5
* provides advanced spice netlisting capability.        *
6
* Documentation at http://www.brorson.com/gEDA/SPICE/   *
7
*********************************************************
8
*vvvvvvvv  Included SPICE model from ./models/fet/2N7002.mod vvvvvvvv
9
.SUBCKT 2N7002 3 4 5
10
* Nodes        D G S
11
M1 3 2 5 5 MOD1
12
RG 4 2 343
13
RL 3 5 6E6
14
D1 5 3 DIODE1
15
.MODEL MOD1 NMOS VTO=2.474 RS=1.68 RD=0.0 IS=1E-15 KP=0.296
16
+CGSO=23.5P CGDO=4.5P CBD=53.5P PB=1 LAMBDA=267E-6
17
.MODEL DIODE1 D IS=1.254E-13 N=1.0207 RS=0.222
18
.ENDS 2N7002
19
*^^^^^^^^  End of included SPICE model from ./models/fet/2N7002.mod ^^^^^^^^
20
*
21
*==============  Begin SPICE netlist of main design ============
22
MQ2 Ua 3 0 2N7002 
23
V4 2 0 24
24
Ri Ue 4 50k  
25
R1 1 Ua 130k  
26
C4 1 0 100n  
27
C2 4 3 16n  
28
R3 1 3 1M  
29
RD 2 Ua 1.1k  
30
R2 1 0 27k  
31
Ve Ue 0 sin 0 0.1 10
32
.end

Bin um jede Hilfe dankbar.

Freundliche Grüsse

wucherpfennig

von Salewski (Gast)


Lesenswert?

wucherpfennig schrieb:
> Bin um jede Hilfe dankbar.

Nun ja. Hier gibt es ja nicht gerade viele gEDA Nutzer.
Verwendest Du denn auch sonst gEDA/PCB, oder geht es dir lediglich um 
Simulation? Für letzteres wäre es womöglich weniger problematisch 
LTSpice zu verwenden, womöglich auch Qucs. Und wenn gEDA, dann eventuell 
eher gnucap. Soweit ich weiß, wird an ngspice nicht mehr 
weiterentwickelt -- gnucap war dieses Jahr aber immerhin bei Googles 
Summer of Code dabei, wobei ich noch immer nicht weiss, was da 
rausgekommen ist...

Ich habe mit ngspice vor einigen Jahren nur mal etwas herumgespielt -- 
wenn es dir halbwegs erst ist, solltest Du dich in die gEDA Mailingliste 
eintragen und dort Deine Fragen stellen.

Das einzige, was mir zu Deinem Problem so spontan einfällt: Hast Du 
womöglich mal den Modellnamen mit, und einmal ohne die Endung .mod 
angegeben?

von Salewski (Gast)


Lesenswert?

Wobei mir noch einfällt:
Komponentennamen, die mit einem Buchstaben enden, können problematisch 
sein, jedenfalls wenn man mit gnetlist eine Netzliste für PCB erzeugt. 
Irgendetwas war da, entweder wenn das letzte Zeichen des Namens ein 
kleiner oder großer Buchstabe war.

von wucherpfennig (Gast)


Lesenswert?

Hi Salewski,

Danke für die schnelle Antwort. Gnucap hab ich hier auch auf meinem 
Rechner, habs soeben mal probiert und er spuckt mir zumindest keine 
Fehlermeldungen mehr aus...

Die berechneten Werte stimmen aber hinten und vorne nicht. Da ich die 
Schaltung bereits im Labor gesteckt und ausprobiert habe, weiss ich, 
dass die  (berechneten) Bauteilwerte als solches stimmen. Nur stimmt 
jetzt die Simulation hinten und vorne nicht.

Ua z.B bleibt konstant bei ~23V und die Gatespannung wird nicht 
vorgespannt...

Irgendwo liegt hier noch der Hund vergraben...

Gruss

wucherpfennig

von Stefan Salewski (Gast)


Lesenswert?

wucherpfennig schrieb:
> Irgendwo liegt hier noch der Hund vergraben

Na ja, ursprünglich ging es ja um die Fehlermeldung bzw. deren Deutung. 
Wenn die Simulationsergebnisse stimmen sollen, muss man wohl noch 
einiges andere beachten. War es nicht so, das bei Spice (ngspice) MEG 
für 1e6 steht, und m wie M für milli? Wie gesagt, Mailingliste.

von Helmut S. (helmuts)


Lesenswert?

Da du ein ".subckt" für den Mosfet hast muss es in der Netzlist X... 
heißen.

1MegaOhm muss in SPICE 1MEG heißen. Das sollte der SPICE-Netlist 
Generator aber schon selbst beherrschen.

MQ2 Ua 3 0 2N7002
R3 1 3 1M

->

XMQ2 Ua 3 0 2N7002
R3 1 3 1MEG


Nimm LTspice. LTspice läuft problemlos unter WINE in Linux falls du 
Linux verwendest.

von wucherpfennig (Gast)


Angehängte Dateien:

Lesenswert?

Stefan und Helmut, vielen Dank für die Hilfe.

Um nicht noch mehr Zeit zu verschwenden, habe ich die Schaltung nun mit 
LTspice simuliert. Läuft wunderbar und stimmt auch mit den Messwerten 
überein.

Leider funktioniert die Simulation mit den aus den Repos 
bereitgestellten Packeten unter Linux nicht, oder ich bin zu doof dazu. 
Mit LTspice hat es nicht einmal 5min gedauert (wusste erst nicht wie ich 
auf die schnelle ein Bildexport machen kann) und es hat funktioniert. 
Schade, dass dem unter Linux nicht so ist.

Nochmals danke euch beiden!

Freundliche Grüsse

wucherpfennig

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.