Hallo Leute, ich habe folgendes Problem: Ich möchte einen Linearmotor, der senkrecht aufsteht (d.h. Bewegung in z-Achse) simulieren. Nun ist es wie folgt: Ich brauche einen bestimmten Strom, um den Motor überhaupt mal in Bewegung zu versetzen, d.h. um das Eigengewicht Fo zu kompensieren brauche ich in dem Falle 6 A. Um nun den Läufer des Motors auf 1 mm höher zu bewegen brauche ich 1 A, 2 mm 2 A usw, d.h. alles ist hier nahezu linear. Nun meine Frage: Wenn ich den Motor mit 7 Ampere bestrome, dann bewegt sich der Läufer um 1 mm nach oben und behält auch dort seine Position. Bestrome ich den mit 10 Ampere, dann bewegt sich der Motor 4 mm nach oben und behält dort seine Position. In der Simulation klappt das aber nicht. Dort wird permanent intergriert, was nicht dem Verhalten in der Realität entspricht. Wenn ich z.B. 8 Ampere draufgebe, dann simuliert der mir mit der Zeit eine Höhe von 10 mm was aber nicht stimmt, daher meine Frage: Was fehlt noch am Modell ? Wenn ihr fragen habt, so lasst mich es wissen...
Ich denke das Problem liegt in der Idee, dass die Höhe linear Abhängig vom Strom ist. Wenn du eine genug hohe Kraft (F_z>F_0) durch den Strom erzeugst, dann hast du eine Konstante Beschleunigung >0, egal ob nun deine Höhe erreicht ist oder nicht. Deine Integratoren integrieren nun deine Beschleunigung bis ins unermessliche, doch die Saturation lässt maximal 10 passieren, was aber nicht heisst, dass x nicht ->infty geht. Du brauchst also ein feedback für deinen Strom, um ihn bei der richtigen Höhe so einzustellen, dass er gerade F_0 kompensiert. Gruss Bert
:
Bearbeitet durch User
Ich habe dir mal das ganze simuliert. Der Motor in meinem Simulink Modell entspricht gerade deiner Schaltung. Dein Modell stimmt schon. Ein Linearmotor alleine hat aber noch keinen Regler, wenn du ihm genug strom gibst fährt er einfach soweit es geht. Den PID Regler musst du halt nach der Ziegler Nichols Methode noch anpassen. Edit: Die Vorgabe hier ist nicht der Strom sondern der Position. Der Plant Input entspricht dann dem Strom, der evtl noch mit einer Saturation begrenz werden sollte.
:
Bearbeitet durch User
vielen lieben Dank für deine Antwort .... Grade einen Regler wollte ich vermeiden, aus einem Grund: in realen Aufbau verwende ich auch keinen Regler.... Daher müsste doch die Simulation vll irgendwie ohne Regler funktionieren? Den Regler auslegen ist kein Problem....aber wie gesagt, Regler wollte ich vermeiden...
Wenn du keinen Regler im Linearmotor verwendest, dann musst du zumindest für den Motor das Bewegungsprofil vorgeben, das ganze ist aber sehr Störanfällig, den z.B eine Abweichung der vorgegebenen Masse führt schon zu einer starken Positionsabweichung. Ich empfehle für den richtigen Linearmotor einen Regler zu verwenden, zumindest wenn du etwas damit machen willst und ihn nicht nur zum testen verwendest. Gruss Hans
Bert Siegfried schrieb: > Wenn du keinen Regler im Linearmotor verwendest, dann musst du zumindest > für den Motor das Bewegungsprofil vorgeben, das ganze ist aber sehr > Störanfällig, den z.B eine Abweichung der vorgegebenen Masse führt schon > zu einer starken Positionsabweichung. Ich empfehle für den richtigen > Linearmotor einen Regler zu verwenden, zumindest wenn du etwas damit > machen willst und ihn nicht nur zum testen verwendest. > > Gruss Hans Hmm, ok, ich danke erst mal für deine Antwort lieber Bert.
Auch wenn du den motor nicht regelst, ergibt sich ein "Regelkreis" aus der physikalischen Reaktion des Motors. Wenn du das Verhalten des echten Motors simulieren willst, musst du auch die Motorstrecke modellieren. Die ist dann später kein Teil deiner Motorsteuerung, aber für die Sumulation brauchts nunmal Regler und Strecke.
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.