Summary

  • ED7220C 5-DOF Articulated Manipulator
  • Forward Kinematics (Exact Solution)
  • Inverse Kinematics (Exact Solution ingnored Singularity)

Dimensions of ED7220C

001

DH Parameters

  • Joint Coordinates Definition

002

  • DH Parameters (Standard form)
i αi [deg] ai [mm] θi di [mm] HOME [deg] RANGE [deg] REMARK
1 α1=90 a1=22 θ1 d1=140 0 -155, +155  
2 α2=0 a2=218 θ2 d2=0 90 -125, +45  
3 α3=0 a3=218 θ3 d3=0 +90 -130, +130  
4 α4=90 a4=0 θ4 d4=0 0 -40, +220 J3 and J4 are on same position.
5 α5=0 a5=0 θ5 d5=140 90 -180, +180  
  • Check Validity of DH Parameters & Home Position

003

(Using MATLAB & Robotics toolbox by P.Corke)

Forward Kinematics

  • General Transformation Matrix
Tii1=[cosθisinθicosαisinθisinαiαicosθisinθicosθicosαicosθisinαiαisinθi0sinαicosαidi0001]=[CθiSθiCαiSθiSαiαiCθiSθiCθiCαiCθiSαiαiSθi0SαiCαidi0001]
  • Transformation Matrix for each joints

Represent to sinθ1=S1...

T10=[C10S1a1C1S10C1a1S1010d10001] T21=[C2S20a2C2S2C20a2S200100001] T32=[C3S30a3C3S3C30a3S300100001] T43=[C40S40S40C4001000001] T54=[C5S500S5C500001d50001]
  • Transformation Matrix from J1 to J3 (Base to Wrist)
T31=[C1C2C3C1S2S3C1C2S3C1S2C3S1C1C2a3C3C1S2a3S3+C1a2C2+a1C1S1C2C3S1S2S3S1C2S3S1S2C3C1S1C2a3C3S1S2a3S3+S1a2C2+a1S1S2C3C2S3S2S3C2C30S2a3C3C2a3S3a2S2+d10001]

Represent to sin(θ1+θ2)=S12...

And apply some trigonometric formulas :

S12=S1C2+C1S2 C12=C1C2S1S2

So we can take more simple form :

T31=[C1C23C1S23S1C1(a3C23+a2C2+a1)S1C23S1S23C1S1(a3C23+a2C2+a1)S23C230(a3S23+a2S2d1)0001]
  • Check Validity

When ED7220C is on HOME POSITION,

q=[θ1θ2θ3]=[09090] T31=[C1C23C1S23S1C1(a3C23+a2C2+a1)S1C23S1S23C1S1(a3C23+a2C2+a1)S23C230(a3S23+a2S2d1)0001]=[100a3+a10010010a2+d10001]=[10024000100103580001]

The normal vector of Wrist is :

n_=[100]

The orientation vector of Wrist is :

o_=[001]

The approach vector of Wrist is :

a_=[010]

And the position vector of Wrist is :

p_=[2400358]
  • Total Transformation Matrix from J1 to J5 (Base to Tool)
T51=[n_o_a_p_0001] n_=[((C1C2C3C1S2S3)C4+(C1C2S3C1S2C3)S4)C5+S1S5((S1C2C3S1S2S3)C4+(S1C2S3S1S2C3)S4)C5C1S5((S2C3C2S3)C4+(S2S3C2C3)S4)C5] o_=[((C1C2C3C1S2S3)C4+(C1C2S3C1S2C3)S4)S5+S1C5((S1C2C3S1S2S3)C4+(S1C2S3S1S2C3)S4)S5C1C5((S2C3C2S3)C4+(S2S3C2C3)S4)S5] a_=[(C1C2C3C1S2S3)S4+(C1C2S3C1S2C3)C4(S1C2C3S1S2S3)S4+(S1C2S3S1S2C3)C4(S2C3C2S3)S4+(S2S3C2C3)C4] p_=[((C1C2C3C1S2S3)S4+(C1C2S3C1S2C3)C4)d5+C1C2a3C3C1S2a3S3+C1a2C2+a1C1((S1C2C3S1S2S3)S4+(S1C2S3S1S2C3)c4)d5+S1C2a3C3S1S2a3S3+S1a2C2+a1S1((S2C3C2S3)S4+(S2S3C2C3)C4)s5S2a3C3C2a3S3a2S2+d1]

And apply some trigonometric formulas :

C123=C1C2C3S1S2C3C1S2S3S1C2S3 S123=S1C2C3+C1S2C3+C1C2S3S1S2S3

