精华内容
下载资源
问答
  • 矢量积
    千次阅读
    2020-05-16 15:09:32

    雅可比矩阵 J ( q ) J(q) J(q) 可以看成是关节空间的速度矢量 q ˙ \dot{q} q˙ 向笛卡尔空间的速度矢量 x ˙ \dot{x} x˙ 的线性映射。雅可比矩阵 J ( q ) J(q) J(q) 依赖于机器人的构形,是一个依赖于 q q q 的线性变换矩阵,雅可比矩阵 J ( q ) J(q) J(q) 不一定是方阵,它可能是长矩阵,也可能是高矩阵, J ( q ) J(q) J(q) 的行数等于机器人在笛卡尔空间中的自由度数,比如平面操作臂的雅可比矩阵有3行,6关节的空间操作臂的雅可比矩阵是6行,对于 n n n 关节的机器人,其雅可比矩阵 J ∈ ℜ 6 × n J\in \Re ^{6 \times n} J6×n 6 × n 6 \times n 6×n的矩阵,其中前3行表示对末端执行器线速度 v v v 的传递比,后3行表示对末端执行器角速度 w w w 的传递比。

    另一方面,每一列代表相应的关节速度 q i ˙ \dot{q_{i}} qi˙ 对末端执行器线速度和角速度的传递比。
    x ˙ = J ( q ) q ˙ (1) \dot{x}=J(q)\dot{q} \tag{1} x˙=J(q)q˙(1)

    [ v w ] = [ J l 1 J l 2 J l 3 J l 4 J l 5 J l 6 J a 1 J a 2 J a 3 J a 4 J a 5 J a 6 ] [ q 1 ˙ q 2 ˙ q 3 ˙ q 4 ˙ q 5 ˙ q 6 ˙ ] (2) \begin{bmatrix} v\\ w \end{bmatrix}=\begin{bmatrix} J_{l1} & J_{l2} & J_{l3} & J_{l4} & J_{l5} & J_{l6}\\ J_{a1} & J_{a2} & J_{a3} & J_{a4} & J_{a5} & J_{a6} \end{bmatrix}\begin{bmatrix} \dot{q_{1}}\\ \dot{q_{2}}\\ \dot{q_{3}}\\ \dot{q_{4}}\\ \dot{q_{5}}\\ \dot{q_{6}} \end{bmatrix} \tag{2} [vw]=[Jl1Ja1Jl2Ja2Jl3Ja3Jl4Ja4Jl5Ja5Jl6Ja6]q1˙q2˙q3˙q4˙q5˙q6˙(2)

    { v = J l 1 q 1 ˙ + J l 2 q 2 ˙ + J l 3 q 3 ˙ ) + J l 4 q 4 ˙ + J l 5 q 5 ˙ + J l 6 q 6 ˙ w = J a 1 q 1 ˙ + J a 2 q 2 ˙ + J a 3 q 3 ˙ + J a 4 q 4 ˙ + J a 5 q 5 ˙ + J a 6 q 6 ˙ (3) \left\{\begin{matrix} v=J_{l1}\dot{q_{1}} + J_{l2}\dot{q_{2}} + J_{l3}\dot{q_{3}}) + J_{l4}\dot{q_{4}} + J_{l5}\dot{q_{5}} + J_{l6}\dot{q_{6}} \\ w=J_{a1}\dot{q_{1}} + J_{a2}\dot{q_{2}} + J_{a3}\dot{q_{3}} + J_{a4}\dot{q_{4}} + J_{a5}\dot{q_{5}} + J_{a6}\dot{q_{6}} \end{matrix}\right. \tag{3} {v=Jl1q1˙+Jl2q2˙+Jl3q3˙)+Jl4q4˙+Jl5q5˙+Jl6q6˙w=Ja1q1˙+Ja2q2˙+Ja3q3˙+Ja4q4˙+Ja5q5˙+Ja6q6˙(3)
    公式(3)中, J l i J_{li} Jli J a i J_{ai} Jai 分别表示关节 i i i 的单位关节速度引起的末端执行器的线速度和角速度。

    下面基于矢量积法,不求导而直接构造出 J l i J_{li} Jli J a i J_{ai} Jai

    Whitney于1972年提出雅可比矩阵的矢量积构造方法。线速度和角速度分别使用 v v v w w w 来表示。而 v v v w w w 与关节速度 q i ˙ \dot{q_{i}} qi˙ 有关。

    (1) 对于移动关节 i i i,在末端执行器上产生与 z i z_{i} zi 相同的线速度 v v v
    [ v w ] = [ z i 0 ] q i ˙ ⇒ J i = [ z i 0 ] (4) \begin{bmatrix} v\\ w \end{bmatrix}=\begin{bmatrix} z_{i}\\ 0 \end{bmatrix}\dot{q_{i}} \Rightarrow J_{i}=\begin{bmatrix} z_{i}\\ 0 \end{bmatrix} \tag{4} [vw]=[zi0]qi˙Ji=[zi0](4)
    (2) 对于旋转关节 i i i ,在末端执行器上产生的角速度 w w w 为:
    w = z i q i ˙ (5) w=z_{i}\dot{q_{i}} \tag{5} w=ziqi˙(5)
    同时在末端执行器上产生的线速度为矢量积,即:
    v = ( z i × i p n 0 ) q ˙ i (6) v=(z_{i} \times {^{i}p^{0}_{n}}) \dot{q}_{i} \tag{6} v=(zi×ipn0)q˙i(6)
    因此,雅可比矩阵的第 i i i 列为:
    J i = [ z i × i p n 0 z i ] = [ z i × ( i 0 R i p n ) z i ] (7) J_{i}=\begin{bmatrix} z_{i} \times {^{i}p^{0}_{n}}\\ z_{i} \end{bmatrix}=\begin{bmatrix} z_{i} \times ({^{0}_{i}R {^{i}p_{n}}})\\ z_{i} \end{bmatrix} \tag{7} Ji=[zi×ipn0zi]=[zi×(i0Ripn)zi](7)
    其中, z i z_{i} zi 是坐标系 { i i i} 的 z 轴单位矢量(在基座坐标系{0}中表示)。

    公式(7)中, i p n 0 ^{i}p^{0}_{n} ipn0 表示末端执行器坐标原点想对于坐标系 { i i i} 的位置矢量在基坐标系{ 0 0 0}中的表示,即:
    i p n 0 = i 0 R i p n (8) ^{i}p^{0}_{n}={^{0}_{i}R{^{i}p_{n}}} \tag{8} ipn0=i0Ripn(8)
    有时,要求沿着工具坐标系的某轴进行控制,因此需要将线速度和角速度在工具坐标系{ T T T}中进行表示。为此,需要在 v v v w w w 前乘以 3 × 3 3\times3 3×3 的旋转矩阵 n 0 R T ^{0}_{n}R^{T} n0RT,即:
    [ n v n w ] = [ n 0 R 0 0 n 0 R T ] [ v w ] = [ n 0 R 0 0 n 0 R T ] J ( q ) q ˙ = T J ( q ) q ˙ (9) \begin{bmatrix} ^{n}v\\ ^{n}w \end{bmatrix}=\begin{bmatrix} ^{0}_{n}R & 0\\ 0 & ^{0}_{n}R^{T} \end{bmatrix}\begin{bmatrix} v\\ w \end{bmatrix}=\begin{bmatrix} ^{0}_{n}R & 0\\ 0 & ^{0}_{n}R^{T} \end{bmatrix}J(q)\dot{q}={^{T}J(q)\dot{q}} \tag{9} [nvnw]=[n0R00n0RT][vw]=[n0R00n0RT]J(q)q˙=TJ(q)q˙(9)
    公式(9)中, T J ( q ) {^{T}J(q)} TJ(q)表示在工具坐标系{ T T T}中的雅可比矩阵。

    ——————————————————————————-——————————————————————

    J i a b i n P a n JiabinPan JiabinPan 原创文章,禁止抄袭,转载请注明出处,谢谢

    更多相关内容
  • 雅可比矩阵的第Ji列: 对于任何一个移动关节,Ji可以这样计算: 而对于任何一个旋转关节,Ji这样计算: ...网上很多地方写的没有注意移动关节和旋转关节的区分,导致出现一些莫名其妙的问题。...

    雅可比矩阵的第Ji列:

    对于任何一个移动关节,Ji可以这样计算:

    而对于任何一个旋转关节,Ji这样计算:

    网上很多地方写的没有注意移动关节和旋转关节的区分,导致出现一些莫名其妙的问题。

    附matlab代码:

    function [J]=Jacobian2(Q)
        for i=1:6
            T0(:,:,i)=eye(4);
            T6(:,:,i)=eye(4);
        end
        Z6=zeros(3,6);
        P6=zeros(3,6);
        T=zeros(4,4,6);
        J=zeros(6,6);
        global alpha;
        global a;
        global d;
        global theta;
        global d0;
        global theta0;
        for i=1:5
            theta(i)=Q(i)+theta0(i);
        end
        d(6)=Q(6)+d0(6);
        for i=1:6
            temp=zeros(4,4);
            temp(1,:)=[cos(theta(i))                    -sin(theta(i))                  0               a(i)                ];
            temp(2,:)=[sin(theta(i))*cos(alpha(i))      cos(theta(i))*cos(alpha(i))     -sin(alpha(i))  -d(i)*sin(alpha(i)) ];
            temp(3,:)=[sin(theta(i))*sin(alpha(i))      cos(theta(i))*sin(alpha(i))     cos(alpha(i))   d(i)*cos(alpha(i))  ];
            temp(4,:)=[0 0 0 1];
            T(:,:,i)=temp;%Ti是i-1到i的变换矩阵
            if i==1
                T0(:,:,i)=temp;
            else
                T0(:,:,i)=T0(:,:,i-1)*temp;
            end
        end
        for i=5:-1:1
            T6(:,:,i)=T(:,:,i+1)*T6(:,:,i+1);
        end
        for i=1:6
            Z6(:,i)=T0(1:3,3,i);
            P6(:,i)=T6(1:3,4,i);
        end
        for i=1:5
            J(:,i)=[cross(Z6(:,i),T0(1:3,1:3,i)*P6(:,i));Z6(:,i)];
        end
        J(:,6)=[Z6(:,6);0;0;0];
    end

    有时候要求按照末端执行器坐标系{n}来执行一些位移旋转之类的操作,在末端执行器坐标系下的雅可比矩阵可以这样计算:

    参考:战强版《机器人学:机构、运动学、动力学及运动规划》 

    展开全文
  • 向量的矢量积计算

    千次阅读 2020-01-04 16:30:51
    如果已知向量和向量,以及他们之间的夹角,那么按照定义它们之间的矢量积数值大小为: ,其方向根据右手定则指向屏幕的内部。 这个结果的数值大小等于平行四边形的面积,理由如下: 如果已知向量a和向量b...

    如果已知向量\overrightarrow{a}和向量\overrightarrow{b},以及他们之间的夹角\theta,那么按照定义它们之间的矢量积数值大小为:

    \left | \overrightarrow{a}\times \overrightarrow{b} \right |=\left|\overrightarrow{a}\right|\cdot \left|\overrightarrow{b}\right|\cdot sin\theta,其方向根据右手定则指向屏幕的内部。

    这个结果的数值大小等于平行四边形的面积,理由如下:

    S_\Delta=\frac{1}{2}*b*h=\frac{1}{2}*b*a*sin\theta

    S_{sqare}=2S_\Delta=a\cdot b\cdot sin\theta

    如果已知向量a和向量b的坐标分别为(a_x,a_y)(b_x,b_y),那结果如下:

    \overrightarrow{a}\times \overrightarrow{b} =(a_x \overrightarrow{i} +a_y\overrightarrow{j})\times(b_x \overrightarrow{i} +b_y\overrightarrow{j})

    \overrightarrow{a}\times \overrightarrow{b} =a_xb_y\overrightarrow{i}\times\overrightarrow{j}+a_yb_x\overrightarrow{j}\times\overrightarrow{i}

    \left | \overrightarrow{a}\times \overrightarrow{b} \right |=a_xb_y-a_yb_x

    另一方面从作图法研究一遍,看看怎么直接求平行四边形的面积:

     

    将红色区域用蓝色替换

    继续将红色区域用蓝色替换

    继续将红色区域用蓝色替换

    于是最后的结果如下

     

     

    展开全文
  • 关于标量积和矢量积的理解

    千次阅读 2020-11-15 01:07:45
    矢量积与标量积的对比 标量积(A⃗⋅B⃗\vec {A} \cdot \vec{B}A⋅B) 矢量积(A⃗×B⃗\vec{A} \times \vec{B}A×B) 运算方式 A⃗⋅B⃗=A⋅B⋅cos(θ)\vec A \cdot \vec B=A \cdot B \cdot cos(\theta)A...

    矢量积与标量积的对比

    标量积( A ⃗ ⋅ B ⃗ \vec {A} \cdot \vec{B} A B 矢量积( A ⃗ × B ⃗ \vec{A} \times \vec{B} A ×B
    运算方式 A ⃗ ⋅ B ⃗ = A ⋅ B ⋅ c o s ( θ ) \vec A \cdot \vec B=A \cdot B \cdot cos(\theta) A B =ABcos(θ) A ⃗ × B ⃗ = A ⋅ B ⋅ s i n ( θ ) \vec A \times \vec B=A \cdot B \cdot sin(\theta) A ×B =ABsin(θ)
    代数角度两个等长数列对应元素求积,再对所有积求和矢量积(叉积)可以通过行列式来进行计算
    几何角度将点积中的一个向量投影倒另一个向量上 A ⃗ 、 B ⃗ \vec{A}、\vec{B} A B 向量积结果的模长等于以向量 A ⃗ 、 B ⃗ \vec{A}、\vec{B} A B 为斜边的平行四边形面积
    运算结果标量同时垂直于向量 A ⃗ \vec A A 和向量 B ⃗ \vec B B 的矢量

    通过萨吕法则计算行列式

    考虑一个 3 × 3 3\times 3 3×3的行列式 M M M
    M = ∣ a 11 a 12 a 13 a 21 a 22 a 23 a 31 a 32 a 33 ∣ M=\left | \begin{array}{ccc} a_{11}&a_{12}&a_{13}\\ a_{21}&a_{22}&a_{23}\\ a_{31}&a_{32}&a_{33} \end{array} \right| M=a11a21a31a12a22a32a13a23a33
    = a 11 a 22 a 33 + a 12 a 23 a 31 + a 13 a 21 a 32 − a 13 a 22 a 31 − a 11 a 23 a 32 − a 12 a 21 a 33 =a_{11}a_{22}a_{33}+a_{12}a_{23}a_{31}+a_{13}a_{21}a_{32}-a_{13}a_{22}a_{31}-a_{11}a_{23}a_{32}-a_{12}a_{21}a_{33} =a11a22a33+a12a23a31+a13a21a32a13a22a31a11a23a32a12a21a33
    由icktoofay - 自己的作品,CC0,https://commons.wikimedia.org/w/index.php?curid=20285987
    图片来源:https://commons.wikimedia.org/w/index.php?curid=20285987

    展开全文
  • 通过图像矩和矢量积法,建立机器人正向、逆向运动学模型,引入雅可比矩阵解决机器人逆运动学解析问题.建立了图像矩特征变化量和笛卡尔空间的关节角速度之间的映射关系即复合雅可比矩阵,由矩特征变化量得到伺服过程中六...
  • 通过图像矩和矢量积法,建立机器人正向、逆向运动学模型,引入雅可比矩阵解决机器人逆运动学解析问题.建立了图像矩特征变化量和笛卡尔空间的关节角速度之间的映射关系即复合雅可比矩阵,由矩特征变化量得到伺服过程...
  • 在n≥4的欧氏空间中定义了矢量积运算,在此基础上,在四维Minkowski时空中引入了一组四力矩、四角动量矢量的概念,构造了四维矢量型角动量定理。并得到了通常三维力矩和三维角动量是参考系依赖的四维矢量这个结论。...
  • python实现矢量积、叉积、外积、张量积

    万次阅读 多人点赞 2019-04-02 11:14:48
    张量 一般指的是Kronecker product a⊗b 很显然,该运算不遵守交换律。 import numpy as np a = np.eye(3) b = np.ones((3,2,3)) c = np.kron(a,b) a array([[ 1., 0., 0.], [ 0., 1., 0.], [ 0., 0., 1....
  • 求解机械臂雅可矩阵,除了用微分运动方程外,还可以基于矢量积法的六自由度工业机器人雅可比矩阵求解,矢量积比较通俗易懂,代码实现也相对简单
  • 矢量的点成(标量积)和矢量积

    千次阅读 2014-05-21 15:42:54
  • 第4章 NumPy 数组与矢量计算; NumPyNumerical Python的缩写是一个开源的Python科学计算库它是一个由多维数组对象和用于处理数组的例程集合组成的库 1. NumPy的基本功能如下 提供了一个具有矢量算术运算和复杂广播...
  • 文章目录 写在前面 矢量积法——改进D-H法 微分变换法——改进D-H法 Manipulator for Jacobian(Jacobian for short)——标准D-H法 微分变换法——标准D-H法 写在前面 断更了俩月,找工作加毕业论文,心塞心塞,...
  • 矢量的叉积和点计算

    万次阅读 2018-08-18 15:52:47
    矢量(Vector,也称为向量,矢量是有模和方向但没有位置的量,即方向加速度)。 点(点是没有大小之分的位置)。 1.标量k和矢量v的乘除:  相乘:kv=(k*vx, k*vy, k*vz);  相除:v/k=(vx/k, vy/k, ...
  • 【Python】NumPy数组和矢量计算

    千次阅读 2022-01-25 14:35:25
    目录 一、NumPy的ndarray:一种多维数组对象: 1.NumPy安装: 2.检测安装是否成功: 二、数组创建: 1.array创建: range的使用: arange创建数组: 2.随机数创建: 随机整数: ...四、切片和索引..
  • 矢量导数——角速度与矢量的叉乘

    千次阅读 多人点赞 2021-09-10 14:39:55
    矢量叉乘,向量外积矢量导数——角速度与矢量的叉乘1. 定理证明证明结论部分 1. 定理 矢量的导数为角速度叉乘以该适量。 这也是角速度的定义。 角速度在一般意义上是一个二阶张量,不过由于这个张量满足某些约束...
  • 向量三重的等式推导证明

    千次阅读 2022-07-26 20:50:03
    目标:最近在看论文,需要一些基本的公式推理,经常遇到三重的等式。为了更深入的理解。因此推导一下这类公式。定义: 向量三重 a→×(b→×c→)=(a→⋅c→)⋅b→−(a→⋅b→)⋅c→ \overrightarrow{a} \times ...
  • 1.前言 最近在做轨迹规划控制,没错,是控制,导师让新加到毕设上的。...2.基于向量法的雅可比矩阵求解 这个方法网上资料、文献已经讲烂了,对于六关节机械臂,其雅可比矩阵的第n列可表示为 ...
  • 建立了棒线材拉拔的柱坐标系速度场,提出了一种应变速率内积分方法,并获得了解析解。分析了摩擦因子对最佳模角和应力状态系数的影响规律。结果发现:最佳模角αopt和nσ均随着m的增大而增大;当m一定时,最佳模角αopt...
  • 混合与双重向量

    千次阅读 2021-01-30 15:17:17
    我们定义空间上三个向量 a,b,c ,先作 a 和 b 的向量,用所得向量再与 c 作数量,所得结果称为三向量的混合,记作 (a×b)⋅c(\mathbf{a}\times\mathbf{b})\cdot\mathbf{c}(a×b)⋅c 或者 (a,b,c)(\mathbf{a}...
  • 矩阵和矢量的乘积

    千次阅读 2020-06-05 13:38:51
    假设有三个矢量 u⃗=[223],v⃗=[137],w⃗=[132]\vec{u}=\left[\begin{array}{l}2 \\ 2 \\ 3\end{array}\right], \vec{v}=\left[\begin{array}{l}1 \\ 3 \\ 7\end{array}\right], \vec{w}=\left[\begin{array}{l}1\\ ...
  • 向量的三重公式是经常会在向量代数中使用到的恒等式,它的表达形式如下所示:a⃗×(b⃗×c⃗)=(a⃗⋅c⃗)b⃗−(a⃗⋅b⃗)c⃗\vec{a}\times\left(\vec{b}\times\vec{c}\right) = \left(\vec{a}\cdot\vec{c}\right)\...
  • 附录矢量与张量运算.docx

    千次阅读 2020-12-19 13:51:27
    附录 矢量与张量运算1标量﹑矢量与张量1.1基本概念在本书中所涉及的物理量可分为标量、矢量和张量。我们非常熟悉标量,它是在空间没有取向的物理量,只有一个数就可以表示其状态。例如质量、压强、密度、温度等都是...
  • 向量的

    千次阅读 2020-12-05 16:24:27
    向量的 向量,也被称为叉积(即交叉乘积),是一种在向量空间中向量的二元运算。与点不同,它的运算结果是一个伪向量而不是一个标量。并且两个向量的叉积与这两个向量都垂直。 定义: 在这里θ表示’a和b之间...
  • 数组(ndarray)和矢量计算
  • Python/Numpy之点叉积内张量(内、标量、数量、点、点乘)a与b的内为 a·b = |a||b|cos∠(a, b),结果为标量(一个数) 外(叉乘):向量a与b的外a×b是一个向量,其长度等于|a×b| =...
  • 矢量计算器Android 交叉和点积矢量计算器。
  • 矢量计算三角形面积

    千次阅读 2015-05-04 15:52:39
    设有三角形ABC,三顶点坐标分别为:A(x1,y1),B(x2,y2)...则根据矢量积定义,有|a×b|=ab*sinC,恰巧三角形面积S=ab*sinC/2,所以S=|a×b|/2 规定沿横轴方向的单位矢量为x,沿纵轴方向的单位矢量为y,沿竖轴方向的单

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 12,014
精华内容 4,805
关键字:

矢量积

友情链接: RGB2YUV_src.zip