120 #define HEK_PROD_GA 0x000 121 #define HEK_PROD_BETA 0x001
122 #define HEK_PROD_ALPHA 0x002
123 #define HEK_PROD_PROTO 0x003
128 #define HEK_CLASS_ARM 0xBA000000 129 #define HEK_CLASS_EE 0xEE000000
130 #define HEK_CLASS_EQUIP_DECK 0xED000000
131 #define HEK_CLASS_AUX 0xAE000000
140 #define HEK_PRODUCT_ID(sizecode, dof, special) \ 142 (((sizecode)&0xf)<<20) | (((dof)&0xff)<<12) | ((special)&0xfff) ) 152 #define HEK_EE_PRODUCT_ID(family, sizecode, dof, special) \ 153 ( HEK_CLASS_EE | (((family)&0xff)<<16) | \ 154 (((sizecode)&0xf)<<12) | (((dof)&0xff)<<4) | ((special)&0xf) ) 163 #define HEK_ED_PRODUCT_ID(sizecode, dof, special) \ 164 ( HEK_CLASS_EQUIP_DECK | \ 165 (((sizecode)&0xf)<<20) | (((dof)&0xff)<<12) | ((special)&0xfff) ) 174 #define HEK_AE_PRODUCT_ID(sizecode, dof, special) \ 176 (((sizecode)&0xf)<<20) | (((dof)&0xff)<<12) | ((special)&0xfff) ) 185 #define HEK_VERSION(major, minor, revision) \ 186 ((((major)&0xff)<<24) | (((minor)&0xff)<<16) | ((revision)&0xffff)) 195 #define HEK_VER_MAJOR(ver) (((ver)>>24) &0xff) 204 #define HEK_VER_MINOR(ver) (((ver)>>16) &0xff) 213 #define HEK_VER_REV(ver) ((ver) & 0xffff) 303 const char*
const HekImageDir =
"/usr/local/share/Hekateros/images";
313 const char*
const HekIconDir =
"/usr/local/share/Hekateros/images/icons";
331 const char*
const HekEtcCfg = HEK_ETC_CFG;
333 const char*
const HekEtcCfg =
"hekateros.conf";
343 const char*
const HekEtcTune =
"hek_tune.conf";
358 const char*
const HekXslUrl = HEK_XSL_URL;
360 const char*
const HekXslUrl =
361 "http://roadnarrows.com/xml/Hekateros/1.0/hekateros.xsl";
369 const char*
const HekXsiUrl = HEK_XSI_URL;
371 const char*
const HekXsiUrl =
372 "http://roadnarrows.com/xml/Hekateros/1.0/hekateros.xsd";
382 const char*
const HekI2CDevice =
"/dev/i2c-3";
390 #ifdef HEK_GPIO_ALARM 393 const int HekGpioAlarmLED = 10;
406 const int HekGpioHalt = 174;
417 #ifdef HEK_GPIO_HALTED 420 const int HekGpioHalted = 170;
426 #ifdef HEK_DEV_DYNABUS 429 const char*
const HekDevDynabus =
"/dev/dynabus";
435 #ifdef HEK_BAUDRATE_DYNABUS 438 const int HekBaudRateDynabus = 1000000;
444 #ifdef HEK_DEV_ARDUINO 447 const char*
const HekDevArduino =
"/dev/arduino";
453 #ifdef HEK_BAUDRATE_ARDUINO 456 const int HekBaudRateArduino = 115200;
549 #endif // _HEKATEROS_H
static const int HEK_ECODE_NUMOF
number of error codes
const char *const HekXboxXml
Xbox teleop config.
const char *const HekSysCfgPath
System configuration search path.
static const int HEK_ECODE_NO_DEV
device not found error
const char *const HekIconDir
icon directory
HekProdSize
<b><i>Hekateros</i></b> product size codes.
static const int HekServoIdRsrv3
reserved for future bases
static const int HEK_OK
not an error, success
const char *const HekXsiUrl
xml schema instance url
static const int HekServoIdWristPitch
wrist pitch
static const int HekServoIdElbow
elbow
const char *const HekEECamXml
end effector camera cfg
static const int HEK_ECODE_PERM
no permissions error
static const int HEK_ECODE_BUSY
resource busy error
const int HekProdIdUnknown
unknown/undefined product id
const int HekGpioHalt
halt gpio number
static const int HEK_ECODE_NO_EXEC
cannot execute error
const int HekBaudRateDynabus
dynabus baudrate
HekRobotMode
<b><i>Hekateros</i></b> mode of operation.
static const int HEK_ECODE_TIMEDOUT
operation timed out error
static const int HEK_ECODE_TOO_BIG
value/list/size too big
const char *const HekDevDynabus
dynabus device name
static const int HekServoIdEquipPan
pan
HekAsyncTaskState
Asynchronous task state.
const char *const HekI2CDevice
i2c device name
static const int HEK_ECODE_TOO_SMALL
value/list/size too small
static const int HekServoIdEquipStart
start id
static const int HEK_ECODE_BAD_OP
invalid operation error
static const int HEK_ECODE_FORMAT
bad format
const char *const HekProdSizeStrStd
standard (normal) size
const char *const HekProdFamily
product family name
HekTriState
<b><i>Hekateros</i></b> tri-state type.
const char *const HekProdSizeStrShort
short
static const int HEK_ECODE_XML
XML error.
const char *const HekProdSizeStrLong
long
static const int HekServoIdRsrv1
reserved for future bases
const char *const HekXslUrl
xml stylesheet url
static const int HEK_ECODE_SYS
system (errno) error
static const int HEK_ECODE_INTR
operation interrupted
HekOpState
Robot or joint operational states.
const char *const HekEtcTune
xml tune file
static const int HEK_ECODE_INTERNAL
internal error (bug)
const int HekGpioAlarmLED
alarm led gpio number
const int HekGpioHalted
halt gpio number
static const int HEK_ECODE_BADEC
bad error code
static const int HEK_ECODE_NO_RSRC
no resource available error
const char *const HekPanelXml
hek_panel configuration
static const int HEK_ECODE_DYNA
dynamixel error
static const int HEK_ECODE_RANGE
value out-of-range
static const int HekServoIdShoulderL
left shoulder
const char *const HekProdSizeStrMini
mini
static const int HekServoIdBase
continuous rotating base
const char *const HekImageDir
image directory
Linf norm (maximum, infinity, or supremum norm)
static const int HEK_ECODE_COLLISION
robot link(s) in collision
static const int HEK_ECODE_NO_FILE
file not found
static const int HEK_ECODE_ESTOP
robot emergency stopped
static const int HekServoIdShoulderR
right shoulder (linked slave)
static const int HekServoIdWristRot
wrist continuous rotation
const int HekBaudRateArduino
arduino baudrate
static const int HEK_ECODE_ALARMED
robot is alarmed
L1 norm (taxicab or manhattan norm)
HekNorm
Length/Distance Norm.
static const int HEK_ECODE_BOTSENSE
botsense error
static const int HekServoIdAuxStart
start id
const int HekProdFamilyUnknown
unknown/undefined product family
static const int HekServoIdAuxTilt
tilt
static const int HekServoIdAuxPan
pan
const char *const HekDevArduino
arduino device name
static const int HEK_ECODE_GEN
general, unspecified error
const char *const HekProdSizeStrUnknown
Common <b><i>Hekateros</i></b> product size codes as strings.
const char *const HekUserCfgPath
User configuration search path and inheritance order.
static const int HEK_ECODE_BAD_VAL
bad value general error
static const int HekServoIdEEStart
start id
static const int HekServoIdGraboid
graboid
const char *const HekEtcCfg
xml configuration file
static const int HekServoIdRsrv2
reserved for future bases
static const int HEK_ECODE_VIDEO
video error
The <b><i>Hekateros</i></b> namespace encapsulates all <b><i>Hekateros</i></b> related constructs...
static const int HekServoIdEquipTilt
tilt
idle, no async task running
can only be operated locally, not remotely