Tekkotsu Homepage
Demos
Overview
Downloads
Dev. Resources
Reference
Credits

MantisInfo Namespace Reference

Contains information about a Mantis robot, such as number of joints, LEDs, etc. More...

Classes

class  MantisCapabilities
 provides polymorphic robot capability detection/mapping More...

Variables

const char *const TargetName = "Mantis"
 the name of the model, to be used for logging and remote GUIs
const unsigned int FrameTime = 32
 time between frames in the motion system (milliseconds)
const unsigned int NumFrames = 1
 the number of frames per buffer (don't forget also double buffered)
const unsigned int SoundBufferTime = 32
 the number of milliseconds per sound buffer... I'm not sure if this can be changed
const fmat::Column< 3 > AgentBoundingBoxBaseFrameOffset = fmat::pack(400,70,350)
 Offset needed so that the centroid of the robot is correct related to the bounding box.
const fmat::Column< 3 > AgentBoundingBoxHalfDims = fmat::pack(100,100,100)
 Half of the length, width, and height of the robot.
Output Types Information

const unsigned NumWheels = 0
 The number of joints per front leg.
const unsigned FingerJointsPerArm = 0
 The number of joints per front leg.
const unsigned JointsPerArm = 0
 The number of joints per front leg.
const unsigned NumArms = 0
 The number of joints per front leg.
const unsigned NumArmJoints = JointsPerArm*NumArms
 The number of joints per front leg.
const unsigned JointsPerFrLeg = 7
 The number of joints per front leg.
const unsigned JointsPerPosLeg = 4
 The number of joints per posterior leg (middle and the back legs).
const unsigned NumFrLegs = 2
 The number of front legs.
const unsigned NumGrippers = NumFrLegs
 The number of grippers.
const unsigned NumPosLegs = 4
 The number of posterior legs.
const unsigned NumLegs = NumFrLegs + NumPosLegs
 The number of legs.
const unsigned NumFrLegJoints = JointsPerFrLeg*NumFrLegs
 the TOTAL number of joints in FRONT legs
const unsigned NumPosLegJoints = JointsPerPosLeg*NumPosLegs
 the TOTAL number of joints in POSTERIOR legs
const unsigned NumLegJoints = NumFrLegJoints + NumPosLegJoints
 the TOTAL number of joints on ALL legs
const unsigned NumHeadJoints = 3
 The number of joints in the pantiltroll.
const unsigned NumTailJoints = 0
 The number of joints assigned to the tail.
const unsigned NumMouthJoints = 0
 the number of joints that control the mouth
const unsigned NumEarJoints = 0
 The number of joints which control the ears (NOT per ear, is total).
const unsigned NumButtons = 3
 the number of buttons that are available
const unsigned NumSensors = 11
 the number of sensors available
const unsigned NumFacePanelLEDs = 0
 The number of face panel LEDs.
const unsigned NumPIDJoints = NumArmJoints + 1 + NumLegJoints + NumHeadJoints + NumTailJoints + NumMouthJoints
 servo pins (also includes the thorax joint)
const unsigned NumLEDs = NumPIDJoints
 There's an LED on every dynamixel, but can't see most of them, so save some computational resources and only expose the visible ones.
const unsigned NumOutputs = NumWheels + NumPIDJoints + NumLEDs
 the total number of outputs
const unsigned NumReferenceFrames = NumOutputs + NumLegs + NumArms + NumGrippers + 1 + 1
 for the feet, grippers, base and camera
const float BallOfFootRadius = 0
 radius of the ball of the foot
const unsigned FrontLegExtra = JointsPerFrLeg -1
 The number of extra joints in front legs.

Output Offsets

Corresponds to entries in ERS7Info::PrimitiveName, defined at the end of this file



enum  LegOrder_t {
  LFrLegOrder = 0, RFrLegOrder, LMdLegOrder, RMdLegOrder,
  LBkLegOrder, RBkLegOrder
}
 

the ordering of legs

More...
enum  FrLegOffset_t {
  FrSweepOffset = 0, FrElevatorOffset, FrTwist1Offset, FrElbowOffset,
  FrTwist2Offset, FrWristOffset, FrGripperOffset
}
 

The offsets within the Front Legs. Note that the ordering matches the actual physical ordering of joints on the appendage.

More...
enum  PosLegOffset_t { PosSweepOffset = 0, PosRotorOffset, PosElevatorOffset, PosKneeOffset }
 

The offsets within the Posterior Legs. Note that the ordering matches the actual physical ordering of joints on the appendage.

More...
enum  TPROffset_t { PanOffset = 0, TiltOffset, RollOffset }
 

The offsets of appendages with tilt (elevation), pan (heading), and roll or nod joints (i.e. head/wrist).

More...
enum  LegOffset_t {
  LFrLegOffset = LegOffset+LFrLegOrder*JointsPerFrLeg, RFrLegOffset = LegOffset+RFrLegOrder*JointsPerFrLeg, LMdLegOffset = LegOffset+LMdLegOrder*JointsPerPosLeg + FrontLegExtra, RMdLegOffset = LegOffset+RMdLegOrder*JointsPerPosLeg + FrontLegExtra,
  LBkLegOffset = LegOffset+LBkLegOrder*JointsPerPosLeg + FrontLegExtra, RBkLegOffset = LegOffset+RBkLegOrder*JointsPerPosLeg + FrontLegExtra
}
 

The offsets of the individual legs, add REKOffset_t value to access specific joint.

More...
enum  HeadOffset_t { HeadPanOffset = HeadOffset, HeadTiltOffset, HeadRollOffset }
 

These are 'absolute' offsets for the neck joints, don't need to add to HeadOffset like TPROffset_t values do.

More...
enum  LEDOffset_t { PowerRedLEDOffset = LEDOffset, PowerGreenLEDOffset, PlayLEDOffset, AdvanceLEDOffset }
 

The offsets of the individual LEDs.

More...
typedef unsigned int LEDBitMask_t
 So you can be clear when you're refering to a LED bitmask.
const unsigned PIDJointOffset = 0
 The beginning of the PID Joints.
const unsigned LegOffset = PIDJointOffset
 the offset of the beginning of the regular leg joints (after the 1 rotator joint for the right front leg): NumLegs of JointsPerLeg each, in LegOrder_t order; see LegOffset_t
const unsigned ThoraxJointOffset = LegOffset+NumLegJoints
 the offset of the beginning of the head joints, add TPROffset_t to get specific joint
const unsigned HeadOffset = ThoraxJointOffset + 1
 the ordering of legs
const unsigned LEDOffset = PIDJointOffset + NumPIDJoints
 the offset of LEDs in WorldState::outputs and MotionCommand functions, see LedOffset_t for specific offsets
const unsigned BaseFrameOffset = NumOutputs
 Use with kinematics to refer to base reference frame.
const unsigned FootFrameOffset = BaseFrameOffset + 1
 Use with kinematics to refer to feet reference frames (add appropriate LegOrder_t to specify which paw).
const unsigned GripperFrameOffset = FootFrameOffset+NumLegs
 Use with kinematics to refer to gripper reference frame.
const unsigned CameraFrameOffset = GripperFrameOffset + NumGrippers
 Use with kinematics to refer to camera reference frame.
const LEDOffset_t RedLEDOffset = PowerRedLEDOffset
 the ordering of legs
const LEDOffset_t BlueLEDOffset = AdvanceLEDOffset
 the ordering of legs
const LEDOffset_t GreenLEDOffset = PlayLEDOffset
 the ordering of legs
const LEDOffset_t YellowLEDOffset = AdvanceLEDOffset
 the ordering of legs
const LEDBitMask_t BlueLEDMask = (1<<(AdvanceLEDOffset-LEDOffset)) | (1<<(PowerRedLEDOffset-LEDOffset))
 the ordering of legs
const LEDBitMask_t GreenLEDMask = 1<<(GreenLEDOffset-LEDOffset)
 mask corresponding to GreenLEDOffset
const LEDBitMask_t YellowLEDMask = 1<<(YellowLEDOffset-LEDOffset)
 mask corresponding to YellowLEDOffset
const LEDBitMask_t RedLEDMask = 1<<(RedLEDOffset-LEDOffset)
 mask corresponding to RedLEDOffset
const LEDBitMask_t PowerRedLEDMask = 1<<(PowerRedLEDOffset-LEDOffset)
 mask corresponding to BlueLEDOffset
const LEDBitMask_t PowerGreenLEDMask = 1<<(PowerGreenLEDOffset-LEDOffset)
 mask corresponding to GreenLEDOffset
const LEDBitMask_t PlayLEDMask = 1<<(PlayLEDOffset-LEDOffset)
 mask corresponding to YellowLEDOffset
const LEDBitMask_t AdvanceLEDMask = 1<<(AdvanceLEDOffset-LEDOffset)
 mask corresponding to RedLEDOffset
const LEDBitMask_t FaceLEDMask = 0
 LEDs for the face panel (all FaceLEDPanelMask<<(0:NumFacePanelLEDs-1) entries).
const LEDBitMask_t AllLEDMask = (LEDBitMask_t)~0
 selects all of the leds

Input Offsets

The order in which inputs should be stored



enum  ButtonOffset_t { GreenButOffset, RedButOffset, YellowButOffset }
 

holds offsets to different buttons in WorldState::buttons[]

More...
enum  SensorOffset_t {
  LeftIRDistOffset, CenterIRDistOffset, IRDistOffset = CenterIRDistOffset, RightIRDistOffset,
  LeftLuminosityOffset, CenterLuminosityOffset, RightLuminosityOffset, MicVolumeOffset,
  MicSpikeCountOffset, PowerRemainOffset, PowerThermoOffset, PowerVoltageOffset
}
 

holds offset to different sensor values in WorldState::sensors[]

More...
enum  ServoParam_t { DYNAMIXEL_SLOPE = 0, DYNAMIXEL_PUNCH, DYNAMIXEL_MARGIN }
 

offsets into DefaultPIDs, since Dynamixel servos don't actually use PID control, but a different set of parameters

More...
const char *const buttonNames [NumButtons+1] = { "GreenBut", "RedBut", "YellowBut", NULL }
 Provides a string name for each button.
const char *const sensorNames [NumSensors+1]
 Provides a string name for each sensor.
const char *const outputNames [NumReferenceFrames+1]
 Names for each of the outputs.
const MantisCapabilities capabilities
 allocation declared in RobotInfo.cc
const float DefaultPIDs [NumPIDJoints][3]
 Dynamixel servos don't use PID control. Instead, these values indicate compliance slope (P), punch (add to P*error), compliance margin (min error to start applying torque) (see ServoParam_t).
const float MaxOutputSpeed [NumOutputs]
 These values are our recommended maximum joint velocities, in rad/ms.
const float outputRanges [NumOutputs][2]
 This table holds the software limits of each of the outputs, first index is the output offset, second index is MinMaxRange_t (i.e. MinRange or MaxRange).
const float mechanicalLimits [NumOutputs][2]
 This table holds the mechanical limits of each of the outputs, first index is the output offset, second index is MinMaxRange_t (i.e. MinRange or MaxRange).

Detailed Description

Contains information about a Mantis robot, such as number of joints, LEDs, etc.


Typedef Documentation

typedef unsigned int MantisInfo::LEDBitMask_t

So you can be clear when you're refering to a LED bitmask.

Definition at line 160 of file MantisInfo.h.


Enumeration Type Documentation

holds offsets to different buttons in WorldState::buttons[]

Should be a straight mapping to the ButtonSourceIDs

Note that the chest (power) button is not a normal button. It kills power to the motors at a hardware level, and isn't sensed in the normal way. If you want to know when it is pressed (and you are about to shut down) see PowerSrcID::PauseSID.

See also:
WorldState::buttons
ButtonSourceID_t
Enumerator:
GreenButOffset 
RedButOffset 
YellowButOffset 

Definition at line 205 of file MantisInfo.h.

The offsets within the Front Legs. Note that the ordering matches the actual physical ordering of joints on the appendage.

Enumerator:
FrSweepOffset 

moves leg forward or backward along body

FrElevatorOffset 

moves leg toward or away from body

FrTwist1Offset 

moves the first twist joint

FrElbowOffset 

rotation of elbow joint

FrTwist2Offset 
FrWristOffset 

moves wrist

FrGripperOffset 

Definition at line 101 of file MantisInfo.h.

These are 'absolute' offsets for the neck joints, don't need to add to HeadOffset like TPROffset_t values do.

Enumerator:
HeadPanOffset 

pan/heading (horizontal)

HeadTiltOffset 

tilt/elevation (vertical)

HeadRollOffset 

Definition at line 140 of file MantisInfo.h.

The offsets of the individual LEDs.

Enumerator:
PowerRedLEDOffset 
PowerGreenLEDOffset 
PlayLEDOffset 
AdvanceLEDOffset 

Definition at line 148 of file MantisInfo.h.

The offsets of the individual legs, add REKOffset_t value to access specific joint.

Enumerator:
LFrLegOffset 

beginning of left front arm's joints

RFrLegOffset 

beginning of right front arm's joints

LMdLegOffset 

beginning of left middle leg's joints

RMdLegOffset 

beginning of right middle leg's joints

LBkLegOffset 

beginning of left back leg's joints

RBkLegOffset 

beginning of right back leg's joints

Definition at line 130 of file MantisInfo.h.

the ordering of legs

Enumerator:
LFrLegOrder 

left front leg

RFrLegOrder 

right front leg

LMdLegOrder 

left middle leg

RMdLegOrder 

right middle leg

LBkLegOrder 

left back leg

RBkLegOrder 

right back leg

Definition at line 91 of file MantisInfo.h.

The offsets within the Posterior Legs. Note that the ordering matches the actual physical ordering of joints on the appendage.

Enumerator:
PosSweepOffset 

moves leg forward or backward along body

PosRotorOffset 

rotates leg

PosElevatorOffset 

moves leg toward or away from body

PosKneeOffset 

moves knee

Definition at line 113 of file MantisInfo.h.

holds offset to different sensor values in WorldState::sensors[]

See also:
WorldState::sensors[]
Enumerator:
LeftIRDistOffset 
CenterIRDistOffset 
IRDistOffset 
RightIRDistOffset 
LeftLuminosityOffset 
CenterLuminosityOffset 
RightLuminosityOffset 
MicVolumeOffset 
MicSpikeCountOffset 
PowerRemainOffset 
PowerThermoOffset 

estimate of power capacity as percentage, 0-1

degrees Celcius

PowerVoltageOffset 

volts

Definition at line 212 of file MantisInfo.h.

offsets into DefaultPIDs, since Dynamixel servos don't actually use PID control, but a different set of parameters

Enumerator:
DYNAMIXEL_SLOPE 

compliance slope, the proportional control (P in PID)

DYNAMIXEL_PUNCH 

punch, a constant added to the slope once error exceeds compliance margin

DYNAMIXEL_MARGIN 

compliance margin, the amount of error to tolerate before triggering a torque response

Definition at line 278 of file MantisInfo.h.

The offsets of appendages with tilt (elevation), pan (heading), and roll or nod joints (i.e. head/wrist).

Enumerator:
PanOffset 

pan/yaw/heading (horizontal)

TiltOffset 

tilt/pitch/elevation (vertical)

RollOffset 

spin/twist final axis

Definition at line 121 of file MantisInfo.h.


Variable Documentation

const LEDBitMask_t MantisInfo::AdvanceLEDMask = 1<<(AdvanceLEDOffset-LEDOffset)

mask corresponding to RedLEDOffset

Definition at line 170 of file MantisInfo.h.

const fmat::Column<3> MantisInfo::AgentBoundingBoxBaseFrameOffset = fmat::pack(400,70,350)

Offset needed so that the centroid of the robot is correct related to the bounding box.

Definition at line 180 of file MantisInfo.h.

const fmat::Column<3> MantisInfo::AgentBoundingBoxHalfDims = fmat::pack(100,100,100)

Half of the length, width, and height of the robot.

Definition at line 183 of file MantisInfo.h.

selects all of the leds

Definition at line 175 of file MantisInfo.h.

radius of the ball of the foot

Definition at line 68 of file MantisInfo.h.

Use with kinematics to refer to base reference frame.

Definition at line 85 of file MantisInfo.h.

const LEDBitMask_t MantisInfo::BlueLEDMask = (1<<(AdvanceLEDOffset-LEDOffset)) | (1<<(PowerRedLEDOffset-LEDOffset))

the ordering of legs

Definition at line 162 of file MantisInfo.h.

const LEDOffset_t MantisInfo::BlueLEDOffset = AdvanceLEDOffset

the ordering of legs

Definition at line 156 of file MantisInfo.h.

const char* const MantisInfo::buttonNames[NumButtons+1] = { "GreenBut", "RedBut", "YellowBut", NULL }

Provides a string name for each button.

Definition at line 208 of file MantisInfo.h.

Use with kinematics to refer to camera reference frame.

Definition at line 88 of file MantisInfo.h.

allocation declared in RobotInfo.cc

Definition at line 177 of file RobotInfo.cc.

Initial value:
 {
    {32,32,0},{32,32,0},{32,32,0},{32,32,0},{32,32,0},{32,32,0},{32,32,0},
    {32,32,0},{32,32,0},{32,32,0},{32,32,0},{32,32,0},{32,32,0},{32,32,0},
    {32,32,0},{32,32,0},{32,32,0},{32,32,0},
    {32,32,0},{32,32,0},{32,32,0},{32,32,0},
    {32,32,0},{32,32,0},{32,32,0},{32,32,0},
    {32,32,0},{32,32,0},{32,32,0},{32,32,0},
    {32,32,0},
    {32,32,0},{32,32,0},{32,32,0}  
  }

Dynamixel servos don't use PID control. Instead, these values indicate compliance slope (P), punch (add to P*error), compliance margin (min error to start applying torque) (see ServoParam_t).

I believe the torque calculation goes something like: torque = (error<compliance) ? 0 : punch + P*error Dynamixel servos allow different values to be supplied for CW vs. CCW motion, but we just use the same value for each

Definition at line 287 of file MantisInfo.h.

LEDs for the face panel (all FaceLEDPanelMask<<(0:NumFacePanelLEDs-1) entries).

Definition at line 173 of file MantisInfo.h.

const unsigned MantisInfo::FingerJointsPerArm = 0

The number of joints per front leg.

Definition at line 37 of file MantisInfo.h.

Use with kinematics to refer to feet reference frames (add appropriate LegOrder_t to specify which paw).

Definition at line 86 of file MantisInfo.h.

const unsigned int MantisInfo::FrameTime = 32

time between frames in the motion system (milliseconds)

Definition at line 30 of file MantisInfo.h.

The number of extra joints in front legs.

Definition at line 69 of file MantisInfo.h.

mask corresponding to GreenLEDOffset

Definition at line 163 of file MantisInfo.h.

const LEDOffset_t MantisInfo::GreenLEDOffset = PlayLEDOffset

the ordering of legs

Definition at line 157 of file MantisInfo.h.

Use with kinematics to refer to gripper reference frame.

Definition at line 87 of file MantisInfo.h.

the ordering of legs

Definition at line 81 of file MantisInfo.h.

const unsigned MantisInfo::JointsPerArm = 0

The number of joints per front leg.

Definition at line 38 of file MantisInfo.h.

const unsigned MantisInfo::JointsPerFrLeg = 7

The number of joints per front leg.

Definition at line 42 of file MantisInfo.h.

Referenced by Grasper::MoveArm::advTime().

const unsigned MantisInfo::JointsPerPosLeg = 4

The number of joints per posterior leg (middle and the back legs).

Definition at line 43 of file MantisInfo.h.

the offset of LEDs in WorldState::outputs and MotionCommand functions, see LedOffset_t for specific offsets

Definition at line 83 of file MantisInfo.h.

the offset of the beginning of the regular leg joints (after the 1 rotator joint for the right front leg): NumLegs of JointsPerLeg each, in LegOrder_t order; see LegOffset_t

Definition at line 79 of file MantisInfo.h.

Initial value:
 {
  
    0,0,0,0,0,0,0,
    0,0,0,0,0,0,0,
    0,0,0,0,
    0,0,0,0,
    0,0,0,0,
    0,0,0,0,
    0,
    0,0,0,
  
    0,0,0,0,0,0,0,
    0,0,0,0,0,0,0,
    0,0,0,0,
    0,0,0,0,
    0,0,0,0,
    0,0,0,0,
    0,
    0,0,0
  }

These values are our recommended maximum joint velocities, in rad/ms.

a value <= 0 means infinite speed (e.g. LEDs)

These limits are not enforced by the framework. They are simply available for you to use as you see fit. HeadPointerMC and PostureMC are primary examples of included classes which do respect these values (although they can be overridden)

These values were obtained from the administrators of the Sony OPEN-R BBS

Definition at line 305 of file MantisInfo.h.

Initial value:
 {
  
    {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)},
    {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)},
    {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)},{RAD(-100),RAD(100)},
    {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)},{RAD(-100),RAD(100)},
    {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)},{RAD(-100),RAD(100)},
    {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)},{RAD(-100),RAD(100)},
    {RAD(-100),RAD(100)},
    {RAD(-100),RAD(100)},{RAD(-100),RAD(100)},{RAD(-100),RAD(100)},
  
    {0,1},{0,1},{0,1},{0,1},{0,1},{0,1},{0,1},
    {0,1},{0,1},{0,1},{0,1},{0,1},{0,1},{0,1},
    {0,1},{0,1},{0,1},{0,1},
    {0,1},{0,1},{0,1},{0,1},
    {0,1},{0,1},{0,1},{0,1},
    {0,1},{0,1},{0,1},{0,1},
    {0,1},
    {0,1},{0,1},{0,1}
  }

