[足式机器人]Part3 机构运动学与动力学分析与建模 Ch01-2 完整定常系统——杆组RRR

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

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

食用方法
什么是杆组?——自行学习机械原理内容
理解为什么需要编写杆组程序——基本杆组自由度为0
杆组程序的好处——所有机构都可拆分杆组,无需从头推导闭环矢量方程
六杆机构是不是也很简单了?
三级杆组?四级杆组?你能编写么?
务必自己计算编写程序

机构运动学与动力学分析与建模 Ch00-1-2 完整定常系统——杆组RRR

  • 1. RRR杆组
    • 1.1 公式推导
      • 1.1.1几何法
      • 1.1.2 公式推导——三角函数求解法
    • 1.2 程序说明
      • 1.2.1 输入变量
      • 1.2.2 输出变量
      • 1.2.3 哑元(中间变量)
      • 1.2.4 输入数据格式
      • 1.2.5 输出数据格式
      • 1.2.6 计算流程图
    • 1.3 程序算例
      • 1.3.1 四杆机构+单开链串联
      • 1.3.2 五杆机构——逆解
      • 1.3.3 双平行四边形——逆解
      • 1.3.4 七杆机构——优化求解


1. RRR杆组

1.1 公式推导

1.1.1几何法

下述公式中的投影参数都是基于坐标系 { F } \left\{ F \right\} {F}进行描述的

