Уравнение движения демпфера. Алгоритмический анализ задачи. Частота собственных колебаний системы

Страницы работы

Содержание работы

Пример 1

  • Дан гидравлический демпфер, представляющий собой поршень массой m, движущийся в жидкости. Уравнение движения демпфера имеет вид:

  • где n - приведенный коэффициент вязкого сопротивления вычисляется по формуле:

  • p – частота собственных колебаний системы вычисляется по формуле:

  • Алгоритмический анализ задачи
  • Исходными данными для решения задачи являются:
  • y0 –отклонение поршня демпфера от положения равновесия;
  • m – масса поршня;
  • с – жесткость пружины;

  • μ – динамический коэффициент вязкости жидкости;
  • D – диаметр цилиндра;
  • d – диаметр отверстия;
  • H – высота поршня;
  • z –число отверстий.

  • Для решения дифференциального уравнения в Matlab его нужно привести к системе из двух дифференциальных уравнений вида:

  • При реализации модели в системе Matlab нужно создать два М-файла, один из которых будет являться функцией, описывающей вид решаемой системы дифференциальных уравнений, а другой – программой, выполняющей расчет с обращением к этой функции и к стандартной функции для решения дифференциальных уравнений ode45.

  • Пусть М-файл функции, описывающей вид решаемой системы дифференциальных уравнений, называется vid2.m, а М-файл вызывающей программы – GD.m, тогда порядок выполнения расчетов в системе Matlab будет следующим.
  • Создать М-файл вызывающей программы – GD.m, в котором:

  • - создать вектор y0 начальных условий;
  • - получить вектор T и матрицу Y как результаты работы функции для решения дифференциальных уравнений ode45, причем Т содержит дискретные значения времени расчета модели, первый столбец матрицы Y – значения перемещения, второй столбец – значения скорости.
  • - построить графики функций перемещения и скорости по соответствующим столбцам матрицы Y в зависимости от вектора T.

  • Создать М-файл функции, описывающей вид решаемой системы дифференциальных уравнений, называется vid2.m, в котором:
  • - задать исходные данные для решения задачи;

  • - вычислить значения n и p;
  • - создать вектор ur2 из двух элементов, в котором описать систему дифференциальных уранений.
  • Запустить М-файл GD1 на выполнение, получить результаты расчетов по модели и графическую интерпретацию результатов в окнах отображения графической информации Figure 1 и Figure 2.

Основная программа

% Задание начальных условий y0=[0.05 0]; % Решение дифференциального уравнения [T,Y]=ode45(@vid2,[0 1],y0); % Графики функций перемещения и скорости демпфера figure(1) plot(T,Y(:,1)) figure (2) plot(T,Y(:,2))

Функция

function ur2=vid2(t,y); ur2=zeros(2,1); % Исходные данные m=2.73; H=0.05; c=3e3; D1=0.1; d=0.01; z=25; mu=6e-2; % Расчет приведенного коэффициента вязкого сопротивления

Функция

% и частоты собственных колебаний демпфера p=sqrt(c/m); n=4*pi*mu*H/(m*z)*(D1/d)^4; % Описание системы дифференциальных уранений ur2(1)=y(2); ur2(2)=-2*n*y(2)-p^2*y(1);

  • Создадим модель с проведением серии экспериментов по модели.
  • Выберем в качестве варьируемого параметра m –масса поршня.

% Задание начальных условий y0=[0.05 0]; M=[2.73,3,4,5]; for i=1:length(M), m=M(i); % Решение дифференциального уравнения diap=0:0.01:1 [T,Y]=ode45(@vid2,diap,y0,[],m);

R(:,i)=Y(:,1); end % Графики функций перемещения и скорости демпфера figure(1) plot(T,R(:,1:length(M))) MR=min(R); figure(2) plot(M,MR)

Символьная модель

syms y p n R t de de = 'D2y + 2*n*D1y + p^2*y' ; R = dsolve (de, 'y(0)=0.05, Dy(0) = 0') pretty(R) H=0.05; c=3e3; D11=0.1; d=0.01; z=25; mu=6e-2; m=2.73; t=str2num('t'); n=str2num('n');

p=str2num('p'); p=sqrt(c/m); n=4*pi*mu*H/(m*z)*(D11/d)^4; X=0:0.01:1; for i=1:length(X(1,:)),

t=X(i); Ut1(i)=subs(R); end plot(X,Ut1)

Пример 2

Электрическая цепь описывается передаточной функцией вида: K = 1/(p*tau + 1) tau – заданный коэффициент. Входной сигнал имеет вид: S(t)=A*exp(-α*t)

syms A alpha t st Stt a s p K tau Ut st = knf(t,A,alpha) Stt = laplace(st,t,p) K = 1/(p*tau + 1) U = Stt*K

Ut=ilaplace(U,p,t) Ut=simplify(Ut) A=str2num('A'); A=1; tau=str2num('tau'); tau=0.5;

alpha=str2num('alpha'); alpha=0.3; t=str2num('t'); X=0:0.01:5; for i=1:length(X(1,:)), t=X(i);

Ut1(i)=subs(Ut); st1(i)=subs(st); end subplot(2,1,2) plot(X,Ut1) subplot(2,1,1) plot(X,st1)

function sstt=knf(t,AF,BF); sstt=AF*exp( - BF * t );

Похожие материалы

Информация о работе