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

Masse-Feder-System mit Fremdanregung

 

hosti
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 83
Anmeldedatum: 08.09.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.03.2012, 13:27     Titel: Masse-Feder-System mit Fremdanregung
  Antworten mit Zitat      
Hallo Leute,

nach langem melde ich mich wieder mit einem Problemchen.
Ich habe einen Zweimassenschwinger (ohne Dämpfung) von dem ich gerne die Resonanzfrequenzen und die Übertragungsfunktion hätte.

Diff-Glg:


<br />
m_K*x''_k+c1*x_k=-F-m_1*x''_A
<br />

<br />
m_A*x''_A+c2*x_A=c1*x_K
<br />

Übertragungsfunktion nach Laplace Transformation:


<br />
G(s)=(-m_A*s^2-c2)/(s^4*m_K*m_A+s^2*(m_K*c2+m_A*c1+m_K*c1)+c1*c2)
<br />


Habe den Zweimassenschwinger folgendermaßen als freien Schwinger implementiert.

Code:

%                                                     |x
% F-->m_K--|-- c1 --|--m_A--|-- c2 -- |x
%                                                     |x

clc
close all
clear all

m_K = 5*10^-3;
m_A = 4*10^-3;
c1 = 142616;  
c2 = 360000;


% Übertragungsfunktion:
% (-m_A*s^2-c2)/s^4*m_K*m_A+s^2*(m_K*c2+m_A*c1+m_K*c1)+c1*c2)

num = [-m_A, 0, -c2];
den = [m_K*m_A, 0, m_K*c2+m_A*c1+m_K*c1, 0, c1*c2];

Y = tf(num, den)


% Bodediagramm
[mag phase w] = bode(Y);
mag_vec = squeeze(mag);
 
disp('Resonanzfrequenzen in Hz:')
[peak_mag peak_loc] = findpeaks(mag_vec);

f1 = w(peak_loc(1))/(2*pi); % 1. Resonanzfrequenz in Hz
f2 = w(peak_loc(2))/(2*pi);  % 2. Resonanzfrequenz in Hz
disp(f1)
disp(f2)

figure
% Betrag
subplot(211) ;
semilogx(w/(2*pi),20*log10(mag(1,:))) ;
xlim([100 8000]);
title('Bode Diagramm') ;
xlabel('Frequenz in [Hz]') ;
ylabel('Amplitude in [dB]') ;
grid on;
hold on;
subplot(212) ;
semilogx(w/(2*pi),phase(1,:)) ;
xlim([100 8000]);
xlabel('Frequenz in [Hz]') ;
ylabel('Phase in [Grad]') ;
grid on;
hold off;

 




Nun wird aber die erste Masse m_K durch einen exponentiellen Sweep (F) der Form
Code:

% generiert Exponential Sine Sweep
f1 = 100;
f2 = 8000;
fs = 44100;
T = 1;
w1 = 2*pi*f1;
w2 = 2*pi*f2;
t = 0:1/fs:(T*fs-1)/fs;
t = t';
K = T*w1/log(w2/w1);
L = T/log(w2/w1);
sweep = sin(K.*(exp(t./L)-1));
 

angeregt.

Wie kann ich das implementieren damit ich hier die Übertragungsfunktion mit dieser Anregung bekomme? Wird diese Funktion bei der Laplace Transformation mitberücksichtigt? Steh momentan auf dem Schlauch und konnte auch nichts vergleichbares hier im Forum finden.

Danke für alle Ideen.

lg
hosti
Private Nachricht senden Benutzer-Profile anzeigen


hosti
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 83
Anmeldedatum: 08.09.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.03.2012, 14:28     Titel:
  Antworten mit Zitat      
Hallo,

im Prinzip würde es mich in erster Linie mal interessieren, welchen Einfluss eine aufgezwungene Kraft (hier ein exp. Sinus-Sweep mit konst. Pegel) auf die Übertragungsfunktion bzw. Berechnung der Übertragungsfunktion über Laplace Transformation. Dann natürlich die Implementation im Matlab.

Vielleicht der Einfachheit halber zuerst nur mit einem konstanten Sinus einer Frequenz.

<br />
F=F0*sin(wt)
<br />

Nach Laplace transformiert ergibt das ja

<br />
F0*w/(s^2+w^2)
<br />
oder?

Beim Exp. Sweep wäre das schon etwas komplizierter.

lg
hosti
Private Nachricht senden Benutzer-Profile anzeigen
 
DSP
Forum-Meister

Forum-Meister



Beiträge: 2.117
Anmeldedatum: 28.02.11
Wohnort: ---
Version: R2014b
     Beitrag Verfasst am: 06.03.2012, 15:06     Titel:
  Antworten mit Zitat      
Ehrlich gesagt verstehe ich dich nicht. Warum sollte die Anregung (Eingangssignal auf das System) einen Einfluss auf die Übertragungsfunktion haben? Die ändert sich doch nicht, egal was die Anregung ist.

