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

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

Этот пример находит отклонение биметаллического луча с помощью структурной модели конечного элемента. Пример сравнивает это отклонение с аналитическим решением, основанным на приближении теории пучков.

Создайте статическую несущую модель.

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;

Сгенерируйте mesh и решите модель.

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')

Вычислите отклонение аналитически, основываясь на теории луча. Отклонение полосы δ=6ΔT(αc-αi)L2K1, где 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