PUMA560的运动学建模

转载请注明出处

引言

PUMA的历史:

  • 1962年,由乔治·德沃尔(George Devol)和约瑟夫·恩格伯格(Joseph Engelberger)共同创建的美国万能自动化(Unimation)公司的第一台机器人Unimate,在美国通用汽车(General Motors,GM)公司投入使用,标志着第一代机器人的诞生。
    在这里插入图片描述

    机器人Unimate
  • 1969年,维克多·沙因曼(Victor Scheinman)发明了Standford Arm
    在这里插入图片描述

    Standform Arm
  • 1972年,Scheinman在MIT的人工智能实验室研发了MIT Arm,是PUMA的前身。
    在这里插入图片描述

    MIT Arm
  • 1977年,Scheinman将他之前的设计卖给了Unimation,在GM的帮助下深入发展并设计出PUMA (Programmable Universal Machine for Assembly / Programmable Universal Manipulation Arm),下图为1983年设计出的PUMA 500
    在这里插入图片描述

    PUMA 500

一、连杆坐标系

1.1 连杆和关节

在这里插入图片描述

图1-1 PUMA560的3D模型

PUMA560的各个连杆:

  • 连杆0(基座)
    • 连杆0虽然有一个具体的形状,但是在建立连杆坐标系时,由于坐标系{0}和坐标系{1}重合,所以其在运动学模型中长度设为0,用一个点或者坐标系进行表示。
  • 连杆1
    • 关节1贯穿连杆1(上端)和连杆0(下端)
  • 连杆2
    • 关节2贯穿连杆2(上端)和连杆1(下端)
  • 连杆3
    • 关节3贯穿连杆3(上端)和连杆2(下端)
  • 连杆4
    • 关节4贯穿连杆4(上端)和连杆3(下端)
  • 连杆5
    • 关节5贯穿连杆5(上端)和连杆4(下端)
    • 连杆5可以看成一个“擀面杖”
  • 连杆6(末杆)
    • 关节6贯穿连杆6(上端)和连杆5(下端)
    • 连杆6可以看成一个“印章”或“国际象棋”,底座用于固连末端执行器或工具。虽然此处连杆6有具体形状,但是在连杆坐标系中将其长度设为0(跟连杆0一样)。

在这里插入图片描述

图1-2 PUMA560的连杆

1.2 建立连杆坐标系

第一步:确定Z轴1

找到六个转动关节,关节i和关节i+1之间为连杆i(i=1, 2, … , 5),连杆6用于连接末端执行器。根据关节轴确定Z轴,由于Z轴正方向有两个,所以选取不同的方向,会影响连杆坐标系的建立,也即D-H参数列表会不同。

在这里插入图片描述

图1-3 确定Z轴

第二步:找公垂线或交点

找到两相邻Z轴的公垂线或交点。 Z 2 {Z_2} Z2 Z 3 {Z_3} Z3的公垂线有无数条,这也是导致D-H参数列表不同的一个原因。

在这里插入图片描述

图1-4 找公垂线或交点

第三步:确定坐标系{i}的原点

坐标系 { i } ( i = 1 , 2 , ⋯   , 5 ) \{ i\} (i = 1,2, \cdots ,5) {i}(i=1,2,,5)的原点为:

  • Z i {Z_i} Zi轴和 Z i + 1 {Z_{i+1}} Zi+1的交点
  • Z i {Z_i} Zi轴和公垂线的交点

在这里插入图片描述

图1-5 确定坐标系{i}的原点

第四步:确定坐标系{i}

确定X轴的规则:

  1. X i {X_i} Xi轴的正方向沿着公垂线由 Z i {Z_i} Zi轴指向 Z i + 1 {Z_{i+1}} Zi+1
  2. X i {X_i} Xi轴和 Z i + 1 {Z_{i+1}} Zi+1轴相交时, X i {X_i} Xi轴的正方向决定了 α i {\alpha _i} αi的符号:
    • 当从 Z i {Z_i} Zi轴转向 Z i + 1 {Z_{i+1}} Zi+1轴时,选取大拇指指向的方向为 X i {X_i} Xi轴,则 α i {\alpha _i} αi的符号为正
    • 反之则 α i {\alpha _i} αi的符号为负

确定了Z轴和X轴的正方向之后,根据右手定则,确定Y轴的正方向。

在这里插入图片描述

图1-6 确定坐标系{i}

第五步:确定坐标系{0}和{6}

选取坐标系{0}和{6}的原点,确定坐标系{0}和{6}。通常将坐标系{0}和坐标系{1}重合,坐标系{6}和坐标系{5}重合。

本文中坐标系{0}相对于坐标系{1}绕 Z i {Z_i} Zi轴正方向旋转了 − 9 0 ∘ {\rm{ - }}{90^ \circ } 90,将坐标系{6}和坐标系{5}重合。

在这里插入图片描述

图1-7 确定坐标系{0}和{6}

第六步:得到D-H参数列表

在已建立的坐标系上,添加机械臂的几何参数,得到连杆坐标系的完整图形,如下图所示。图中,0.6604m表示坐标系{0}的原点和底面之间的高度,也即基座的高度;0.05625m表示末端执行器的尖端点到坐标系{6}原点的距离,也即「工具坐标系(Tool Coordinate System,TCP)」的原点与坐标系{6}原点之间的距离2

在这里插入图片描述

图1-8 PUMA560的连杆坐标系

最终得到M-DH参数列表,如表1-1所示:

表1-1 PUMA560的MD-H列表

在这里插入图片描述


二、运动学

2.1 正运动学