This table holds the mechanical limits of each of the outputs, first index is the output offset, second index is MinMaxRange_t (i.e. MinRange or MaxRange).

Same as outputRanges, don't know actual values because they were never specified by Sony

Definition at line 358 of file MantisInfo.h.

The number of joints per front leg.

Definition at line 40 of file MantisInfo.h.

const unsigned MantisInfo::NumArms = 0

The number of joints per front leg.

Definition at line 39 of file MantisInfo.h.

const unsigned MantisInfo::NumButtons = 3

the number of buttons that are available

Definition at line 56 of file MantisInfo.h.

const unsigned MantisInfo::NumEarJoints = 0

The number of joints which control the ears (NOT per ear, is total).

Definition at line 55 of file MantisInfo.h.

const unsigned MantisInfo::NumFacePanelLEDs = 0

The number of face panel LEDs.

Definition at line 58 of file MantisInfo.h.

const unsigned int MantisInfo::NumFrames = 1

the number of frames per buffer (don't forget also double buffered)

Definition at line 31 of file MantisInfo.h.

the TOTAL number of joints in FRONT legs

Definition at line 48 of file MantisInfo.h.

const unsigned MantisInfo::NumFrLegs = 2

The number of front legs.

Definition at line 44 of file MantisInfo.h.

The number of grippers.

Definition at line 45 of file MantisInfo.h.

const unsigned MantisInfo::NumHeadJoints = 3

The number of joints in the pantiltroll.

Definition at line 52 of file MantisInfo.h.

There's an LED on every dynamixel, but can't see most of them, so save some computational resources and only expose the visible ones.

Definition at line 61 of file MantisInfo.h.

the TOTAL number of joints on ALL legs

Definition at line 50 of file MantisInfo.h.

The number of legs.

Definition at line 47 of file MantisInfo.h.

const unsigned MantisInfo::NumMouthJoints = 0

the number of joints that control the mouth

Definition at line 54 of file MantisInfo.h.

the total number of outputs

Definition at line 63 of file MantisInfo.h.

servo pins (also includes the thorax joint)

Definition at line 60 of file MantisInfo.h.

the TOTAL number of joints in POSTERIOR legs

Definition at line 49 of file MantisInfo.h.

const unsigned MantisInfo::NumPosLegs = 4

The number of posterior legs.

Definition at line 46 of file MantisInfo.h.

for the feet, grippers, base and camera

Definition at line 64 of file MantisInfo.h.

const unsigned MantisInfo::NumSensors = 11

the number of sensors available

Definition at line 57 of file MantisInfo.h.

const unsigned MantisInfo::NumTailJoints = 0

The number of joints assigned to the tail.

Definition at line 53 of file MantisInfo.h.

const unsigned MantisInfo::NumWheels = 0

The number of joints per front leg.

Definition at line 35 of file MantisInfo.h.

Initial value:
 { 
  
    "LFr:sweep","LFr:elvtr","LFr:twist1","LFr:elbow","LFr:twist2","LFr:wrist","LFr:Gripper",
    "RFr:sweep","RFr:elvtr","RFr:twist1","RFr:elbow","RFr:twist2","RFr:wrist","RFr:Gripper",
    "LMd:sweep","LMd:rotor","LMd:elvtr","LMd:knee",
    "RMd:sweep","RMd:rotor","RMd:elvtr","RMd:knee",
    "LBk:sweep","LBk:rotor","LBk:elvtr","LBk:knee",
    "RBk:sweep","RBk:rotor","RBk:elvtr","RBk:knee",
    "Thorax",
    "NECK:pan","NECK:tilt","NECK:roll",
    
  
    "LED:LFr:sweep","LED:LFr:elvtr","LED:LFr:twist1","LED:LFr:elbow","LED:LFr:twist2","LED:LFr:wrist","LED:LFr:Gripper",
    "LED:RFr:sweep","LED:RFr:elvtr","LED:RFr:twist1","LED:RFr:elbow","LED:RFr:twist2","LED:RFr:wrist","LED:RFr:Gripper",
    "LED:LMd:sweep","LED:LMd:rotor","LED:LMd:elvtr","LED:LMd:knee",
    "LED:RMd:sweep","LED:RMd:rotor","LED:RMd:elvtr","LED:RMd:knee",
    "LED:LBk:sweep","LED:LBk:rotor","LED:LBk:elvtr","LED:LBk:knee",
    "LED:RBk:sweep","LED:RBk:rotor","LED:RBk:elvtr","LED:RBk:knee",
    "LED:Thorax",
    "LED:NECK:pan","LED:NECK:tilt","LED:NECK:roll",
        
  
    "BaseFrame","LFrFootFrame","RFrFootFrame","LMdFootFrame","RMdFootFrame","LBkFootFrame","RBkFootFrame",
        "LFrGripperFrame", "RFrGripperFrame", "CameraFrame",    
    NULL
  }

Names for each of the outputs.

Definition at line 236 of file MantisInfo.h.

Initial value:
 {
  
    {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)},
    {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)},
    {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)},
    {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)},
    {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)},
    {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, {RAD(-100),RAD(100)}, 
    {RAD(-100),RAD(100)},
    {RAD(-100),RAD(100)},{RAD(-100),RAD(100)},{RAD(-100),RAD(100)},
    
        
    {0,1},{0,1},{0,1},{0,1},{0,1},{0,1},{0,1},
    {0,1},{0,1},{0,1},{0,1},{0,1},{0,1},{0,1},
    {0,1},{0,1},{0,1},{0,1},
    {0,1},{0,1},{0,1},{0,1},
    {0,1},{0,1},{0,1},{0,1},
    {0,1},{0,1},{0,1},{0,1},
    {0,1},
    {0,1},{0,1},{0,1}
  }

