动力学中的普法夫约束(Pfaffian constraint)是一种用以下形式描述系统的方式:
[1]
其中
是系统限制方程的个数。
非完整系统一定可以表示为普法夫约束的形式。
假设一个用以下非完整约束方程组描述的非完整系统
![{\displaystyle f_{r}(u_{1},u_{2},u_{3},\ldots ,u_{n},t)=0;\;r=1,\ldots ,L}](https://wikimedia.org/api/rest_v1/media/math/render/svg/20a9a400882673a76a68ba4c2cff7c9b3ff144de)
其中
是n个描述系统的广义座标,而
是系统约束方程的数量,可以将每一个方程用连锁律微分:
![{\displaystyle \sum _{s=1}^{n}{\frac {\partial f_{r}}{\partial u_{s}}}du_{s}+{\frac {\partial f_{r}}{\partial t}}dt=0;\;r=1,\ldots ,L}](https://wikimedia.org/api/rest_v1/media/math/render/svg/2e9d9032d62fb341c8b820d900a3cd934c34c82d)
经过置换后可以得到下式:
![{\displaystyle \sum _{s=1}^{n}A_{rs}du_{s}+A_{r}dt=0;\;r=1,\ldots ,L}](https://wikimedia.org/api/rest_v1/media/math/render/svg/07a793ccab17a692dabdc9bfe5143e16cac4b5bc)
单摆
考虑单摆,其重物的运动会受到摆长的约束,其重物的速度向量
随时都会和位置向量
垂直。因为二个向量永远正交,因此其点积恒为零。重物的位置和速度可以用以下
-
座标系统中的系统来定义:
![{\displaystyle {\overrightarrow {L}}\cdot {\overrightarrow {V}}={\begin{bmatrix}x\\y\end{bmatrix}}\cdot {\begin{bmatrix}{\dot {x}}\\{\dot {y}}\end{bmatrix}}=0}](https://wikimedia.org/api/rest_v1/media/math/render/svg/c072688d0b5eefbf475852dd5a96e493f65c7043)
简化点积后可得:
![{\displaystyle x{\dot {x}}+y{\dot {y}}=x{\frac {{\text{d}}x}{{\text{d}}t}}+y{\frac {{\text{d}}y}{{\text{d}}t}}=0}](https://wikimedia.org/api/rest_v1/media/math/render/svg/80e19a9801f4c06631052614279b4c17770f6a32)
将等号两边同乘
,结果就是约束方程的普法夫约束形式:
![{\displaystyle x{\text{d}}x+y{\text{d}}y=0}](https://wikimedia.org/api/rest_v1/media/math/render/svg/7ae73cd83c7839d81a84ac8739a73de90500975b)
普法夫形式很好用,若非完整约束方程存在,可以将普法夫形式积分来求解系统的非完整约束方程。此例中的积分是很明显的:
![{\displaystyle \int x{\text{d}}x+\int y{\text{d}}y=0=x^{2}+y^{2}+C}](https://wikimedia.org/api/rest_v1/media/math/render/svg/f9014cb69417056980870e5d77e6dc98144f5e74)
其中C是积分常数。
也可以写成
![{\displaystyle x^{2}+y^{2}=L^{2}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/3b2c81bda3a34a45e7f451d816d084175b957ce7)
写成平方项只因为其必定是正数。在实际系统中,座标一定都是实数。而
就是单摆的摆长。
机器人[编辑]
机器人运动规划中的普法夫约束(Pfaffian constraint),是由k个线性无关约束的集合,而这些约束都对速度线性,也就是说
轮式机器人(wheeled robot)中滚动不滑动的条件即为普法夫约束[2]。
相关条目[编辑]