【Robot Dynamics Lecture Notes学习笔记之浮动基动力学】

news2024/11/24 11:32:43

Robot Dynamics Lecture Notes学习笔记之浮动基动力学

  • Contact Forces
      • Soft Contact Model
    • Contact Forces from Constraints
  • Constraint Consistent Dynamics
    • Contact Switches and Impact Collisions
      • Impulse Transfer
      • Energy Loss

在这里插入图片描述
浮动基座系统的广义坐标分别由驱动关节坐标 q j {{q}_{j}} qj和非驱动基座坐标 q b {{q}_{b}} qb组成,相应的速度 u j = q ˙ j ∈ R n j {{u}_{j}}={{\dot{q}}_{j}}\in {{R}^{{{n}_{j}}}} uj=q˙jRnj u b ∈ R 6 {{u}_{b}}\in {{R}^{6}} ubR6,但是 u b {{u}_{b}} ub不等于不等于位置和方向参数化的时间导数 q ˙ {\dot{q}} q˙。使用选择矩阵S选择驱动关节,根据下面公式选择
在这里插入图片描述
为了控制非驱动基坐标 q b {{q}_{b}} qb,需要知道外部作用力 F e x t {{F}_{ext}} Fext,机器人不同,其来源亦不同。例如,这种力可以来自与环境的接触(相互作用力)(例如有腿机器人)
特别是接触力的情况下,使用下面公式替代:
在这里插入图片描述
F c {{F}_{c}} Fc表示机器人环境作用力

Contact Forces

有两种根本不同的方法来模拟接触力。软接触法通过力元件(即弹簧-阻尼器)对相互作用进行建模,其中力仅是接触点的位置和速度的函数。硬接触法将接触视为运动约束

Soft Contact Model

在这里插入图片描述软接触模型下,接触力模拟为弹簧阻尼力
对于软接触模型,我们通常将第一次与环境接触时的点确定为 F c 0 {{F}_{c0}} Fc0。当环境采用线性弹簧-阻尼器模型时,机器人对环境施加的接触力为
在这里插入图片描述
虽然从第一个角度来看,这样的环境建模似乎是合乎逻辑和物理正确的,但事实证明,找到物理上正确的弹簧和阻尼参数来模拟系统动力学几乎是不可能的。多体系统和接触的组合微分方程存在的一个大问题是变得非常难(慢多体动力学和快接触动力学)。解决这样的问题,要么速度差,要么精度低。为了克服这一问题,通常采用数值模拟的方法来调整刚度和阻尼的接触参数

Contact Forces from Constraints

接触也可以作为运动学约束来处理,而不是由接触处的力单元产生的接触力。如果点 C C C与位置 r c {{r}_{c}} rc接触,则不允许再移动:
在这里插入图片描述

同样的公式也适用于和扩展接触面积情况下的转动约束
在这里插入图片描述

这具有很高的益处,因为它仅基于多体系统动力学描述,提供了直接访问估计地面反作用力的方法,而无需任何进一步的接触力传感器。

Constraint Consistent Dynamics

我们可以定义动态一致的,支持零空间投影的矩阵为:
在这里插入图片描述

N c {{N}_{c}} Nc定义了一个广义的运动空间,它对支撑杆没有加速度或力耦合作用。将接触力(3.61)的解代入运动方程(3.56)得到
在这里插入图片描述
(3.60)意味着 J ˙ c u = − J c u ˙ {{\dot{J}}_{c}}u=-{{J}_{c}}\dot{u} J˙cu=Jcu˙
运动的约束一致方程可以简洁地表示为:
在这里插入图片描述

Contact Switches and Impact Collisions

硬接触模型要求将系统动力学分析细分为两个区间,分别对接触情况变化前后的影响进行分析。
撞击本身是一种复杂的物理现象,发生在两个或多个物体相互碰撞时。撞击的特点是持续时间很短,峰值力很高,导致能量的迅速耗散和大的加速度。为了模拟能量传递和耗散过程,采用了各种系数,如恢复系数和脉冲比。将这一过程理想化,分别考虑撞击是一个无限小的短过程,需要包括物体接触时速度的瞬时变化。

