Grasping and Manipulation
Single Contact
We have composite configuration as \(q = (q_1,q_2)\). We define a distance function \(d(q)\) between the bodies that is positive when they are separated, 0 when they are touching, and negative when they are in penetration (穿透).
when \(d(q)>0\), we look at the time derivatives, \(\dot{d}\), \(\ddot{d}\) etc., to determine whether the bodies stay in contact or break apart as they follow a particular trajectory \(q(t)\).
首先,我们假设两个物体最初在一个点上接触 (d = 0)。
-
接下来,给出了距离函数 d 的前两个时间导数:
- 一阶导数: \(\dot{d} = \frac{\partial d}{\partial q} \dot{q}\) 这里,\(\frac{\partial d}{\partial q}\) 是 d 对广义坐标 q 的偏导数,\(\dot{q}\) 是广义速度。它表示 \(d\) 随时间变化的速率。
- 二阶导数: \(\ddot{d} = \dot{q}^T \frac{\partial^2 d}{\partial q^2} \dot{q} + \frac{\partial d}{\partial q} \ddot{q}\) 这里,\(\frac{\partial^2 d}{\partial q^2}\) 是 \(d\) 对广义坐标 \(q\) 的二阶偏导数,\(\ddot{q}\) 是广义加速度。它表示 \(d\) 随时间变化的加速度
-
术语 \(\frac{\partial d}{\partial q}\) 和 \(\frac{\partial^2 d}{\partial q^2}\) 包含了局部接触几何的信息:
- 梯度向量 \(\frac{\partial d}{\partial q}\) 对应于与接触法线相关的 q 空间中的分离方向(图 12.2, 补充)。
- 接触法线(contact normal)是当两个物体在一个点上接触时垂直于接触表面的单位向量
- 接触法线决定了两个物体在接触点处分离的方向
- 矩阵 \(\frac{\partial^2 d}{\partial q^2}\) 编码了关于接触点处物体相对曲率 (relative curvature) 的信息
- 曲率是描述曲面或曲线局部弯曲程度的度量
- 当两个物体接触时,它们在接触点处的曲率可能不同。相对曲率描述了这种差异
- 梯度向量 \(\frac{\partial d}{\partial q}\) 对应于与接触法线相关的 q 空间中的分离方向(图 12.2, 补充)。
Contact Type
Rolling, Sliding, and Breaking Free
首先来讨论两个物体在单点接触时候的滚动滑动运动。
-
保持接触的约束是完整约束,即 \(d(q) = 0\)。
-
保持接触的必要条件是 \(\dot{d} = 0\)。我们希望将速度约束 \(\dot{d} = 0\) 写成基于contact normal的形式,而不需要显式的距离函数(图 12.2)。
-
令 \(\hat{n} \in \mathbb{R}^3\) 为与接触法线对齐的单位向量,在世界坐标系中表示。令 \(p_A \in \mathbb{R}^3\) 和 \(p_B \in \mathbb{R}^3\) 分别为物体 A 和物体 B 上接触点在世界坐标系中的表示
- 数学表示中,\(\hat{n} \in \mathbb{R}^3\) 中的 3 表示向量 \(\hat{n}\) 属于三维欧几里得空间
- \(\mathbb{R}\) 表示实数集合,而 \(\mathbb{R}^3\) 表示由三个实数组成的有序三元组 \((x, y, z)\) 的集合,其中 \(x\), \(y\), \(z\) 都是实数
- 向量 \(\hat{n}\) 是一个三维向量,因为它表示三维空间中的接触法线方向。
-
虽然接触点向量 \(p_A\) 和 \(p_B\) 最初是相同的,但速度 \(\dot{p}_A\) 和 \(\dot{p}_B\) 可能不同。因此,条件 \(\dot{d} = 0\) 可以写成:
\[\hat{n}^T(\dot{p}_A - \dot{p}_B) = 0 \tag{1.3} \]
物体 A 和 B 在空间坐标系中的旋量(twist) \(V_A = (\omega_A, v_A)\) 和 \(V_B = (\omega_B, v_B)\) 表示。注意:
将不可穿透约束表示为旋量和螺旋的形式,其中旋量表示物体的速度和角速度,螺旋表示沿接触法线方向的单位力。这种表示方式将运动学和静力学的概念结合在一起。
重新总结一下,不然有点math dense.
想象你有两个物体,比如一个球和一个盒子,它们在某个点上接触。现在,如果我们想让球在盒子表面滚动或滑动,而不是穿透到盒子内部,我们需要满足一些条件。
- 首先,我们知道球和盒子在接触点处的速度可能不同。为了保持接触,我们要求球和盒子在垂直于接触面的方向上的相对速度为零。这就是所谓的"法线方向"。
- 接下来,我们考虑到球不能穿透到盒子内部。为了实现这一点,我们要求球相对于盒子在法线方向上的速度大于等于零。这意味着球可以沿着盒子表面移动,但不能向盒子内部移动。
- 为了更方便地描述物体的运动,我们引入了"旋量"的概念。旋量就像一个包含物体旋转和平移运动信息的数学工具。我们用旋量来表示球和盒子的运动。
- 另一个重要的概念是"螺旋",它包含了力和力矩的信息。我们定义了一个特殊的螺旋,它对应于沿接触面法线方向施加的单位力。(这里要扩展一些)
- 尽管在分析物体运动时,我们不一定需要考虑力,但引入螺旋的概念可以帮助我们更方便地分析接触力。
- 最后,我们将不可穿透条件表示为旋量和螺旋的关系。这个关系确保了球相对于盒子的运动满足接触约束,不会发生穿透。
Form Closure
"Form closure of a body is achieved if a set of stationary constraints prevents all motion of the body. If these constraints are provided by robot fingers, we call this a form-closure grasp".
本文作者:Kane,转载请注明原文链接:https://www.cnblogs.com/hackerk/p/18098491