Tekkotsu Homepage
Demos
Overview
Downloads
Dev. Resources
Reference
Credits

QwerkInfo Namespace Reference


Output Offsets

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

enum  WheelOffset_t { LWheelOffset = WheelOffset, RWheelOffset }
enum  LEDOffset_t
 The offsets of the individual LEDs -- except the qwerk board doesn't have any particularly symbolic LEDs, just use numeric values... More...
const unsigned PIDJointOffset = 0
 The beginning of the PID Joints.
const unsigned WheelOffset = PIDJointOffset
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 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
typedef unsigned int LEDBitMask_t

Input Offsets

The order in which inputs should be stored

enum  ButtonOffset_t
 holds offsets to different buttons in WorldState::buttons[] More...
enum  SensorOffset_t { BatteryVoltage }
 holds offset to different sensor values in WorldState::sensors[] More...
const char *const buttonNames [NumButtons+1] = { NULL }
 Provides a string name for each button.
const char *const sensorNames [NumSensors]
 Provides a string name for each sensor.

Functions

Capabilities capabilities (TargetName, NumOutputs, outputNames, NumButtons, buttonNames, NumSensors, sensorNames, PIDJointOffset, NumPIDJoints, LEDOffset, NumLEDs)

Variables

const char *const TargetName = "Qwerk"
 the name of the model, to be used for logging and remote GUIs
const unsigned int FrameTime = 15
 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 char *const outputNames [NumOutputs]
 Names for each of the outputs.
Capabilities capabilities
 allocation declared in RobotInfo.cc
const float DefaultPIDs [NumPIDJoints+1][3] = { {0,0,0} }
 This table holds the default PID values for each joint. see PIDMC.
const float MaxOutputSpeed [NumOutputs]
 These values are our recommended maximum joint velocities, in rad/ms.
const double 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 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).
Output Types Information
const unsigned NumWheels = 4
const unsigned JointsPerArm = 0
const unsigned NumArms = 0
const unsigned NumArmJoints = JointsPerArm*NumArms
const unsigned JointsPerLeg = 0
 The number of joints per leg.
const unsigned NumLegs = 0
 The number of legs.
const unsigned NumLegJoints = JointsPerLeg*NumLegs
 the TOTAL number of joints on ALL legs
const unsigned NumHeadJoints = 0
 The number of joints in the pantilt.
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 = 0
 the number of buttons that are available
const unsigned NumSensors = 9
 the number of sensors available
const unsigned NumLEDs = 10
 The number of LEDs which can be controlled.
const unsigned NumFacePanelLEDs = 0
 The number of face panel LEDs.
const unsigned NumPIDJoints = NumWheels + NumArmJoints + NumLegJoints+NumHeadJoints+NumTailJoints+NumMouthJoints
const unsigned NumOutputs = NumWheels + 16 + NumLEDs
 servo pins
const unsigned NumReferenceFrames = NumOutputs + 1 + NumArms + 1
 for the base, gripper (* NumArms), and camera reference frames
const float CameraHorizFOV = 56.9/180*M_PI
 horizontal field of view (radians)
const float CameraVertFOV = 45.2/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 = 320
 the number of pixels available in the 'full' layer
const unsigned int CameraResolutionY = 240
 the number of pixels available in the 'full' layer


Typedef Documentation

typedef unsigned int QwerkInfo::LEDBitMask_t

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

Definition at line 85 of file QwerkInfo.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

Definition at line 111 of file QwerkInfo.h.

The offsets of the individual LEDs -- except the qwerk board doesn't have any particularly symbolic LEDs, just use numeric values...

Definition at line 83 of file QwerkInfo.h.

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

See also:
WorldState::sensors[]
Enumerator:
BatteryVoltage 

Definition at line 118 of file QwerkInfo.h.

Enumerator:
LWheelOffset 
RWheelOffset 

Definition at line 76 of file QwerkInfo.h.


Function Documentation

Capabilities QwerkInfo::capabilities ( TargetName  ,
NumOutputs  ,
outputNames  ,
NumButtons  ,
buttonNames  ,
NumSensors  ,
sensorNames  ,
PIDJointOffset  ,
NumPIDJoints  ,
LEDOffset  ,
NumLEDs   
)


Variable Documentation

selects all of the leds

Definition at line 89 of file QwerkInfo.h.

Use with kinematics to refer to base reference frame.

Definition at line 74 of file QwerkInfo.h.

const char* const QwerkInfo::buttonNames[NumButtons+1] = { NULL }

Provides a string name for each button.

Definition at line 114 of file QwerkInfo.h.

should be set to maximum of CameraHorizFOV or CameraVertFOV

Definition at line 55 of file QwerkInfo.h.

const float QwerkInfo::CameraHorizFOV = 56.9/180*M_PI

horizontal field of view (radians)

Definition at line 53 of file QwerkInfo.h.

const unsigned int QwerkInfo::CameraResolutionX = 320

the number of pixels available in the 'full' layer

