Механика материалов конструкции
Исходные данные
Параметры нагружения:
Линейные размеры:
Угловые размеры:
Жёсткости:
Характеристики материала:
Постановка задачи:
Стержневая система, моделирующая конструкцию
робота-манипулятора, нагружена сосредоточенными силами и
,
приложенными к захвату (точка М) и распределённой нагрузкой ,
действующей на стержень 1.
Предполагается, что усилие в стержне 3 вызывает
его растяжение (сжатие), остальные элементы конструкции находятся в условиях
поперечного изгиба.
Упругие свойства приводов моделируются пружинами
с линейной жёсткостью - в точке C,
и угловой жёсткостью - в точке O.
Определить:
-Размеры поперечных сечений стержней из расчёта
на прочность.
-Деформации элементов конструкции, а также
линейные и
угловое перемещения
захвата.
Построить матрицу податливости системы,
характеризующую влияние нагружения захвата на его линейные перемещения с
помощью интеграла Мора и сравнить полученный результат с результатом вычислений
графами. Решение:
1. Уравнения равновесия для определения
реакций связей.
Разбиваем систему на отдельные тела и составим
для них уравнения статики в базовой системе координат oyz.
Для первого тела:
где
сечение стержень
деформация захват
Для второго тела:
Для третьего тела:
Для ползуна:
2. Распределение изгибающих моментов для
стержней 1, 2
Перепроектируем силы на локальные оси координат,
связанные со стержнями 1 и 2. При этом определяем составляющие в точках О, А, М,
направленные вдоль осей и (растяжением/сжатием
данных стержней пренебрегаем):
Проекция сил, приложенных к точке O,
на ось (см.
рис. 2):
Проекция сил, приложенных к точке A,
на ось (см.
рис. 2):
Проекция сил, приложенных к точке A,
на ось (см.
рис. 3):
Проекция сил, приложенных к точке M,
на ось (см.
рис. 3):
Определим распределение изгибающих моментов для
стержня 1 по рис. 6, рассматривая равновесие левой от сечения 1 части стержня.
Определим распределение изгибающих моментов для
стержня 3 по рис. 7, рассматривая равновесие левой от сечений 2, 3 частей
стержня.
Здесь функция Хевисайда ,
Далее построим эпюры изгибающих моментов для
стержней 1, 2 и определим наибольшие по модулю значения моментов для каждого из
этих стержней (см. по программе).
. Расчёт на прочность стержней 1, 2, 3
Условие при расчёте на прочность при поперечном
изгибе имеет вид:
, где
- момент
сопротивления сечения, - допускаемое
напряжение.
Примем, что изгибающиеся стержни 1 и 2 имеют
прямоугольное сечение с размерами и
(ширинавысота).
При чём геометрические размеры этих сечений определяются из следующих
соотношений:
, .
, где
- момент инерции
сечения.
,
,
Условие при расчёте на прочность при
растяжении/сжатии имеет вид:
, где
Учитывая, что для второго стержня ,
имеем:
Примем, что стержень 3 имеет сечение в форме
кольца с диаметром и толщиной стенки .
Задаваясь толщиной стенки , определим диаметр
из соотношения
.
4. Определение деформаций упругих тел
Для определения упругих перемещений точек
стержня 1 воспользуемся моделью изгиба стержня с заделкой в точке O.
Дифференциальное уравнение изгиба первого
стержня в общем виде:
Дважды проинтегрировав, получим:
Постоянные интегрирования и
определим
из граничных условий для данной модели изгиба:
Получим .
Очевидно, перемещение точки А, связанное с
изгибом стержня 1 равно
Для второго стержня в качестве расчётной модели
примем изгиб двухопорной балки с шарнирными закреплениями в точках B
и A.
Дифференциальное уравнение изгиба третьего
стержня в общем виде:
Дважды проинтегрировав, получим:
Постоянные интегрирования и
определим
из граничных условий для данной модели изгиба:
Получим
.
Очевидно, перемещение точки M,
связанное с изгибом стержня 2 равно
Растяжение/сжатие третьего стержня
рассчитывается как .
Необходимо учесть также соотношения для упругой
силы линейной пружины:
, где
- линейное
перемещение точки С по оси y.
и для упругого момента угловой пружины:
, где -
угловое перемещение локальной системы координат oy1z1.
. Определение линейных и угловых перемещений
элементов системы
В соответствии с графом ,
кинематические соотношения для линейных перемещений точек и угловых перемещений
тел имеют вид: (по рис. 1, 8):
Здесь
и -
вектора линейных перемещений точки M
захвата и точки О соответственно,
- вектор линейного
перемещения точки М, связанный с деформацией стержня 2,
- вектор линейного
перемещения точки А, связанный с деформацией стержня 1,
, -
угловые перемещения локальных систем координат oy1z1
и oy2z2.
В проекциях на базовые оси координат получим:
Аналогичное соотношение для графа имеет
вид:
Здесь
- вектор линейного
перемещения точки С,
- вектор линейного
перемещения точки B, связанный с
деформацией стержня 3,
- угловое
перемещение стержня 3.
Проектируя векторные соотношения, получим:
Выражения для получаем
при перепроектировании соответствующих относительных (локальных) перемещений из
локальных систем координат в базовую.
Угловое перемещения захвата М определим так:
Получили систему уравнений 1 - 20 замкнутую
относительно следующих неизвестных (20 параметров):
Решим полученную систему уравнений, выразив
неизвестные через параметры .
Теперь, положив вычислим
деформации элементов конструкции при заданных исходных нагрузках.
Получим:
Также требуется вычислить деформации при .
. Расчёт матрицы податливости
Рассчитаем матрицу податливости через интеграл
Мора, для чего убираем все внешние нагрузки и прикладываем единичную силу вдоль
оси y (первое
нагружение, т.е. решаем систему уравнений статики для значений ).
Снова убираем все внешние нагрузки и
прикладываем единичную силу вдоль оси z
(второе нагружение, т.е. решаем систему уравнений статики для значений ).
Величины ,
рассчитанные для второго нагружения будем обозначать индексом 2, например .
Элементы матрицы податливости рассчитываются
следующим образом:
Из формул нетрудно видеть, что матрица
податливости должна быть
симметричной и иметь на главной диагонали только положительные элементы.
Вычислив, получим:
Аналогичный результат можно получить, исследуя
решение системы уравнений 1 - 20. Если в выражениях для линейных перемещений
точки М (см.
программу) положить , то матрица
коэффициентов перед , и
будет матрицей податливости системы.
Приложение
Расчёт в математическом пакете Maple
9.0
> restart;
> Heaviside(0):=0:
> # Уравнения равновесия для определения
реакций связей:
> sys_stat:=
>
Y[A]+Y[O]+a*r[1]^2/2*cos(theta[1]-pi/2),
>
Z[A]+Z[O]+a*r[1]^2/2*sin(theta[1]-pi/2),
>
M[upr]+r[1]*R[Oy[1]]+a*r[1]^3/3,
> P[y]-Y[A]+R[B]*cos(theta[3]),
> P[z]-Z[A]+R[B]*sin(theta[3]),
>
-2*r[2]*P[z]*cos(pi-theta[2])-2*r[2]*P[y]*sin(pi-theta[2])+[2]*R[B]*cos(theta[2]-pi/2-theta[3]),
> R[B]=R[C],
> N[C]-R[C]*sin(theta[3]),
> F[upr]-R[B]*cos(theta[3]);
> # Распределение изгибающих моментов для
стержней 1,2:
> # Перепроектируем силы на локальные оси
координат:
>
R[Oy[1]]:=Y[O]*cos(theta[1]-pi/2)+Z[O]*sin(theta[1]-pi/2);
>
R[Ay[1]]:=Y[A]*cos(theta[1]-pi/2)+Z[A]*sin(theta[1]-pi/2);
>
R[Ay[2]]:=-Y[A]*cos(theta[2]-pi/2)-Z[A]*sin(theta[2]-pi/2);
>
P[y[2]]:=P[y]*cos(theta[2]-pi/2)+P[z]*sin(theta[2]-pi/2);
> # Уравнения изгибающих моментов при
рассмотрении равновесия левой части для каждого из изгибающихся стержней:
>
M[x[1]]:=M[upr]+z[1]*R[Oy[1]]+a*z[1]^3/6;
>
M[x[3]]:=R[B]*z[2]*cos(theta[2]-pi/2-theta[3])+(z[2]-r[2])*R[Ay[2]]*Heaviside(z[2]-r[2]);
> # Исходные данные:
> pi:=Pi:
k:=1.36*10**5;
c:=2.743392*10**4;:=2.*10**11;[max]:=2.*10**8;[1]:=0.82;[2]:=0.45;[3]:=0.98;[1]:=1.6;[2]:=2.9;[3]:=0.4;
> # Решение уравнений статики:
>
solve({sys_stat},{Y[A],Z[A],Y[O],Z[O],N[C],M[upr],F[upr],R[B],R[C]});
> assign(%);
> # Построим эпюры изгибающих моментов:
> P[y]:=118;
P[z]:=236;:=472;
>
plot(M[x[1]],z[1]=0..r[1],color=blue,thickness=3,title="Эпюра изгибающих
моментов \n для первого стержня");
>
plot(M[x[3]],z[2]=0..3*r[2],color=blue,thickness=3,title="Эпюра изгибающих
моментов \n для второго стержня");
> # Расчёт на прочность стержней 1,2,3:
> # Определим наибольшие параметры
нагружения:
>
maxM[1]:=maximize(abs(M[x[1]]),z[1]=0..r[1]); # [Н*м]
>
maxM[3]:=maximize(abs(convert(M[x[3]],piecewise)),z[2]=0..3*r[2]); # [Н*м]
> # Определим параметры сечений:
> sys_sech:=
> h[1]/b[1]=2.18,
> h[2]/b[2]=2.18,
>
b[1]*h[1]^2/6=maxM[1]/sigma[max],
>
b[2]*h[2]^2/6=maxM[3]/sigma[max],
> F[3]=maxP[3]/sigma[max];
>
fsolve({sys_sech},{h[1],b[1],h[2],b[2],F[3]});
> assign(%);
> # Выберем в качестве третьего стержня трубу
с толщиной стенки 0.05 мм диаметром d[3]:
>
d[3]=solve(F[3]=0.05*10**(-3)*Pi*d[3],d[3]); # [м]
> # Моменты инерции сечений:
> Ix[1]:=b[1]*h[1]^3/12;
# [м^4]
> Ix[2]:=b[2]*h[2]^3/12; # [м^4]
> # Определение деформаций упругих тел:
> # Выберем в качестве модели изгиба для 1-го
стержня задеку в точке O,
а для 2-го стержня - двухопорную балку с шарнирами в точках A
и B.
> unassign('a','P[y]','P[z]');
>
V[1]:=convert(1/E/Ix[1]*int(int(M[x[1]],z[1]),z[1])+_C[1]*z[1]+_C[2],piecewise):
>
V[2]:=convert(1/E/Ix[2]*int(int(M[x[3]],z[2]),z[2])+_C[3]*z[2]+_C[4],piecewise):
> # Начальные условия для 1-го и 2-го
стержней соответственно:
> cond[1]:=eval(V[1],z[1]=0)=0,eval(diff(V[1],z[1]),z[1]=0)=0:
>
cond[2]:=eval(V[2],z[2]=0)=0,eval(V[2],z[2]=r[2])=0:
> solve({cond[1]},{_C[1],_C[2]});
> assign(%);
> solve({cond[2]},{_C[3],_C[4]});
> assign(%);
> # Построим графики моделей изгибов для
первого и третьего стержней соотвественно:
> plot(subs(a=472, P[y]=118,
P[z]=236, V[1]),z[1]=0..r[1],color=blue,thickness=3, title="Форма изгиба
первого стержня");
> plot(subs(a=472, P[y]=118,
P[z]=236, V[2]),z[2]=0..3*r[2],color=blue,thickness=3, title="Форма изгиба
второго стержня");
> # Уравнения перемещений точек для
неизвестных:
> params:=[
> D_M[y],D_M[z],D_C[y],
> D_theta[1],D_theta[2],D_theta[3],Theta[M],
> dBy(3),dBz(3),
> dAy(1),dAz(1),
> dMy(2),dMz(2)];
> # Выразим решение через a,
P[y]
и P[z].
> sys_graph:=
> F[upr]=-k*D_C[y],
> M[upr]=-c*D_theta[1],
>
D_M[y]=dAy(1)+dMy(2)-D_theta[1]*r[1]*sin(theta[1])-2*D_theta[2]*r[2]*sin(theta[2]),
>
D_M[z]=dAz(1)+dMz(2)+D_theta[1]*r[1]*cos(theta[1])+2*D_theta[2]*r[2]*cos(theta[2]),
>
D_M[y]=D_C[y]+dBy(3)+dMy(2)-D_theta[3]*r[3]*sin(theta[3]+pi)-3*D_theta[2]*r[2]*sin(theta[2]),
>
D_M[z]=dBz(3)+dMz(2)+D_theta[3]*r[3]*cos(theta[3]+pi)+3*D_theta[2]*r[2]*cos(theta[2]),
>
> # Перепроектируем локальные перемещения:
> dBy(3)=-R[B]*r[3]/E/F[3]*cos(theta[3]),
>
dBz(3)=-R[B]*r[3]/E/F[3]*sin(theta[3]),
>
dAy(1)=eval(V[1],z[1]=r[1])*cos(theta[1]-pi/2),
>
dAz(1)=eval(V[1],z[1]=r[1])*sin(theta[1]-pi/2),
>
dMy(2)=eval(V[2],z[2]=3*r[2])*cos(theta[2]-pi/2),
>
dMz(2)=eval(V[2],z[2]=3*r[2])*sin(theta[2]-pi/2),
>
Theta[M]=D_theta[2]-eval(diff(V[2],z[2]),z[2]=3*r[2]):
> SLV:=solve({sys_graph},
> convert(params,set));
> # Вычислим деформации элементов конструкции
при исходных нагрузках (a=472,
P[y]=118,
P[z]=236):
> # Вычислим деформации элементов конструкции
при нагрузках (a=0, P[y]=118,
P[z]=236):
> subs(a=0, P[y]=118,
P[z]=236,SLV);
> assign(SLV);
> # Расчёт матрицы податливости:
> # Вычислим матрицу податливости через
интеграл Мора:
> # Первое нагружение (a=0,
P[y]=1,
P[z]=0):
> M[x[1],1]:=subs(a=0, P[y]=1,
P[z]=0, M[x[1]]);
> M[x[3],1]:=subs(a=0, P[y]=1,
P[z]=0, M[x[3]]);
> M[upr,1]:=subs(a=0, P[y]=1,
P[z]=0, M[upr]);
> F[upr,1]:=subs(a=0, P[y]=1,
P[z]=0, F[upr]);
> R[B,1]:=subs(a=0, P[y]=1,
P[z]=0, R[B]);
> # Второе нагружение(a=0,
P[y]=0,
P[z]=1):
> M[x[1],2]:=subs(a=0, P[y]=0,
P[z]=1, M[x[1]]);
> M[x[3],2]:=subs(a=0, P[y]=0,
P[z]=1, M[x[3]]);
> M[upr,2]:=subs(a=0, P[y]=0,
P[z]=1, M[upr]);
> F[upr,2]:=subs(a=0, P[y]=0,
P[z]=1, F[upr]);
> R[B,2]:=subs(a=0, P[y]=0,
P[z]=1, R[B]);
> # Вычислим коэффициенты матрицы
податливости:
>
G:=matrix(2,2,[delta[11],delta[12],delta[21],delta[22]]);
>
delta[11]:='1/E/Ix[1]*int(M[x[1],1]^2,z[1]=0..r[1])+1/E/Ix[2]*int(M[x[3],1]^2,z[2]=0..3*r[2])+R[B,1]^2*r[3]/E/F[3]+M[upr,1]^2/c+F[upr,1]^2/k';
>
delta[12]:='1/E/Ix[1]*int(M[x[1],1]*M[x[1],2],z[1]=0..r[1])+1/E/Ix[2]*int(M[x[3],1]*M[x[3],2],z[2]=0..3*r[2])+R[B,1]*R[B,2]*r[3]/E/F[3]+M[upr,1]*M[upr,2]/c+F[upr,1]*F[upr,2]/k';
>
delta[22]:='1/E/Ix[1]*int(M[x[1],2]^2,z[1]=0..r[1])+1/E/Ix[2]*int(M[x[3],2]^2,z[2]=0..3*r[2])+R[B,2]^2*r[3]/E/F[3]+M[upr,2]^2/c+F[upr,2]^2/k';
> delta[21]:='delta[12]';
>
delta[11]:=simplify(evalf(delta[11]));
>
delta[12]:=simplify(evalf(delta[12]));
>
delta[21]:=simplify(evalf(delta[21]));
>
delta[22]:=simplify(evalf(delta[22]));
> 'G'=convert(G,Matrix);
> # Выражения для линыейных перемещений точки
М:
> 'D_M[y]'=D_M[y];
> 'D_M[z]'=D_M[z];
> # Положив в них a=0,
получим:
> 'D_M[y]'=subs(a=0,D_M[y]);
> 'D_M[z]'=subs(a=0,D_M[z]);
> # Матрица коэффициентов перед P[y]
и P[z]:
>
G:=lhs(simplex[display]([D_M[y]=const,D_M[z]=const],[P[y],P[z]]));