So we can take more simple form :

n_=[C1C234C5+S1S5S1C234C5C1S5S234C5] o_=[C1C234S5+S1S5S1C234S5C1C5S234C5] a_=[C1S234S1S234C234] p_=[C1(d5S234+a3C23+a2C2+a1)S1(d5S234+a3C23+a2C2+a1)d5C234a3S23a2S2+d1]
  • Check Validity

When ED7220C is on HOME POSITION,

q=[θ1θ2θ3θ4θ5]=[09090090] T51=[n_o_a_p_0001]=[01024010000012180001]

Inverse Kinematics (Exact Solution)

  • Tool configuration vector ω
ω(q)=[ω1ω2ω3ω4ω5ω6]=[p_a_eq5π]=[C1(d5S234+a3C23+a2C2+a1S1(d5S234+a3C23+a2C2+a1d5C234a3S23a2S2+d1C1S234eq5πS1S234eq5πC234eq5π]

NOTE : eq5π is the roll information of tool.

  • Find q1

Represent to q1=θ1...

ω2ω1=S1(d5S234+a3C23+a2C2+a1)C1(d5S234+a3C23+a2C2+a1)=S1C1 atan2(ω2,ω1)=q1
  • Find q3

q234=q2+q3+q4 : This is global tool pitch angle.

C1ω4+S1ω5=C21S234eq5πS21S234eq5π=S234eq5π ω5S1=S234eq5π q234=atan2(ω5S1,ω6)

( This is not a good solution, what if S1=0 )

Define as ( to find q3 ) :

b1=C1ω1+S1ω2a1+d5S234 b2=d1d5C234ω3

b1 and b2 are all known, because we know q1 and q234.

b1=(C21+S21)(d5S234+a3C23+a2C2+a1)a1+d5S234=a2C2+a3C23 b2=d1d5C234(d5C234a3S23a2S2+d1)=a2S2+a3+S23

Now use …

b21+b22=(a22C22+a23C223+2a2a3C2C23)+(a22S22+a23S223+2a2a3S2S23)=a22+a23+2a2a3(C2C23+S2S23)=a22+a23+2a2a3C3

q3=±acos(b21+b22a22a232a2a3) : 2 solutions by elbow up&down

  • Find q2

Now we know q3, so we can solve

b1=a2C2+a3C23=a2C2+a3(C2C3S2S3) b2=a2S2+a3+S23=a2S2+a3(S2C3+C2S3) b1=(a2+a3C3)C2(a3S3)S2 b2=(a3S3)C2+(a2+a3C3)S2 C2=(a2+a3C3)b1+a3S3b2(a2+a3C3)2+a23S23 S2=(a2+a3C3)b2a3S3b1(a2+a3C3)2+a23S23 atan2(S2,C2)=q2
  • Find q4

Remember q234=q2+q3+q4 ,

q4=q234q2q3 : Tool pitch angle

  • Find q5

q5=π2ln(ω24+ω25+ω26) : Tool roll angle

  • Solution Summary
JOINT SOLUTION VALID RANGE [deg] REMARK
1 q1=atan2(ω2,ω1) -180 ~ +180  
2 q2=atan2(S2,C2) -90 ~ +90  
3 q3=±acos(b21+b22a22a232a2a3) -0 ~ +180  
4 q4=q234q2q3 -270 ~ +90  
5 q5=π2ln(ω24+ω25+ω26) -180 ~ +180  

Notice

  • This solution should be evaluated in simulation or real test.
  • ED does not guarantee this solution’s safety & complete perfection.
  • Use this solution only for educational purpose.
  • This document was wrote for who has studied fundamental robotics.
  • This document does not consider singularity problems, path planning, differential kinematics, dynamics, digital controls, and etc.

References

  • Corke. Robotics Toolbox for MATLAB (Release 6) . pic@cat.csiro.au, 2001
  • Desrochers. Notes of FUNDAMENTALS OF ROBOTICS . http://www.ecse.rpi.edu/Courses/F04/ECSE4490/Roboticsoutline04.htm, 2004
  • Choi. Presentation of Implementation of Inverse Kinematics and Application . kjchoi@graphics.snu.ac.kr, 2007
  • Craig. Introduction to robotics : mechanics and control . Pearson, 2005
  • 김진오. 강의자료 : 산업용 로봇 기구설계 기초. 산업인력양성프로젝트, 2007

Revisions

  • Rev-1.0 : First distribution
  • Rev-1.1 : Fixed some wrong words

Author

  • by DymaxionKim