模型一个挖掘机铲斗臂灵活的身体
的降阶弹性固体变形体块模型基于降维模型特征的几何和力学性能。进口基本数据降维模型包括:
协调三元组的列表指定位置的界面框架的起源相对于一个共同的参考框架。
对称刚度矩阵描述的弹性灵活的身体。
对称质量矩阵描述的惯性特性灵活的身体。
有几种方法来生成所需的降维数据这一块。通常,您生成一个子结构(或超单元)通过使用有限元分析(FEA)工具。
下面的例子使用了偏微分方程工具箱™创建一个降维模型灵活的七星手臂,手臂等一个反铲挖掘机或。你开始的CAD几何七星的手臂,生成有限元网格,应用Craig-Bampton有限元分析子结构化方法,并生成一个降维模型。该模型sm_flexible_dipper_arm
从这个例子中使用降维的数据。在模型中,铲斗臂上装的是旋转塔作为试验装置的一部分。有关更多信息,请参见灵活的铲斗臂。
步骤1:定义铲斗臂的几何和材料特性
该文件sm_flexible_dipper_arm.STL
包含一个定义的CAD几何三角七星的手臂。查看几何存储在这个文件中,使用MATLAB®功能stlread
和trisurf
:
stlFile =“sm_flexible_dipper_arm.STL”;图trisurf (stlread (stlFile))轴平等的
铲斗臂是由钢。代表它的材料特性,设置这些值为杨氏模量,泊松比,和质量密度:
E = 200 e9;%的杨氏模量ν= 0.26;%泊松比(无量纲)ρ= 7800;% ^ 3公斤/米的质量密度
步骤2:指定接口帧的位置
铲斗臂有三个接口框架,您可以连接其他Simscape™多体™元素,如关节、约束、力量,和传感器:
汽缸连接点,手臂连接到液压缸,手臂垂直的启动。
桶连接点,手臂连接到挖掘机斗。
手臂的支点点,连接到挖掘机繁荣。
所有接口的位置指定帧起源米相对于共同参考框架所使用的CAD几何。
起源= [-0.500 0 0%第一帧:气缸连接1.500 0 0%框架2:桶连接点-0.130 0 0);%帧3:支点numFrames =大小(起源,1);
步骤3:创建有限元网格
生成的网格七星的手臂,第一个电话createpde
(偏微分方程工具箱)函数,它创建一个结构模型的模态分析固体(3 d)问题。导入后的几何和材料特性的手臂,generateMesh
(偏微分方程工具箱)函数创建网格。
feModel = createpde (“结构”,“modal-solid”);importGeometry (feModel stlFile);structuralProperties (feModel…“YoungsModulus”,E,…“PoissonsRatio”ν,…“MassDensity”,ρ);generateMesh (feModel…“GeometricOrder”,“二次”,…“Hmax”,0.2,…“机构”,0.02);
第四步:设置多点约束框架的接口
每个接口帧块对应一个边界节点上的六个自由度的有助于降维模型。有几种方法可以确保有限元分析子结构化方法保存所需的自由度。例如,您可以创建一个刚性约束边界节点连接到身体上的有限元节点的一个子集。您还可以使用结构元素,如梁或壳元素,引入节点有6个自由度。
这个示例使用多点约束(MPC)保存在每个边界节点的六个自由度。确定几何区域(如的脸,边或顶点)与每个MPC,第一个情节手臂几何通过使用函数pdegplot
(偏微分方程工具箱):
图pdegplot (feModel,“FaceLabels”,“上”,“FaceAlpha”,0.5)
你可以缩放、旋转和潘这个图像来确定面临边界节点对应的标签。这些面孔定义与边界节点相关联的mpc铲斗臂:
汽缸连接点:面对1
桶连接点:27
支点的观点:23
faceIDs =[23] 1, 27日;%的列表界面框架的顺序相同的起源
来验证这些值,绘制网格并突出显示所选的脸:
图pdemesh (feModel,“FaceAlpha”,0.5)在颜色= [“rgb”repmat (“k”1 numFrames-3)];断言(元素个数(faceIDs) = = numFrames);为k = 1: numFrames nodeIdxs = findNodes (feModel.Mesh,“地区”,“脸”,faceIDs (k));scatter3 (…nodeIdxs feModel.Mesh.Nodes(1日),…nodeIdxs feModel.Mesh.Nodes (2),…nodeIdxs feModel.Mesh.Nodes (3),…“好吧”,“MarkerFaceColor”、颜色(k)) scatter3 (…起源(k, 1),…起源(k, 2),…起源(k, 3),…80年,颜色(k),“填充”,“年代”)结束持有从
调用这个函数structuralBC
(偏微分方程工具箱)定义边界节点的mpc这些面孔:
为k = 1: numFrames structuralBC (feModel…“脸”faceIDs (k),…“约束”,“多点”,…“参考”起源(k,:));结束
第五步:生成降维模型
这个函数减少
(偏微分方程工具箱)应用Craig-Bampton还原法和保留所有fixed-interface模式的频率
弧度每秒。
罗=减少(feModel,“FrequencyRange”e4 [0 1]);
减少的结果存储在一个数据结构手臂
。转置的ReferenceLocations
矩阵占偏微分方程所使用的不同的布局规范工具箱和Simscape多体。
arm.P= rom.ReferenceLocations';%接口帧位置(n x 3矩阵)手臂。K= rom.K;%降低刚度矩阵手臂。米= rom.M;%降低质量矩阵
这个函数computeModalDampingMatrix
,这是定义这一页的底部,计算模态阻尼矩阵阻尼比为0.05:
dampingRatio = 0.05;手臂。C = computeModalDampingMatrix (dampingRatio rom.K rom.M);
降维的边界节点模型在相同的顺序必须指定相应的界面框架。这个顺序是由数组的行起源
。如果订单的mpc比指定的顺序是不同的起源
、交换各种矩阵的行和列,这样他们匹配原始订单。
frmPerm = 0 (numFrames, 1);%帧排列向量dofPerm = 1:尺寸(arm.K, 1);%景深排列向量断言(大小(arm.P 1) = = numFrames);为我= 1:numFrames为j = 1: numFrames如果起源:isequal (arm.P (j),(我,:))frmPerm (i) = j;张dofPerm (6 * () + (1:6)) = 6 * (j - 1) + (1:6);继续;结束结束结束断言(元素个数(frmPerm) = = numFrames);断言(元素个数(dofPerm) = =大小(arm.K 1));arm.P= arm.P(frmPerm,:); arm.K = arm.K(dofPerm,:); arm.K = arm.K(:,dofPerm); arm.M = arm.M(dofPerm,:); arm.M = arm.M(:,dofPerm); arm.C = arm.C(dofPerm,:); arm.C = arm.C(:,dofPerm);
第六步:进口数据降维
该模型sm_flexible_dipper_arm
使用数据结构手臂
设置的参数减少订单灵活的固体块。块,这些参数导入降维数据:
起源:
arm.P
刚度矩阵:
arm.K(桥,桥)
质量矩阵:
arm.M(桥,桥)
阻尼矩阵:
arm.C(桥,桥)
有关更多信息,请参见灵活的铲斗臂。
计算模态阻尼矩阵
这个函数计算模态阻尼矩阵与刚度矩阵相关联K
和质量矩阵米
。这个函数一个标量阻尼比适用于所有的灵活(non-rigid-body)与正常模式K
和米
。
函数C = computeModalDampingMatrix (dampingRatio、K、M)%,以避免数值问题(如复杂特征值很小%虚部),使矩阵完全对称的。K = (K + K ') / 2;%刚度矩阵M = (M + M) / 2;%质量矩阵%计算协与质量和刚度有关%矩阵,特征值按升序进行排序和排列%相应的特征向量。[V D] = eig (K、M);[d, sortIdxs] =排序(诊断接头(d));V = V (:, sortIdxs);%由于小数值错误,与相关的六个特征值%刚体模式可能不是完全为零。为了避免数值的问题,%检查前六个特征值接近零。然后%用确切0值。断言(所有(abs (d (1:6)) / abs (d (7)) < 1 e-9),“由于“零”特征值错误。”);d (1:6) = 0;%向量的广义质量和自然频率MV = M * V;generalizedMasses =诊断接头(V ' * MV);naturalFrequencies = sqrt (d);%计算模态阻尼矩阵K和MC = MV *诊断接头(2 * dampingRatio * naturalFrequencies. / generalizedMasses) * MV ';结束
另请参阅
降阶弹性固体|stlread
|trisurf
|createpde
(偏微分方程工具箱)|importGeometry
(偏微分方程工具箱)|structuralProperties
(偏微分方程工具箱)|generateMesh
(偏微分方程工具箱)|pdegplot
(偏微分方程工具箱)|structuralBC
(偏微分方程工具箱)|减少
(偏微分方程工具箱)