This table holds the software limits of each of the outputs, first index is the output offset, second index is MinMaxRange_t (i.e. MinRange or MaxRange).

Definition at line 334 of file MantisInfo.h.

const unsigned MantisInfo::PIDJointOffset = 0

The beginning of the PID Joints.

Definition at line 78 of file MantisInfo.h.

const LEDBitMask_t MantisInfo::PlayLEDMask = 1<<(PlayLEDOffset-LEDOffset)

mask corresponding to YellowLEDOffset

Definition at line 169 of file MantisInfo.h.

const LEDBitMask_t MantisInfo::PowerGreenLEDMask = 1<<(PowerGreenLEDOffset-LEDOffset)

mask corresponding to GreenLEDOffset

Definition at line 168 of file MantisInfo.h.

const LEDBitMask_t MantisInfo::PowerRedLEDMask = 1<<(PowerRedLEDOffset-LEDOffset)

mask corresponding to BlueLEDOffset

Definition at line 167 of file MantisInfo.h.

mask corresponding to RedLEDOffset

Definition at line 165 of file MantisInfo.h.

const LEDOffset_t MantisInfo::RedLEDOffset = PowerRedLEDOffset

the ordering of legs

Definition at line 155 of file MantisInfo.h.

const char* const MantisInfo::sensorNames[NumSensors+1]
Initial value:
 {
    "LeftIRDist", "CenterIRDist", "RightIRDist",
    "LeftLuminosity", "CenterLuminosity", "RightLuminosity",
    "MicVolume", "MicSpikeCount",
    "PowerRemain", "PowerThermo", "PowerVoltage", NULL
  }

Provides a string name for each sensor.

Definition at line 228 of file MantisInfo.h.

const unsigned int MantisInfo::SoundBufferTime = 32

the number of milliseconds per sound buffer... I'm not sure if this can be changed

Definition at line 32 of file MantisInfo.h.

const char *const MantisInfo::TargetName = "Mantis"

the name of the model, to be used for logging and remote GUIs

Definition at line 176 of file RobotInfo.cc.

the offset of the beginning of the head joints, add TPROffset_t to get specific joint

Definition at line 80 of file MantisInfo.h.

mask corresponding to YellowLEDOffset

Definition at line 164 of file MantisInfo.h.

const LEDOffset_t MantisInfo::YellowLEDOffset = AdvanceLEDOffset

the ordering of legs

Definition at line 158 of file MantisInfo.h.


Tekkotsu v5.1CVS
Generated Mon May 9 04:59:24 2016 by Doxygen 1.6.3