机器人接触动力学建模方法描述

        接触建模是对许多机器人任务进行仿真的一个重要方面。因此,需要对机器人接触/冲击引起的动力学进行总结和描述。通常情况下,机器人可以与人类、操作环境、地面、其他机器人等进行直接和间接的物理交互,这些不同的交互动态行为就会导致不同的交互动态,而这些复杂的交互动态往往是影响控制性能的主要因素,尤其是基于模型的控制器设计过程中影响较大,除此之外,对于建模的准确性也很重要,例如建模参数的辨识精度与假设条件都会影响建模的准确性,对于模型的数值求解通常也会遇到数值稳定性、多个解和不存在解的情况!!!

        因此,可以看出机器人的接触动力学建模是灰常滴重要,本篇博文主要是介绍下机器人接触动力学建模方面的相关知识,但不局限于机器人,后期文章会对机器人与环境之间的动态建模仿真进行一定程度的介绍和示例演示!!!

        接触动力学:当今计算接触动力学问题的基本方法,包括多刚体动力学、线性和非线性有限元、刚体接触和弹性接触以及数值和几何问题的算法。接触动力学过程中,能量耗散的原因之一为弹性波在被接触物体中的传播。目前经典的Hertz接触动力学模型中,假设被接触体为半无限大空间体,弹性波产生的能量耗散不大于5%。

        而碰撞动力学是研究高速相对运动物体之间相互碰撞的现象与规律的学科,弹塑性体碰撞时,在各自的表面和内部将产生高强度、短历时冲击载荷的作用。碰撞载荷的大小主要取决于撞击体的质量和碰撞速度,受冲击面上的载荷强度还与撞击体的姿态和接触面积有关。在这种载荷作用下,不但在撞击体表面产生变形、破坏,甚至熔化或汽化,而且在可变形的撞击体的内部还将发生质点的位移运动、应力与应变的传播及它们之间的相互作用,最终导致撞击体发生结构的塑性变形、解体破坏等整体响应。

        冲击动力学:研究材料或结构在短时快速变化的冲击载荷作用 下产生波动(应力波传播),并使固体材料产生运动、变形和破坏的规律,涉及固体中弹塑性波的传播和相互作用的动力。

        需要对动力学方面深入了解的学者们,刚体动力学算法可参考如下书籍内容:

       撞击是一种复杂的物理现象,它发生在两个或更多的物体相互碰撞时。撞击的特点是持续时间非常短,达到高力水平,能量快速耗散,存在较大的加速和减速。在任何机械系统[的设计和分析时,都必须考虑到这些事实。此外,在冲击过程中,系统在几何形状上呈现不连续性,一些材料特性可能会因冲击本身而改变。

       应用脉冲-动量方法来模拟刚体的冲击动力学导致的问题:在存在库仑摩擦的情况下,会出现没有解或多解存在的情况。非线性模型和非局部模型已被用来表示引起摩擦的表面不规则行为的真实行为。使用接触力的连续模型可以将接触动力学方法推广到多体/多接触场景。

含摩擦及碰撞的非光滑力学问题的本质特征是在运动的描述中出现了不等式约束。由光滑到非光滑最根本的转变就是由等式到不等式的转变研究非光滑力学的关键是摆脱以往习惯的等式和方程的禁锢,用不等式或包含的方法去思考和处理问题。

        接触力学可以理解为对固体相互碰撞时变形的研究。摩擦接触力学分析了存在摩擦现象时碰撞体的相互作用。值得注意的是,接触力学在许多多体动力学应用中无处不在,在许多情况下,系统的性能取决于接触-冲击事件的建模过程。接触动力学,即处理多体碰撞系统的运动分析。当一个多体系统中的两个物体发生碰撞时,多体系统的状态会迅速变化,导致速度、塑性变形、能量转换等机械现象的跳跃或不连续。对接触-碰撞事件进行建模和模拟的过程需要确定接触点,并计算由此产生的反作用接触力。本质上,接触点的确定,通常称为接触检测阶段。

在两个球之间的冲击过程中,发生局部变形或伪渗透,导致反作用的法向接触力作用于接触周期。在多体动力学中,接触-冲击事件的建模问题包括两个主要任务,即接触的几何形状的评估和接触相互作用的解决。

添加碰撞物体之间的接触关系:

除此之外也可以采用惩罚的方法来定义接触力关系,具体操作如下:

adams中所提供的的接触力算法有限,当然也可以采用自己定义接触力的算法来实现对接触力的模拟,选择如下:

当然也可以导入自己想要的模型类型,从而在adams中进行模拟接触。

       拉格朗日动力学的结构清楚地表明,接触力是有腿机器人的建模和控制的核心。但请注意,到目前为止,所引入的这些力量的唯一特征是它们的单边性。因此,之前的分析适用于各种接触情况:行走和跑步运动,但也适用于滑动情况,如滑雪或滑冰,甚至是滚动情况。

关于接触建模和操作,也就是关于与接触面切的运动和力,通常考虑一个简单的库仑摩擦模型。关于与接触面正交的运动和力,通常考虑两种选择:顺性模型或刚性模型,引入冲击和其他非光滑行为。

       接触模型考虑了接触材料在与接触面正交的方向上的粘弹性特性:

          刚性接触模型更简单地引入:要么有接触,法向力可以取任何非负值,

         不考虑接触表面以下的接触点。还需要注意的是,这里的定义满足了单边性条件,接触力通常是单侧的(机器人可以在地面上推,而不是拉):

        刚性模型可以用以下方式来总结:

        库仑摩擦的粘着或滑动行为也可以用这种互补条件来表示。

        刚性模型是如何对应于一个无限刚性的顺应性模型的。兼容的接触模型可以更准确地模拟接触体的变形,但精确的模型通常需要非常刚性的弹簧,导致产生的微分方程的数值刚性,这可能使数值分析减缓或复杂化。相对更容易集成和分析,刚性模型与纯刚体和接触面。因此,在理论上或数值上研究足部机器人的稳定性,在优化行走或跑步轨迹等时,它们更是首选。

        文章中的内容描述还存在很大程度上的不足,需要深入了解机器人/刚体接触动力学的学者们可参考如下文献进行了解!

参考文献:

【1】https://zhuanlan.zhihu.com/p/378525210

【2】https://baike.baidu.com/item/%E6%92%9E%E5%87%BB%E5%8A%A8%E5%8A%9B%E5%AD%A6/50904029?fr=aladdin

【3】P. Barkan, Impact design, in: Mechanical Design and Systems Handbook, Section 31, McGraw-Hill, New York,1974.

【4】Jean M. The non-smooth contact dynamics method[J]. Computer methods in applied mechanics and engineering, 1999, 177(3-4): 235-257.

【5】清华大学出版的图书:《非光滑多体系统动力学LCP方法》