Forum: Analoge Elektronik und Schaltungstechnik LTSpice verliert Referenz von eigenen Modellen


von Daniel H. (stud_xy)


Lesenswert?

Hi,

irgendwie verliert LTSpice nach einer Zeit die Referenz für von mir 
erstellte Modelle. Und zwar habe ich eine Schaltung gebaut, mir über 
Hierarchy ein Symbol erstellen lassen, es modifiziert und beides im 
selben Ordner gespeichert. (So wie es im Tutorial auf deren Seite 
gezeigt wird.) Das funktioniert direkt im Anschluss prima und ich kann 
das Symbol auch über den Komponentenbutton in eine andere Schaltung 
einfügen.

Aber nach ein paar Stunden geht das nicht mehr. Bei Rechtsklick auf das 
erstellte Symbol wird mir die .asc und .asy Datei angezeigt, ich kann 
sie auch öffnen und alles ist so wie es sein soll. Wenn ich die 
Schaltung aber simulieren will sagt er: Missing schematics of the 
hierarchy. Trouble generating Netlist.

Gestern abend habe ich ein paar Schaltungen in Symbole gepackt, heute 
morgen ging nichts mehr. Also nochmal alles gelöscht, neue Symbole 
generiert, es lief. Jetzt wollte ich es eben nochmal testen und es geht 
wieder nichts. Was mache ich falsch?

Edit: Wenn ich beim Symbolattribut Prefix ein X eintrage und den 
Dateinamen unter Spicemodel, ändert sich die Fehlermeldung in "Unknown 
subcircuit called in ..."

Edit edit: Ok, anscheinend muss die Schaltung, die die Blöcke verwendet, 
im selben Ordner sein. Das ist doof. Wie kann ich das ändern?

: Bearbeitet durch User
von TomA (Gast)


Lesenswert?

Hallo Daniel,

LTSpiceXVII führt die Bibliotheken doppelt. einmal im 
Installationsverzeichnis und einmal im Benutzerverzeichnis 
(C:\Users\.......\Documents\LTSpiceXVII). Für die Simulation benutzt es 
die Bibliotheken
des Benutzerverzeichnis. Die Bibliotheken des Installationsverzeichnis 
dienen als Backup. Falls LTSpice ein Problem mit einer seiner 
Arbeitsbibliotheken erkennt, werden diese und die Programmbeispiele 
automatisch durch die aus dem Installationsverzeichnis ersetzt. 
Änderungen in den Bibliotheken müssen deshalb in beiden Verzeichnissen 
durchgeführt werden. Sind nur die Libs des Benutzerverzeichnis geändert, 
werden sie beim nächsten restaurieren durch die Ursprünglichen 
überschrieben. Eine andere Möglichkeit ist es die Änderungen nur im 
Installationsverzeichnis durchzuführen und die des Benutzerverzeichnis 
zu löschen, dann restauriert LTSpice die Arbeitslibs mit den Geänderten 
automatisch.

Gruß. Tom

von Abdul K. (ehydra) Benutzerseite


Lesenswert?

Und wozu macht das LTspice neuerdings? Früher hatte es nur eine Lib.

von Jack (Gast)


Lesenswert?

Abdul K. schrieb:
> Und wozu macht das LTspice neuerdings? Früher hatte es nur eine
> Lib.

LTSpice hatte die klassische Windows-Krankheit: Statt 
benutzerspezifische Konfigurationsdateien per Benutzer zu speichern 
wurden sie im \Programme\LTC\... Verzeichnis gespeichert. Dieses 
idiotische, unter Windows weit verbreitete Verhalten (von Microsoft 
vorgemacht) macht es unmöglich, dass eine Software von mehreren 
Benutzern am gleichen Rechner oder gar per Share über das Netzwerk ohne 
gegenseitige Störung benutzt werden kann.

Seit ein paar Jahren rudert Microsoft zurück und versucht den Mist 
langsam zurückzudrängen. LTSpice Verhalten ist eine brutale Überreaktion 
darauf. Statt ENDLICH richtige Suchpfade für Bibliotheken einzuführen 
wird halt herumkopiert, weil man nichts von Microsofts neuem Weg hält.

von Abdul K. (ehydra) Benutzerseite


Lesenswert?

Bislang hatte der Author es immer KISS gemacht. Versteh ich nicht so 
recht. Aber danke dir trotzdem.

