AXY:Basics of joint parameters identification

From SoftMC-Wiki
Revision as of 13:17, 24 December 2012 by Arwiebe (talk | contribs)
Jump to: navigation, search

Model based control can bring great benefit to robot control, but it requires exact model parameters. This document describes how these parameters can be identified (automatically).

Record identification motion profile

The motion profile should provoke all motion states described by the model. Ideally it should move over the whole position range of the joint, have plenty accelerations/decelerations and have different constant velocity phases.

The recorded file must contain the position feedback along with the torque feedback.

Derivative without phase shift

For parameter identification joint velocity and acceleration is needed. Standard numeric derivative of position feedback leads to phase shift, which impairs the identification. To avoid the phase shift interpolated derivative should be used instead. Hereby the numeric derivative is spline-interpolated and values at original sampling times are taken.

Interpolated derivative is implemented in aico.motionAnalyser by the function signal_deriveInterp.

Mathematical derivation

In a simple case an actuating joint can be described with the following motion equation:

Here the symbols are:

Torque (feedback)
Velocity and acceleration (feedback)
Moment of inertia
Viscous friction coefficient
Coulomb friction coefficient

It is assumed that the joints position, velocity and acceleration feedbacks together with the torque feedback are known (recorded). The unknown model parameters are , and .

The recorded value tuples can be represented as a over-determined linear equation system:

These n equations can also be written as a single matrix equation:

One solution of this system of equations can be obtained by using the pseudoinverse of .

HowTo identify joint parameters

  1. Use AF function IDM_IdentParamsJoint to move an identification profile and create a record.
  2. Process the obtained record with the aico.motionAnalyser function joint_identDynamics.

Verification

See verification page.