gpt4 book ai didi

math - 如何使用动能在刚体动力学仿真中找到位置

转载 作者:行者123 更新时间:2023-12-01 12:32:41 25 4
gpt4 key购买 nike

我正在尝试为我的模拟实现刚体动力学。我正在尝试模拟所附论文中的张拉整体。

我关注的论文是:Dynamic equations of motion for a 3-bar tensegrity based mobile robot

根据这篇论文和我目前所读的内容,一般过程是:

对于每个条:

  • A) 定义杆的姿势 (q) :为此我需要一个位置向量和一个方向向量。我有这个,因为这是我的初始位置。
  • B) 应用初始速度:为 0
  • C) 求动能
  • D) 寻找势能
  • E) 查找扭矩

对于整个系统:

  • A) 求动能
  • B) 寻找势能
  • C) 查找扭矩

我的问题是如何根据动能势能扭矩

据我了解,我需要线加速度和角加速度,然后是线速度和角速度,最后更新姿势(位置和方向)。我不明白我怎么能这样做。

我看了那些书,看了一些笔记,但实际上我不明白该怎么做

  1. 刚体动力学算法,作者:Roy Featherstone
  2. 游戏开发者物理学,David M.Bourg
  3. 基于物理的建模,David Baraff

如果可能,额外说明:

1) 基本上 W 矩阵需要 φ, θ, 的角度,这些角度是整个结构的基本引用系的角度吗?不是每个条形的角度,因为这不是 φι ,我假设它是针对整个系统的?

2)关于移动引用系的惯性矩阵,我理解这必须引用每个条?但是自dM/dq对于整个系统, Imb的矩阵应该是什么? ?

3) 如何分解M(q)

4)在论文中,通过uCo来描述在电缆中。我想尝试别的东西,在中心连接在一起的杆,每个杆都只能轴向移动。所以我想我必须为每个条添加一个力并影响它?

如果您有任何信息,请告诉我好吗?

最佳答案

您的问题的答案是您论文中的方程式 12,它给出了时间 t 处的加速度。

计算加速

如果你仔细观察等式 12,每一项都是先前定义的(除了引力外,每个节点 i 沿 z 轴的引力为 -g * mi ,因此 f gi = [0, 0, -g * mi])。我建议您开始构建/计算这些项中的每一项(考虑到关于 I 的更改基础的评论)。

为了区分M(q),记住所有的milir1ir2i 是常数,因此只有 W 具有非零导数:

differentiating M over q

然后区分里面的每个术语

剩下的只有未知数,也就是加速度,在论文中写为q with 2 dots on top

您现在需要将计算出的所有元素放在等式的右侧,计算结果向量,并对您的 M(q) 进行因式分解,这是 block 对角线所有 Mi(q) 的矩阵,因此这相当于分解每个 Mi(q)。然后您将获得加速度,您可以从中积分速度,进而积分位置。

整合

这在论文中被遗漏了,但并不难。由于您需要速度来计算加速度,因此您必须使用像 Semi-Implicit Euler method 这样的一阶积分器例如。

因此速度和位置应该更新如下:

simple first-order integration

关于math - 如何使用动能在刚体动力学仿真中找到位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32127209/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com