von Helmut S. (helmuts)


Lesenswert?

> Statt ENDLICH richtige Suchpfade für Bibliotheken einzuführen
wird halt herumkopiert, weil man nichts von Microsofts neuem Weg hält.

In LTspiceXVII kann man eigene Verzeichnisse angeben.

Control Panel -> ...

von Abdul K. (ehydra) Benutzerseite


Lesenswert?

Ja, es legt aber trotzdem dieses Gedöhns an.

von Daniel H. (stud_xy)


Lesenswert?

Hi TomA,

ich habe den Ordner mit meinen Schematics und Blöcken aus meinem 
Nutzerverzeichnis gelöscht, aber vorher ins Installationsverzeichnis 
kopiert. Anschließend LTSPice als Admin gestartet und synchronisieren 
lassen. Der Ordner wurde tatsächlich im Nutzerverzeichnis neu erstellt, 
jedoch funktionieren die Blöcke weiterhin nur, wenn das neue Draft im 
selben Ordner ist.

Kann man die selbst erstellten, hierarchischen Blöcke überhaupt 
"ordnerunabhängig" verwenden? Bis jetzt bin ich in keinem Tutorial 
darüber gestolpert.

von Helmut S. (helmuts)


Lesenswert?

Hierarchische Schaltpläne
Alle Symbole und deren dazugehörigen Schaltpläne müssen in dem Ordner 
des Top-Level Schaltplanes sein.

von TomA (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Daniel,

da bin ich leider überfragt. Bei mir ist die Lage der Schematics egal, 
die können irgendwo auf der Festplatte liegen. Vielleicht hilft es den 
Bibliothekspfad im Control-Panel einzustellen, wie Helmut schon 
erwähnte.

Im Anhang zwei Bilder meines Control-Panel, ich musste dort nichts 
ändern. Bei mir läuft LTSpice allerdings auf Linux unter dem Windows 
Simulator "Wine". Erinnere mich allerdings, dass ich unter Windows auch 
nichts ändern musste.

Wünsche dir viel Erfolg. Tom

von Abdul K. (ehydra) Benutzerseite


Lesenswert?

Hat vielleicht was mit UAC zu tun.

von Daniel H. (stud_xy)


Lesenswert?

Helmut S. schrieb:
> Hierarchische Schaltpläne
> Alle Symbole und deren dazugehörigen Schaltpläne müssen in dem Ordner
> des Top-Level Schaltplanes sein.

Hm, das ist ja doof. Weißt du, wie ich meine Blöcke unabhängig mache?
Um meinem Ordnungswahn gerecht zu werden möchte ich meine Blöcke in 
einem Ordner und Schaltungen, die diese verwenden, in einem anderen 
haben.

von Abdul K. (ehydra) Benutzerseite


Lesenswert?

LTspice kann das nicht. Ich sehe da auch ein Organisationsproblem. Aber 
das mußt du selber wissen.
NTFS unterstützt symbolische Links. Damit könnte man eventuell LTspice 
vorgaukeln, die Dateien wären in einem Ordner.

von Daniel H. (stud_xy)


Lesenswert?

Abdul K. schrieb:
> LTspice kann das nicht.

Anscheinend doch.

TomA schrieb:
> Bei mir ist die Lage der Schematics egal,
> die können irgendwo auf der Festplatte liegen.

Die Frage ist halt, wie.

von Helmut S. (helmuts)


Lesenswert?

Abdul K. schrieb:
> LTspice kann das nicht. Ich sehe da auch ein Organisationsproblem. Aber
> das mußt du selber wissen.
> NTFS unterstützt symbolische Links. Damit könnte man eventuell LTspice
> vorgaukeln, die Dateien wären in einem Ordner.

Ich habe das gerade mal in WIN7 probiert. es funktioniert.

Ein cmd Fenster öffnen.
In das Schaltplanverzeichnis des Top-level Schaltplans wechseln.
> mklink /H mysym.asy "C:\....\....\mysym.asy
> mklink /H mysym.asc "C:\....\....\mysym.asc

Im Verzeicnis des Top-level Schaltplanes sind jetzt diese zwei Links. Im 
Top-level Schaltplan dann wie gewohnt das Symbol aus dem Verzeichnis des 
Top-level Schaltplans benutzen.

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.