WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Bewegungsgleichung Zweimassenschwinger Simulink Simscape

 

Iris.d
Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 17.03.20
Wohnort: Wien
Version: ---
     Beitrag Verfasst am: 17.03.2020, 18:22     Titel: Bewegungsgleichung Zweimassenschwinger Simulink Simscape
  Antworten mit Zitat      
Hallo liebes Matlab-Forum,

Ich muss folgende Aufgabe lösen:

“Vergleichen Sie die Ergebnisse der Bewegungsgleichungen eines freien und erregten Zweimassenschwingers in Simulink und Simscape sowie im Vergleich zu der Zustandsraumdarstellung. Welche der Varianten hat welche Vor- und Nachteile gegenüber der Anderen?“

Zum Start der Aufgabe soll ich das Modell, „Double Mass-Spring-Damper in Simulink and Simscape Matlab/Simulink 2018a.“ verwenden.

Ich habe folgende Fragen:

1. Ist es richtig, dass ich in dem „Double Mass-Spring-Damper in Simulink and Simscape Matlab/Simulink 2018a.“ die Dämpfer entfernen bzw. auf Null setzen muss? (In der Aufgabenstellung ist ja nur von einem Zweimassenschwinger in freiem und erregtem Zustand die Rede.)

2. Ich habe einen Code für „double-spring-dashpot“ online gefunden (s.u.). Ist es möglich diesen Code als Basis zu nehmen und an meine Aufgabenstellung anzupassen?

3. Für die Zustandsraumdarstellung brauche ich dann aber einen ganz anderen Code oder?

Vielen Dank schon jetzt für Eure Hilfe!

LG
Iris


Code:
% Caleb Williams (5/9/19)
% Calculates the position, velocity, and acceleration as a function of time
% of a system of carts connected by springs and dashpots. Euler's Method is
% used to solve the equations of motion numerically.
clear all; close all; clc;
tic
 
% Problem parameters
k1=50; % cart 1 spring constant (N/m)
k2=50; % cart 2 spring constant (N/m)
b1=3; % cart 1 viscous damping coefficient (kg/s)
b2=3; % cart 2 viscous damping coefficient (kg/s)
m1=5; % cart 1 mass (kg)
m2=5; % cart 2 mass (kg)
x10=1; % cart 1 initial position (m)
x20=-1; % cart 2 initial position (m)
v10=0; % cart 1 initial velocity (m/s)
v20=0; % cart 2 initial velocity (m/s)
 
% Set time step stuff
simTime=10; % simulation time (s)
tStep=0.001; % simulation time step
iterations=simTime/tStep;
t=0:iterations;
 
% Pre-allocate variables for speed and add initial conditions
x1=zeros(iterations,1);
x1(1,:)=x10;
x2=zeros(iterations,1);
x2(1,:)=x20;
v1=zeros(iterations,1);
v1(1,:)=v10;
v2=zeros(iterations,1);
v2(1,:)=v20;
a1=zeros(iterations,1);
a1(1,:)=-(b1*v10-b2*(v20-v10)+k1*x10-k2*(x20-x10))/m1;
a2=zeros(iterations,1);
a2(1,:)=-(b2*(v20-v10)+k2*(x20-x10))/m2;
 
% Solve the ODE's with Euler's Method
for n=2:(iterations+1)
  x1(n,:)=x1(n-1,:)+v1(n-1,:)*tStep; % cart 1 position
  x2(n,:)=x2(n-1,:)+v2(n-1,:)*tStep; % cart 2 position
  v1(n,:)=v1(n-1,:)+a1(n-1,:)*tStep; % cart 1 velocity
  v2(n,:)=v2(n-1,:)+a2(n-1,:)*tStep; % cart 2 velocity
  % Find cart accelerations
  a1(n,:)=-(b1*v1(n,:)-b2*(v2(n,:)-v1(n,:))+k1*x1(n,:)-k2*(x2(n,:)-x1(n,:)))/m1;
  a2(n,:)=-(b2*(v2(n,:)-v1(n,:))+k2*(x2(n,:)-x1(n,:)))/m2;
end
 
 
% Plot results
subplot(3,1,1)
hold on;
plot(t',x1,'r')
plot(t',x2,'m')
ylabel('Position (m)')
title('Position, Velocity, & Acceleration as a Function of Time')
legend('Cart 1','Cart 2')
subplot(3,1,2)
hold on;
plot(t',v1,'b')
plot(t',v2,'c')
ylabel('Velocity (m/s)')
legend('Cart 1','Cart 2')
subplot(3,1,3)
hold on;
plot(t',a1,'g')
plot(t',a2,'y')
ylabel('Acceleration (m/s^2)')
xlabel('time (iterations)')
legend('Cart 1','Cart 2')
 
toc
 
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden


Iris.d
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 17.03.20
Wohnort: Wien
Version: ---
     Beitrag Verfasst am: 25.03.2020, 12:39     Titel:
  Antworten mit Zitat      
Hallo. Hat keiner eine Idee? Crying or Very sad
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
fabianT
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 84
Anmeldedatum: 31.10.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.03.2020, 15:00     Titel:
  Antworten mit Zitat      
Hallo Iris,

1) Ich denke nicht. Was du meinst wäre eine freie ungedämpfte Schwingugn. Ist aber auch eigentlich irrelevant, da die Dämpfung ja nur ein Parameter im Modell ist, den du mit einem Klick auf Null setzen kannst.

2) Ich verstehe nicht wieso du den MATLAB Code verwenden willst. In der Beschreibung heißt es doch, dass du ein Simulink oder Simscape Modell verwenden sollst. Ich würde das Beispiel aus der Simscape Doku nehmen (https://www.mathworks.com/help/releases/R2019b/physmod/simscape/examples/double-mass-spring-damper-in-simulink-and-simscape.html). Das beinhaltet schon das Simulink und Simscape Modell.

3) Das Zustandsraummodell musst du dir noch selbst bauen, also die Differentialgleichung n ter Ordnung in n Differentialgleichungen 1ter Ordnung umstellen. Die Matrizen A, B, C, D, kannst du dann ganz einfach in einen state space Block eintragen.

Ich denke dein Prof will auf die Unterschiede der kausalen Modellierung (Simulink) vs akausale Modellierung (Simscape) hinaus.
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.