Definition at line 56 of file QwerkInfo.h.

const unsigned int QwerkInfo::CameraResolutionY = 240

the number of pixels available in the 'full' layer

Definition at line 57 of file QwerkInfo.h.

const float QwerkInfo::CameraVertFOV = 45.2/180*M_PI

vertical field of view (radians)

Definition at line 54 of file QwerkInfo.h.

const float QwerkInfo::DefaultPIDs[NumPIDJoints+1][3] = { {0,0,0} }

This table holds the default PID values for each joint. see PIDMC.

Definition at line 174 of file QwerkInfo.h.

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

Definition at line 87 of file QwerkInfo.h.

const unsigned int QwerkInfo::FrameTime = 15

time between frames in the motion system (milliseconds)

Definition at line 25 of file QwerkInfo.h.

const unsigned QwerkInfo::JointsPerArm = 0

Definition at line 32 of file QwerkInfo.h.

const unsigned QwerkInfo::JointsPerLeg = 0

The number of joints per leg.

Definition at line 36 of file QwerkInfo.h.

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

Definition at line 72 of file QwerkInfo.h.

Initial value:

 {
    1e-3, 
    1e-3,
    3.14e-3, 
    6.28e-3,

    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 183 of file QwerkInfo.h.

Initial value:

    {
      { -1 , 1 },
      { -1 , 1 },
      { RAD(-90) , RAD(90) },
      { RAD(-90) , RAD(90) },

      
      {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 214 of file QwerkInfo.h.

Definition at line 34 of file QwerkInfo.h.

const unsigned QwerkInfo::NumArms = 0

Definition at line 33 of file QwerkInfo.h.

const unsigned QwerkInfo::NumButtons = 0

the number of buttons that are available

Definition at line 43 of file QwerkInfo.h.

const unsigned QwerkInfo::NumEarJoints = 0

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

Definition at line 42 of file QwerkInfo.h.

const unsigned QwerkInfo::NumFacePanelLEDs = 0

The number of face panel LEDs.

Definition at line 46 of file QwerkInfo.h.

const unsigned int QwerkInfo::NumFrames = 1

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

Definition at line 26 of file QwerkInfo.h.

const unsigned QwerkInfo::NumHeadJoints = 0

The number of joints in the pantilt.

Definition at line 39 of file QwerkInfo.h.

const unsigned QwerkInfo::NumLEDs = 10

The number of LEDs which can be controlled.

Definition at line 45 of file QwerkInfo.h.

the TOTAL number of joints on ALL legs

Definition at line 38 of file QwerkInfo.h.

const unsigned QwerkInfo::NumLegs = 0

The number of legs.

Definition at line 37 of file QwerkInfo.h.

const unsigned QwerkInfo::NumMouthJoints = 0

the number of joints that control the mouth

Definition at line 41 of file QwerkInfo.h.

const unsigned QwerkInfo::NumOutputs = NumWheels + 16 + NumLEDs

servo pins

the total number of outputs

Definition at line 49 of file QwerkInfo.h.

const unsigned QwerkInfo::NumReferenceFrames = NumOutputs + 1 + NumArms + 1

for the base, gripper (* NumArms), and camera reference frames

Definition at line 50 of file QwerkInfo.h.

const unsigned QwerkInfo::NumSensors = 9

the number of sensors available

Definition at line 44 of file QwerkInfo.h.

const unsigned QwerkInfo::NumTailJoints = 0

The number of joints assigned to the tail.

Definition at line 40 of file QwerkInfo.h.

const unsigned QwerkInfo::NumWheels = 4

Definition at line 30 of file QwerkInfo.h.

const char* const QwerkInfo::outputNames[NumOutputs]

Names for each of the outputs.

Definition at line 137 of file QwerkInfo.h.

Initial value:

    {
      { -1 , 1 },
      { -1 , 1 },
      { RAD(-90) , RAD(90) },
      { RAD(-90) , RAD(90) },

      
      {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 200 of file QwerkInfo.h.

const unsigned QwerkInfo::PIDJointOffset = 0

The beginning of the PID Joints.

Definition at line 69 of file QwerkInfo.h.

const char* const QwerkInfo::sensorNames[NumSensors]

Initial value:

 { 
    "BatteryVoltage",
    "AnalogIn0",
    "AnalogIn1",
    "AnalogIn2",
    "AnalogIn3",
    "AnalogIn4",
    "AnalogIn5",
    "AnalogIn6",
    "AnalogIn7",
  }
Provides a string name for each sensor.

Definition at line 121 of file QwerkInfo.h.

const unsigned int QwerkInfo::SoundBufferTime = 32

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

Definition at line 27 of file QwerkInfo.h.

const char *const QwerkInfo::TargetName = "Qwerk"

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

Definition at line 55 of file RobotInfo.cc.

Definition at line 70 of file QwerkInfo.h.


Tekkotsu v4.0
Generated Thu Nov 22 00:58:59 2007 by Doxygen 1.5.4