[足式机器人]Part3 机构运动学与动力学分析与建模 Ch01-1 刚体系统的运动学约束

本文主要是介绍[足式机器人]Part3 机构运动学与动力学分析与建模 Ch01-1 刚体系统的运动学约束,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文仅供学习使用,总结很多本现有讲述运动学或动力学书籍后的总结,从矢量的角度进行分析,方法比较传统,但更易理解,并且现有的看似抽象方法,两者本质上并无不同。
2024年底本人学位论文发表后方可摘抄
若有帮助请引用
本文参考:
《空间机构的分析与综合(上册)》-张启先,感谢张启先先生对机构学的卓越贡献,希望下册有见天明之日!
《高等机构学》-白师贤
《高等空间机构学》-黄真
《机构运动微分几何学分析与综合》-王德伦

食用方法
自由度?约束——本质含义是什么?如何表达?
系统的自由度?广义坐标的自由度?
如何表示约束方程?
务必自己计算自由度,了解约束的含义

机构运动学与动力学分析与建模 Ch00-1-1 刚体系统的运动学约束


1. 广义坐标与约束

1.1 参考坐标

根据上述章节的学习,我们知道:

  • 空间中对某一的表述,需要3个位姿参数(比如点的坐标)——即需要3个约束方程;
  • 空间中对某一矢量的表述,需要2个位姿参数(比如球坐标系下的两个角度值)——即需要2个约束方程;
  • 空间中对某一直线的表述,需要5个位姿参数(给定点+给定矢量)——即需要5个约束方程;
  • 空间中对某一平面的表述,需要4个位姿数(给定矢量+矢量方向上的位置)——即需要4个约束方程;
  • 空间中对某一刚体的表述,需要6个位姿参数(给定点+矢量方向+沿矢量方向的转角)——即需要6个约束方程;

这些例子对于我们理解运动副有很大的作用

而对于刚体系统而言,其运动坐标系的参考坐标具体表示,与所选择的表示方法有关:用符号 q ⃗ Σ M F \vec{q}_{\varSigma _{\mathrm{M}}}^{F} q ΣMF来表示刚体 Σ M \varSigma _{\mathrm{M}} ΣM在坐标系 { F } \left\{ F \right\} {F}下的广义坐标参数。展开可写为:
q ⃗ Σ M F = [ R ⃗ Σ M F θ ⃗ Σ M F ] \vec{q}_{\varSigma _{\mathrm{M}}}^{F}=\left[ \begin{array}{c} \vec{R}_{\varSigma _{\mathrm{M}}}^{F}\\ \vec{\theta}_{\varSigma _{\mathrm{M}}}^{F}\\ \end{array} \right] q ΣMF=[R ΣMFθ ΣMF]
其中: R ⃗ Σ M F \vec{R}_{\varSigma _{\mathrm{M}}}^{F} R ΣMF表示体坐标系 { M } \left\{ M \right\} {M}在固定坐标系 { F } \left\{ F \right\} {F}下的位置参数, θ ⃗ Σ M F \vec{\theta}_{\varSigma _{\mathrm{M}}}^{F} θ ΣMF表示刚体的姿态参数(欧拉角,四元数,罗德里格斯参数等),对于不同的表达方式, q ⃗ Σ M F \vec{q}_{\varSigma _{\mathrm{M}}}^{F} q ΣMF有不同的维数。

1.2 约束

若一个系统由多个刚体之间的相互作用组成(存在运动副连接),此时该系统中每个单独刚体的运动,都会受到其他部分的影响——确立一组相互独立的广义坐标(即自由度——此时的自由度表示为所需的广义坐标数量,即需要几个自由度才能完整的描述该系统各个构件状态),运动学约束即上述的约束方程,几个约束方程即限制了几个自由度。

对于一个多体系统而言,其广义坐标的数目为 n n n,这些刚体之间存在 n c n_{\mathrm{c}} nc个约束方程

若能将约束方程写成如下的矩阵形式:
C ( q ⃗ , t ) = [ C 1 ( q ⃗ , t ) C 2 ( q ⃗ , t ) ⋮ C n c ( q ⃗ , t ) ] = C ( q ⃗ 1 , q ⃗ 2 , ⋯   , q ⃗ n , t ) \boldsymbol{C}\left( \vec{\boldsymbol{q}},t \right) =\left[ \begin{array}{c} C_1\left( \vec{\boldsymbol{q}},t \right)\\ C_2\left( \vec{\boldsymbol{q}},t \right)\\ \vdots\\ C_{\mathrm{n}_{\mathrm{c}}}\left( \vec{\boldsymbol{q}},t \right)\\ \end{array} \right] =\boldsymbol{C}\left( \vec{q}_1,\vec{q}_2,\cdots ,\vec{q}_{\mathrm{n}},t \right) C(q ,t)= C1(q ,t)C2(q ,t)Cnc(q ,t) =C(q 1,q 2,,q

这篇关于[足式机器人]Part3 机构运动学与动力学分析与建模 Ch01-1 刚体系统的运动学约束的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/658351

相关文章

使用Python构建一个高效的日志处理系统

《使用Python构建一个高效的日志处理系统》这篇文章主要为大家详细讲解了如何使用Python开发一个专业的日志分析工具,能够自动化处理、分析和可视化各类日志文件,大幅提升运维效率,需要的可以了解下... 目录环境准备工具功能概述完整代码实现代码深度解析1. 类设计与初始化2. 日志解析核心逻辑3. 文件处

SpringBoot中六种批量更新Mysql的方式效率对比分析

《SpringBoot中六种批量更新Mysql的方式效率对比分析》文章比较了MySQL大数据量批量更新的多种方法,指出REPLACEINTO和ONDUPLICATEKEY效率最高但存在数据风险,MyB... 目录效率比较测试结构数据库初始化测试数据批量修改方案第一种 for第二种 case when第三种

解决1093 - You can‘t specify target table报错问题及原因分析

《解决1093-Youcan‘tspecifytargettable报错问题及原因分析》MySQL1093错误因UPDATE/DELETE语句的FROM子句直接引用目标表或嵌套子查询导致,... 目录报js错原因分析具体原因解决办法方法一:使用临时表方法二:使用JOIN方法三:使用EXISTS示例总结报错原

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon

Android kotlin中 Channel 和 Flow 的区别和选择使用场景分析

《Androidkotlin中Channel和Flow的区别和选择使用场景分析》Kotlin协程中,Flow是冷数据流,按需触发,适合响应式数据处理;Channel是热数据流,持续发送,支持... 目录一、基本概念界定FlowChannel二、核心特性对比数据生产触发条件生产与消费的关系背压处理机制生命周期

怎样通过分析GC日志来定位Java进程的内存问题

《怎样通过分析GC日志来定位Java进程的内存问题》:本文主要介绍怎样通过分析GC日志来定位Java进程的内存问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、GC 日志基础配置1. 启用详细 GC 日志2. 不同收集器的日志格式二、关键指标与分析维度1.

MySQL中的表连接原理分析

《MySQL中的表连接原理分析》:本文主要介绍MySQL中的表连接原理分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、环境3、表连接原理【1】驱动表和被驱动表【2】内连接【3】外连接【4编程】嵌套循环连接【5】join buffer4、总结1、背景

python中Hash使用场景分析

《python中Hash使用场景分析》Python的hash()函数用于获取对象哈希值,常用于字典和集合,不可变类型可哈希,可变类型不可,常见算法包括除法、乘法、平方取中和随机数哈希,各有优缺点,需根... 目录python中的 Hash除法哈希算法乘法哈希算法平方取中法随机数哈希算法小结在Python中,