Forum: Analoge Elektronik und Schaltungstechnik Motor in LTSpice einbinden


von Martin M. (murmele)


Lesenswert?

Hallo,

ich wollte heute mal einen Motor in LTSpice einbinden, um diesen mal zu 
simulieren. Die Bibliothek für den Motor habe ich von hier:
http://www.gunthard-kraus.de/Spice_Model_CD/Mixed%20Part%20List/Spice-Models-collection/mix_misc.lib
Doch das Problem ist, dass ich nicht weiß, wie ich eine solche 
Bibliothek in LTSpice einbinden kann um diese dann zu benutzen, wie ich 
das Symbol bekomme um es in eine Schaltung einzubauen.

Kann mir jemand dies mal Schritt für Schritt erklären, dass ich diese 
einbinden kann?

von Helmut S. (helmuts)


Lesenswert?

Hallo MArtin,

Symbol Editor öffnen.
Zeichne ein Symbol mit 5pins im Symbol-Editor.
Im Felf "Netlist order" der pins 1 bis 5 eintragen.

pin NetlistOrder
p1 1
p2 2
..
shaft_angle 5


Im Feld "Value" vom Symbol trägst du bldcmtr_wye ein.
Im Feld "ModelFile" vom Symbol trägst du den Namen der Modelldatei ein.

Im Feld "SpiceLine/2" kannst du die default parameter des Subcircuits 
überschreiben.

Das Symbol jetzt speichern.

Sowohl das Symbol als auch das Modell in den Ordner des Schalplans 
kopieren.

Gruß
Helmut

*       Phase 3 coil --------+
*       Phase 2 coil ----+   |
*       Phase 1 coil +   |   |
*                    |   |   |
.subckt bldcmtr_wye  p1  p2  p3  shaft_speed  shaft_angle
*
* The motor parameters:
*   Most of these are invented without any real knowledge
*   of what typical values are.  A "working" motor results,
*   but it may not be very realistic.
*
+ params:
+   J= .30   ; moment of inertia of rotor (g*cm*sec*sec)
+   B= .36   ; Damping and eddy current losses (linear torque with 
speed)
*                   (g*cm*sec/rad)
+   F= .72   ; Friction/drag losses (constant torque losses) (g*cm)
+   D= 2.9   ; Magnetic detent torque (g*cm)
+   A= 2     ; Number of north poles on the rotor
+   P= 3     ; Number of phases (if you change this you need to add more
*                   windings to the motor subckt.)
+   CL=3mh   ; winding inductance (Henrys)
+   CR=6ohm  ; winding resistance (Ohms)
+   CC=.001uf; winding capacitance to ground (Farads)
+   CM=.5    ; adjacent winding mutual coupling factor
+   Cb=.12   ; Back EMF constant (Volt*sec/rev)
+   Ct=300   ; Torque constant (g*cm/amp)

von Martin M. (murmele)


Lesenswert?

Vielen vielen Dank für die Antwort.
Welche Endung hat die Modelldatei?
Müssen diese Zeilen

"x1 p1 ct p2 ct p3 ct shaft_speed  shaft_angle        bldcmtr
+ params:J={J} B={B} F={F} D={D} A={A} CL={CL} CC={CC} Cb={Cb}

.ends"

auch noch hinzugefügt werden?

Werde es nach dem Essen probieren melde mich dann nochmals. Danke!!

von Helmut S. (helmuts)


Lesenswert?

Dein Link zeigt  mxi_misc.lib an. Den kannst du nehmen oder einen neuen 
Namen geben.

Außerdem msolltest du alle Zeilen dei nicht benötigt werden löschen da 
dort teilweise PSPICE spezifische Befehle drin sind.



Das bleibt dann drin:


* Brushless Motor model
*
* This motor model uses equations from "Brushless Motor System Design 
and
...
...
...
* The mechanical model: torque created by this winding
Gtorque   0 shaft_speed VALUE = {Ct * I(Vsense) * V(factor) }

* The shaft angle function for this phase.
Efactor   factor 0 VALUE = {sin(A*V(shaft_angle) - (N-1)*(twopi/P))}
Cdummy    factor 0 10uf        ; force timestep control

.ends

von Martin M. (murmele)


Lesenswert?

Doch dann habe ich ja dreimal .subckt stehen. Einmal bldcmtr_wye, 
bldcmtr und motor_mech. Muss ich dann drei Symbole zeichnen?

von Helmut S. (helmuts)


Lesenswert?

Nein. Das Symbol brauchst du nur für den Top-level bldcmtr_wye. In 
diesem Top-level werden mit Xxx die anderen Subcircuits verwendet.

.subckt bldcmtr_wye ....
....
Xxx ....  bldcmtr ...
....
Xxx ....  motor_mech ...
....
.ends

von Martin M. (murmele)


Lesenswert?

Ok werd gleich ausprobieren. Danke

von Martin M. (murmele)


Angehängte Dateien:

Lesenswert?

So jetzt habe ich das Symbol mit dem Modell verknüpft, aber jetzt habe 
ich noch das Problem, wenn ich die Simulation starten will, dass ein 
Fehler auftritt: "Undefined subcircuit: motor_winding". Was ist damit 
gemeint?

von Helmut S. (helmuts)


Angehängte Dateien:

Lesenswert?

Hallo Martin,

Lösche bitte deine BLDC.asy und deine BLDC.sub falls du die in irgend 
ein Verzeichnis der LTspice Installation kopiert hast.
Nimm meine Dateien. Dazu einfach den zip-file in einem Verzeichnis 
entpacken. Kopiere mein .sub und .asy in jedes Schaltplanverzeichnis in 
dem du diesen Motor verwenden willst.

Gruß
Helmut

von Martin M. (murmele)


Lesenswert?

Vielen Dank Helmut, aber wieso braucht man hier die drei Ports die gegen 
Masse gehen?

von Helmut S. (helmuts)


Lesenswert?

Mit dem ersten Modell hatte ich Probleme.
Dann habe ich gesehen, dass es noch ein universelleren Modell gibt das 
letztendlich auch von deinem ursprünglichen Modell aufgerufen wird.
Mit dem hat die Simulation dann Erfolg. Bei dem jetzigen Modell stehen 
beide Enden jeder Wicklung zur Verfügung.

von Martin M. (murmele)


Lesenswert?

Achso, vielen vielen Dank für das Modell.

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.