振動理論中相關代碼

clc;

clear all;

close all;

%% 

m=1;     % kg     質量

c=0.1;   % N·s/m 阻尼

k=2.5;   % N/m    剛度

x0=0.025;% m      初始位移

v0=0;    % m/s    初始速度

%% 時域信號

zeta=c/2/m/sqrt(k/m);      %阻尼比

wn=sqrt(k/m);              %無阻尼固有頻率

wd=sqrt(1-zeta*zeta)*wn;   %有阻尼固有頻率

f=wd/2/pi;

t=linspace(0,60,1000);     %時間

xt=exp(-zeta*wn*t) .* (x0*cos(wd*t) + (v0+zeta*wn*x0)/wd*sin(wd*t))*1000; %自由振動穩態信號 mm

figure(1);

plot(t,xt,'r-','linewidth',1.5)

grid on

title('\fontsize{10}\fontname{Times New Roman}Damped Response of a Single Degree of Freedom System');

xlabel('\fontsize{10}\fontname{Times New Roman}\it Time \rm / s');

ylabel('\fontsize{10}\fontname{Times New Roman}\it Displacement \rm / mm');

legend('Time domain response of SDF system');

%% 柔度頻域分析 H(s)=X(s)/F(s)

num=[1/m];      %傳遞函數分子

den=[1,c/m,k/m];%傳遞函數分母

H=tf(num,den);  %傳遞函數

%bode圖設置

figure(2);

P=bodeoptions;    % bode圖形參數  運行 ctrlpref  命令查看

P.Grid='on';      %開網格

P.FreqUnits= 'Hz'; 

P.XLim={[0.1 1]}; %定義橫坐標為 0.1~1Hz

P.MagUnits= 'dB'; %縱坐標為dB 絕對值為 abs

bode(H,P);        %繪制柔度傳函波特圖

h = findobj(gcf,'type','line');%繪制波特圖線型參數

set(h(3),'linewidth',1.5);

set(h(4),'linewidth',1.5);

set(h(3),'color','r');

set(h(4),'color','b');

set(h(3),'linestyle','--');

%% 隔振系統分析 位移傳函  T(s)=X(s)/Y(s)

num1=[c/m,k/m];     %傳遞函數分子

den1=[1,c/m,k/m];   %傳遞函數分母

T=tf(num1,den1);    %傳遞函數

figure(3);          

P1=bodeoptions;     % bode圖形參數  運行 ctrlpref  命令查看

P1.Grid='on';       %開網格

P1.FreqUnits= 'Hz'; %定義橫坐標為 0.1~10Hz

P.XLim={[0.1 10]};  

P1.MagUnits= 'dB'; %縱坐標為dB 絕對值為 abs

bode(T,P1);        %繪制位移傳函波特圖

h = findobj(gcf,'type','line');%繪制波特圖線型參數

set(h(3),'linewidth',1.5);

set(h(4),'linewidth',1.5);

set(h(3),'color','r');

set(h(4),'color','r');

set(h(3),'linestyle','--');

h=gcf;

title('位移傳遞函數');


以下內容為付費內容,請購買后觀看

振動理論文檔中的相關代碼

App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP