|
Namespaces |
| namespace | ERS7Info |
LED Bitmasks |
Bitmasks for use when specifying combinations of LEDs (see LedEngine ) Note that left/right are robot's point of view
|
|
typedef unsigned int | ERS7Info::LEDBitMask_t |
| | So you can be clear when you're refering to a LED bitmask.
|
|
const LEDBitMask_t | ERS7Info::HeadColorLEDMask = 1<<(HeadColorLEDOffset-LEDOffset) |
| | mask corresponding to HeadColorLEDOffset
|
|
const LEDBitMask_t | ERS7Info::HeadWhiteLEDMask = 1<<(HeadWhiteLEDOffset-LEDOffset) |
| | mask corresponding to HeadWhiteLEDOffset
|
|
const LEDBitMask_t | ERS7Info::ModeRedLEDMask = 1<<(ModeRedLEDOffset-LEDOffset) |
| | mask corresponding to ModeRedLEDOffset
|
|
const LEDBitMask_t | ERS7Info::ModeGreenLEDMask = 1<<(ModeGreenLEDOffset-LEDOffset) |
| | mask corresponding to ModeGreenLEDOffset
|
|
const LEDBitMask_t | ERS7Info::ModeBlueLEDMask = 1<<(ModeBlueLEDOffset-LEDOffset) |
| | mask corresponding to ModeBlueLEDOffset
|
|
const LEDBitMask_t | ERS7Info::WirelessLEDMask = 1<<(WirelessLEDOffset-LEDOffset) |
| | mask corresponding to WirelessLEDOffset
|
|
const LEDBitMask_t | ERS7Info::FaceLEDPanelMask = 1<<(FaceLEDPanelOffset-LEDOffset) |
| | mask corresponding to FaceLEDPanelOffset, selects only the first of the panel - shift this to get the others
|
|
const LEDBitMask_t | ERS7Info::FrBackColorLEDMask = 1<<(FrBackColorLEDOffset-LEDOffset) |
| | mask corresponding to FrBackColorLEDOffset
|
|
const LEDBitMask_t | ERS7Info::FrBackWhiteLEDMask = 1<<(FrBackWhiteLEDOffset-LEDOffset) |
| | mask corresponding to FrBackWhiteLEDOffset
|
|
const LEDBitMask_t | ERS7Info::MdBackColorLEDMask = 1<<(MdBackColorLEDOffset-LEDOffset) |
| | mask corresponding to MdBackColorLEDOffset
|
|
const LEDBitMask_t | ERS7Info::MdBackWhiteLEDMask = 1<<(MdBackWhiteLEDOffset-LEDOffset) |
| | mask corresponding to MdBackWhiteLEDOffset
|
|
const LEDBitMask_t | ERS7Info::RrBackColorLEDMask = 1<<(RrBackColorLEDOffset-LEDOffset) |
| | mask corresponding to RrBackColorLEDOffset
|
|
const LEDBitMask_t | ERS7Info::RrBackWhiteLEDMask = 1<<(RrBackWhiteLEDOffset-LEDOffset) |
| | mask corresponding to RrBackWhiteLEDOffset
|
|
const LEDBitMask_t | ERS7Info::LEDABModeMask = 1<<(LEDABModeOffset-LEDOffset) |
| | mask corresponding to LEDABModeOffset
|
|
const LEDBitMask_t | ERS7Info::BotLLEDMask = 1<<(BotLLEDOffset-LEDOffset) |
| | bottom left
|
|
const LEDBitMask_t | ERS7Info::BotRLEDMask = 1<<(BotRLEDOffset-LEDOffset) |
| | bottom right
|
|
const LEDBitMask_t | ERS7Info::MidLLEDMask = 1<<(MidLLEDOffset-LEDOffset) |
| | middle left
|
|
const LEDBitMask_t | ERS7Info::MidRLEDMask = 1<<(MidRLEDOffset-LEDOffset) |
| | middle right
|
|
const LEDBitMask_t | ERS7Info::TopLLEDMask = 1<<(TopLLEDOffset-LEDOffset) |
| | top left
|
|
const LEDBitMask_t | ERS7Info::TopRLEDMask = 1<<(TopRLEDOffset-LEDOffset) |
| | top right
|
|
const LEDBitMask_t | ERS7Info::TopBrLEDMask = 1<<(TopBrLEDOffset-LEDOffset) |
| | top bar
|
|
const LEDBitMask_t | ERS7Info::TlRedLEDMask = 1<<(TlRedLEDOffset-LEDOffset) |
| | red tail light
|
|
const LEDBitMask_t | ERS7Info::TlBluLEDMask = 1<<(TlBluLEDOffset-LEDOffset) |
| | blue tail light
|
|
const LEDBitMask_t | ERS7Info::FaceLEDMask |
| | LEDs for the face panel (all FaceLEDPanelMask<<(0:NumFacePanelLEDs-1) entries).
|
| const LEDBitMask_t | ERS7Info::HeadLEDMask |
| | LEDs for face (all but back lights).
|
| const LEDBitMask_t | ERS7Info::BackLEDMask |
| | LEDS on the back.
|
|
const LEDBitMask_t | ERS7Info::TailLEDMask = 0 |
| | LEDs on tail (ERS-7 has none).
|
|
const LEDBitMask_t | ERS7Info::AllLEDMask = (LEDBitMask_t)~0 |
| | selects all of the leds
|
Output Offsets |
Corresponds to entries in ERS7Info::PrimitiveName, defined at the end of this file
|
| enum | ERS7Info::LegOffset_t { ERS7Info::LFrLegOffset = LegOffset+LFrLegOrder*JointsPerLeg,
ERS7Info::RFrLegOffset = LegOffset+RFrLegOrder*JointsPerLeg,
ERS7Info::LBkLegOffset = LegOffset+LBkLegOrder*JointsPerLeg,
ERS7Info::RBkLegOffset = LegOffset+RBkLegOrder*JointsPerLeg
} |
| | The offsets of the individual legs, add REKOffset_t value to access specific joint. More...
|
| enum | ERS7Info::LEDOffset_t {
ERS7Info::HeadColorLEDOffset = LEDOffset,
ERS7Info::HeadWhiteLEDOffset,
ERS7Info::ModeRedLEDOffset,
ERS7Info::ModeGreenLEDOffset,
ERS7Info::ModeBlueLEDOffset,
ERS7Info::WirelessLEDOffset,
ERS7Info::FaceLEDPanelOffset,
ERS7Info::FrBackColorLEDOffset = FaceLEDPanelOffset+NumFacePanelLEDs,
ERS7Info::FrBackWhiteLEDOffset,
ERS7Info::MdBackColorLEDOffset,
ERS7Info::MdBackWhiteLEDOffset,
ERS7Info::RrBackColorLEDOffset,
ERS7Info::RrBackWhiteLEDOffset,
LEDABModeOffset,
ERS7Info::BotLLEDOffset = FaceLEDPanelOffset+1,
ERS7Info::BotRLEDOffset = FaceLEDPanelOffset+0,
ERS7Info::MidLLEDOffset = FaceLEDPanelOffset+3,
ERS7Info::MidRLEDOffset = FaceLEDPanelOffset+2,
ERS7Info::TopLLEDOffset = FaceLEDPanelOffset+7,
ERS7Info::TopRLEDOffset = FaceLEDPanelOffset+6,
ERS7Info::TopBrLEDOffset = HeadColorLEDOffset,
ERS7Info::TlRedLEDOffset = RrBackColorLEDOffset,
ERS7Info::TlBluLEDOffset = FrBackColorLEDOffset
} |
| | The offsets of the individual LEDs on the head and tail. Note that left/right are robot's point of view. See also LEDBitMask_t. More...
|
|
const unsigned | ERS7Info::PIDJointOffset = 0 |
| | The beginning of the PID Joints.
|
|
const unsigned | ERS7Info::LegOffset = PIDJointOffset |
| | the offset of the beginning of the leg joints, NumLegs of JointsPerLeg each, in LegOrder_t order; see LegOffset_t
|
|
const unsigned | ERS7Info::HeadOffset = LegOffset+NumLegJoints |
| | the offset of the beginning of the head joints, add TPROffset_t to get specific joint
|
|
const unsigned | ERS7Info::TailOffset = HeadOffset+NumHeadJoints |
| | the offset of the beginning of the tail joints, add TPROffset_t to get specific joint (except RollOffset not available)
|
|
const unsigned | ERS7Info::MouthOffset = TailOffset+NumTailJoints |
| | the offset of the beginning of the mouth joint, is specific joint
|
|
const unsigned | ERS7Info::LEDOffset = PIDJointOffset + NumPIDJoints |
| | the offset of LEDs in WorldState::outputs and MotionCommand functions, see LedOffset_t for specific offsets
|
|
const unsigned | ERS7Info::BinJointOffset = LEDOffset + NumLEDs |
| | The beginning of the binary joints.
|
|
const unsigned | ERS7Info::EarOffset = BinJointOffset |
| | the offset of the beginning of the ear joints - note that ears aren't sensed. They can be flicked by the environment and you won't know.
|
|
const unsigned | ERS7Info::BaseFrameOffset = NumOutputs |
| | Use with kinematics to refer to base reference frame.
|
|
const unsigned | ERS7Info::PawFrameOffset = BaseFrameOffset+1 |
| | Use with kinematics to refer to paw reference frames (add appropriate LegOrder_t to specify which paw).
|
|
const unsigned | ERS7Info::CameraFrameOffset = PawFrameOffset+NumLegs |
| | Use with kinematics to refer to camera reference frame.
|
|
const unsigned | ERS7Info::NearIRFrameOffset = CameraFrameOffset+1 |
| | Use with kinematics to refer to short-range infrared (distance) sensor reference frame.
|
|
const unsigned | ERS7Info::FarIRFrameOffset = NearIRFrameOffset+1 |
| | Use with kinematics to refer to long-range infrared (distance) sensor reference frame.
|
|
const unsigned | ERS7Info::ChestIRFrameOffset = FarIRFrameOffset+1 |
| | Use with kinematics to refer to chest-mounted infrared (distance) sensor reference frame.
|
Input Offsets |
The order in which inputs should be stored
|
| enum | ERS7Info::ButtonOffset_t {
LFrPawOffset = LFrLegOrder,
RFrPawOffset = RFrLegOrder,
LBkPawOffset = LBkLegOrder,
RBkPawOffset = RBkLegOrder,
ChinButOffset = 4,
HeadButOffset,
HeadFrButOffset = HeadButOffset,
FrontBackButOffset,
MiddleBackButOffset,
BackButOffset = MiddleBackButOffset,
RearBackButOffset,
WirelessSwOffset
} |
| | holds offsets to different buttons in WorldState::buttons[] More...
|
| enum | ERS7Info::SensorOffset_t {
ERS7Info::NearIRDistOffset = 0,
ERS7Info::FarIRDistOffset,
ERS7Info::ChestIRDistOffset,
ERS7Info::BAccelOffset,
ERS7Info::LAccelOffset,
ERS7Info::DAccelOffset,
ERS7Info::PowerRemainOffset,
ERS7Info::PowerThermoOffset,
ERS7Info::PowerCapacityOffset,
ERS7Info::PowerVoltageOffset,
ERS7Info::PowerCurrentOffset
} |
| | holds offset to different sensor values in WorldState::sensors[] More...
|
| const char *const | ERS7Info::buttonNames [NumButtons] |
| | Provides a string name for each button.
|
| const char *const | ERS7Info::sensorNames [NumSensors] |
| | Provides a string name for each sensor.
|
Output Types Information |
Right now all binary joints are slow, but perhaps this won't always be the case... hence the IsFast/Slow bitmasks to select which type, in order to be more general
|
|
const unsigned | ERS7Info::JointsPerLeg = 3 |
| | The number of joints per leg.
|
|
const unsigned | ERS7Info::NumLegs = 4 |
| | The number of legs.
|
|
const unsigned | ERS7Info::NumLegJoints = JointsPerLeg*NumLegs |
| | the TOTAL number of joints on ALL legs
|
|
const unsigned | ERS7Info::NumHeadJoints = 3 |
| | The number of joints in the neck.
|
|
const unsigned | ERS7Info::NumTailJoints = 2 |
| | The number of joints assigned to the tail.
|
|
const unsigned | ERS7Info::NumMouthJoints = 1 |
| | the number of joints that control the mouth
|
|
const unsigned | ERS7Info::NumEarJoints = 2 |
| | The number of joints which control the ears (NOT per ear, is total).
|
|
const unsigned | ERS7Info::NumButtons = 2+4+3+1 |
| | the number of buttons that are available, 2 head, 4 paws, 3 back, 1 underbelly see ERS7Info::ButtonOffset_t
|
|
const unsigned | ERS7Info::NumSensors = 3+3+5 |
| | 3 IR (distance), 3 accel (force), 5 from power, see ERS7Info::SensorOffset_t
|
|
const unsigned | ERS7Info::NumLEDs = 27 |
| | The number of LEDs which can be controlled.
|
|
const unsigned | ERS7Info::NumFacePanelLEDs = 14 |
| | The number of face panel LEDs.
|
|
const unsigned | ERS7Info::NumPIDJoints = NumLegJoints+NumHeadJoints+NumTailJoints+NumMouthJoints |
| | The number of joints which use PID motion - everything except ears.
|
|
const unsigned | ERS7Info::NumBinJoints = NumEarJoints |
| | The number of binary joints - just the ears.
|
|
const unsigned | ERS7Info::NumOutputs = NumPIDJoints + NumBinJoints + NumLEDs |
| | the total number of outputs
|
|
const unsigned | ERS7Info::NumReferenceFrames = NumOutputs + 1 + NumLegs + 1 + 3 |
| | for the base, paws (NumLegs), camera, and IR sensors (3) reference frames
|
|
const float | ERS7Info::CameraHorizFOV = 56.9/180*M_PI |
| | horizontal field of view (radians)
|
|
const float | ERS7Info::CameraVertFOV = 45.2/180*M_PI |
| | vertical field of view (radians)
|
|
const float | ERS7Info::CameraFOV = CameraHorizFOV |
| | should be set to maximum of CameraHorizFOV or CameraVertFOV
|
|
const unsigned int | ERS7Info::CameraResolutionX = 208 |
| | the number of pixels available in the 'full' layer
|
|
const unsigned int | ERS7Info::CameraResolutionY = 160 |
| | the number of pixels available in the 'full' layer
|
|
const float | ERS7Info::BallOfFootRadius = 23.433/2 |
| | radius of the ball of the foot
|
|
const bool | ERS7Info::IsFastOutput [NumOutputs] |
| | true for joints which can be updated every 32 ms (all joints on ERS-7)
|
|
const bool | ERS7Info::IsRealERS7 [NumOutputs] |
| | we need this so you can tell programmatically which joints are "real" and which are "fake" in a compatability mode
|
CPC IDs |
Values defined by OPEN-R, used to interface with lower level OPEN-R code to read sensors - values don't correspond to order of ERS7Info::PrimitiveName
|
|
static const int | ERS7Info::CPCJointMouth = 0 |
| | Mouth.
|
|
static const int | ERS7Info::CPCSwitchChin = 1 |
| | Chin sensor.
|
|
static const int | ERS7Info::CPCJointNeckNod = 2 |
| | Neck tilt2.
|
|
static const int | ERS7Info::CPCSensorHead = 3 |
| | Head sensor.
|
|
static const int | ERS7Info::CPCSensorNearPSD = 4 |
| | Head distance sensor(near).
|
|
static const int | ERS7Info::CPCSensorFarPSD = 5 |
| | Head distance sensor(far).
|
|
static const int | ERS7Info::CPCJointNeckPan = 6 |
| | Neck pan.
|
|
static const int | ERS7Info::CPCJointNeckTilt = 7 |
| | Neck tilt1.
|
|
static const int | ERS7Info::CPCSwitchLFPaw = 8 |
| | Left fore leg paw sensor.
|
|
static const int | ERS7Info::CPCJointLFKnee = 9 |
| | Left fore legJ3.
|
|
static const int | ERS7Info::CPCJointLFElevator = 10 |
| | Left fore legJ2.
|
|
static const int | ERS7Info::CPCJointLFRotator = 11 |
| | Left fore legJ1.
|
|
static const int | ERS7Info::CPCSwitchLHPaw = 12 |
| | Left hind leg paw sensor.
|
|
static const int | ERS7Info::CPCJointLHKnee = 13 |
| | Left hind legJ3.
|
|
static const int | ERS7Info::CPCJointLHElevator = 14 |
| | Left hind legJ2.
|
|
static const int | ERS7Info::CPCJointLHRotator = 15 |
| | Left hind legJ1.
|
|
static const int | ERS7Info::CPCSwitchRFPaw = 16 |
| | Right fore leg paw sensor.
|
|
static const int | ERS7Info::CPCJointRFKnee = 17 |
| | Right fore legJ3.
|
|
static const int | ERS7Info::CPCJointRFElevator = 18 |
| | Right fore legJ2.
|
|
static const int | ERS7Info::CPCJointRFRotator = 19 |
| | Right fore legJ1.
|
|
static const int | ERS7Info::CPCSwitchRHPaw = 20 |
| | Right hind leg paw sensor.
|
|
static const int | ERS7Info::CPCJointRHKnee = 21 |
| | Right hind legJ3.
|
|
static const int | ERS7Info::CPCJointRHElevator = 22 |
| | Right hind legJ2.
|
|
static const int | ERS7Info::CPCJointRHRotator = 23 |
| | Right hind legJ1.
|
|
static const int | ERS7Info::CPCJointTailTilt = 24 |
| | Tail tilt.
|
|
static const int | ERS7Info::CPCJointTailPan = 25 |
| | Tail pan.
|
|
static const int | ERS7Info::CPCSensorAccelFB = 26 |
| | Acceleration sensor(front-back).
|
|
static const int | ERS7Info::CPCSensorAccelLR = 27 |
| | Acceleration sensor(right-left).
|
|
static const int | ERS7Info::CPCSensorAccelUD = 28 |
| | Acceleration sensor(up-down).
|
|
static const int | ERS7Info::CPCSensorChestPSD = 29 |
| | Chest distance sensor.
|
|
static const int | ERS7Info::CPCSwitchWireless = 30 |
| | Wireless LAN switch.
|
|
static const int | ERS7Info::CPCSensorBackRear = 31 |
| | Back sensor(rear).
|
|
static const int | ERS7Info::CPCSensorBackMiddle = 32 |
| | Back sensor(middle).
|
|
static const int | ERS7Info::CPCSensorBackFront = 33 |
| | Back sensor(front).
|
Defines |
|
#define | RAD(deg) (((deg) * M_PI ) / 180.0) |
| | Just a little macro for converting degrees to radians.
|
|
#define | __RI_RAD_FLAG |
| | a flag so we undef these after we're done - do you have a cleaner solution?
|
Variables |
|
const char *const | ERS7Info::RobotName = "ERS-7" |
| | the name of the model, to be used for logging and remote GUIs
|
|
const unsigned int | ERS7Info::FrameTime = 8 |
| | time between frames in the motion system (milliseconds)
|
|
const unsigned int | ERS7Info::NumFrames = 4 |
| | the number of frames per buffer (don't forget also double buffered)
|
|
const unsigned int | ERS7Info::SlowFrameTime = 8 |
| | time between frames for the ears (ERS-7 doesn't seem to have any "slow" joints; this only applied for the ears on the ERS-210)
|
|
const unsigned int | ERS7Info::NumSlowFrames = 4 |
| | the number of frames per buffer being sent to ears (double buffered as well)
|
|
const unsigned int | ERS7Info::SoundBufferTime = 32 |
| | the number of milliseconds per sound buffer... I'm not sure if this can be changed
|
|
const unsigned | ERS7Info::outputNameLen = 9 |
| | The length of the strings used for each of the outputs in outputNames (doesn't include null term).
|
| const char *const | ERS7Info::outputNames [NumOutputs] |
| | A name of uniform length for referring to joints - handy for posture files, etc.
|
| const char *const | ERS7Info::PrimitiveName [NumOutputs] |
| | the joint identifier strings used to refer to specific joints in OPEN-R (but not needed for others)
|
|
const char *const | ERS7Info::SpeakerLocator = "PRM:/s1-Speaker:S1" |
| | use to open speaker connection with the system
|
|
const char *const | ERS7Info::CameraLocator = "PRM:/r1/c1/c2/c3/i1-FbkImageSensor:F1" |
| | use to open camera connection with the system
|
| const float | ERS7Info::DefaultPIDs [NumPIDJoints][3] |
| | This table holds the default PID values for each joint. see PIDMC.
|
| const unsigned char | ERS7Info::DefaultPIDShifts [3] = {0x0E, 0x02-1, 0x0F-3} |
| | These will control the shift values given to the system. see PIDMC.
|
| const float | ERS7Info::MaxOutputSpeed [NumOutputs] |
| | These values are Sony's recommended maximum joint velocities, in rad/ms.
|
| const double | ERS7Info::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 double | ERS7Info::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).
|