MD-H参数法对应的齐次变换矩阵,如下式:
i i − 1 T = R o t ( z i − 1 , α i − 1 ) ⋅ T r a n s ( x i − 1 , a i − 1 ) ⋅ R o t ( z i , θ i ) ⋅ T r a n s ( z i , d i ) = [ cos ⁡ θ i − sin ⁡ θ i 0 a i − 1 sin ⁡ θ i cos ⁡ α i − 1 cos ⁡ θ i cos ⁡ α i − 1 − sin ⁡ α i − 1 − d i sin ⁡ α i − 1 sin ⁡ θ i sin ⁡ α i − 1 cos ⁡ θ i sin ⁡ α i − 1 cos ⁡ α i − 1 d i cos ⁡ α i − 1 0 0 0 1 ] (2-1) \begin{array}{l}{}_i^{i - 1}T = Rot({z_{i{\rm{ - }}1}},{\alpha _{i - 1}}) \cdot Trans({x_{i{\rm{ - }}1}},{a_{i{\rm{ - }}1}}) \cdot Rot({z_i},{\theta _i}) \cdot Trans({z_i},{d_i})\\{\rm{ = }}\left[ {\begin{array}{ccccccccccccccc}{\cos {\theta _i}}&{ - \sin {\theta _i}}&0&{{a_{i - 1}}}\\{\sin {\theta _i}\cos {\alpha _{i - 1}}}&{\cos {\theta _i}\cos {\alpha _{i - 1}}}&{ - \sin {\alpha _{i - 1}}}&{ - {d_i}\sin {\alpha _{i - 1}}}\\{\sin {\theta _i}\sin {\alpha _{i - 1}}}&{\cos {\theta _i}\sin {\alpha _{i - 1}}}&{\cos {\alpha _{i - 1}}}&{{d_i}\cos {\alpha _{i - 1}}}\\0&0&0&1\end{array}} \right]\end{array} \tag{2-1} ii1T=Rot(zi1,αi1)Trans(xi1,ai1)Rot(zi,θi)Trans(zi,di)= cosθisinθicosαi1sinθisinαi10sinθicosθicosαi1cosθisinαi100sinαi1cosαi10ai1disinαi1dicosαi11 (2-1)

将表1-1中的MD-H参数带入式(2-1),得到各相邻连杆之间的齐次变换矩阵如下:
1 0 T = [ c θ 1 − s θ 1 0 0 s θ 1 c θ 1 0 0 0 0 1 0 0 0 0 1 ] 2 1 T = [ c θ 2 − s θ 2 0 0 0 0 1 d 2 − s θ 2 − c θ 2 0 0 0 0 0 1 ] 3 2 T = [ c θ 3 − s θ 3 0 a 2 s θ 3 c θ 3 0 0 0 0 1 0 0 0 0 1 ] 4 3 T = [ c θ 4 − s θ 4 0 a 3 0 0 1 d 4 − s θ 4 − c θ 4 0 0 0 0 0 1 ] 5 4 T = [ c θ 5 − s θ 5 0 0 0 0 − 1 0 s θ 5 c θ 5 0 0 0 0 0 1 ] 6 5 T = [ c θ 6 − s θ 6 0 0 0 0 1 0 − s θ 6 − c θ 6 0 0 0 0 0 1 ] (2-2) \begin{array}{l}{}_1^0T = \left[ {\begin{array}{ccccccccccccccc}{c{\theta _1}}&{ - s{\theta _1}}&0&0\\{s{\theta _1}}&{c{\theta _1}}&0&0\\0&0&1&0\\0&0&0&1\end{array}} \right]\\_2^1T = \left[ {\begin{array}{ccccccccccccccc}{c{\theta _2}}&{ - s{\theta _2}}&0&0\\0&0&1&{{d_2}}\\{ - s{\theta _2}}&{ - c{\theta _2}}&0&0\\0&0&0&1\end{array}} \right]\\{}_3^2T = \left[ {\begin{array}{ccccccccccccccc}{c{\theta _3}}&{ - s{\theta _3}}&0&{{a_2}}\\{s{\theta _3}}&{c{\theta _3}}&0&0\\0&0&1&0\\0&0&0&1\end{array}} \right]\\{}_4^3T = \left[ {\begin{array}{ccccccccccccccc}{c{\theta _4}}&{ - s{\theta _4}}&0&{{a_3}}\\0&0&1&{{d_4}}\\{ - s{\theta _4}}&{ - c{\theta _4}}&0&0\\0&0&0&1\end{array}} \right]\\{}_5^4T = \left[ {\begin{array}{ccccccccccccccc}{c{\theta _5}}&{ - s{\theta _5}}&0&0\\0&0&{ - 1}&0\\{s{\theta _5}}&{c{\theta _5}}&0&0\\0&0&0&1\end{array}} \right]\\{}_6^5T = \left[ {\begin{array}{ccccccccccccccc}{c{\theta _6}}&{ - s{\theta _6}}&0&0\\0&0&1&0\\{ - s{\theta _6}}&{ - c{\theta _6}}&0&0\\0&0&0&1\end{array}} \right]\end{array} \tag{2-2} 10T= cθ1sθ100sθ1cθ10000100001 21T= cθ20sθ20sθ20cθ2001000d201 32T= cθ3sθ300sθ3cθ3000010a2001 43T= cθ40sθ40sθ40cθ400100a3d401 54T= cθ50sθ50sθ50cθ5001000001 65T= cθ60sθ60sθ60cθ6001000001 (2-2)