已知杆组RRR两端回转副位置参数: A : ( x A , y A ) , C : ( x C , y C ) A:(x_A,y_A),C:(x_C,y_C) A:(xA,yA),C:(xC,yC) ,求解中间回转副B位置参数(要求B点位置存在——满足三角形存在条件)
在这里插入图片描述
其中,AC长为: l A C = ( x C − x A ) 2 + ( y C − y A ) 2 l_{AC}=\sqrt{(x_C-x_A)^2+(y_C-y_A)^2} lAC=(xCxA)2+(yCyA)2 ,且有:
{ φ = a r c tan ⁡ ( z C − z A x C − x A ) ∈ ( − π 2 , π 2 ) d = l A C α 1 = a r c cos ⁡ ( l A B 2 + l A C 2 − l B C 2 2 l A B l A C ) ∈ ( 0 , π ) α 2 = a r c cos ⁡ ( l A B 2 + l B C 2 − l A C 2 2 l A B l B C ) ∈ ( 0 , π ) α 3 = a r c cos ⁡ ( l A C 2 + l B C 2 − l A B 2 2 l A C l B C ) ∈ ( 0 , π ) \left\{ \begin{array}{c} \varphi =\mathrm{arc}\tan \left( \frac{z_C-z_A}{x_C-x_A} \right) \in (-\frac{\pi}{2},\frac{\pi}{2})\\ d=l_{AC}\\ \alpha _1=\mathrm{arc}\cos \left( \frac{{l_{AB}}^2+{l_{AC}}^2-{l_{BC}}^2}{2l_{AB}l_{AC}} \right) \in (0,\pi )\\ \alpha _2=\mathrm{arc}\cos \left( \frac{{l_{AB}}^2+{l_{BC}}^2-{l_{AC}}^2}{2l_{AB}l_{BC}} \right) \in (0,\pi )\\ \alpha _3=\mathrm{arc}\cos \left( \frac{{l_{AC}}^2+{l_{BC}}^2-{l_{AB}}^2}{2l_{AC}l_{BC}} \right) \in (0,\pi )\\ \end{array} \right. φ=arctan(xCxAzCzA)(2π,2π)d=lACα1=arccos(2lABlAClAB2+lAC2lBC2)(0,π)α2=arccos(2lABlBClAB2+lBC2lAC2)(0,π)α3=arccos(2lAClBClAC2+lBC2lAB2)(0,π)
建立闭环矢量方程: R ⃗ F A + l ⃗ A B + l ⃗ B C = R ⃗ F C \vec{R}_{FA}+\vec{l}_{AB}+\vec{l}_{BC}=\vec{R}_{FC} R FA+l AB+l BC=R FC ,向固定坐标系基矢量投影,可得:
{ i ^ f : x A + l A B cos ⁡ θ A + l B C cos ⁡ θ B = x C j ^ f : y A + l A B sin ⁡ θ A + l B C sin ⁡ θ B = y C \left\{ \begin{array}{l} \hat{i}^f:x_A+l_{AB}\cos \theta _A+l_{BC}\cos \theta _B=x_C\\ \hat{j}^f:y_A+l_{AB}\sin \theta _A+l_{BC}\sin \theta _B=y_C\\ \end{array} \right. {i^f:xA+lABcosθA+lBCcosθB=xCj^f:yA+lABsinθA+lBCsinθB=yC
其中,位置参数 A : ( x A , y A ) , C : ( x C , y C ) A:(x_A,y_A),C:(x_C,y_C) A:(xA,yA),C:(xC,yC)已知 ,杆长 l A B , l B C l_{AB},l_{BC} lAB,lBC已知,求解可得:
θ A 1 = { φ + α 1 ( x C − x A ≥ 0 ) φ + α 1 + π ( x C − x A ≤ 0 ) , θ A 2 = { φ − α 1 ( x C − x A ≥ 0 ) φ − α 1 + π ( x C − x A ≤ 0 ) \theta _{A1}=\left\{ \begin{array}{c} \varphi +\alpha _1(x_C-x_A\ge 0)\\ \varphi +\alpha _1+\pi (x_C-x_A\le 0)\\ \end{array} \right. ,\theta _{A2}=\left\{ \begin{array}{c} \varphi -\alpha _1(x_C-x_A\ge 0)\\ \varphi -\alpha _1+\pi (x_C-x_A\le 0)\\ \end{array} \right. θA1={φ+α1(xCxA0)φ+α1+π(xCxA0),θA2={φα1(xCxA0)φα1+π(xCxA0)
θ B 1 = θ A 1 − π + α 2 , θ B 2 = θ A 2 − π − α 2 \theta _{B1}=\theta _{A1}-\pi +\alpha _2,\theta _{B2}=\theta _{A2}-\pi -\alpha _2 θB1=θA1π+α2,θB2=θA2πα2
则B点坐标为: ( x A + l A B cos ⁡ θ A , y A + l A B sin ⁡ θ A ) (x_A+l_{AB}\cos \theta _A,y_A+l_{AB}\sin \theta _A) (xA+lABcosθA,yA+lABsinθA)

  • 构件运动参数:
    将闭环矢量方程对时间 t t t 求导:

这篇关于[足式机器人]Part3 机构运动学与动力学分析与建模 Ch01-2 完整定常系统——杆组RRR的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

SpringBoot多数据源配置完整指南

《SpringBoot多数据源配置完整指南》在复杂的企业应用中,经常需要连接多个数据库,SpringBoot提供了灵活的多数据源配置方式,以下是详细的实现方案,需要的朋友可以参考下... 目录一、基础多数据源配置1. 添加依赖2. 配置多个数据源3. 配置数据源Bean二、JPA多数据源配置1. 配置主数据

Java程序进程起来了但是不打印日志的原因分析

《Java程序进程起来了但是不打印日志的原因分析》:本文主要介绍Java程序进程起来了但是不打印日志的原因分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java程序进程起来了但是不打印日志的原因1、日志配置问题2、日志文件权限问题3、日志文件路径问题4、程序

SpringBoot中配置Redis连接池的完整指南

《SpringBoot中配置Redis连接池的完整指南》这篇文章主要为大家详细介绍了SpringBoot中配置Redis连接池的完整指南,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以... 目录一、添加依赖二、配置 Redis 连接池三、测试 Redis 操作四、完整示例代码(一)pom.

Java字符串操作技巧之语法、示例与应用场景分析

《Java字符串操作技巧之语法、示例与应用场景分析》在Java算法题和日常开发中,字符串处理是必备的核心技能,本文全面梳理Java中字符串的常用操作语法,结合代码示例、应用场景和避坑指南,可快速掌握字... 目录引言1. 基础操作1.1 创建字符串1.2 获取长度1.3 访问字符2. 字符串处理2.1 子字

Python 迭代器和生成器概念及场景分析

《Python迭代器和生成器概念及场景分析》yield是Python中实现惰性计算和协程的核心工具,结合send()、throw()、close()等方法,能够构建高效、灵活的数据流和控制流模型,这... 目录迭代器的介绍自定义迭代器省略的迭代器生产器的介绍yield的普通用法yield的高级用法yidle

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

C++ Sort函数使用场景分析

《C++Sort函数使用场景分析》sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变,如果某些场景需要保持相同元素间的相对顺序,可使... 目录C++ Sort函数详解一、sort函数调用的两种方式二、sort函数使用场景三、sort函数排序

kotlin中const 和val的区别及使用场景分析

《kotlin中const和val的区别及使用场景分析》在Kotlin中,const和val都是用来声明常量的,但它们的使用场景和功能有所不同,下面给大家介绍kotlin中const和val的区别,... 目录kotlin中const 和val的区别1. val:2. const:二 代码示例1 Java

在React中引入Tailwind CSS的完整指南

《在React中引入TailwindCSS的完整指南》在现代前端开发中,使用UI库可以显著提高开发效率,TailwindCSS是一个功能类优先的CSS框架,本文将详细介绍如何在Reac... 目录前言一、Tailwind css 简介二、创建 React 项目使用 Create React App 创建项目

Go标准库常见错误分析和解决办法

《Go标准库常见错误分析和解决办法》Go语言的标准库为开发者提供了丰富且高效的工具,涵盖了从网络编程到文件操作等各个方面,然而,标准库虽好,使用不当却可能适得其反,正所谓工欲善其事,必先利其器,本文将... 目录1. 使用了错误的time.Duration2. time.After导致的内存泄漏3. jsO