본문 바로가기

공부/Modern Robotics

[Modern Robotics] 강좌 2: 로봇 기구학 #1

반응형

 
 

 
 
 

 
 
https://www.coursera.org/learn/modernrobotics-course2-ko

 

현대 로봇공학, 강좌 2: 로봇 기구학

Northwestern University에서 제공합니다. 로봇이 어떻게 작동하는지 궁금하신가요? 로봇공학 커리어에 관심이 있으신가요?로봇공학의 모든 하위 분야에서 사용되는 기초적인 수학적 모델링 기법을

www.coursera.org

 
 
 
 
Forward kinematics(FK)the calculation of the end effector frame configuration(postion+orientation) from the joint configuration.
●For n-revolute joint serial robots, $\theta\in \mathrm{R^{n}}\longrightarrow T_{sb}\in SE(3)$
●Widely used representations:
①Denavit-Hatenberg parameters(DH parameters)
Product of exponentials formula(PoE) - What this lecture mainly uses.
 
 
 
Product of Exponentials formula(PoE): A representation of FK using the exponential of rigid-body motion
 
Space PoE: A PoE using screw axes defined in {s} frame.

●What you need:
① $M$ :   $M=T_{sb}\in SE(3)$ when the robot is at its zero position(home position).
② $\mathcal{S}_{1}...\mathcal{S}_{n}$ :   Screw axes of each joints in {s} frame when the robot is at home position.
③ $\theta=[\theta_{1}...\theta_{n}]^T$ :   Joint configuration.
 
●Formula:
$T(\theta)=e^{[\mathcal{S_{1}}]\theta_{1}}\cdots e^{[\mathcal{S_{n-1}}]\theta_{n-1}}e^{[\mathcal{S_{n}}]\theta_{n}}M$
 
●M is transformed in the order of $\theta_{n}$... $\theta_{1}$.
 
 
Body PoE: A PoE using screw axes defined in {b} frame.
●What you need:
① $M$ :   $M=T_{sb}\in SE(3)$ when the robot is at its zero position(home position).
② $\mathcal{B}_{1}...\mathcal{B}_{n}$ :   Screw axes of each joints in {b} frame when the robot is at home position. (Using a symbol $\mathcal{B}$ instead of $\mathcal{S}$)
+)$\mathcal{B}_{i}=[Ad_{T_{bs}}]\mathcal{S_{i}}=[Ad_{M^{-1}}]\mathcal{S_{i}}$ (Refer to the adjoint representation)
③ $\theta=[\theta_{1}...\theta_{n}]^T$ :   Joint configuration.
 
●Formula:
$T(\theta)=Me^{[\mathcal{B_{1}}]\theta_{1}}\cdots e^{[\mathcal{B_{n-1}}]\theta_{n-1}}e^{[\mathcal{B_{n}}]\theta_{n}}$
 
●M is transformed in the order of $\theta_{1}$... $\theta_{n}$.
 
 
 
Jacobian J: A matrix represents the linear sensitivity of the end effector frame velocity(=twist) to the joint velocity. A matrix that relates joint velocity(or joint infinitesimal displacement) to end effector twist(or end effector infinitesimal displacement)
 
For n-joint serial robot at joint configuration $\theta \in \mathbb{R}^n $ and its end effector configuration is m-dimention,
 
$J(\theta)=[J_{1}\cdots J_{n}]\in \mathbb{R}^{m\times n}$
 
●Jacobian is a function of $\theta$
Each column $J_{i}$ represents the end effector's twist $\nu$ when a joint i moves unit velocity and the others stop. 
 
●rank(J) indicates the dimensionality of the end effector's achievable motion at a specific joint configuration.
   └Full rank(Rank(J) is at its maximum value): No singularity occurs.
   └Reduced rank: Singularity occurs.
 
e.g.) The end effector's configuration is 6 (3 position + 3 orientation). If rank(J) is full rank (=5), only 5 of the end effector's configurations can be controlled due to the number of joints. If rank(J) is reduced, only 4 or fewer configurations can be controlled because the singularity occurs.
 

 
Space Jacobian: A Jacobian relates joint velocity $\dot{\theta}$ to end effector spatial twist $\nu_{s}$.
 
$\nu_{s}=J_{s}(\theta)\dot{\theta}$ ,    $J_{si}(\theta)=[Ad_{e^{[\mathcal{S}_{1}]\theta_{1}}\cdots e^{[\mathcal{S}_{i-1}]\theta_{i-1}}}]\mathcal{S}_{i}=[Ad_{T_{i-1}}]\mathcal{S}_{i}$ ,  $J_{s1}=\mathcal{S}_{1}$
 
●At the home position, $J_{s}(0)=\begin{bmatrix}\mathcal{S}_{1} \cdots \mathcal{S}_{n}\end{bmatrix}$
●The i-column of the space Jacobian is unaffected by joints i+1 to n.
 
 
Body Jacobian: A Jacobian relates joint velocity $\dot{\theta}$ to end effector body twist $\nu_{b}$.
 