通过依次右乘齐次变化矩阵,最终可以得到机械臂末端坐标系相对于基坐标系的齐次变化矩阵 6 0 T {}_6^0T 60T,如下式3
6 0 T = 1 0 T ⋅ 2 1 T ⋅ 3 2 T ⋅ 4 3 T ⋅ 5 4 T ⋅ 6 5 T = [ n x o x a x p x n y o y a y p y n z o z a z p z 0 0 0 1 ] (2-3) {}_6^0T = {}_1^0T \cdot {}_2^1T \cdot {}_3^2T \cdot {}_4^3T \cdot {}_5^4T \cdot {}_6^5T = \left[ {\begin{array}{ccccccccccccccc}{{n_x}}&{{o_x}}&{{a_x}}&{{p_x}}\\{{n_y}}&{{o_y}}&{{a_y}}&{{p_y}}\\{{n_z}}&{{o_z}}&{{a_z}}&{{p_z}}\\0&0&0&1\end{array}} \right] \tag{2-3} 60T=10T21T32T43T54T65T= nxnynz0oxoyoz0axayaz0pxpypz1 (2-3)式中:
{ n x = c 1 [ c 23 ( c 4 c 5 c 6 − s 4 s 6 ) − s 23 s 5 c 6 ] + s 1 ( s 4 c 5 c 6 + c 4 s 6 ) n y = s 1 [ c 23 ( c 4 c 5 c 6 − s 4 s 6 ) − s 23 s 5 c 6 ] − c 1 ( s 4 c 5 c 6 + c 4 s 6 ) n z = − s 23 ( c 4 c 5 c 6 − s 4 s 6 ) − c 23 s 5 c 6 o x = c 1 [ c 23 ( − c 4 c 5 s 6 − s 4 c 6 ) + s 23 s 5 s 6 ] + s 1 ( c 4 c 6 − s 4 c 5 s 6 ) o y = s 1 [ c 23 ( − c 4 c 5 s 6 − s 4 c 6 ) + s 23 s 5 s 6 ] − c 1 ( c 4 c 6 − s 4 c 5 s 6 ) o z = − s 23 ( − c 4 c 5 s 6 − s 4 c 6 ) + c 23 s 5 s 6 a x = − c 1 ( c 23 c 4 s 5 + s 23 c 5 ) − s 1 s 4 s 5 a y = − s 1 ( c 23 c 4 s 5 + s 23 c 5 ) + c 1 s 4 s 5 a z = s 23 c 4 s 5 − c 23 c 5 p x = c 1 ( a 2 c 2 + a 3 c 23 − d 4 s 23 ) − d 2 s 1 p y = s 1 ( a 2 c 2 + a 3 c 23 − d 4 s 23 ) + d 2 c 1 p z = − a 3 s 23 − a 2 s 2 − d 4 c 23 \left\{ \begin{array}{l}{n_x} = {c_1}\left[ {{c_{23}}\left( {{c_4}{c_5}{c_6} - {s_4}{s_6}} \right) - {s_{23}}{s_5}{c_6}} \right] + {s_1}\left( {{s_4}{c_5}{c_6} + {c_4}{s_6}} \right)\\{n_y} = {s_1}\left[ {{c_{23}}\left( {{c_4}{c_5}{c_6} - {s_4}{s_6}} \right) - {s_{23}}{s_5}{c_6}} \right] - {c_1}\left( {{s_4}{c_5}{c_6} + {c_4}{s_6}} \right)\\{n_z} = - {s_{23}}\left( {{c_4}{c_5}{c_6} - {s_4}{s_6}} \right) - {c_{23}}{s_5}{c_6}\\\begin{array}{lllllllllllllll}{{o_x} = {c_1}\left[ {{c_{23}}\left( { - {c_4}{c_5}{s_6} - {s_4}{c_6}} \right) + {s_{23}}{s_5}{s_6}} \right] + {s_1}\left( {{c_4}{c_6} - {s_4}{c_5}{s_6}} \right)}\\{{o_y} = {s_1}\left[ {{c_{23}}\left( { - {c_4}{c_5}{s_6} - {s_4}{c_6}} \right) + {s_{23}}{s_5}{s_6}} \right] - {c_1}\left( {{c_4}{c_6} - {s_4}{c_5}{s_6}} \right)}\\{{o_z} = - {s_{23}}\left( { - {c_4}{c_5}{s_6} - {s_4}{c_6}} \right) + {c_{23}}{s_5}{s_6}}\end{array}\\{a_x} = - {c_1}\left( {{c_{23}}{c_4}{s_5} + {s_{23}}{c_5}} \right) - {s_1}{s_4}{s_5}\\{a_y} = - {s_1}\left( {{c_{23}}{c_4}{s_5} + {s_{23}}{c_5}} \right) + {c_1}{s_4}{s_5}\\{a_z} = {s_{23}}{c_4}{s_5} - {c_{23}}{c_5}\\{p_x} = {c_1}\left( {{a_2}{c_2} + {a_3}{c_{23}} - {d_4}{s_{23}}} \right) - {d_2}{s_1}\\{p_y} = {s_1}\left( {{a_2}{c_2} + {a_3}{c_{23}} - {d_4}{s_{23}}} \right) + {d_2}{c_1}\\{p_z} = - {a_3}{s_{23}} - {a_2}{s_2} - {d_4}{c_{23}}\end{array} \right. nx=c1[c23(c4c5c6s4s6)s23s5c6]+s1(s4c5c6+c4s6)ny=s1[c23(c4c5c6s4s6)s23s5c6]c1(s4c5c6+c4s6)nz=s23(c4c5c6s4s6)c23s5c6ox=c1[c23(c4c5s6s4c6)+s23s5s6]+s1(c4c6s4c5s6)oy=s1[c23(c4c5s6s4c6)+s23s5s6]c1(c4c6s4c5s6)oz=s23(c4c5s6s4c6)+c23s5s6ax=c1(c23c4s5+s23c5)s1s4s5ay=s1(c23c4s5+s23c5)+c1s4s5az=s23c4s5c23c5px=c1(a2c2+a3c23d4s23)d2s1py=s1(a2c2+a3c23d4s23)+d2c1pz=a3s23a2s2d4c23 { c 23 = c 2 c 3 − s 2 s 3 s 23 = c 2 s 3 + s 2 c 3 \left\{ \begin{array}{l} {c_{23}} = {c_2}{c_3} - {s_2}{s_3}\\ {s_{23}} = {c_2}{s_3} + {s_2}{c_3} \end{array} \right. {c23=c2c3s2s3s23=c2s3+s2c3


2.2 逆运动学

2.3.1 代数解

代数解的核心思想为:将式(2-3)依次左称 i i − 1 T − 1 {}_i^{i - 1}{T^{ - 1}} ii1T1使得等式右边不存在参数 θ i {\theta _i} θi,从而将方程解耦,具体步骤如下34


第一步:求 θ 1 {\theta _1} θ1

将式(2-3)左乘 1 0 T − 1 {}_1^0{T^{ - 1}} 10T1,则有下式:
1 0 T − 1 ( θ 1 ) ⋅ 6 0 T = 2 1 T ( θ 2 ) ⋅ 3 2 T ( θ 3 ) ⋅ 4 3 T ( θ 4 ) ⋅ 5 4 T ( θ 5 ) ⋅ 6 5 T ( θ 6 ) [ c 1 s 1 0 0 − s 1 c 1 0 0 0 0 1 0 0 0 0 1 ] [ n x o x a x p x n y o y a y p y n z o z a z p z 0 0 0 1 ] = 6 1 T ( L e f t ) 6 1 T ( R i g h t ) = [ 1 n x 1 o x 1 a x 1 p x 1 n y 1 o y 1 a y 1 p y 1 n z 1 o x 1 a z 1 p z 0 0 0 1 ] (2-4) \begin{array}{l}{}_1^0{T^{ - 1}}({\theta _1}) \cdot {}_6^0T = {}_2^1T({\theta _2}) \cdot {}_3^2T({\theta _3}) \cdot {}_4^3T({\theta _4}) \cdot {}_5^4T({\theta _5}) \cdot {}_6^5T({\theta _6})\\\left[ {\begin{array}{ccccccccccccccc}{{c_1}}&{{s_1}}&0&0\\{ - {s_1}}&{{c_1}}&0&0\\0&0&1&0\\0&0&0&1\end{array}} \right]\left[ {\begin{array}{ccccccccccccccc}{{n_x}}&{{o_x}}&{{a_x}}&{{p_x}}\\{{n_y}}&{{o_y}}&{{a_y}}&{{p_y}}\\{{n_z}}&{{o_z}}&{{a_z}}&{{p_z}}\\0&0&0&1\end{array}} \right] = {}_6^1T(Left)\\{}_6^1T(Right) = \left[ {\begin{array}{ccccccccccccccc}{^1{n_x}}&{^1{o_x}}&{^1{a_x}}&{^1{p_x}}\\{^1{n_y}}&{^1{o_y}}&{^1{a_y}}&{^1{p_y}}\\{^1{n_z}}&{^1{o_x}}&{^1{a_z}}&{^1{p_z}}\\0&0&0&1\end{array}} \right]\end{array} \tag{2-4} 10T1(θ1)60T=21T(θ2)32T(θ3)43T(θ4)54T(θ5)65T(θ6) c1s100s1c10000100001 nxnynz0oxoyoz0axayaz0pxpypz1 =61T(Left)61T(Right)= 1nx1ny1nz01ox1oy1ox01ax1ay1az01px1py1pz1 (2-4)式中:
{ 1 n x = c 23 ( c 4 c 5 c 5 − s 4 s 6 ) − s 23 s 5 c 6 1 n y = − s 4 c 5 c 6 − c 4 s 6 1 n z = − s 23 ( c 4 c 5 c 6 − s 4 s 6 ) − c 23 s 5 c 6 1 o x = − c 23 ( c 4 c 5 s 6 + s 4 c 6 ) + s 23 s 5 s 6 1 o y = s 4 c 5 s 6 − c 4 c 6 1 o z = s 23 ( c 4 c 5 s 6 + s 4 c 6 ) + c 23 s 5 s 6 1 a x = − c 23 c 4 s 5 − s 23 c 5 1 a y = s 4 s 5 1 a z = s 23 c 4 s 5 − c 23 c 5 1 p x = a 2 c 2 + a 3 c 23 − d 4 s 23 1 p y = d 2 1 p z = − a 2 s 23 − a 2 s 2 − d 4 c 23 \left\{ \begin{array}{l} ^1{n_x} = {c_{23}}\left( {{c_4}{c_5}{c_5} - {s_4}{s_6}} \right) - {s_{23}}{s_5}{c_6}\\ ^1{n_y} = - {s_4}{c_5}{c_6} - {c_4}{s_6}\\ ^1{n_z} = - {s_{23}}\left( {{c_4}{c_5}{c_6} - {s_4}{s_6}} \right) - {c_{23}}{s_5}{c_6}\\ ^1{o_x} = - {c_{23}}\left( {{c_4}{c_5}{s_6} + {s_4}{c_6}} \right) + {s_{23}}{s_5}{s_6}\\ ^1{o_y} = {s_4}{c_5}{s_6} - {c_4}{c_6}\\ ^1{o_z} = {s_{23}}\left( {{c_4}{c_5}{s_6} + {s_4}{c_6}} \right) + {c_{23}}{s_5}{s_6}\\ ^1{a_x} = - {c_{23}}{c_4}{s_5} - {s_{23}}{c_5}\\ ^1{a_y} = {s_4}{s_5}\\ ^1{a_z} = {s_{23}}{c_4}{s_5} - {c_{23}}{c_5}\\ ^1{p_x} = {a_2}{c_2} + {a_3}{c_{23}} - {d_4}{s_{23}}\\ {}^1{p_y} = {d_2}\\ ^1{p_z} = - {a_2}{s_{23}} - {a_2}{s_2} - {d_4}{c_{23}} \end{array} \right. 1nx=c23(c4c5c5s4s6)s23s5c61ny=s4c5c6c4s61nz=s23(c4c5c6s4s6)c23s5c61ox=c23(c4c5s6+s4c6)+s23s5s61oy=s4c5s6c4c61oz=s23(c4c5s6+s4c6)+c23s5s61ax=c23c4s5s23c51ay=s4s51az=s23c4s5c23c51px=a2c2+a3c23d4s231py=d21pz=a2s23a2s2d4c23

式(2-4)左边只含有参数 θ 1 {\theta _1} θ1所以需要从等式右边找到一个只含有 θ 1 {\theta _1} θ1或者为常数的元素,可以找到该元素位于第二行第四列。令等式左边L(2, 4)与右边R(2,4)的对应元素相等,利用三角代换,则有:
{ L ( 2 , 4 ) = R ( 2 , 4 ) L ( 2 , 4 ) = − s θ 1 ⋅ p x + c θ 1 ⋅ p y R ( 2 , 4 ) = d 2 (2-5) \left\{ {\begin{array}{lllllllllllllll}{L(2,4) = R(2,4)}\\{L(2,4) = - s{\theta _1} \cdot {p_x} + c{\theta _1} \cdot {p_y}}\\{R(2,4) = {d_2}}\end{array}} \right. \tag{2-5} L(2,4)=R(2,4)L(2,4)=sθ1px+cθ1pyR(2,4)=d2(2-5)式中: p x = ρ cos ⁡ ϕ {p_x} = \rho \cos \phi px=ρcosϕ p y = ρ sin ⁡ ϕ {p_y} = \rho \sin \phi py=ρsinϕ;且有 ρ = p x 2 + p y 2 \rho = \sqrt {p_x^2 + p_y^2} ρ=px2+py2 ϕ = a tan ⁡ 2 ( p y , p x ) \phi = a\tan 2\left( {{p_y},{p_x}} \right) ϕ=atan2(py,px)

于是有:
{ sin ⁡ ( ϕ − θ 1 ) = d 2 / ρ cos ⁡ ( ϕ − θ 1 ) = ± 1 − ( d 2 / ρ ) 2 ϕ − θ 1 = a t a n 2 [ d 2 / ρ , ± 1 − ( d 2 / ρ ) 2 ] (2-6) \left\{ \begin{array}{l} \sin \left( {\phi - {\theta _1}} \right) = {d_2}/\rho \\ \cos \left( {\phi - {\theta _1}} \right) = \pm \sqrt {1 - {{\left( {{d_2}/\rho } \right)}^2}} \\ \phi - {\theta _1} = {\mathop{\rm atan}\nolimits} 2\left[ {{d_2}/\rho , \pm \sqrt {1 - {{\left( {{d_2}/\rho } \right)}^2}} } \right] \end{array} \right. \tag{2-6} sin(ϕθ1)=d2/ρcos(ϕθ1)=±1(d2/ρ)2 ϕθ1=atan2[d2/ρ,±1(d2/ρ)2 ](2-6)可以求得 θ 1 {\theta _1} θ1的表达式如下:
θ 1 = a t a n 2 ( p y , p x ) − a t a n 2 ( d 2 , ± p x 2 + p y 2 − d 2 2 ) (2-7) {\theta _1} = {\mathop{\rm atan}\nolimits} 2\left( {{p_y},{p_x}} \right) - {\mathop{\rm atan}\nolimits} 2\left( {{d_2}, \pm \sqrt {p_x^2 + p_y^2 - d_2^2} } \right) \tag{2-7} θ1=atan2(py,px)atan2(d2,±px2+py2d22 )(2-7)式中:正、负号对应 θ 1 {\theta _1} θ1的两个可能的解。


第二步:求 θ 3 {\theta _3} θ3

当选定 θ 1 {\theta _1} θ1的一个解之后,继续求解 θ 2 {\theta _2} θ2 θ 3 {\theta _3} θ3。令式(2-4)两端的元素L(1, 4)和R(3, 4)分别对应相等,并结合式(2-5),则有:
{ c 1 p x + s 1 p y = a 2 c 2 + a 3 c 23 − d 4 s 23 p x = − a 2 s 23 − a 2 s 2 − d 4 c 23 d 2 = − s θ 1 p x + c θ 1 p y (2-8) \left\{ \begin{array}{l} {c_1}{p_x} + {s_1}{p_y} = {a_2}{c_2} + {a_3}{c_{23}} - {d_4}{s_{23}}\\ {p_x} = - {a_2}{s_{23}} - {a_2}{s_2} - {d_4}{c_{23}}\\ {d_2} = - s{\theta _1}{p_x} + c{\theta _1}{p_y} \end{array} \right. \tag{2-8} c1px+s1py=a2c2+a3c23d4s23px=a2s23a2s2d4c23d2=sθ1px+cθ1py(2-8)

将上式中的三个等式的左右两边分别进行平方后,再相加求和,得到:
a 3 c 3 − d 4 s 3 = k (2-9) {a_3}{c_3} - {d_4}{s_3} = k \tag{2-9} a3c3d4s3=k(2-9)式中: k = p x 2 + p y 2 + p z 2 − a 2 2 − a 3 2 − d 2 2 − d 4 2 2 a 2 k = \frac{{p_x^2 + p_y^2 + p_z^2 - a_2^2 - a_3^2 - d_2^2 - d_4^2}}{{2{a_2}}} k=2a2px2+py2+pz2a22a32d22d42

通过三角代换,求得:
θ 3 = a t a n 2 ( a 3 , d 4 ) − a t a n 2 ( k , ± a 3 2 + d 4 2 − k 2 ) (2-10) {\theta _3} = {\mathop{\rm atan}\nolimits} 2\left( {{a_3},{d_4}} \right) - {\mathop{\rm atan}\nolimits} 2\left( {k, \pm \sqrt {a_3^2 + d_4^2 - {k^2}} } \right) \tag{2-10} θ3=atan2(a3,d4)atan2(k,±a32+d42k2 )(2-10)式中:正、负号对应 θ 3 {\theta _3} θ3的两种可能的解。


第三步:求 θ 2 {\theta _2} θ2

已经求出 θ 1 {\theta _1} θ1 θ 3 {\theta _3} θ3之后,可以通过将式(2-4)左乘一个包含 θ 1 {\theta _1} θ1 θ 2 {\theta _2} θ2 θ 3 {\theta _3} θ3的逆变换 3 0 T − 1 ( θ 1 , θ 2 , θ 3 ) {}_3^0{T^{ - 1}}({\theta _1},{\theta _2},{\theta _3}) 30T1(θ1,θ2,θ3),进而求解出 θ 2 {\theta _2} θ2
3 0 T − 1 ( θ 1 , θ 2 , θ 3 ) ⋅ 6 0 T = 4 3 T ( θ 4 ) ⋅ 5 4 T ( θ 5 ) ⋅ 6 5 T ( θ 6 ) [ c 1 c 23 s 1 c 23 − s 23 − a 2 c 3 − c 1 s 23 − s 1 s 23 − c 23 a 2 s 3 − s 1 c 1 0 − d 2 0 0 0 1 ] [ n x o x a x p x n y o y a y p y n z u x a z p z 0 0 0 1 ] = 6 3 T ( L e f t ) 6 3 T ( R i g h t ) = [ c 4 c 5 c 6 − s 4 s 6 − c 4 c 5 c 6 − s 4 c 6 − c 4 s 5 a 3 s 5 s 5 − s 5 s 6 c 5 d 4 − s 4 s 5 s 6 − c 4 s 6 s 4 c 5 s 6 − c 4 c 6 s 4 s 5 0 0 0 0 1 ] (2-11) \begin{array}{l}{}_3^0{T^{ - 1}}({\theta _1},{\theta _2},{\theta _3}) \cdot {}_6^0T = {}_4^3T({\theta _4}) \cdot {}_5^4T({\theta _5}) \cdot {}_6^5T({\theta _6})\\\left[ {\begin{array}{ccccccccccccccc}{{c_1}{c_{23}}}&{{s_1}{c_{23}}}&{ - {s_{23}}}&{ - {a_2}{c_3}}\\{ - {c_1}{s_{23}}}&{ - {s_1}{s_{23}}}&{ - {c_{23}}}&{{a_2}{s_3}}\\{ - {s_1}}&{{c_1}}&0&{ - {d_2}}\\0&0&0&1\end{array}} \right]\left[ {\begin{array}{ccccccccccccccc}{{n_x}}&{{o_x}}&{{a_x}}&{{p_x}}\\{{n_y}}&{{o_y}}&{{a_y}}&{{p_y}}\\{{n_z}}&{{u_x}}&{{a_z}}&{{p_z}}\\0&0&0&1\end{array}} \right] = {}_6^3T(Left)\\{}_6^3T(Right) = \left[ {\begin{array}{ccccccccccccccc}{{c_4}{c_5}{c_6} - {s_4}{s_6}}&{ - {c_4}{c_5}{c_6} - {s_4}{c_6}}&{ - {c_4}{s_5}}&{{a_3}}\\{{s_5}{s_5}}&{ - {s_5}{s_6}}&{{c_5}}&{{d_4}}\\{ - {s_4}{s_5}{s_6} - {c_4}{s_6}}&{{s_4}{c_5}{s_6} - {c_4}{c_6}}&{{s_4}{s_5}}&0\\0&0&0&1\end{array}} \right]\end{array} \tag{2-11} 30T1(θ1,θ2,θ3)60T=43T(θ4)54T(θ5)65T(θ6) c1c23c1s23s10s1c23s1s23c10s23c2300a2c3a2s3d21 nxnynz0oxoyux0axayaz0pxpypz1 =63T(Left)63T(Right)= c4c5c6s4s6s5s5s4s5s6c4s60c4c5c6s4c6s5s6s4c5s6c4c60c4s5c5s4s50a3d401 (2-11)

从式(2-11)右边的矩阵可以看出只有R(1, 4)和R(2, 4)为常数,所以令左右两边(1, 4)和(2, 4)处的元素分别对应相等,得到下式:
{ c 1 c 23 p x + s 1 c 23 p y − s 23 p z − a 2 c 3 = a 3 − c 1 s 23 p x − s 1 s 23 p y − c 23 p z + a 2 s 3 = d 4 (2-12) \left\{ \begin{array}{l}{c_1}{c_{23}}{p_x} + {s_1}{c_{23}}{p_y} - {s_{23}}{p_z} - {a_2}{c_3} = {a_3}\\ - {c_1}{s_{23}}{p_x} - {s_1}{s_{23}}{p_y} - {c_{23}}{p_z} + {a_2}{s_3} = {d_4}\end{array} \right. \tag{2-12} {c1c23px+s1c23pys23pza2c3=a3c1s23pxs1s23pyc23pz+a2s3=d4(2-12)

联立解得:
{ s 23 = ( − a 3 − a 2 c 3 ) p z + ( c 1 p x + s 1 p y ) ( a 2 s 3 − d 4 ) p z 2 + ( c 1 p x + s 1 p y ) 2 c 23 = ( − d 4 + a 2 s 3 ) p z + ( c 1 p x + s 1 p y ) ( a 2 c 3 + a 3 ) p z 2 + ( c 1 p x + s 1 p y ) 2 (2-13) \left\{ {\begin{array}{lllllllllllllll}{{s_{23}} = \frac{{\left( { - {a_3} - {a_2}{c_3}} \right){p_z} + \left( {{c_1}{p_x} + {s_1}{p_y}} \right)\left( {{a_2}{s_3} - {d_4}} \right)}}{{p_z^2 + {{\left( {{c_1}{p_x} + {s_1}{p_y}} \right)}^2}}}}\\{{c_{23}} = \frac{{\left( { - {d_4} + {a_2}{s_3}} \right){p_z} + \left( {{c_1}{p_x} + {s_1}{p_y}} \right)\left( {{a_2}{c_3} + {a_3}} \right)}}{{p_z^2 + {{\left( {{c_1}{p_x} + {s_1}{p_y}} \right)}^2}}}}\end{array}} \right. \tag{2-13} {s23=pz2+(c1px+s1py)2(a3a2c3)pz+(c1px+s1py)(a2s3d4)c23=pz2+(c1px+s1py)2(d4+a2s3)pz+(c1px+s1py)(a2c3+a3)(2-13)

s 23 {s_{23}} s23 c 23 {c_{23}} c23表达式的分母相等,且为正,于是有:
θ 23 = θ 2 + θ 3 = a t a n 2 [ − ( a 3 + a 2 c 3 ) p z + ( c 1 p x + s 1 p y ) ( a 2 s 3 − d 4 ) , ( − d 4 + a 2 s 3 ) p z + ( c 1 p x + s 1 p y ) ( a 2 c 3 + a 3 ) ] (2-14) {\theta _{23}} = {\theta _2} + {\theta _3} = {\mathop{\rm atan}\nolimits} 2\left[ \begin{array}{l} - \left( {{a_3} + {a_2}{c_3}} \right){p_z} + \left( {{c_1}{p_x} + {s_1}{p_y}} \right)\left( {{a_2}{s_3} - {d_4}} \right),\\\left( { - {d_4} + {a_2}{s_3}} \right){p_z} + \left( {{c_1}{p_x} + {s_1}{p_y}} \right)\left( {{a_2}{c_3} + {a_3}} \right)\end{array} \right] \tag{2-14} θ23=θ2+θ3=atan2[(a3+a2c3)pz+(c1px+s1py)(a2s3d4),(d4+a2s3)pz+(c1px+s1py)(a2c3+a3)](2-14)

根据 θ 1 {\theta _1} θ1 θ 3 {\theta _3} θ3解的四种可能组合,由式(2-14)可以得到对应的四种可能值 θ 23 {\theta _{23}} θ23,于是可以得到 θ 2 {\theta _2} θ2的四种可能的解:
θ 2 = θ 23 − θ 3 (2-15) {\theta _2} = {\theta _{23}} - {\theta _3} \tag{2-15} θ2=θ23θ3(2-15)式中: θ 2 {\theta _2} θ2取与 θ 3 {\theta _3} θ3相对应的值。


第四步:求 θ 4 {\theta_4} θ4

此时,式(2-11)左边均为已知,通过观察矩阵元素,可以通过(1, 3)和(3, 3)处两个元素的比值求出 θ 4 {\theta_4} θ4,所以令等式两边的元素(1, 3)和(3, 3)分别对应相等,则有:
{ a x c 1 c 23 + a y s 1 c 23 − a z s 23 = − c 4 s 5 − a x s 1 + a y c 1 = s 4 s 5 (2-16) \left\{ {\begin{array}{lllllllllllllll}{{a_x}{c_1}{c_{23}} + {a_y}{s_1}{c_{23}} - {a_z}{s_{23}} = - {c_4}{s_5}}\\{ - {a_x}{s_1} + {a_y}{c_1} = {s_4}{s_5}}\end{array}} \right. \tag{2-16} {axc1c23+ays1c23azs23=c4s5axs1+ayc1=s4s5(2-16)

分两种情况:

  • s 5 ≠ 0 {s_5} \ne 0 s5=0时,可以求出 θ 4 {\theta_4} θ4的表达式:
    θ 4 = a t a n 2 ( − a x s 1 + a y c 1 , − a x c 1 c 23 − a y s 1 c 23 + a z s 23 ) (2-17) {\theta _4} = {\mathop{\rm atan}\nolimits} 2\left( { - {a_x}{s_1} + {a_y}{c_1}, - {a_x}{c_1}{c_{23}} - {a_y}{s_1}{c_{23}} + {a_z}{s_{23}}} \right) \tag{2-17} θ4=atan2(axs1+ayc1,axc1c23ays1c23+azs23)(2-17)
  • s 5 = 0 {s_5} = 0 s5=0时,机械臂处于奇异位形。此时,关节轴4和6重合,只能求出 θ 4 {\theta_4} θ4 θ 6 {\theta_6} θ6的和或差。处于奇异位形时,可以任意选取 θ 4 {\theta_4} θ4的值,再计算对应的 θ 6 {\theta_6} θ6

第五步:求 θ 5 {\theta_5} θ5

根据求出的 θ 4 {\theta_4} θ4,可以进一步求出 θ 5 {\theta_5} θ5,将方程(2-3)两边左乘逆变换 4 0 T − 1 ( θ 1 , θ 2 , θ 3 , θ 4 ) {}_4^0{T^{ - 1}}({\theta _1},{\theta _2},{\theta _3},{\theta _4}) 40T1(θ1,θ2,θ3,θ4),则有:
4 0 T − 1 ( θ 1 , θ 2 , θ 3 , θ 4 ) ⋅ 6 0 T = 5 4 T ( θ 5 ) ⋅ 6 5 T ( θ 6 ) [ c 1 c 23 c 4 + s 1 s 4 s 1 c 23 c 4 − c 1 s 4 − s 23 c 4 − a 2 c 3 c 4 + d 2 s 4 − a 3 c 4 − c 1 c 23 s 4 + s 1 c 4 − s 1 c 23 s 4 − c 1 c 4 s 23 s 4 a 2 c 3 s 4 + d 2 c 4 + a 3 s 4 − c 1 s 23 − s 1 s 23 − c 23 a 2 s 3 − d 4 0 0 0 1 ] [ n x o x a x p x n y o y a y p y n z o z a z p z 0 0 0 1 ] = 6 4 T ( L e f t ) 6 4 T ( R i g h t ) = [ c 5 c 6 − c 5 s 6 − s 5 0 s 6 c 6 0 0 s 5 s 6 − s 5 c 6 c 5 0 0 0 0 1 ] (2-18) \begin{array}{l}{}_4^0{T^{ - 1}}({\theta _1},{\theta _2},{\theta _3},{\theta _4}) \cdot {}_6^0T = {}_5^4T({\theta _5}) \cdot {}_6^5T({\theta _6})\\\left[ {\begin{array}{ccccccccccccccc}{{c_1}{c_{23}}{c_4} + {s_1}{s_4}}&{{s_1}{c_{23}}{c_4} - {c_1}{s_4}}&{ - {s_{23}}{c_4}}&{ - {a_2}{c_3}{c_4} + {d_2}{s_4} - {a_3}{c_4}}\\{ - {c_1}{c_{23}}{s_4} + {s_1}{c_4}}&{ - {s_1}{c_{23}}{s_4} - {c_1}{c_4}}&{{s_{23}}{s_4}}&{{a_2}{c_3}{s_4} + {d_2}{c_4} + {a_3}{s_4}}\\{ - {c_1}{s_{23}}}&{ - {s_1}{s_{23}}}&{ - {c_{23}}}&{{a_2}{s_3} - {d_4}}\\0&0&0&1\end{array}} \right]\left[ {\begin{array}{ccccccccccccccc}{{n_x}}&{{o_x}}&{{a_x}}&{{p_x}}\\{{n_y}}&{{o_y}}&{{a_y}}&{{p_y}}\\{{n_z}}&{{o_z}}&{{a_z}}&{{p_z}}\\0&0&0&1\end{array}} \right] = {}_6^4T(Left)\\{}_6^4T(Right) = \left[ {\begin{array}{ccccccccccccccc}{{c_5}{c_6}}&{ - {c_5}{s_6}}&{ - {s_5}}&0\\{{s_6}}&{{c_6}}&0&0\\{{s_5}{s_6}}&{ - {s_5}{c_6}}&{{c_5}}&0\\0&0&0&1\end{array}} \right]\end{array} \tag{2-18} 40T1(θ1,θ2,θ3,θ4)60T=54T(θ5)65T(θ6) c1c23c4+s1s4c1c23s4+s1c4c1s230s1c23c4c1s4s1c23s4c1c4s1s230s23c4s23s4c230a2c3c4+d2s4a3c4a2c3s4+d2c4+a3s4a2s3d41 nxnynz0oxoyoz0axayaz0pxpypz1 =64T(Left)64T(Right)= c5c6s6s5s60c5s6c6s5c60s50c500001 (2-18)

式(2-18)左边的 θ 1 {\theta _1} θ1 θ 2 {\theta _2} θ2 θ 3 {\theta _3} θ3 θ 4 {\theta _4} θ4都已经求出,可以观察到矩阵中仅仅包含 θ 5 {\theta_5} θ5的元素为L(1, 3)和L(3, 3),令矩阵两边(1, 3)和(3, 3)处的元素分别对应相等,则有:
{ a x ( c 1 c 23 c 4 + s 1 s 4 ) + a y ( s 1 c 23 c 4 − c 1 s 4 ) + a z ( − s 23 c 4 ) = − s 5 a x ( − c 1 s 23 ) + a y ( − s 1 s 23 ) + a z ( − c 23 ) = c 5 (2-19) \left\{ \begin{array}{l} {a_x}\left( {{c_1}{c_{23}}{c_4} + {s_1}{s_4}} \right) + {a_y}\left( {{s_1}{c_{23}}{c_4} - {c_1}{s_4}} \right) + {a_z}\left( { - {s_{23}}{c_4}} \right) = - {s_5}\\ {a_x}\left( { - {c_1}{s_{23}}} \right) + {a_y}\left( { - {s_1}{s_{23}}} \right) + {a_z}\left( { - {c_{23}}} \right) = {c_5} \end{array} \right. \tag{2-19} {ax(c1c23c4+s1s4)+ay(s1c23c4c1s4)+az(s23c4)=s5ax(c1s23)+ay(s1s23)+az(c23)=c5(2-19)

于是得到 θ 5 {\theta_5} θ5的表达式:
θ 5 = a t a n 2 ( s 5 , c 5 ) (2-20) {\theta _5} = {\mathop{\rm atan}\nolimits} 2\left( {{s_5},{c_5}} \right) \tag{2-20} θ5=atan2(s5,c5)(2-20)


第六步:求 θ 6 {\theta_6} θ6

将方程(2-3)两边左乘逆变换 5 0 T − 1 ( θ 1 , θ 2 , θ 3 , θ 4 , θ 5 ) {}_5^0{T^{ - 1}}({\theta _1},{\theta _2},{\theta _3},{\theta _4},{\theta _5}) 50T1(θ1,θ2,θ3,θ4,θ5),则有:
5 0 T − 1 ( θ 1 , θ 2 , θ 3 , θ 4 , θ 5 ) ⋅ 6 0 T = 6 5 T ( θ 6 ) (2-21) {}_5^0{T^{ - 1}}({\theta _1},{\theta _2},{\theta _3},{\theta _4},{\theta _5}) \cdot {}_6^0T = {}_6^5T({\theta _6}) \tag{2-21} 50T1(θ1,θ2,θ3,θ4,θ5)60T=65T(θ6)(2-21)

令式(2-21)中(1, 1)和(3, 1)处的等式两边的元素对应相等,可得:
{ − n x ( c 1 c 23 s 4 − s 1 c 4 ) − n y ( s 1 c 23 s 4 + c 1 c 4 ) + n z ( s 23 s 4 ) = s 6 n x [ ( c 1 c 23 c 4 + s 1 s 4 ) c 5 − c 1 s 23 s 5 ] + n y [ ( s 1 c 23 c 4 − c 1 s 4 ) c 5 − s 1 s 23 s 5 ] − n z ( s 23 c 4 c 5 + c 23 s 5 ) = c 6 (2-22) \left\{ \begin{array}{l} - {n_x}\left( {{c_1}{c_{23}}{s_4} - {s_1}{c_4}} \right) - {n_y}\left( {{s_1}{c_{23}}{s_4} + {c_1}{c_4}} \right) + {n_z}\left( {{s_{23}}{s_4}} \right) = {s_6}\\{n_x}\left[ {\left( {{c_1}{c_{23}}{c_4} + {s_1}{s_4}} \right){c_5} - {c_1}{s_{23}}{s_5}} \right] + {n_y}\left[ {\left( {{s_1}{c_{23}}{c_4} - {c_1}{s_4}} \right){c_5} - {s_1}{s_{23}}{s_5}} \right]\\ - {n_z}\left( {{s_{23}}{c_4}{c_5} + {c_{23}}{s_5}} \right) = {c_6}\end{array} \right. \tag{2-22} nx(c1c23s4s1c4)ny(s1c23s4+c1c4)+nz(s23s4)=s6nx[(c1c23c4+s1s4)c5c1s23s5]+ny[(s1c23c4c1s4)c5s1s23s5]nz(s23c4c5+c23s5)=c6(2-22)

进而可以求出 θ 6 {\theta_6} θ6的表达式:
θ 6 = a t a n 2 ( s 6 , c 6 ) (2-23) {\theta _6} = {\mathop{\rm atan}\nolimits} 2\left( {{s_6},{c_6}} \right) \tag{2-23} θ6=atan2(s6,c6)(2-23)


2.3.2 多解性

机械臂末端的一组特定位姿,对应的逆解有8组。

由于三角函数产生的正负号导致 θ 1 {\theta _1} θ1 θ 3 {\theta _3} θ3分别都有两个符号不同的解,因此两两组合就可以得到四组不同的解,其产生的解的组合如表2-1所示,对应的四种构型如图2-1所示。

表2-1 PUMA560的四组逆解

在这里插入图片描述

在这里插入图片描述

图2-1 四组逆解对应的机械臂构型

又由于PUMA560的腕部可以转动,即通过以下操作可以得到相同的末端位姿:
{ θ ′ 4 = θ 4 + π θ ′ 5 = − θ 5 θ ′ 6 = θ 6 + π (2-24) \left\{ \begin{array}{l} {{\theta '}_4} = {\theta _4} + \pi \\ {{\theta '}_5} = - {\theta _5}\\ {{\theta '}_6} = {\theta _6} + \pi \end{array} \right. \tag{2-24} θ4=θ4+πθ5=θ5θ6=θ6+π(2-24)

通过上述操作,可以得到另外不同的四组解,如表2-2所示。

表2-2 腕部可以转动导致的四组逆解

在这里插入图片描述


三、MATLAB仿真

3.1 资源

Github:

  • https://github.com/KK-Man-42/Kinematic-modeling-of-PUMA560

百度网盘:

  • 链接:https://pan.baidu.com/s/1F7PWrCJjyp7dlQOk6a1qtQ
  • 提取码:0xgf

3.2 进阶

一知半解|MATLAB机器人建模与仿真控制


参考资料


  1. Puma560 机器人DH变换 ↩︎

  2. 臧庆凯,李春贵,闫向磊.基于MATLAB的PUMA560机器人运动仿真研究[J].广西科学院学报,2010,26(04):397-400.DOI:10.13657/j.cnki.gxkxyxb.2010.04.041. ↩︎

  3. 蔡自兴, 谢斌. 机器人学[M]. 清华大学出版社, 2000. ↩︎ ↩︎

  4. 陈晗,李林升.基于MATLAB的PUMA560机器人正逆解研究[J].制造业自动化,2018,40(12):34-36. ↩︎

  • 13
    点赞
  • 93
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值