Difference between revisions of "AXY:Rod forces model for Delta kinematics"
(Moved from TestWiki) |
m (Lisa moved page Axystems:Rod forces model for Delta kinematics to AXY:Rod forces model for Delta kinematics) |
||
(12 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | |||
− | |||
− | |||
− | |||
On a Delta robot the mechanical connection between the platform (point C) and the crank arm (Point B) is realized by a pair of parallelogram rods. | On a Delta robot the mechanical connection between the platform (point C) and the crank arm (Point B) is realized by a pair of parallelogram rods. | ||
The ball and socket joints at B and C can only carry a limited force, which is push/pull force of the rods. | The ball and socket joints at B and C can only carry a limited force, which is push/pull force of the rods. | ||
If the maximal force of the ball joints is exceeded, robot arms can hang out which leads to destruction of the robot. | If the maximal force of the ball joints is exceeded, robot arms can hang out which leads to destruction of the robot. | ||
− | Because of kinematic structure of | + | Because of kinematic structure of Delta robots rod forces depend on position, acceleration and moving direction. |
− | A physical model is needed to | + | A physical model is needed to precompute rod forces for start/target positions and limit acceleration/deceleration according to maximal allowed forces. |
− | + | [[File:Control;Rod forces model for Delta kinematics - Introduction.png]] | |
== Physical model == | == Physical model == | ||
− | [[File: Rod forces model for Delta kinematics - Relevant kinematic values.png|frame|Relevant kinematic values]] | + | [[File:Control;Rod forces model for Delta kinematics - Relevant kinematic values.png|frame|Relevant kinematic values]] |
This rod forces model is based on the inverse dynamic model developed by IWF ([[File:Inverse kinematics and inverse dynamics for Delta - IWF report.pdf]]). | This rod forces model is based on the inverse dynamic model developed by IWF ([[File:Inverse kinematics and inverse dynamics for Delta - IWF report.pdf]]). | ||
The actuating joint torques <math>\tau_i</math> are considered as known. | The actuating joint torques <math>\tau_i</math> are considered as known. | ||
− | The coordinate system used by IWF differs from that used | + | The coordinate system used by IWF differs from that used by Servotronix (Y and Z directions are inverted). |
In this model the IWF coordinate system is used. | In this model the IWF coordinate system is used. | ||
− | The transformation from and into | + | The transformation from and into Servotronix coordinate system is done by IDM implementation. |
− | |||
=== Forces at crank arms === | === Forces at crank arms === | ||
− | [[File: Rod forces model for Delta kinematics - Forces at crank arms.png|frame|Forces at crank arms]] | + | [[File:Control;Rod forces model for Delta kinematics - Forces at crank arms.png|frame|Forces at crank arms]] |
The direction unit vector of the force <math>\overrightarrow{Fq}_i</math> points perpendicularly to the crank arm: | The direction unit vector of the force <math>\overrightarrow{Fq}_i</math> points perpendicularly to the crank arm: | ||
Line 111: | Line 106: | ||
</math> | </math> | ||
− | |||
=== Forces at the platform === | === Forces at the platform === | ||
− | [[File: Rod forces model for Delta kinematics - Forces at platform.png|frame|Forces at platform]] | + | [[File:Control;Rod forces model for Delta kinematics - Forces at platform.png|frame|Forces at platform]] |
The inertia of the parallelogram rods cannot be neglected. | The inertia of the parallelogram rods cannot be neglected. | ||
Line 151: | Line 145: | ||
The unknown values of <math>\eta_i</math> are obtained by solving the linear equation system (7). | The unknown values of <math>\eta_i</math> are obtained by solving the linear equation system (7). | ||
− | |||
=== Torques at the platform === | === Torques at the platform === | ||
− | [[File: Rod forces model for Delta kinematics - Torques at platform.png|frame|Torques at the platform]] | + | [[File:Control;Rod forces model for Delta kinematics - Torques at platform.png|frame|Torques at the platform]] |
The rod forces do not affect at the platform's center of mass and therefore cause load torques which are compensated by the parallelogram structures. | The rod forces do not affect at the platform's center of mass and therefore cause load torques which are compensated by the parallelogram structures. | ||
Line 217: | Line 210: | ||
</math> | </math> | ||
− | |||
=== Parallelogram rod forces === | === Parallelogram rod forces === | ||
Line 223: | Line 215: | ||
The absolute value of the bigger rod force is then: | The absolute value of the bigger rod force is then: | ||
:<math> | :<math> | ||
− | \left| \overrightarrow{Fr}_i \right| | + | \left| \overrightarrow{Fr}_i \right| = \frac {1}{2} \cdot \left( \left| \overrightarrow{Fb}_i \right| + \left| \mu_i \right| \right) |
\qquad \mathrm{(11)} | \qquad \mathrm{(11)} | ||
</math> | </math> | ||
Line 229: | Line 221: | ||
=== Load capacity reduction due to parallelogram shift === | === Load capacity reduction due to parallelogram shift === | ||
− | [[File:Rod forces model for Delta kinematics - Parallelogram shift.png|frame|Parallelogram shift]] | + | [[File:Control;Rod forces model for Delta kinematics - Parallelogram shift.png|frame|Parallelogram shift]] |
The half-bowls of the ball and socket joints are held by a spring. | The half-bowls of the ball and socket joints are held by a spring. | ||
Line 253: | Line 245: | ||
\qquad \mathrm{(12)} | \qquad \mathrm{(12)} | ||
</math> | </math> | ||
− | |||
− | |||
== Limitation of acceleration/deceleration == | == Limitation of acceleration/deceleration == | ||
Line 270: | Line 260: | ||
The only model parameter <math>Fr_{max}</math> can only be obtained by incrementally increasing (trial and error). | The only model parameter <math>Fr_{max}</math> can only be obtained by incrementally increasing (trial and error). | ||
+ | <!-- | ||
== Verification == | == Verification == | ||
See [[/Verification|verification page]]. | See [[/Verification|verification page]]. | ||
+ | |||
== See also == | == See also == | ||
− | + | ||
* In [[aico.motionAnalyser]] this model is implemented by the function [[delta_rodForces]]. | * In [[aico.motionAnalyser]] this model is implemented by the function [[delta_rodForces]]. | ||
[[Category:Model based control for Delta kinematics]] | [[Category:Model based control for Delta kinematics]] | ||
+ | --> |
Latest revision as of 13:00, 24 April 2014
On a Delta robot the mechanical connection between the platform (point C) and the crank arm (Point B) is realized by a pair of parallelogram rods. The ball and socket joints at B and C can only carry a limited force, which is push/pull force of the rods. If the maximal force of the ball joints is exceeded, robot arms can hang out which leads to destruction of the robot. Because of kinematic structure of Delta robots rod forces depend on position, acceleration and moving direction. A physical model is needed to precompute rod forces for start/target positions and limit acceleration/deceleration according to maximal allowed forces.
Contents
Physical model
This rod forces model is based on the inverse dynamic model developed by IWF (File:Inverse kinematics and inverse dynamics for Delta - IWF report.pdf). The actuating joint torques are considered as known.
The coordinate system used by IWF differs from that used by Servotronix (Y and Z directions are inverted). In this model the IWF coordinate system is used. The transformation from and into Servotronix coordinate system is done by IDM implementation.
Forces at crank arms
The direction unit vector of the force points perpendicularly to the crank arm:
The actuating joint torques comprise load torque, friction torques, gravity compensation torque and dynamic torque (inertia):
The absolute value of is then:
The direction of the parallelogram rods is the connection between points C and B:
The direction unit vector of the force is parallel to the parallelogram rods:
The angle between and is obtained by using dot product definition:
The absolute value of is computed as:
Forces at the platform
The inertia of the parallelogram rods cannot be neglected. Therefore the forces at point C are less then forces at point B.
The inertia force is proportional to the Cartesian acceleration vector:
Gravity force points downward:
Direction of is identical to :
The unknown value of force is expressed by a variable:
The sum of all forces affecting at the platform is equal zero:
The unknown values of are obtained by solving the linear equation system (7).
Torques at the platform
The rod forces do not affect at the platform's center of mass and therefore cause load torques which are compensated by the parallelogram structures. These compensation torques produces additional forces in the parallelogram rods and have to be modeled as well.
Load torques are obtained by considering resultant rod forces at point C:
For the computation of compensation torques of both parallelogram rods are handled separately:
The compensation torques occur because the both rod forces are different:
The force difference of the both parallelogram rod forces is not known in first step. It is expressed by a variable :
For the compensation torques follows:
The addition of all load and compensation torques must be equal zero:
The unknown variables can be obtained by solving the linear equation system:
Parallelogram rod forces
Because are unity vectors, the variables represent the differences of the both rod forces. The absolute value of the bigger rod force is then:
Load capacity reduction due to parallelogram shift
The half-bowls of the ball and socket joints are held by a spring. For the load capacity of the joint only the force components are relevant, that are perpendicular to the rods. When the parallelogram is shifted the perpendicular forces become less and therefore the load capacity decreases.
To obtain the shift angle an intermediate step is needed:
The reduction factor of the joint's load capacity is then:
Limitation of acceleration/deceleration
To set appropriate acceleration and deceleration values for a given straight motion it is adequate to test only the start and target points.
The acceleration rates at start point respectively the deceleration rate at target point are computed as quotient of maximal allowed rod force and the computed rod force:
Parameters
The only model parameter can only be obtained by incrementally increasing (trial and error).