$\nu_{b}=J_{b}(\theta)\dot{\theta}$ ,   $J_{bi}(\theta)=[Ad_{e^{-[\mathcal{B}_{n}]\theta_{n}}\cdots e^{-[\mathcal{B}_{i+1}]\theta_{i+1}}}]\mathcal{B}_{i}$ ,  $J_{bn}=\mathcal{B}_{n}$  (Note! the order and the signs)
 
●At the home position, $J_{b}(0)=\begin{bmatrix}\mathcal{B}_{1} \cdots \mathcal{B}_{n}\end{bmatrix}$
●The i-column of the body Jacobian is unaffected by joints 1 to i-1.
●$J_{b}(\theta)=[Ad_{T_{bs}}]J_{s}(\theta)$
 
 
 
Statics using Jacobian: Calculate the joint torques required to generate the end effector wrench, utilizing the power at the end effector($P=\tau\omega=Fv$).
 
$\tau=J_{s}^{T}(\theta)\mathcal{F_{s}}=J_{b}^{T}(\theta)\mathcal{F_{b}}$   ($\tau$: Joint torque, $\mathcal{F}$: End effector wrench)
 
※The first 3-row of the wrench is the moment, not linear force. ($\mathcal{F}=[m,f]^{T}$)
 
 
 
(Kinematic) Singularity: At specific postures, the end effector instantaneously loses the ability to move in one or more directions. (=loses its manipulability)
 
●e.g., for the rigid body configuration, the end effector loses one or more freedom among $\omega_{x},\omega_{y},\omega_{z},v_{x},v_{y},v_{z}$.
●At a singular posture, the robot's rank(J) < full rank.
└Overactuated robot: n>6, $J\in\mathbb{R}^{6\times n}$ (Fat jacobian), rank(J) ≤ 6
└Fully-actuated robot: n=6, $J\in\mathbb{R}^{6\times 6}$ (Square jacobian), rank(J) ≤ 6
└Underactuated robot: n<6, $J\in\mathbb{R}^{6\times n}$ (Tall jacobian), rank(J) ≤ n
When singularity occurs, the end effector cannot move in a direction. Conversely, it can resist a bigger force(moment) in that direction without requiring greater torque on the joints. (Resist with the structural strength, not joint torques)
 
※교재 Serial robot의 singularity 발생 case III, IV 이해 못함, 추후 추가 공부 필요
 
 
 
 
 
 
Manipulability: The ability of the end effector to freely move in any direction at a given configuration.
●When a singularity occurs, the manipulability of the end effector decreases, and the end effector cannot move in one or more directions.
●Can assess the manipulability with the manipulability ellipsoid matrix.
 
For $J=[J_{\omega},J_{v}]^{T}$, $J_{w},J_{v}\in \mathbb{R}^{3\times n}$,
  Angular manipulability ellipsoid: $J_{w}J_{w}^{T}\in \mathbb{R}^{3\times 3}$,  Linear manipulability ellipsoid: $J_{v}J_{v}^{T}\in \mathbb{R}^{3\times 3}$



●The eigenvector of the matrix represents the principal axis directions of the manipulability ellipsoid.
●The eigenvalue of the matrix represents the (principal length)$^{2}$ of the manipulability ellipsoid.
 
●If the ellipsoid is close to a sphere(All principal lengths are similar), it indicates the end effector can move equally easily in any direction.
●If the ellipsoid is close to a line(One principal length is close to zero), it indicates the singularity is likely to occur.

 
 
Forcibility: The ability of the end effector to freely apply force/moment in any direction at a given configuration.
※The term 'Forcibility' is not an official term. I coined it to correspond to 'Manipulability'.
●When a singularity occurs, the end effector can apply a much stronger force/moment in the direction where manipulability is lost.
●Can assess the forcibility with the forcibility ellipsoid matrix.
 
For $J=[J_{\omega},J_{v}]^{T}$, $J_{w},J_{v}\in \mathbb{R}^{3\times n}$,
  Angular force ellipsoid: $(J_{w}J_{w}^{T})^{-1}\in \mathbb{R}^{3\times 3}$,  Linear force ellipsoid: $(J_{v}J_{v}^{T})^{-1}\in \mathbb{R}^{3\times 3}$

●The eigenvector of the matrix represents the principal axis directions of the forcibility ellipsoid.
●The eigenvalue of the matrix represents the (principal length)$^{2}$ of the forcibility ellipsoid.
 
●The Manipulability ellipsoid and The Forcibility ellipsoid have the same principal directions but their lengths are reciprocal. (Manipulability and Forcibility have a trade-off relationship.)

 
 
 
 

========================================================================
정확한 정보 전달보단 공부 겸 기록에 초점을 둔 글입니다.
틀린 내용이 있을 수 있습니다.
틀린 내용이나 다른 문제가 있으면 댓글에 남겨주시면 감사하겠습니다. : )
========================================================================

반응형