exponenta event banner

Тепловое отклонение биметаллической балки

В этом примере показано, как решить проблему связанной термоупругости. Тепловое расширение или сжатие в механических компонентах и конструкциях происходит из-за изменения температуры в рабочей среде. Тепловое напряжение является вторичным проявлением: структура испытывает напряжения, когда структурные ограничения препятствуют свободному тепловому расширению или сжатию компонента. Отклонение биметаллического пучка - общефизический эксперимент. Типичная биметаллическая балка состоит из двух материалов, соединенных вместе. Коэффициенты теплового расширения (КТР) этих материалов существенно различаются.

В этом примере показано отклонение биметаллической балки с использованием конструкционной конечноэлементной модели. Пример сравнивает это отклонение с аналитическим решением, основанным на приближении теории луча.

Создание статической модели несущих конструкций.

structuralmodel = createpde('structural','static-solid');

Создайте геометрию балки со следующими размерами.

L = 0.1; % m
W = 5E-3; % m
H = 1E-3; % m
gm = multicuboid(L,W,[H,H],'Zoffset',[0,H]);

Включите геометрию в модель несущей конструкции.

structuralmodel.Geometry = gm;

Постройте график геометрии.

figure
pdegplot(structuralmodel)

Figure contains an axes. The axes contains 3 objects of type quiver, patch, line.

Определите метки ячеек, для которых требуется задать свойства материала.

Сначала отобразите метку нижней ячейки. Чтобы четко увидеть метку ячейки, увеличьте изображение левого конца балки и поверните геометрию следующим образом.

figure
pdegplot(structuralmodel,'CellLabels','on')
axis([-L/2 -L/3 -W/2 W/2 0 2*H])
view([0 0])
zticks([])

Figure contains an axes. The axes contains 3 objects of type quiver, patch, line.

Теперь отобразите метку ячейки для верхней ячейки. Чтобы четко увидеть метку ячейки, увеличьте изображение правого конца балки и поверните геометрию следующим образом.

figure
pdegplot(structuralmodel,'CellLabels','on')
axis([L/3 L/2 -W/2 W/2 0 2*H])
view([0 0])
zticks([])

Figure contains an axes. The axes contains 3 objects of type quiver, patch, line.

Задайте модуль Юнга, коэффициент Пуассона и линейный коэффициент теплового расширения для модели линейного упругого поведения материала. Для обеспечения непротиворечивости единиц необходимо указать все физические свойства в единицах СИ.

Назначьте свойства материала меди нижней ячейке.

Ec = 137E9; % N/m^2
nuc = 0.28;
CTEc = 20.00E-6; % m/m-C
structuralProperties(structuralmodel,'Cell',1, ...
                                     'YoungsModulus',Ec, ...
                                     'PoissonsRatio',nuc, ...
                                     'CTE',CTEc);

Назначьте свойства материала инвара верхней ячейке.

Ei = 130E9; % N/m^2
nui = 0.354;
CTEi = 1.2E-6; % m/m-C
structuralProperties(structuralmodel,'Cell',2, ...
                                     'YoungsModulus',Ei, ...
                                     'PoissonsRatio',nui, ...
                                     'CTE',CTEi);

В этом примере предположим, что левый конец балки зафиксирован. Чтобы наложить это граничное условие, отобразите метки граней на левом конце балки.

figure
pdegplot(structuralmodel,'faceLabels','on','FaceAlpha',0.25)
axis([-L/2 -L/3 -W/2 W/2 0 2*H])
view([60 10])
xticks([])
yticks([])
zticks([])

Figure contains an axes. The axes contains 3 objects of type quiver, patch, line.

Наложите фиксированное граничное условие на грани 5 и 10.

structuralBC(structuralmodel,'Face',[5,10],'Constraint','fixed');

Применить изменение температуры в качестве тепловой нагрузки. Используйте исходную температуру 25 градусов Цельсия и рабочую температуру 125 градусов Цельсия. Таким образом, изменение температуры для этой модели составляет 100 градусов Цельсия.

structuralBodyLoad(structuralmodel,'Temperature',125);
structuralmodel.ReferenceTemperature = 25;

Создайте сетку и решите модель.

generateMesh(structuralmodel,'Hmax',H/2);
R = solve(structuralmodel);

Постройте график отклоненной формы биметаллического луча с величиной смещения в качестве данных цветовой карты.

figure
pdeplot3D(structuralmodel,'ColorMapData',R.Displacement.Magnitude, ...
                          'Deformation',R.Displacement, ...
                          'DeformationScaleFactor',2)
title('Deflection of Invar-Copper Beam')

Вычислите отклонение аналитически, основываясь на теории луча. Отклонение полосы δ = T (αc-αi) L2 K1, где K1 = 14 + EcEi + EiEc, Δ T - разность температур, αc и αi - коэффициенты теплового расширения меди и инвара, Ec и Ei - модуль Юнга меди и инвара, а L - длина полосы.

K1 = 14 + (Ec/Ei)+ (Ei/Ec);
deflectionAnalytical = 3*(CTEc - CTEi)*100*2*H*L^2/(H^2*K1);

Сравните аналитические результаты и результаты, полученные в этом примере. Результаты сопоставимы из-за большого соотношения сторон.

PDEToobox_Deflection = max(R.Displacement.uz);
percentError = 100*(PDEToobox_Deflection - ...
                    deflectionAnalytical)/PDEToobox_Deflection;

bimetallicResults = table(PDEToobox_Deflection, ...
                          deflectionAnalytical,percentError);
bimetallicResults.Properties.VariableNames = {'PDEToolbox', ...
                                              'Analytical', ...
                                              'PercentageError'};
disp(bimetallicResults)
    PDEToolbox    Analytical    PercentageError
    __________    __________    _______________

    0.0071061     0.0070488         0.8063