Impulse Transfer

为了求解接触脉冲,我们使用时间为 t 0 {{t}_{0}} t0的单点运动积分方程
在这里插入图片描述
分别为冲击力 F c {{F}_{c}} Fc和撞击前后的广义速度u-和u+
假设一个具有牛顿碰撞定律的完美非弹性碰撞,所有被认为是碰撞一部分的接触点 瞬间静止( r ˙ c + = J c u + = 0 \dot{r}_{c}^{+}={{J}_{c}}{{u}^{+}}=0 r˙c+=Jcu+=0
将该碰撞后约束与运动积分方程相结合,可以求解出冲力为:在这里插入图片描述
通过考虑定义impulse = mass * speed 的基本力学来更详细地分析这种形式,我们确定在支撑点处看到的惯性为所谓的末端执行器惯性:
在这里插入图片描述
将(3.67)代入(3.66)可得广义速度的瞬时变化:
在这里插入图片描述
再次使用之前介绍的动态一致支持零空间投影仪 N c {{N}_{c}} Nc的命名法,碰撞后广义速度由
在这里插入图片描述
通过满足碰撞后接触约束得到的结果是直观的:Using the support null-space projector Nc , the pre-impact velocity u− is projected onto the support consistent manifold.

Energy Loss

接触情况的瞬时变化总是与动能损失有关。这可以在广义坐标中量化,或者作为末端执行器惯性和支撑点速度变化的函数
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/549542.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

小程序-基础加强(二):使用npm包

使用npm包 1.小程序对npm的支持与限制 目前,小程序中已经支持使用npm安装第三方包,从而来提高小程序的开发效率。但是,在小程序中使用npm包有如下3个限制: ①不支持依赖于Node.js内置库的包 ②不支持依赖于浏览器内置对象的包 …

Springboot +spring security,登录表单进阶配置及原理分析

一.简介 登录表单配置实操 二.创建项目 如何创建一个SpringSecurity项目,前面文章已经有说明了,这里就不重复写了。 三.配置默认用户信息 配置文件添加如下用户信息,代码如下: spring:security:user:name: lglbcpassword: 1…

HNU数据结构与算法分析-作业7-算法设计技术

1. (简答题, 10分)请简述分治法所能解决的问题一般具有哪些特征? 2. (简答题, 10分)请简述动态规划法的四个求解步骤。 3. (简答题, 10分)请比较动态规划法和贪心法,并写出两者的区别。 4. (简答题, 10分)请写出分支限界法和回溯法的区别。 二. 算法设计…

chatgpt赋能Python-pythonendswith

Python endswith方法:介绍、用法和示例 在编程中,经常需要查找字符串是否以特定字符结尾。Python提供了一个方便易用的方法——endswith()。 什么是Python endswith()方法? Python endswith()方法是用于检查字符串是否以特定子字符串结尾的…

第六章总结-莫凡商城的注册、登录功能

1.微信小程序表单组件 1.1button按钮组件 type的属性值有三种 primary 绿色default 白色warn 红色 除了这种方式可以设置按钮大小,还有其他的通过视图来控制按钮的方式,因为我们知道,微信小程序的按钮并不都是这三种颜色。其他方式比如把按…

Web APIs之DOM

一.Web API基本认知 二.获取DOM对象 三.操作元素内容 四. 操作元素属性 五.定时器-间歇函数 一、Web API基本认知 *作用和分类 *什么是DOM *DOM树 *DOM对象 1.作用和分类 (1)作用:使用JS去操作html和浏览器 (2&#xff09…

service mesh学习

背景 单体服务的痛点导致单体服务被拆分为多个微服 每个微服必须要解决负载均衡、服务发现、熔断等功能 为了让上层开发更加快速和无需关注通用能力,在网络栈和应用业务层之间抽出一个透明网络代理层。 Service Mesh 轻量级网络代理,负责微服之间的通…

H5 实现蜂巢(六边形)导航,支持用户交互和动态添加,纯css实现无需布局计算

最近公司的项目出了版新的UI设计图,所以准备进行样式改版 而其中就有个导航要改成蜂巢(六边形)导航,当我看到时其实也挺迷糊的。 说一下我一开始的想法哈: 我一开始是打算使用背景颜色线性渐变 或者 用4个子元素覆盖4角 来实现 六边形的视觉…

二、数据字典开发

文章目录 二、数据字典开发1、搭建service-cmn模块1.1 搭建service-cmn模块1.2 修改配置1.3 启动类 2、数据字典列表2.1 数据字典列表接口2.1.1 model模块添加数据字典实体2.1.2 添加数据字典mapper2.1.4 添加数据字典controller 2.2 数据字典列表前端2.2.1 添加路由2.2.2 定义…

centos 8 安装nacos2.0.3

去官网下载软件包 下载地址:https://github.com/alibaba/nacos/releases 上传到服务器指定位置,并解压 修改nacos存储为数据库 vi /xxx/nacos/conf/application.properties ## 在最后添加以下内容 spring.datasource.platformmysql db.num1 db.url.0j…

chatgpt赋能Python-pythonend

Pythonend – 一站式 Python SEO 工具 Pythonend 是一款基于 Python 的 SEO 工具,它为企业和个人提供了一站式的 SEO 解决方案。无论您是想要提高网站排名、监测关键词排名、分析竞争对手或进行网站优化,Pythonend 都可以帮助您解决这些问题。 Pythone…

【Linux】——进程信号

目录 信号入门 生活的角度 技术应用的角度 信号列表 信号处理常见方式概览 信号产生 通过终端按键产生信号 核心转储 调用系统函数向进程发信号 由软件条件产生信号 SIGPIPE信号 SIGALRM信号 硬件异常产生信号 阻塞信号 信号其他相关常见概念 内核中…

软件测试:测试用例

一、通用测试用例八要素  1、用例编号;   2、测试项目;   3、测试标题;   4、重要级别;   5、预置条件;   6、测试输入;   7、操作步骤;   8、预期输出 二、具体分析通用测试用…

红帽6.5进入单用户重置root密码

前言 ​一、重启Linux系统 二、按 “e” 键进入该界面 三、上下键选中第二个kernel选项,继续按 “e” 键进行编辑。 五、根据提示按下按键“b”,进入单用户模式引导 六、进入到单用户模式,修改密码 七、重启系统 八、进行登录 前言 大…

图片转excel表格,人工处理与OCR方案的优劣对比

随着信息化进程的发展,我们常常需要将图片文件中的表格信息转换成Excel表格文件,并进行后续数据处理和分析。对于这一需求,常用的解决方案有人工录入和OCR识别两种方式。本文将对这两种方案进行比较,评估其优劣。 一、人工做表并…

二、MongoDB入门

文章目录 一、MongoDB入门1、常用操作1.1 INSERT1.2 Query1.3 Update1.4 Remove1.5 aggregate1.5.1 插入数据1.5.2 统计sum1.5.3 常见的聚合表达式 1.6 索引 一、MongoDB入门 1、常用操作 1.1 INSERT > db.User.save({name:zhangsan,age:21,sex:true}) > db.User.find…

linux(inode)学习

目录: 1.认识磁盘结构 2.没有被打开的文件在磁盘里是怎么保存的 ------------------------------------------------------------------------------------------------------------------------------ 如果一个文件没有被打开,这个文件在哪里呢&#…

卡方检验.医学统计实例详解

卡方检验是一种常用的假设检验方法,通常用于分析两个或多个分类变量之间的关系。在医学研究中,卡方检验被广泛应用于分析两种或多种治疗方法的疗效,或者分析某种疾病的发病率与某些危险因素之间的关系。下面我们来看一个卡方检验在医学实例中…

虚幻商城模型转MetaHuman

一、导入虚幻商城的模型到UE 1.去虚幻商城下载一个人物模型,这里以SchoolGirl为例 2.导入UE,并找到模型,这里是SkeletalMesh 二、启动MetaHuman插件 1.通过Edit->Plugins启用MetaHuman和MetaHumanSDK插件,这里MetaHuman插件是用于创建MetaHuman的,MetaHumanSDK插件…