当前位置: 首页 > article >正文

四足机器人单腿逆运动学几何计算

目标:由给定腿部几何参数和计算出的x/y/z坐标求取关节转动的角度,得到关节转角才能计算电机需要的转角。

三关节腿部概念图

如下图是单腿零位示意图,设电机顺时针转动,角度为正,逆时针转动,角度为负。
在这里插入图片描述
看一下一点简单的转动。
在这里插入图片描述

几何计算

现给一个又一定x/y/z坐标的三关节腿。
在这里插入图片描述
在这里插入图片描述

图1

tan ⁡ α 1 = y z \tan\alpha_1=\frac yz tanα1=zy
tan ⁡ ( θ 0 + α 2 ) = L y z h \tan(\theta_0+\alpha_2)=\frac {L_{yz}}h tan(θ0+α2)=hLyz
变换一下得到θ0.
θ 0 = arctan ⁡ L y z h − ( π 2 − arctan ⁡ y z ) \theta_0=\arctan\frac {L_{yz}}h-(\frac\pi2-\arctan\frac yz) θ0=arctanhLyz(2πarctanzy)
其中,Lyz是 大腿根部 到 足端投影到yoz平面点 的长度,后面转换成大腿小腿二维平面时计算。

本来在代码中我在只有大腿小腿的二维平面中,计算(x’, z’)来求θ1和θ2,在三维坐标下不能再使用这个z’
在这里插入图片描述

图2

图3

图3

从原点到足端,有一个三棱柱的几何关系图,后面会用到
图4

图4

图5

图5

x 2 + y 2 + z 2 = d 2 x^2+y^2+z^2=d^2 x2+y2+z2=d2
y 2 + z 2 − h 2 = z ′ 2 y^2+z^2-h^2=z'^2 y2+z2h2=z′2
z ′ 2 + x 2 = L 2 z'^2+x^2=L^2 z′2+x2=L2
这样就求得大腿根部到足端的距离L(其实看髋部垂直大腿小腿平面就得到这个勾股式子):
L = x 2 + y 2 + z 2 − h 2 L=\sqrt{x^2+y^2+z^2-h^2} L=x2+y2+z2h2
再回到上面的式子,就可以求Lyz了:
L y z = L 2 − x 2 L_{yz}=\sqrt{L^2-x^2} Lyz=L2x2
有了Lyz就可以从上面的计算得到θ0。接下来利用余弦定理求θ1和θ2:
c o s ( π 2 − θ 2 ) = L 1 2 + L 2 2 − L 2 2 L 1 L 2 θ 2 = π − a r c c o s L 1 2 + L 2 2 − L 2 2 L 1 L 2 θ 1 = a r c c o s L 1 2 + L 2 − L 2 2 2 L 1 L + a r c t a n x L y z cos({\frac π2} -θ_2)={\frac {L_1^2+L_2^2-L^2}{2L_1L_2}} \\ θ_2=π -arccos{\frac {L_1^2+L_2^2-L^2}{2L_1L_2}} \\ θ_1=arccos{\frac {L_1^2+L^2-L_2^2}{2L_1L}}+arctan{\frac x{L_{yz}}} cos(2πθ2)=2L1L2L12+L22L2θ2=πarccos2L1L2L12+L22L2θ1=arccos2L1LL12+L2L22+arctanLyzx


http://www.kler.cn/a/414168.html

相关文章:

  • 在React中实践一些软件设计思想 ✅
  • 百度 文心一言 vs 阿里 通义千问 哪个好?
  • Spring JDBC 和 事务控制——(1)
  • Z2400027基于Java+SpringBoot+Mysql+thymeleaf引擎的图书馆管理系统的设计与实现 代码 论文
  • 【Maven】功能和核心概念
  • 透视投影(Perspective projection)与等距圆柱投影(Equirectangular projection)
  • flink学习(11)——state
  • 误使用git stash drop删掉本地保存,如何恢复
  • 51单片机从入门到精通:理论与实践指南常用资源篇(四)
  • C++ 基础04
  • 深入解析 Canny 边缘检测:原理、步骤与实践应用全攻略
  • Redis的基础知识·
  • java虚拟机——jvm是怎么去找垃圾对象的
  • word emailing + vba拆分word文件并转pdf
  • json转sql建表语句
  • Proteus 8.17的详细安装教程
  • IDEA报错: java: JPS incremental annotation processing is disabled 解决
  • 【电力行业标准】《电力信息化软件工程度量规范》(DL/T 2015-2019)-费用标准解读系列20
  • Python 散列类型:数据索引与处理的智慧密钥
  • 深度学习Pytorch中的模型保存与加载方法