ERS210Info Namespace Reference
Detailed Description
Contains information about the ERS-210 Robot, such as number of joints, PID defaults, timing information, etc.
|
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 | LEDBitMask_t |
| So you can be clear when you're refering to a LED bitmask.
|
const LEDBitMask_t | BotLLEDMask = 1<<(BotLLEDOffset-LEDOffset) |
| bottom left (red - sad)
|
const LEDBitMask_t | BotRLEDMask = 1<<(BotRLEDOffset-LEDOffset) |
| bottom right (red - sad)
|
const LEDBitMask_t | MidLLEDMask = 1<<(MidLLEDOffset-LEDOffset) |
| middle left (green - happy)
|
const LEDBitMask_t | MidRLEDMask = 1<<(MidRLEDOffset-LEDOffset) |
| middle right (green - happy)
|
const LEDBitMask_t | TopLLEDMask = 1<<(TopLLEDOffset-LEDOffset) |
| top left (red - angry)
|
const LEDBitMask_t | TopRLEDMask = 1<<(TopRLEDOffset-LEDOffset) |
| top right (red - angry)
|
const LEDBitMask_t | TopBrLEDMask = 1<<(TopBrLEDOffset-LEDOffset) |
| top bar (green)
|
const LEDBitMask_t | TlRedLEDMask = 1<<(TlRedLEDOffset-LEDOffset) |
| red tail light
|
const LEDBitMask_t | TlBluLEDMask = 1<<(TlBluLEDOffset-LEDOffset) |
| blue tail light
|
const LEDBitMask_t | FaceLEDMask = BotLLEDMask|BotRLEDMask|MidLLEDMask|MidRLEDMask|TopLLEDMask|TopRLEDMask|TopBrLEDMask |
| LEDs for face (all but tail).
|
const LEDBitMask_t | HeadLEDMask = BotLLEDMask|BotRLEDMask|MidLLEDMask|MidRLEDMask|TopLLEDMask|TopRLEDMask|TopBrLEDMask |
| LEDs for face (all but tail).
|
const LEDBitMask_t | BackLEDMask = 0 |
| 210 has no back LEDs
|
const LEDBitMask_t | TailLEDMask = TlRedLEDMask|TlBluLEDMask |
| LEDs on tail.
|
const LEDBitMask_t | AllLEDMask = (LEDBitMask_t)~0 |
| selects all of the leds
|
Output Offsets |
Corresponds to entries in ERS210Info::PrimitiveName, defined at the end of this file
|
enum | LegOffset_t { LFrLegOffset = LegOffset+LFrLegOrder*JointsPerLeg,
RFrLegOffset = LegOffset+RFrLegOrder*JointsPerLeg,
LBkLegOffset = LegOffset+LBkLegOrder*JointsPerLeg,
RBkLegOffset = LegOffset+RBkLegOrder*JointsPerLeg
} |
| The offsets of the individual legs. More...
|
const unsigned | PIDJointOffset = 0 |
| The beginning of the PID Joints.
|
const unsigned | LegOffset = PIDJointOffset |
| the offset of the beginning of the leg joints
|
const unsigned | HeadOffset = LegOffset+NumLegJoints |
| the offset of the beginning of the head joints
|
const unsigned | TailOffset = HeadOffset+NumHeadJoints |
| the offset of the beginning of the tail joints
|
const unsigned | MouthOffset = TailOffset+NumTailJoints |
| the offset of the beginning of the mouth joint
|
const unsigned | LEDOffset = PIDJointOffset + NumPIDJoints |
| the offset of LEDs in WorldState::outputs and MotionCommand functions
|
const unsigned | BinJointOffset = LEDOffset + NumLEDs |
| The beginning of the binary joints.
|
const unsigned | 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. Nor will they be flicked back
|
const unsigned | BaseFrameOffset = NumOutputs |
| Use with kinematics to refer to base reference frame.
|
const unsigned | PawFrameOffset = BaseFrameOffset+1 |
| Use with kinematics to refer to paw reference frames (add appropriate LegOrder_t to specify which paw).
|
const unsigned | CameraFrameOffset = PawFrameOffset+NumLegs |
| Use with kinematics to refer to camera reference frame.
|
const unsigned | IRFrameOffset = CameraFrameOffset+1 |
| Use with kinematics to refer to infrared (distance) sensor reference frame.
|
Input Offsets |
The order in which inputs should be stored
|
enum | ButtonOffset_t {
LFrPawOffset = LFrLegOrder,
RFrPawOffset = RFrLegOrder,
LBkPawOffset = LBkLegOrder,
RBkPawOffset = RBkLegOrder,
ChinButOffset = 4,
BackButOffset,
HeadFrButOffset,
HeadBkButOffset
} |
| holds offsets to different buttons in WorldState::buttons[] More...
|
enum | SensorOffset_t {
IRDistOffset = 0,
BAccelOffset,
LAccelOffset,
DAccelOffset,
ThermoOffset,
PowerRemainOffset,
PowerThermoOffset,
PowerCapacityOffset,
PowerVoltageOffset,
PowerCurrentOffset
} |
| holds offset to different sensor values in WorldState::sensors[] More...
|
const char *const | buttonNames [NumButtons] |
| Provides a string name for each button.
|
const char *const | 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 | JointsPerLeg = 3 |
| The number of joints per leg.
|
const unsigned | NumLegs = 4 |
| The number of legs.
|
const unsigned | NumLegJoints = JointsPerLeg*NumLegs |
| the TOTAL number of joints on ALL legs
|
const unsigned | NumHeadJoints = 3 |
| The number of joints in the neck.
|
const unsigned | NumTailJoints = 2 |
| The number of joints assigned to the tail.
|
const unsigned | NumMouthJoints = 1 |
| the number of joints that control the mouth
|
const unsigned | NumEarJoints = 2 |
| The number of joints which control the ears (NOT per ear, is total).
|
const unsigned | NumButtons = 8 |
| the number of buttons that are available, see ERS210Info::ButtonOffset_t
|
const unsigned | NumSensors = 1+3+1+5 |
| 1 dist, 3 accel, 1 thermo, 5 from power, see ERS210Info::SensorOffset_t
|
const unsigned | NumLEDs = 9 |
| The number of LEDs which can be controlled.
|
const unsigned | NumPIDJoints = NumLegJoints+NumHeadJoints+NumTailJoints+NumMouthJoints |
| The number of joints which use PID motion - everything except ears.
|
const unsigned | NumBinJoints = NumEarJoints |
| The number of binary joints - just the ears.
|
const unsigned | NumOutputs = NumPIDJoints + NumBinJoints + NumLEDs |
| the total number of outputs
|
const unsigned | NumReferenceFrames = NumOutputs + 1 + NumLegs + 1 + 1 |
| for the base, paw, camera, and IR sensor reference frames
|
const float | CameraHorizFOV = 57.6/180*M_PI |
| horizontal field of view (radians)
|
const float | CameraVertFOV = 47.8/180*M_PI |
| vertical field of view (radians)
|
const float | CameraFOV = CameraHorizFOV |
| should be set to maximum of CameraHorizFOV or CameraVertFOV
|
const unsigned int | CameraResolutionX = 176 |
| the number of pixels available in the 'full' layer
|
const unsigned int | CameraResolutionY = 144 |
| the number of pixels available in the 'full' layer
|
const bool | IsFastOutput [NumOutputs] = { true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false } |
const bool | IsRealERS210 [NumOutputs] = { true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true } |
| we need this so you can tell programmatically which joints are "real" and which are "fake" in ERS-2xx target mode
|
CPC IDs |
values defined by OPEN-R, used to interface with lower level OPEN-R code to read sensors - DOESN'T correspond to ERS210Info::PrimitiveName
|
static const int | CPCJointNeckTilt = 0 |
static const int | CPCJointNeckPan = 1 |
static const int | CPCJointNeckRoll = 2 |
static const int | CPCSensorHeadBackPressure = 3 |
static const int | CPCSensorHeadFrontPressure = 4 |
static const int | CPCSensorPSD = 5 |
static const int | CPCJointMouth = 6 |
static const int | CPCSensorChinSwitch = 7 |
static const int | CPCJointLFRotator = 8 |
static const int | CPCJointLFElevator = 9 |
static const int | CPCJointLFKnee = 10 |
static const int | CPCSensorLFPaw = 11 |
static const int | CPCJointLHRotator = 12 |
static const int | CPCJointLHElevator = 13 |
static const int | CPCJointLHKnee = 14 |
static const int | CPCSensorLHPaw = 15 |
static const int | CPCJointRFRotator = 16 |
static const int | CPCJointRFElevator = 17 |
static const int | CPCJointRFKnee = 18 |
static const int | CPCSensorRFPaw = 19 |
static const int | CPCJointRHRotator = 20 |
static const int | CPCJointRHElevator = 21 |
static const int | CPCJointRHKnee = 22 |
static const int | CPCSensorRHPaw = 23 |
static const int | CPCJointTailPan = 24 |
static const int | CPCJointTailTilt = 25 |
static const int | CPCSensorThermoSensor = 26 |
static const int | CPCSensorBackSwitch = 27 |
static const int | CPCSensorAccelFB = 28 |
| Front-back; see RobotInfo::BAccelOffset.
|
static const int | CPCSensorAccelLR = 29 |
| Left-right; see RobotInfo::LAccelOffset.
|
static const int | CPCSensorAccelUD = 30 |
| Up-down; see RobotInfo::DAccelOffset.
|
Enumerations |
enum | LEDOffset_t {
BotLLEDOffset = LEDOffset,
BotRLEDOffset,
MidLLEDOffset,
MidRLEDOffset,
TopLLEDOffset,
TopRLEDOffset,
TopBrLEDOffset,
TlRedLEDOffset,
TlBluLEDOffset,
FaceFrontLeftLEDOffset = BotLLEDOffset,
FaceFrontRightLEDOffset = BotRLEDOffset,
FaceCenterLeftLEDOffset = MidLLEDOffset,
FaceCenterRightLEDOffset = MidRLEDOffset,
FaceBackLeftLEDOffset = TopLLEDOffset,
FaceBackRightLEDOffset = TopRLEDOffset,
ModeLEDOffset = TopBrLEDOffset,
TailRightLEDOffset = TlRedLEDOffset,
TailLeftLEDOffset = TlBluLEDOffset
} |
| 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...
|
enum | MinMaxRange_t { MinRange,
MaxRange
} |
| Defines the indexes to use to access the min and max entries of ERS210Info::outputRanges and ERS210Info::mechanicalLimits. More...
|
Variables |
const unsigned int | FrameTime = 8 |
| time between frames in the motion system (milliseconds)
|
const unsigned int | NumFrames = 4 |
| the number of frames per buffer (don't forget also double buffered)
|
const unsigned int | SlowFrameTime = 128 |
| time between frames for the ears (which move slower for some reason, don't want to mix with other outputs) (milliseconds)
|
const unsigned int | NumSlowFrames = 1 |
| the number of frames per buffer being sent to ears (double buffered as well)
|
const unsigned int | SoundBufferTime = 32 |
| the number of milliseconds per sound buffer... I'm not sure if this can be changed
|
const unsigned | outputNameLen = 9 |
| The length of the strings used for each of the outputs in outputNames (doesn't include null term).
|
const char *const | outputNames [NumOutputs] |
| A name of uniform length for referring to joints - handy for posture files, etc.
|
const char *const | PrimitiveName [NumOutputs] |
| the joint identifier strings used to refer to specific joints in OPEN-R (but not needed for others)
|
const char *const | SpeakerLocator = "PRM:/r1/c1/c2/c3/s1-Speaker:S1" |
| use to open speaker connectio with the system
|
const char *const | CameraLocator = "PRM:/r1/c1/c2/c3/i1-FbkImageSensor:F1" |
| use to open camera connection with the system
|
const float | DefaultPIDs [NumPIDJoints][3] |
| This table holds the default PID values for each joint. see PIDMC.
|
const unsigned char | DefaultPIDShifts [3] = {0x0E, 0x02, 0x0F} |
| These will control the shift values given to the system. see PIDMC.
|
const float | MaxOutputSpeed [NumOutputs] |
| These values are Sony's recommended maximum joint velocities, in rad/ms.
|
const double | outputRanges [NumOutputs][2] |
| This table holds the software limits of each of the outputs.
|
const double | mechanicalLimits [NumOutputs][2] |
| This table holds the mechanical limits of each of the outputs.
|
Typedef Documentation
|
So you can be clear when you're refering to a LED bitmask.
Definition at line 127 of file ERS210Info.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 PowerSourceID::PauseSID.
- See also:
- WorldState::buttons
ButtonSourceID_t
- Enumerator:
-
LFrPawOffset |
|
RFrPawOffset |
|
LBkPawOffset |
|
RBkPawOffset |
|
ChinButOffset |
|
BackButOffset |
|
HeadFrButOffset |
not in reliable pressure units, but 1.0 is fairly stiff pressure, 0 is none |
HeadBkButOffset |
not in reliable pressure units, but 1.0 is fairly stiff pressure, 0 is none |
Definition at line 163 of file ERS210Info.h. |
|
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.
- Enumerator:
-
BotLLEDOffset |
bottom left (red - sad) |
BotRLEDOffset |
bottom right (red - sad) |
MidLLEDOffset |
middle left (green - happy) |
MidRLEDOffset |
middle right (green - happy) |
TopLLEDOffset |
top left (red - angry) |
TopRLEDOffset |
top right (red - angry) |
TopBrLEDOffset |
top bar (green) |
TlRedLEDOffset |
red tail light |
TlBluLEDOffset |
blue tail light |
FaceFrontLeftLEDOffset |
alias for 220 cross-compatibility |
FaceFrontRightLEDOffset |
alias for 220 cross-compatibility |
FaceCenterLeftLEDOffset |
alias for 220 cross-compatibility |
FaceCenterRightLEDOffset |
alias for 220 cross-compatibility |
FaceBackLeftLEDOffset |
alias for 220 cross-compatibility |
FaceBackRightLEDOffset |
alias for 220 cross-compatibility |
ModeLEDOffset |
alias for 220 cross-compatibility |
TailRightLEDOffset |
alias for 220 cross-compatibility |
TailLeftLEDOffset |
alias for 220 cross-compatibility |
Definition at line 102 of file ERS210Info.h. |
|
The offsets of the individual legs.
- Enumerator:
-
LFrLegOffset |
beginning of left front leg |
RFrLegOffset |
beginning of right front leg |
LBkLegOffset |
beginning of left back leg |
RBkLegOffset |
beginning of right back leg |
Definition at line 92 of file ERS210Info.h. |
|
holds offset to different sensor values in WorldState::sensors[]
- See also:
- WorldState::sensors[]
- Enumerator:
-
IRDistOffset |
in millimeters |
BAccelOffset |
backward acceleration, in , negative if sitting on butt (positive for faceplant) |
LAccelOffset |
acceleration to the robot's left, in , negative if lying on robot's left side |
DAccelOffset |
downward acceleration, in , negative if standing up... be careful about the signs on all of these... |
ThermoOffset |
in degrees Celcius |
PowerRemainOffset |
percentage, 0-1 |
PowerThermoOffset |
degrees Celcius |
PowerCapacityOffset |
milli-amp hours |
PowerVoltageOffset |
volts |
PowerCurrentOffset |
milli-amp negative values (maybe positive while charging?) |
Definition at line 183 of file ERS210Info.h. |
Variable Documentation
|
Initial value: {
"LFrPaw","RFrPaw","LBkPaw","RBkPaw",
"ChinBut","BackBut",
"HeadFrBut","HeadBkBut"
}
Provides a string name for each button.
Definition at line 175 of file ERS210Info.h.
Referenced by FlashIPAddrBehavior::getClassDescription(), WorldState::read(), SensorObserverControl::SensorObserverControl(), and SensorObserverControl::updateRT(). |
|
vertical field of view (radians)
Definition at line 56 of file ERS210Info.h. |
|
Initial value:
{
{ 0x16/(double)(1<<(16-0xE)), 0x04/(double)(1<<(16-0x2)), 0x08/(double)(1<<(16-0xF)) },
{ 0x14/(double)(1<<(16-0xE)), 0x04/(double)(1<<(16-0x2)), 0x06/(double)(1<<(16-0xF)) },
{ 0x23/(double)(1<<(16-0xE)), 0x04/(double)(1<<(16-0x2)), 0x05/(double)(1<<(16-0xF)) },
{ 0x16/(double)(1<<(16-0xE)), 0x04/(double)(1<<(16-0x2)), 0x08/(double)(1<<(16-0xF)) },
{ 0x14/(double)(1<<(16-0xE)), 0x04/(double)(1<<(16-0x2)), 0x06/(double)(1<<(16-0xF)) },
{ 0x23/(double)(1<<(16-0xE)), 0x04/(double)(1<<(16-0x2)), 0x05/(double)(1<<(16-0xF)) },
{ 0x16/(double)(1<<(16-0xE)), 0x04/(double)(1<<(16-0x2)), 0x08/(double)(1<<(16-0xF)) },
{ 0x14/(double)(1<<(16-0xE)), 0x04/(double)(1<<(16-0x2)), 0x06/(double)(1<<(16-0xF)) },
{ 0x23/(double)(1<<(16-0xE)), 0x04/(double)(1<<(16-0x2)), 0x05/(double)(1<<(16-0xF)) },
{ 0x16/(double)(1<<(16-0xE)), 0x04/(double)(1<<(16-0x2)), 0x08/(double)(1<<(16-0xF)) },
{ 0x14/(double)(1<<(16-0xE)), 0x04/(double)(1<<(16-0x2)), 0x06/(double)(1<<(16-0xF)) },
{ 0x23/(double)(1<<(16-0xE)), 0x04/(double)(1<<(16-0x2)), 0x05/(double)(1<<(16-0xF)) },
{ 0x0A/(double)(1<<(16-0xE)), 0x08/(double)(1<<(16-0x2)), 0x0C/(double)(1<<(16-0xF)) },
{ 0x0D/(double)(1<<(16-0xE)), 0x08/(double)(1<<(16-0x2)), 0x0B/(double)(1<<(16-0xF)) },
{ 0x0A/(double)(1<<(16-0xE)), 0x08/(double)(1<<(16-0x2)), 0x0C/(double)(1<<(16-0xF)) },
{ 0x0A/(double)(1<<(16-0xE)), 0x00/(double)(1<<(16-0x2)), 0x18/(double)(1<<(16-0xF)) },
{ 0x07/(double)(1<<(16-0xE)), 0x00/(double)(1<<(16-0x2)), 0x11/(double)(1<<(16-0xF)) },
{ 0x0E/(double)(1<<(16-0xE)), 0x08/(double)(1<<(16-0x2)), 0x10/(double)(1<<(16-0xF)) }
}
This table holds the default PID values for each joint. see PIDMC.
Definition at line 330 of file ERS210Info.h.
Referenced by PIDMC::setAllPowerLevel(), PIDMC::setJointPowerLevel(), and PIDMC::setRangePowerLevel(). |
|
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. Nor will they be flicked back
Definition at line 84 of file ERS210Info.h.
Referenced by BatteryMonitorBehavior::setFlipper(). |
|
time between frames in the motion system (milliseconds)
Definition at line 30 of file ERS210Info.h.
Referenced by WaypointEngine< MAX_WAY >::computeNewVelocity(), PostureMC::defaultMaxSpeed(), OldHeadPointerMC::defaultMaxSpeed(), HeadPointerMC::defaultMaxSpeed(), PostureMC::getMaxSpeed(), OldHeadPointerMC::getMaxSpeed(), HeadPointerMC::getMaxSpeed(), MotionManager::getOutputs(), BatteryMonitorBehavior::processEvent(), PostureMC::setMaxSpeed(), OldHeadPointerMC::setMaxSpeed(), HeadPointerMC::setMaxSpeed(), LedEngine::updateLEDFrames(), LedEngine::updateLEDs(), TailWagMC::updateOutputs(), MotionSequenceMC< MAXMOVE >::updateOutputs(), EmergencyStopMC::updateOutputs(), and DynamicMotionSequence::updateOutputs(). |
|
the offset of the beginning of the head joints
Definition at line 77 of file ERS210Info.h.
Referenced by OldHeadPointerMC::convFromBodyRelative(), OldHeadPointerMC::convToBodyRelative(), PostureMC::defaultMaxSpeed(), WallTestBehavior::DoStart(), MotionStressTestBehavior::DoStart(), HeadLevelBehavior::DoStart(), HeadPointerMC::ensureValidJoint(), OldHeadPointerMC::getOutputCmd(), HeadPointerMC::HeadPointerMC(), HeadPointerMC::isAlive(), HeadPointerMC::markDirty(), OldHeadPointerMC::OldHeadPointerMC(), WallTestBehavior::processEvent(), WalkToTargetNode::processEvent(), StareAtBallBehavior::processEvent(), SimpleChaseBallBehavior::processEvent(), HeadLevelBehavior::processEvent(), GroundPlaneBehavior::processEvent(), FollowHeadBehavior::processEvent(), ChaseBallBehavior::processEvent(), WorldState::read(), HeadPointControllerBehavior::runCommand(), HeadPointerMC::setJoints(), OldHeadPointerMC::setJointValue(), HeadPointerMC::setJointValue(), OldHeadPointerMC::setJointValueAndMode(), OldHeadPointerMC::updateOutputs(), and HeadPointerMC::updateOutputs(). |
const bool ERS210Info::IsFastOutput[NumOutputs] = { true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,false } |
|
|
true for joints which can be updated every 32 ms (all but the ears)
Definition at line 61 of file ERS210Info.h. |
const bool ERS210Info::IsRealERS210[NumOutputs] = { true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true } |
|
|
The number of joints per leg.
Definition at line 39 of file ERS210Info.h.
Referenced by MotionStressTestBehavior::addMS(), KinematicSampleBehavior::getIndex(), WalkMC::init(), WalkMC::isDirty(), StareAtPawBehavior2::processEvent(), KinematicSampleBehavior2::processEvent(), KinematicSampleBehavior::processEvent(), DrawSkeletonBehavior::processEvent(), WalkMC::resetLegPos(), UPennWalkMC::SetLegJoints(), and WalkMC::updateOutputs(). |
|
the offset of LEDs in WorldState::outputs and MotionCommand functions
Definition at line 81 of file ERS210Info.h.
Referenced by Controller::deactivate(), LedEngine::displayNumber(), Controller::DoStop(), EmergencyStopMC::EmergencyStopMC(), EmergencyStopMC::freezeJoints(), LedEngine::getSetting(), LedEngine::getValue(), PostureEditor::processEvent(), EmergencyStopMC::releaseJoints(), FlashIPAddrBehavior::setupSequence(), LedEngine::updateLEDs(), LedMC::updateOutputs(), EmergencyStopMC::updateOutputs(), and MotionManager::updateWorldState(). |
|
Initial value: {
2.8143434e-03,
2.4980025e-03,
2.8361600e-03,
2.8143434e-03,
2.4980025e-03,
2.8361600e-03,
2.8143434e-03,
2.4980025e-03,
2.8361600e-03,
2.8143434e-03,
2.4980025e-03,
2.8361600e-03,
2.1053034e-03,
3.0106930e-03,
3.0106930e-03,
4.4724062e-03,
4.4724062e-03,
4.3742314e-03,
0,0,0,0,0,0,0,0,0,
0,0
}
These values are Sony's 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 is (as of v1.6) the only included MotionCommand to actually use these values.
Definition at line 363 of file ERS210Info.h.
Referenced by PostureMC::defaultMaxSpeed(). |
|
Initial value:
{
{ RAD(-120),RAD(120) },{ RAD(-14),RAD(92) },{ RAD(-30),RAD(150) },
{ RAD(-120),RAD(120) },{ RAD(-14),RAD(92) },{ RAD(-30),RAD(150) },
{ RAD(-120),RAD(120) },{ RAD(-14),RAD(92) },{ RAD(-30),RAD(150) },
{ RAD(-120),RAD(120) },{ RAD(-14),RAD(92) },{ RAD(-30),RAD(150) },
{ RAD(-85),RAD(46) },{ RAD(-92.6),RAD(92.6) },{ RAD(-32),RAD(32) },
{ RAD(-25),RAD(25) },{ RAD(-25),RAD(25) },
{ RAD(-50),RAD(0) },
{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.
Definition at line 421 of file ERS210Info.h. |
|
the number of frames per buffer (don't forget also double buffered)
Definition at line 31 of file ERS210Info.h.
Referenced by WaypointEngine< MAX_WAY >::computeNewVelocity(), MotionManager::getOutputs(), BatteryMonitorBehavior::processEvent(), MotionManager::setOutput(), LedMC::setWeights(), LedEngine::updateLEDs(), WalkMC::updateOutputs(), TailWagMC::updateOutputs(), PostureMC::updateOutputs(), OldHeadPointerMC::updateOutputs(), MotionSequenceMC< MAXMOVE >::updateOutputs(), HeadPointerMC::updateOutputs(), EmergencyStopMC::updateOutputs(), and DynamicMotionSequence::updateOutputs(). |
|
The number of joints in the neck.
Definition at line 42 of file ERS210Info.h.
Referenced by MotionStressTestBehavior::DoStart(), HeadPointerMC::ensureValidJoint(), OldHeadPointerMC::getOutputCmd(), HeadPointerMC::HeadPointerMC(), HeadPointerMC::isAlive(), HeadPointerMC::lookAtPoint(), HeadPointerMC::lookInDirection(), HeadPointerMC::markDirty(), OldHeadPointerMC::noMaxSpeed(), HeadPointerMC::noMaxSpeed(), OldHeadPointerMC::OldHeadPointerMC(), HeadLevelBehavior::processEvent(), GroundPlaneBehavior::processEvent(), FollowHeadBehavior::processEvent(), OldHeadPointerMC::setMode(), OldHeadPointerMC::setWeight(), HeadPointerMC::setWeight(), OldHeadPointerMC::updateOutputs(), and HeadPointerMC::updateOutputs(). |
|
The number of LEDs which can be controlled.
Definition at line 48 of file ERS210Info.h.
Referenced by LedEngine::cflash(), LedEngine::clear(), LedEngine::cycle(), Controller::deactivate(), Controller::DoStop(), EmergencyStopMC::EmergencyStopMC(), LedEngine::flash(), EmergencyStopMC::freezeJoints(), MotionManager::getOutputs(), LedEngine::invert(), LedEngine::LedEngine(), LedEngine::recalcFlashEnd(), EmergencyStopMC::releaseJoints(), LedEngine::set(), FlashIPAddrBehavior::setupSequence(), LedMC::setWeights(), LedEngine::updateLEDFrames(), LedEngine::updateLEDs(), LedMC::updateOutputs(), and MotionManager::updateWorldState(). |
|
the number of joints that control the mouth
Definition at line 44 of file ERS210Info.h. |
|
the total number of outputs
Definition at line 52 of file ERS210Info.h.
Referenced by PostureEngine::avgdiff(), PostureEngine::clear(), MotionSequenceMC< MAXMOVE >::clear(), DynamicMotionSequence::clear(), MotionSequenceEngine::compress(), PostureMC::defaultMaxSpeed(), PostureEngine::diff(), EmergencyStopMC::freezeJoints(), PostureEngine::getBinSize(), MotionSequenceEngine::getBinSize(), MotionSequenceEngine::getOutputIndex(), MotionSequenceEngine::getPose(), Kinematics::init(), PostureEngine::LoadBuffer(), MotionSequenceEngine::LoadBuffer(), PostureEngine::maxdiff(), MotionManager::MotionManager(), MotionSequenceEngine::MotionSequenceEngine(), PostureMC::noMaxSpeed(), MotionSequenceEngine::overlayPose(), SensorObserverControl::processEvent(), EmergencyStopMC::releaseJoints(), MotionSequenceEngine::resume(), PostureEngine::SaveBuffer(), MotionSequenceEngine::SaveBuffer(), SensorObserverControl::SensorObserverControl(), PostureEngine::setAverage(), PostureEngine::setCombine(), PostureMC::setDirty(), MotionManager::setOutput(), PostureEngine::setOverlay(), MotionSequenceEngine::setPose(), MotionSequenceEngine::setTime(), PostureEngine::setUnderlay(), PostureMC::setWeights(), PostureEngine::setWeights(), PostureEngine::solveLinkPosition(), PostureEngine::takeSnapshot(), PostureEngine::update(), Kinematics::update(), PostureMC::updateOutputs(), MotionSequenceMC< MAXMOVE >::updateOutputs(), DynamicMotionSequence::updateOutputs(), SensorObserverControl::updateRT(), and WorldState::WorldState(). |
|
The number of joints which use PID motion - everything except ears.
Definition at line 50 of file ERS210Info.h.
Referenced by Aibo3DControllerBehavior::DoStart(), EmergencyStopMC::EmergencyStopMC(), EmergencyStopMC::freezeJoints(), MotionManager::getOutputs(), PIDMC::isPID(), Config::motion_config::motion_config(), PIDMC::PIDMC(), WorldStateSerializerBehavior::processEvent(), SensorObserverControl::processEvent(), WorldState::read(), Aibo3DControllerBehavior::registerData(), RemoteControllerMC::RemoteControllerMC(), SensorObserverControl::SensorObserverControl(), PIDMC::setAllPowerLevel(), Config::setValue(), RemoteControllerMC::updateOutputs(), PIDMC::updateOutputs(), EmergencyStopMC::updateOutputs(), Aibo3DControllerBehavior::updateRC(), SensorObserverControl::updateRT(), MotionManager::updateWorldState(), and WorldState::WorldState(). |
|
the number of frames per buffer being sent to ears (double buffered as well)
Definition at line 33 of file ERS210Info.h. |
|
The number of joints assigned to the tail.
Definition at line 43 of file ERS210Info.h. |
|
Initial value:
{
{ RAD(-117),RAD(117) },{ RAD(-11),RAD(89) },{ RAD(-27),RAD(147) },
{ RAD(-117),RAD(117) },{ RAD(-11),RAD(89) },{ RAD(-27),RAD(147) },
{ RAD(-117),RAD(117) },{ RAD(-11),RAD(89) },{ RAD(-27),RAD(147) },
{ RAD(-117),RAD(117) },{ RAD(-11),RAD(89) },{ RAD(-27),RAD(147) },
{ RAD(-82),RAD(43) },{ RAD(-89.6),RAD(89.6) },{ RAD(-29),RAD(29) },
{ RAD(-22),RAD(22) },{ RAD(-22),RAD(22) },
{ RAD(-47),RAD(-3) },
{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.
Definition at line 402 of file ERS210Info.h.
Referenced by MotionStressTestBehavior::addMS(), OldHeadPointerMC::clipAngularRange(), HeadPointerMC::clipAngularRange(), WallTestBehavior::DoStart(), MotionStressTestBehavior::DoStart(), BanditMachine::PressNode::PressNode(), WalkToTargetNode::processEvent(), StareAtBallBehavior::processEvent(), KinematicSampleBehavior2::processEvent(), FollowHeadBehavior::processEvent(), AlanBehavior::processEvent(), and HeadPointControllerBehavior::runCommand(). |
|
The beginning of the PID Joints.
Definition at line 75 of file ERS210Info.h.
Referenced by MotionManager::getOutputs(), PIDMC::getPID(), PIDMC::isPID(), PIDMC::PIDMC(), WorldStateSerializerBehavior::processEvent(), WorldState::read(), SensorObserverControl::SensorObserverControl(), PIDMC::setJointPowerLevel(), PIDMC::setPID(), PIDMC::setRangePowerLevel(), Config::setValue(), RemoteControllerMC::updateOutputs(), PIDMC::updateOutputs(), and EmergencyStopMC::updateOutputs(). |
|
Initial value: {
"PRM:/r2/c1-Joint2:j1",
"PRM:/r2/c1/c2-Joint2:j2",
"PRM:/r2/c1/c2/c3-Joint2:j3",
"PRM:/r4/c1-Joint2:j1",
"PRM:/r4/c1/c2-Joint2:j2",
"PRM:/r4/c1/c2/c3-Joint2:j3",
"PRM:/r3/c1-Joint2:j1",
"PRM:/r3/c1/c2-Joint2:j2",
"PRM:/r3/c1/c2/c3-Joint2:j3",
"PRM:/r5/c1-Joint2:j1",
"PRM:/r5/c1/c2-Joint2:j2",
"PRM:/r5/c1/c2/c3-Joint2:j3",
"PRM:/r1/c1-Joint2:j1",
"PRM:/r1/c1/c2-Joint2:j2",
"PRM:/r1/c1/c2/c3-Joint2:j3",
"PRM:/r6/c2-Joint2:j2",
"PRM:/r6/c1-Joint2:j1",
"PRM:/r1/c1/c2/c3/c4-Joint2:j4",
"PRM:/r1/c1/c2/c3/l1-LED2:l1",
"PRM:/r1/c1/c2/c3/l4-LED2:l4",
"PRM:/r1/c1/c2/c3/l2-LED2:l2",
"PRM:/r1/c1/c2/c3/l5-LED2:l5",
"PRM:/r1/c1/c2/c3/l3-LED2:l3",
"PRM:/r1/c1/c2/c3/l6-LED2:l6",
"PRM:/r1/c1/c2/c3/l7-LED2:l7",
"PRM:/r6/l2-LED2:l2",
"PRM:/r6/l1-LED2:l1",
"PRM:/r1/c1/c2/c3/e1-Joint3:j5",
"PRM:/r1/c1/c2/c3/e2-Joint3:j6"
}
the joint identifier strings used to refer to specific joints in OPEN-R (but not needed for others)
- Warning:
- IMPORTANT!!!! DO NOT CHANGE THE ORDER OF ITEMS IN THIS TABLE!!!
The offset consts defined in this file correspond to this table and will make life easier if you feel the need to reorder things, but they aren't used perfect everywhere
In particular, assumptions are made that the pid joints will be in slots 0-numPIDJoints and that the fast outputs (ie NOT ears) will be in slots 0-NumFastOutputs
There may be other assumptions not noted here!!! - Note:
- These entries DON'T correspond to the CPC index numbers defined in WorldState (this only lists joints, and in a different order defined by OPEN-R, that one has sensors as well
Definition at line 259 of file ERS210Info.h. |
|
Initial value: {
"IRDist",
"BAccel","LAccel","DAccel",
"Thermo",
"PowerRemain","PowerThermo","PowerCapacity","PowerVoltage","PowerCurrent"
}
Provides a string name for each sensor.
Definition at line 197 of file ERS210Info.h.
Referenced by SensorObserverControl::SensorObserverControl(), and SensorObserverControl::updateRT(). |
|
time between frames for the ears (which move slower for some reason, don't want to mix with other outputs) (milliseconds)
Definition at line 32 of file ERS210Info.h. |
|
use to open speaker connectio with the system
Definition at line 299 of file ERS210Info.h. |
|