Base Katana class. More...
#include <kmlBase.h>
Public Member Functions | |
int | checkKatanaType (int type) |
checks for a K300 or K400 More... | |
CKatBase () | |
void | disableCrashLimits () |
crash limits disable More... | |
void | enableCrashLimits () |
crash limits enable More... | |
int | flushMoveBuffers () |
flush move buffers on all motors: More... | |
const TKatCBX * | GetCBX () |
Get a pointer to the desired structure. More... | |
const TKatCTB * | GetCTB () |
Get a pointer to the desired structure. More... | |
const TKatECH * | GetECH () |
Get a pointer to the desired structure. More... | |
TKatEFF * | GetEFF () |
Get a pointer to the desired structure. More... | |
const TKatGNL * | GetGNL () |
Get a pointer to the desired structure. More... | |
const TKatIDS * | GetIDS () |
Get a pointer to the desired structure. More... | |
void | getMasterFirmware (short *fw, short *rev) |
Get the master firmware of the robot we are communicating with. More... | |
const TKatMFW * | GetMFW () |
Get a pointer to the desired structure. More... | |
const TKatMOT * | GetMOT () |
Get a pointer to the desired structure. More... | |
CCplBase * | getProtocol () |
get a handle of the protocol, used in CKatana More... | |
const TKatSCT * | GetSCT () |
Get a pointer to the desired structure. More... | |
virtual bool | init (const TKatGNL _gnl, const TKatMOT _mot, const TKatSCT _sct, const TKatEFF _eff, CCplBase *_protocol) |
int | readDigitalIO () |
get digital I/O data from Katana400: More... | |
void | recvCTB () |
receive data More... | |
void | recvECH () |
receive data More... | |
void | recvGMS () |
receive data More... | |
void | recvIDS () |
receive data More... | |
void | recvMFW () |
receive data More... | |
void | recvMPS () |
read all motor positions simultaneously More... | |
void | setAndStartPolyMovement (std::vector< short > polynomial, int exactflag, int moreflag) |
void | setCrashLimit (long idx, int limit) |
set collision limits More... | |
void | setPositionCollisionLimit (long idx, int limit) |
set collision position limits More... | |
void | setSpeedCollisionLimit (long idx, int limit) |
set collision speed limits More... | |
void | startSplineMovement (int exactflag, int moreflag=1) |
void | unBlock () |
unblock robot after a crash More... | |
void | waitFor (TMotStsFlg status, int waitTimeout, bool gripper) |
wait for motor on all motors More... | |
virtual | ~CKatBase () |
destructor More... | |
Protected Attributes | |
TKatCBX | cbx |
connector box More... | |
TKatCTB | ctb |
cmd table More... | |
TKatECH | ech |
echo More... | |
TKatEFF | eff |
end effector More... | |
TKatGNL | gnl |
katana general More... | |
TKatIDS | ids |
ID string. More... | |
TKatMFW | mfw |
master's firmware version/revision More... | |
short | mMasterRevision |
master firmware revision More... | |
short | mMasterVersion |
master version of robot we are communicating with More... | |
TKatMOT | mot |
motors More... | |
CCplBase * | protocol |
protocol interface More... | |
TKatSCT | sct |
sensor controllers More... | |
Base Katana class.
This class is the main object controlling the whole katana; to use it, it has to be initilized by using it's init function; those function expects a initilized protocol class, which in turn expects an initilized device! after the initialization, it does not mean that the coordinates (encoder values) of the motors have been set correctly; for that a calibration is needen; that calibration can be executed either by using the CKatana class in the 'kmlExt' module (which encapsulates this class) or by writing your own calibrations function..
int CKatBase::checkKatanaType | ( | int | type | ) |
checks for a K300 or K400
Definition at line 260 of file kmlBase.cpp.
void CKatBase::disableCrashLimits | ( | ) |
crash limits disable
Definition at line 186 of file kmlBase.cpp.
void CKatBase::enableCrashLimits | ( | ) |
crash limits enable
Definition at line 169 of file kmlBase.cpp.
int CKatBase::flushMoveBuffers | ( | ) |
flush move buffers on all motors:
Definition at line 291 of file kmlBase.cpp.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
void CKatBase::getMasterFirmware | ( | short * | fw, |
short * | rev | ||
) |
Get the master firmware of the robot we are communicating with.
Get master firmware read at initialization time.
Definition at line 164 of file kmlBase.cpp.
|
inline |
|
inline |
|
inline |
|
inline |
|
virtual |
_gnl | general attributes |
_mot | motor attributes |
_sct | sensor controller attributes |
_eff | end effector attributes |
_protocol | desired protocol |
Definition at line 27 of file kmlBase.cpp.
int CKatBase::readDigitalIO | ( | ) |
get digital I/O data from Katana400:
Definition at line 278 of file kmlBase.cpp.
void CKatBase::recvCTB | ( | ) |
receive data
Definition at line 88 of file kmlBase.cpp.
void CKatBase::recvECH | ( | ) |
receive data
Definition at line 150 of file kmlBase.cpp.
void CKatBase::recvGMS | ( | ) |
receive data
Definition at line 102 of file kmlBase.cpp.
void CKatBase::recvIDS | ( | ) |
receive data
Definition at line 75 of file kmlBase.cpp.
void CKatBase::recvMFW | ( | ) |
receive data
Definition at line 62 of file kmlBase.cpp.
void CKatBase::recvMPS | ( | ) |
read all motor positions simultaneously
Definition at line 247 of file kmlBase.cpp.
void CKatBase::setAndStartPolyMovement | ( | std::vector< short > | polynomial, |
int | exactflag, | ||
int | moreflag | ||
) |
Send polynomials to all motors and start movement
polynomial | time, target pos and coefficients of the motor polynomials |
exactflag | exactflag |
moreflag | 0 = start moving more following, 1 = last or a single polynomial movement, 2 = do not start moving yet more following |
Definition at line 233 of file kmlBase.cpp.
void CKatBase::setCrashLimit | ( | long | idx, |
int | limit | ||
) |
void CKatBase::setPositionCollisionLimit | ( | long | idx, |
int | limit | ||
) |
set collision position limits
Definition at line 209 of file kmlBase.cpp.
void CKatBase::setSpeedCollisionLimit | ( | long | idx, |
int | limit | ||
) |
set collision speed limits
Definition at line 213 of file kmlBase.cpp.
void CKatBase::startSplineMovement | ( | int | exactflag, |
int | moreflag = 1 |
||
) |
Start a spline movement
exactflag | Set it to 1 if you want the position controller activated after the movement, 0 otherwise, add 2 to set motor6_follow (no gripper) |
moreflag | 0 = start moving more following, 1 = last or a single polynomial movement, 2 = do not start moving yet more following |
Definition at line 223 of file kmlBase.cpp.
void CKatBase::unBlock | ( | ) |
unblock robot after a crash
Definition at line 217 of file kmlBase.cpp.
void CKatBase::waitFor | ( | TMotStsFlg | status, |
int | waitTimeout, | ||
bool | gripper | ||
) |
wait for motor on all motors
Definition at line 118 of file kmlBase.cpp.
|
protected |
|
protected |
|
protected |