← Back to packages

Package intrinsic_proto

Message Affine3d

Message CoordinateFrame

Message Dynamics

Message Element

Message Joint

Message JointLimitUpdate

Message JointLimits

Message JointLimitsUpdate

Message LimitPair

Message Limits

Message LinearDependency

Message Link

Message Matrixd

Message Parameters

Message Parameters

Message Point

Message Pose

Message Quaternion

Message RepeatedDouble

Message Skeleton

Message Vector2

Message Vector3

Enum DynamicLimitsCheckMode

Enum Type

Messages

message Affine3d intrinsic/math/proto/affine.proto

Represents an affine 3D transformation composed of a linear part (containing rotation and scaling) and a position. Usually it is composed from position * rotation * scaling.

Field Type Description
1 linear intrinsic_proto.Matrixd

A 3x3 linear matrix containing the rotation and scaling of the affine transformation.

2 translation intrinsic_proto.Point

The translational part of the affine transformation.

message CoordinateFrame intrinsic/kinematics/proto/kinematics.proto

A reflexion of intrinsic::kinematics::CoordinateFrame

Field Type Description
1 element intrinsic_proto.Element

message Dynamics (Nested in intrinsic_proto.Joint.Parameters ) intrinsic/kinematics/proto/kinematics.proto

Field Type Description
1 static_friction double
2 damping double

message Element intrinsic/kinematics/proto/kinematics.proto

A reflexion of intrinsic::kinematics::Element

Field Type Description
1 id uint32

The id local to a kinematic skeleton

2 name string
3 parent_t_this intrinsic_proto.Pose
4 parent uint32
5 children repeated uint32

message Joint intrinsic/kinematics/proto/kinematics.proto

A reflexion of intrinsic::kinematics::Joint

Field Type Description
1 element intrinsic_proto.Element
2 parameters intrinsic_proto.Joint.Parameters
5 linear_dependency optional intrinsic_proto.Joint.LinearDependency

message JointLimitUpdate intrinsic/kinematics/types/joint_limits.proto

Specifies an update to apply on top of a existing limits. While the fields are "the same" as the normal limit protos, they have different usage. * Any field may be not provided (or empty) in which case no update is made to the limits this update is applied on. * Any field that is not empty will replace the original value. It must have the same size as the field it replaces in limits.

Field Type Description
1 min_position optional double

Lower joint position limits allow to restrict the object joint movement in joint space. Each joint of the object has lower (min) and upper (max) limits. The specified limits need to be within the object limits.

2 max_position optional double

Upper joint position limits allow to restrict the object joint movement in joint space. Each joint of the object has lower (min) and upper (max) limits. The specified limits need to be within the object limits.

3 max_velocity optional double

Maximum joint velocity limits per joint. Units are in meters, radians, or degrees per second. When not specified, the limits of the object will be used.

4 max_acceleration optional double

Max joint acceleration limits per joint. Units are in meters, radians, or degrees per second^2. When not specified, the acceleration limits from the object limits will be used.

5 max_jerk optional double

Maximum joint jerk limits for the object. Units are in meters, radians, or degrees per second^3. When not specified, the jerk limits from the object limits will be used.

6 max_effort optional double

Maximum joint jerk limits for the object. When not specified, the effort limits from the object limits will be used.

message JointLimits intrinsic/kinematics/types/joint_limits.proto

Field Type Description
1 min_position intrinsic_proto.RepeatedDouble

Units are radians, newton-meter or meter, newton When not specified, it is assumed to be unlimited and unenfforced velocity, acceleration, jerk and effort are symmetrical limits.

2 max_position intrinsic_proto.RepeatedDouble
3 max_velocity optional intrinsic_proto.RepeatedDouble
4 max_acceleration optional intrinsic_proto.RepeatedDouble
5 max_jerk optional intrinsic_proto.RepeatedDouble
6 max_effort optional intrinsic_proto.RepeatedDouble

message JointLimitsUpdate intrinsic/kinematics/types/joint_limits.proto

Specifies an update to apply on top of an existing JointLimits message. While the fields are "the same", they have different usage. * Any field may be not provided (or empty) in which case no update is made to the JointLimits this update is applied on. * Any field that is not empty will replace the original value. It must have the same size as the field it replaces in JointLimits.

Field Type Description
1 min_position optional intrinsic_proto.RepeatedDouble

Lower joint position limits allow to restrict the object joint movement in joint space. Each joint of the object has lower (min) and upper (max) limits. The specified limits need to be within the object limits.

2 max_position optional intrinsic_proto.RepeatedDouble

Upper joint position limits allow to restrict the object joint movement in joint space. Each joint of the object has lower (min) and upper (max) limits. The specified limits need to be within the object limits.

3 max_velocity optional intrinsic_proto.RepeatedDouble

Maximum joint velocity limits per joint. Units are in meters, radians, or degrees per second. When not specified, the limits of the object will be used.

4 max_acceleration optional intrinsic_proto.RepeatedDouble

