CAT5 Forward Kinematics CAT5 Joint Angles to World Coordinates navigation bar

Table of Contents

CAT5 Inverse Kinematics

Converts cartesian world coordinates to joint angles for the CRS Catalyst-5 robot.

Library

QUARC Targets/Devices/Third-Party/CRS/Robots/CAT5

MATLAB Command Line

Click to copy the following command line to the clipboard. Then paste it in the MATLAB Command Window:

qc_open_library('quarc_library/Devices/Third-Party/CRS/Robots/CAT5')

Description

CAT5 Inverse Kinematics

The CAT5 Inverse Kinematics block converts world coordinates to joint angles for the CRS Catalyst-5 robot. Since there are singularities in the workspace, the block uses the previous joint angles to arrive at a suitable configuration. The previous joint angles are maintained by the block itself. It uses the joint angle output from the previous iteration. Look under the block mask for more details. The reference frame is shown below:

CAT5 Inverse Kinematics

Input Ports

A 5-vector containing the position and orientation of the robot end-effector. The vector elements represent the X, Y and Z cartesian coordinates of the end-effector in millimeters, followed by the pitch and roll respectively, in radians. Note that yaw is the rotation about the Z-axis, pitch is the rotation about the Y-axis and roll is the rotation about the X-axis.

Output Ports

Joint Angles

The joint angles (in radians) for the five Catalyst-5 joints. The joint angles are produced as a 5-vector in order of the joints, i.e., base, shoulder, elbow, wrist pitch and wrist roll.

Error

A scalar denoting whether a solution could be found. An error code of zero indicates that a solution was found. The possible error codes and their meaning are listed in the table below.

Code

Error

0

No error. A solution was found.

1

Out of range error. One or more joints have exceeded their positive or negative joint limits.

2

Illegal transform. No valid inverse kinematics solution was found that fell within the joint limits.

3

Out of reach. The given location is outside the workspace of the robot.

Data Type Support

This block supports inputs and outputs of type double.

Parameters and Dialog Box

CAT5 Inverse Kinematics

Toolset Dimension (mm)

Three-element vector taht defines the dimension of the toolset attached to the end effector, if any.

Targets

Target Name

Compatible*

Model Referencing

Comments

QUARC Win32 Target

Yes

Yes

QUARC Win64 Target

Yes

Yes

QUARC Linux Nvidia Target

Yes

Yes

QUARC Linux QBot Platform Target

Yes

Yes

QUARC Linux QCar 2 Target

Yes

Yes

QUARC Linux QDrone 2 Target

Yes

Yes

QUARC Linux Raspberry Pi 3 Target

Yes

Yes

QUARC Linux Raspberry Pi 4 Target

Yes

Yes

QUARC Linux RT ARMv7 Target

Yes

Yes

QUARC Linux x64 Target

Yes

Yes

QUARC Linux DuoVero Target

Yes

Yes

QUARC Linux DuoVero 2016 Target

Yes

Yes

QUARC Linux Verdex Target

Yes

Yes

QUARC QNX x86 Target

Yes

Yes

Last fully supported in QUARC 2018.

Rapid Simulation (RSIM) Target

Yes

Yes

S-Function Target

No

N/A

Old technology. Use model referencing instead.

Normal simulation

Yes

Yes

* Compatible means that the block can be compiled for the target.

See Also

 

navigation bar