2015年第四届数学建模国际赛小美赛
A题 飞机上的细长座椅
原题再现:
航空公司座位是指在旅途中乘客可以乘坐的座位。一些航空公司现在推出了新的经济舱"超薄"座位。这些座椅除了重量较轻外,理论上还允许航空公司在不显著影响乘客舒适度的情况下增加运力。这些座椅可能具有也可能不具有可移动的头枕,并且通常不具有可调节的腰部支撑。细长座椅正在进一步细化,解放了更多的乘客空间。它们的共同点是背板更薄,衬垫更少。然而,许多乘客对这些座位表示不满。
在不改变结构的前提下,如何设计座椅靠背曲线,才能使座椅更加舒适?
如何在不改变主要内部结构的情况下,优化座椅背板的曲线和衬垫,使座椅更舒适?请为航空公司写一份2-3页的广告材料,简明扼要地描述您的设计特点和优势。
整体求解过程概述(摘要)
一些航空公司现在推出了新的经济舱"超薄"座位。然而,许多乘客对这些座位表示不满。因此,基于人类工程学设计了一种新的座椅。
在问题的第一部分,建立了动力学方程,得到了在人最舒适的情况下座椅对人的反作用力。基于弹性理论和应力边界条件,得到了法向应力和剪应力的体表面。然后,引入疲劳感系数,建立优化模型,计算座椅背板特征点位置,通过插值得到人体最舒适的曲线,即最佳的座椅背板曲线。在这一点上,我们获得了五个特征数据,并得到了插值曲线。在这种情况下,人类的疲劳被最小化,对人类来说是最舒适的。
在问题的第二部分,我们给出了随机填充材料下填充材料厚度的计算模型,并以弹性橡胶为例进行了设计。我们以弹性理论为基础,结合平衡方程、物理方程、几何方程、边界条件和应力边界条件以及位移单值条件,计算了填料的变形。我们认为,当填料的变形曲线和最佳舒适度曲线大部分结合时,填料的厚度设计是最优的。在这种情况下,填充物在腰部和颈部填充得更厚。
此外,我们通过建立身体振动模型和椅子振动模型来计算外部振动激励下的躯干和头部加速度响应,从而对座椅在振动环境中的舒适性进行了测试。
因此,我们使用Proe来描绘我们的设计的三维模型,并得出我们的工作的结论。
我们设计的座椅适用于任何情况,对于不同的人体参数或材料,只需要在模型中修改相应的参数就可以得到新的曲线。
模型假设:
在整个飞行过程中,人和飞机具有相同的运动状态;
在主要飞行过程中,飞机做匀速运动;
胸腰椎的不同形状改变了骨盆的位置。
问题分析:
一些航空公司正在推出新的经济舱"轻薄"座位。然而,许多乘客对这些座位表示不满。要完成的任务是在不改变座椅主体内部结构的前提下,优化座椅背板曲线和衬垫,使座椅更加舒适。此外,还应为航空公司编写2-3页的广告材料,以简洁地描述设计特点和优势。
首先,需要基于人体工程学对座椅背板曲线进行优化。在这一部分,座椅背板曲线应使座椅克服座椅振动力平衡,保持身体姿势,这是良好设计的关键。在问题的第二部分,我们需要对座椅背板衬垫进行优化,并在第一部分的基础上给出广告材料。填充材料变形曲线与座椅背板曲线的关系是解决这一问题的关键。
问题的第一部分
在这部分问题中,我们需要对座椅背板曲线进行优化。舒适是人的一种感觉。虽然人们经常谈论舒适性,但对舒适性的定义还没有一个被广泛接受的定义,座椅必须克服座椅振动力的平衡,保持身体的姿势,这是良好设计的关键。座椅舒适性是一个柔性指标,包括动态舒适性和静态舒适性两个方面。动态舒适性是指飞机座椅对人体振动和冲击的衰减能力,它主要与座椅的刚度和阻尼系数有关。而静态舒适性是指座椅的静态几何尺寸、表面形状适合人体舒适的坐姿,满足人体生理和心理性能的要求。
获取相关信息,飞机座椅的一些经验关键尺寸为:
座椅设计应尽可能使乘客脊柱处于正确的位置,以保持正常的生理弯曲。为了适应人体舒适的坐姿,人体的背部和腰部应给予合理的支撑。座椅设计应提供适当保护的形状和位置。身体的第一支撑部分,位于前5-6个胸椎的高度处,以支撑肩部。身体的第二支撑部分位于腰部弯曲部分上,该部分是支撑腰部的第一个5-6腰椎的高度。座椅的主要几何参数有:座椅高度、座椅深度、座椅宽度、座椅靠背等。
模型的建立与求解整体论文缩略图
全部论文请见下方" 只会建模 QQ名片" 点击QQ名片即可
部分程序代码:(代码和文档not free)
bash
clc
clear
x=[200,146.12,78.23,21.27,0];
y=[850,819.43,637.13,322.14,0];
plot(x,y,'k.','MarkerSize',20);
box=-10;
boy=-50;
% axis equal
axis([box,220,boy,880]);
hold on
xi=0:1:200;
yi=interp1(x,y,xi,'pitch');
plot(xi,yi,'k--');
grid on
legend('Feature Points','Cruve S1','location','best','FontSize',16);
xlabel('H/mm','FontSize',16);
ylabel('V/mm','FontSize',16);
bash
clc
clear
close all
x1=[200,146.12,78.23,21.27,0];x1=fliplr(x1);
y1=[850,819.43,637.13,322.14,0];y1=fliplr(y1);
x2=[200,204.29,141.30,51.17,23.92,0,-88.98,-107.88,-60.71];x2=fliplr(x2);
y2=[850,883.00,898.50,865.55,752.79,557.97,340.80,137.38,0];y2=fliplr(y2);
x1i=0:1:200;y1i=interp1(x1,y1,x1i,'pitch');
plot(x1i,y1i,'k-');
hold on
plot(x2,y2,'k.','MarkerSize',20);
x21=x2(1:7);y21=y2(1:7);
y21i=0:1:898;x21i=interp1(y21,x21,y21i,'pchip');
% plot(x21i,y21i);
x22=x2(7:9);y22=y2(7:9);
y22i=898:-1:850;x22i=interp1(y22,x22,y22i,'pchip');
% plot(x22i,y22i);
x2i=[x21i,x22i];
y2i=[y21i,y22i];
plot(x2i,y2i,'k--');
grid on
axis([-150,250,0,950])
xlabel('H/mm','FontSize',16);
ylabel('V/mm','FontSize',16);
x3=x1(1:4);x3=x3-49.3;
y3=y1(1:4);y3=y3+10;
x3=[x3,x1(end)];y3=[y3,y1(end)+20];
x3i=-50:10:200;y3i=interp1(x3,y3,x3i,'pitch');
plot(x3i,y3i,'k.-');
legend('CruveS_1','FeaturePoints','CruveS_2','CruveS^/_2','location','best');