Max joint acceleration limits per joint. Units are in meters, radians, or degrees per second^2. When not specified, the acceleration limits from the object limits will be used.

5 max_jerk optional intrinsic_proto.RepeatedDouble

Maximum joint jerk limits for the object. Units are in meters, radians, or degrees per second^3. When not specified, the jerk limits from the object limits will be used.

6 max_effort optional intrinsic_proto.RepeatedDouble

Maximum joint jerk limits for the object. When not specified, the effort limits from the object limits will be used.

message LimitPair intrinsic/kinematics/proto/kinematics.proto

Field Type Description
1 lower double
2 upper double

message Limits intrinsic/kinematics/proto/kinematics.proto

Field Type Description
1 position intrinsic_proto.LimitPair
2 velocity double
3 acceleration double
4 jerk double
5 effort double

message LinearDependency (Nested in intrinsic_proto.Joint ) intrinsic/kinematics/proto/kinematics.proto

Defines a joint dependency, which is used to compute a joint's 'derived' value from a weighted (linear) combination of 'input' joint values. Dependencies are defined as general form q_derived[i] = alpha_selfq_input[i] + alpha[i-1]q_input[i-1]+...+ alpha[i-k]*q_input[i-k]. By definition 'q_derived' is a minimal joint coordinate (e.g. DH parameterization) usable in standard rigid body kinematics algorithms. alpha_self is the scaling factor for the input value of the joint's own DoF. Preceding joints, that the given joint depends on, are termed 'leading' joints. Non-zero scaling factors for leading joints, alpha[i-k], are defined in the mapalpha_leading`, where leading joints are keyed by their Element Ids. Only fully actuated leading joints are supported, i.e. they must not be dependent joints themselves.

Field Type Description
1 alpha_self double

Scaling factor for the actuation of the joint's own DoF.

2 alpha_leading map<uint32, double>

Map from element id to scaling factor alpha for leading joints.

A reflexion of intrinsic::kinematics::Link

Field Type Description
1 element intrinsic_proto.Element
2 parameters intrinsic_proto.Link.Parameters

message Matrixd intrinsic/math/proto/matrix.proto

Field Type Description
1 rows int32
2 cols int32
3 values repeated double

Stores the values of a matrix in column-major order.

message Parameters (Nested in intrinsic_proto.Joint ) intrinsic/kinematics/proto/kinematics.proto

Field Type Description
1 type intrinsic_proto.Joint.Type
2 axis intrinsic_proto.Point
3 system_limits intrinsic_proto.Limits
4 soft_limits intrinsic_proto.Limits
5 dynamics intrinsic_proto.Joint.Parameters.Dynamics
6 default_configuration double

message Parameters (Nested in intrinsic_proto.Link ) intrinsic/kinematics/proto/kinematics.proto

Field Type Description
1 mass double
2 center_of_gravity intrinsic_proto.Pose
3 inertia intrinsic_proto.Matrixd

message Point intrinsic/math/proto/point.proto

Field Type Description
1 x double
2 y double
3 z double

message Pose intrinsic/math/proto/pose.proto

Field Type Description
1 position intrinsic_proto.Point
2 orientation intrinsic_proto.Quaternion

message Quaternion intrinsic/math/proto/quaternion.proto

Field Type Description
1 x double
2 y double
3 z double
4 w double

message RepeatedDouble intrinsic/kinematics/types/joint_limits.proto

We wrap the repeated double into its own message so we can have optional and repeated

Field Type Description
1 values repeated double

message Skeleton intrinsic/kinematics/proto/skeleton.proto

A reflexion of intrinsic::kinematics::Skeleton

Field Type Description
1 name string
2 anchor_offset intrinsic_proto.Pose
3 links repeated intrinsic_proto.Link
4 joints repeated intrinsic_proto.Joint
5 coordinate_frames repeated intrinsic_proto.CoordinateFrame
6 element_id_to_dof_index map<uint32, uint32>

message Vector2 intrinsic/math/proto/vector2.proto

Field Type Description
1 x double
2 y double

message Vector3 intrinsic/math/proto/vector3.proto

Field Type Description
1 x double
2 y double
3 z double

Enums

enum DynamicLimitsCheckMode intrinsic/kinematics/types/dynamic_limits_check_mode.proto

This enum class indicates the limits a joint position command is guaranteeing to abide by. For instance, DYNAMIC_LIMITS_CHECK_MODE_CHECK_JOINT_ACCELERATION denotes it should satisfy joint acceleration limits, while DYNAMIC_LIMITS_CHECK_MODE_CHECK_NONE will not check joint acceleration limits. Joint position and velocity constraints are always satisfied.

Name Number Description
DYNAMIC_LIMITS_CHECK_MODE_TYPE_UNSPECIFIED 0
DYNAMIC_LIMITS_CHECK_MODE_CHECK_JOINT_ACCELERATION 1
DYNAMIC_LIMITS_CHECK_MODE_CHECK_NONE 2

enum Type intrinsic/kinematics/proto/kinematics.proto

Name Number Description
REVOLUTE 0
PRISMATIC 1
FIXED 2