Mit diesem Befehl kannst du eine beliebige Anregung u auf dein System simulieren.

Code:

lsim(sys,u,t)
 


Ebenfalls ist mir nicht klar, wie du bei einem SISO Modell nur die Masse m_k anregen willst. Das Eingangssignal wirkt auf das ganze System nicht nur auf einen Teil.
Private Nachricht senden Benutzer-Profile anzeigen
 
hosti
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 83
Anmeldedatum: 08.09.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.03.2012, 10:15     Titel:
  Antworten mit Zitat      
Habe mein System mit den Dämpfungsgliedern erweitert und korrigiert. Dabei ist die Übertragungsfunktion x2/F von Interesse.
Code:

%                   |--(d1)--|            |--(d2)--|#
%   F--> m_K--|           |--m_A--|           |#
%                   |-- c1 --|             |-- c2 --|#
%
%                           <--|                   <--|
%                              x1                     x2

clc
close all
clear all

% Massen
m_K = 5*10^-3;
m_A = 4*10^-3;

% Federkonstanten
c1 = 142616;  
c2 = 360000;

% ev. Dämpfung
d1 = 1; %0;
d2 = 5; %0;

% Übertragungsfunktion:

% x2/F
num = [-d1, -c1];
den = [m_K*m_A, m_K*d2+m_A*d1+m_K*d1, m_K*c2+m_A*c1+m_K*c1+d1*d2, c1*d2+c2*d1, c1*c2];


Y = tf(num, den)


% Bodediagramm
[mag phase w] = bode(Y);
mag_vec = squeeze(mag);
 
disp('Resonanzfrequenzen in Hz:')
[peak_mag peak_loc] = findpeaks(mag_vec);

f1 = w(peak_loc(1))/(2*pi); % 1. Resonanzfrequenz in Hz
f2 = w(peak_loc(2))/(2*pi);  % 2. Resonanzfrequenz in Hz
disp(f1)
disp(f2)

figure
% Betrag
subplot(211) ;
semilogx(w/(2*pi),20*log10(mag(1,:))) ;
xlim([100 8000]);
title('Bode Diagramm') ;
xlabel('Frequenz in [Hz]') ;
ylabel('Amplitude in [dB]') ;
grid on;
hold on;
subplot(212) ;
semilogx(w/(2*pi),phase(1,:)) ;
xlim([100 8000]);
xlabel('Frequenz in [Hz]') ;
ylabel('Phase in [Grad]') ;
grid on;
hold off;
 


Ohne einer Kraft von Außen und wenn ich die Dämpfung außen vor lasse, erhalte ich in meiner Übertragungsfunktion rein die Peaks an meinen Resonanzfrequenzen. Siehe Bild "2MF_Sys_ungedaempft.jpg" im Anhang.

Mit Dämpfung bekomme ich eine Übertragungsfunktion (siehe Bild "2MF_Sys_gedaempft.jpg") die meiner real gemessenen Funktion schon sehr nahe kommt.

DSP hat Folgendes geschrieben:
Ehrlich gesagt verstehe ich dich nicht. Warum sollte die Anregung (Eingangssignal auf das System) einen Einfluss auf die Übertragungsfunktion haben? Die ändert sich doch nicht, egal was die Anregung ist.


Wenn ich aber eine Kraft einbringe (Sinus-Sweep über die Frequenz an der Masse m_K) müsste ich doch zumindest eine Erhöhung in der Amplitude der Übertragungsfunktion erreichen, oder?

DSP hat Folgendes geschrieben:

Ebenfalls ist mir nicht klar, wie du bei einem SISO Modell nur die Masse m_k anregen willst. Das Eingangssignal wirkt auf das ganze System nicht nur auf einen Teil.


Das ist schon klar. Eingangssignal wird bei Masse m_K eingebracht, beeinflusst dann das Ganze System.

Habe im Netz was gefunden was ziemlich das ist was ich brauche, nur als Einmassenschwinger:
http://www.home.hs-karlsruhe.de/~ke.....epfedmas/SweepFedMas2.pdf
Hier wird geschrieben, dass es keine analytische Lösung der DGL. und somit keine Lösung mittels Laplace-Transformation gibt, bei einer Sinus-Sweep Erregung mit veränderlicher Frequenz.

lg
hosti

2MF_Sys_gedaempft.jpg
 Beschreibung:

Download
 Dateiname:  2MF_Sys_gedaempft.jpg
 Dateigröße:  125.72 KB
 Heruntergeladen:  1475 mal
2MF_Sys_ungedaempft.jpg
 Beschreibung:

Download
 Dateiname:  2MF_Sys_ungedaempft.jpg
 Dateigröße:  109.72 KB
 Heruntergeladen:  1458 mal
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 - 2025 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.