导读:本文是MatDEM官方团队毕业生曹政 同学关于《星球车爬坡过程轮壤作用多体动力学—离散元数值模拟》对建模过程的思考和总结,希望能引发读者朋友的共鸣。
诚邀读者朋友积极报名6月15日19时MatDEM官方团队成员将在仿真秀官网和APP带来《岩土体振动信号分布式光纤监测和离散元建模研究》和《星球车爬坡过程轮壤作用多体动力学—离散元数值模拟》公开课。详情见后文:
使用Simulink中的MATLAB System模块将离散元数值模拟软件MatDEM与多体动力学仿真模块Simscape-Multibody进行耦合。该模块允许在Simulink中调用MATLAB方法。具体而言,MATLAB System支持在Simulink中将MATLAB中定义的System object作为模块使用。System object类是一种特殊的MATLAB类,专为构建输入、输出随时间变化的动态系统而设计。System object类中存在两个关键的成员函数:setupImpl、stepImpl。
setupImpl函数用以指定模拟系统首次运行System object时要执行的算法,运行该函数将会调用指定的算法处理输入参数,计算输出并更新对象的状态值。而stepImpl函数则用以指定模拟系统非首次运行System object时要执行的算法。同样的,运行该函数也会调用指定算法处理模块输入。
结合上述成员函数,可利用MATLAB System模块实现MatDEM离散元模拟软件的模型堆积以及迭代计算功能。具体实现方式为,将setupImpl函数调用的算法指定为MatDEM的颗粒堆积建模算法,作为离散元模拟的初始化步骤;将stepImpl函数调用的算法指定为MatDEM的迭代计算算法,作为离散元模拟的迭代步骤,如图1所示。
图1MATLAB System模块工作流程图
Fig1 MATLAB System module work flow
进一步设计多体动力学与离散元的数据交互。为发挥多体动力学与离散元的优势,使用Multibody建立单轮、探测车多体模型,设置扭矩、车轮受力等输入参数,根据输入参数计算车辆系统动态响应。由于车辆与地面直接接触部分为车轮,因此Multibody向MatDEM输出计算得到的车轮转动角与位移。MatDEM中使用颗粒构建相同尺寸的车轮模型,设置为固定单元。根据Multibody传输的车轮转动角、位移,对车轮施加相应的转动、位移,并计算车轮与土体间相互作用,将车轮受力状态传入Multibody,实现单次模拟数据交互,如图2所示。
Fig2 Multi-body dynamics-discrete elementcoupling framework
车辆行驶在松软地面上时,会对地面施加向后的水平力,地面发生剪切变形,相应的剪切力即为土壤对行驶车辆的推力。车轮在行驶过程中压紧土壤,形成车辙并受到土壤产生的阻力即土壤阻力。而牵引力则为推力与阻力之差。
MatDEM在耦合模拟中计算车轮与土壤的相互作用力,并计算土壤对车轮的阻力矩,轮壤作用的离散元模型如图3所示。使用MatDEM库函数getGroupForce,可以返回所有与车轮存在力学作用的颗粒单元的信息。以图中颗粒i为例,颗粒对车轮存在X方向作用力、Y方向作用力。因此多体动力学模块Multibody中,根据式3-1计算车轮X、Y方向作用力。根据力的平移原理,颗粒单元对车轮产生阻力矩M’,如式3-2所示。因此Multibody中实际驱动扭矩为输入力矩M与阻力矩M’之差,如式3-3所示。
Fig3 Discrete element model of wheel-soil interaction
前面我们进行了一系列室内轮壤作用试验,本节使用建立的耦合模型对部分实验组进行模拟,将模拟结果与室内试验进行对比,验证本文建立的多体动力学—离散元耦合模型的准确性。
离散元模型大小采取与实际土槽试验等大模型,长度为100cm,宽度为20cm,高度为15cm。设置颗粒平均半径为1mm,通过MatDEM生成717697个平均半径为1mm的离散颗粒单元,并对颗粒单元进行随机堆积、重力沉积、压实试样等操作,同时根据特定土1宏观力学性质对颗粒单元赋予相应的细观参数,如表3-1与表3-2所示。建立的堆积模型如图4所示。
Fig4 Discrete element stacking model
车轮是轮壤相互作用的另一主要研究对象,同时也是多体动力学模拟与离散元模拟的耦合关键点,分别在Multibody与MatDEM中建立刚性轮胎模型,以进行后续模拟。在Multibody中创建Cylindrical Solid对象作为刚性车轮,在Geometry选项中修改车轮半径与宽度,在Inertia选项中修改车轮质量,建立与真实车轮1:1的多体动力学模型,如图5所示。对车轮对象施加Bushing Joint约束,提供三个方向的平移自由度与三个方向的旋转自由度,在本节所构建的车轮—水平地面数值模型中,只需要提供一个方向的旋转自由度与两个方向的平移自由度,同时通过Bushing Joint对车轮施加扭矩与土体对车轮作用力,Multibody中创建的车轮模型如图6所示。
Fig5 Wheel parameter setting
Fig 6 Wheel model in Multibody
为了在MatDEM中使用颗粒构建车轮模型,首先通过库函数makeDisc使用离散颗粒构建单层圆盘,再通过库函数make3Dfrom2D指定厚度,将单层圆盘根据指定的厚度进行重复堆叠,建立与真实车轮尺寸相同的离散元车轮模型,将离散元车轮模型设置为固定单元,目的是使土壤对车轮仅产生力学作用,而不会使车轮产生平动或旋转,车轮的平动与旋转由Multibody进行控制。MatDEM中建立的车轮—土槽模型如图7所示。
Fig7 Discrete element wheel-soil trough model
设置驱动扭矩为0.8N·m,车轮质量为1.2kg,设定模拟总时间为3s,进行耦合数值模拟,图8为车轮在不同时刻的位置与状态以及土体 位移云图,根据土体 位移云图,刚性车轮行进轨迹上土体均产生了不同程度的下陷。
图8 不同时刻车轮的位置与状态
Fig8 The positions and states of the wheel at differenttimes
为了帮助读者朋友更好的理解《岩土体振动信号分布式光纤监测和离散元建模研究》,促进MatDEM用户技术交流。6月15日19时,2024MatDEM国产离散元用户案例线上分享会将邀请MatDEM官方团队毕业生闵寅通与曹政同学分别带来《岩土体振动信号分布式光纤监测和离散元建模研究》和《星球车爬坡过程轮壤作用多体动力学—离散元数值模拟》公开课。以下是直播安排:
MatDEM离散元:岩土体振动信号分布式光纤监测与星球车爬坡过程轮壤作用模拟-仿真秀直播
扫码观看直播和回放