Data for a MotoLogix command log entry.
MLxLogging for details on logged data per MotoLogix command.Version history
0.2.0
Changes
- data type for
timeStampchanged toDINT
show full history
0.1.0
Changes
- initial version
Overview
| name | type | default | comment |
|---|---|---|---|
| timeStamp | DINT | 0 | time of log event [ms since midnight] |
| commandId | USINT | 0 | command identifier |
| robotNumber | SINT | -1 | robot number (-1=none) |
| targetNumber | SINT | -1 | command specific target number (-1=none) |
| bufferEntry | SINT | -1 | assigned buffer entry number (-1=none) |
| bufferEntriesActive | USINT | 0 | number of active buffer entries |
| systemState | USINT | 0 | MotoLogix system state |
| data | ARRAY[0..6] OF DINT | [0,0,0,0,0,0,0] | command specific data |
| userData | ARRAY [0..1] OF DINT | [0,0] | additional user data |
Details
timeStamp
DINTTime of log event.
- It reflects the time at which the process of sending the command data to the robot controller started
- It formats the time as the number of milliseconds since midnight (00:00 hours)
commandId
USINTCommand identifier.
| value | explanation |
|---|---|
| 01 | MLxAbort |
| 02 | MLxReset |
| 03 | MLxResetAndHold |
| 04 | MLxRestart |
| 05 | MLxEnable |
| 06 | MLxStop |
| 07 | MLxHold |
| 09 | MLxRobotSetDigitalOutputWithMot |
| 10 | MLxRobotConvSyncStart |
| 11 | MLxRobotConvSyncStop |
| 12 | MLxRobotConvSyncStopWithAxisMot |
| 13 | MLxRobotConvSyncStopWithLinMot |
| 15 | MLxGetErrorDetail |
| 16 | MLxGetModuleInfo |
| 17 | MLxRobotMoveLinearAbsolute |
| 18 | MLxRobotMoveLinearRelative |
| 19 | MLxRobotMoveAxisAbsolute |
| 20 | MLxRobotMoveAxisRelative |
| 22 | MLxRobotJogAxes |
| 23 | MLxRobotJogTCP |
| 24 | MLxRobotSetBasePose |
| 25 | MLxRobotSetToolProperties |
| 26 | MLxRobotSetUserFrame |
| 27 | MLxRobotSetFrameShift |
| 28 | MLxRobotCoordinateTransform |
| 29 | MLxRobotSetProperties |
| 30 | MLxRobotGetProperties |
| 31 | MLxRobotSetCubicIZByCenterPoint |
| 32 | MLxRobotSetCubicIZByTwoCorners |
| 33 | MLxRobotSetHomeOffsets |
| 34 | MLxRobotJogAxesToPoint |
| 35 | MLxRobotJogTCPToPoint |
| 36 | MLxRobotGetHomeOffsets |
| 37 | MLxSetGlobalParameter |
| 51 | MLxBvarsGet |
| 52 | MLxDvarsGet |
| 53 | MLxIvarsGet |
| 54 | MLxRvarsGet |
| 55 | MLxSvarsGet |
| 61 | MLxBvarsSet |
| 62 | MLxDvarsSet |
| 63 | MLxIvarsSet |
| 64 | MLxRvarsSet |
| 65 | MLxSvarsSet |
| 71 | MLxRobotMoveAxisPvarAbsolute |
| 72 | MLxRobotMoveLinearPvarAbsolute |
| 200 | MLxRobotPositionVariableSet |
| 201 | MLxRobotPositionVariableGet |
| 204 | MLxWriteApplicationDataToYRC |
| 205 | MLxRobotSelectTool |
| 206 | MLxRobotMoveLinAbsoWithBase |
| 207 | MLxRobotMoveLinRelaWithBase |
| 208 | MLxRobotMoveAxisAbsoWithBase |
| 209 | MLxRobotMoveAxisRelaWithBase |
| 210 | MLxGetMessageDetail |
| 219 | MLxRobotSetServoFloatOn |
| 220 | MLxRobotSetServoFloatOff |
| 221 | MLxRobotSetServoFloatProperties |
| 223 | MLxRobotSetCollisionDetectionStatus |
| 224 | MLxRobotSelectCollisionDetection |
| 225 | MLxRobotSetCollisionDetectionProperties |
| 226 | MLxRobotGetCollisionDetectionStatus |
| 227 | MLxRobotGetCollisionDetectionTorque |
| 228 | MLxRobotResetCollisionDetectionTorque |
| 229 | MLxSetLimitStatus |
| 230 | MLxGetLimitStatus |
| 233 | MLxRobotSetSearch |
| 234 | MLxRobotResetSearch |
| 235 | MLxRobotGetSearchResult |
| 236 | MLxRobotGetSearchPosition |
| 240 | MLxGetSafetyCRC |
| 241 | MLxGetConfigLog |
| 242 | MLxRobotCalcToolCalib |
robotNumber
SINTRobot number (-1=none).
targetNumber
SINTCommand specific target number (-1=none).
bufferEntry
SINTAssigned buffer entry number.
| value | explanation |
|---|---|
| -1 | system command, not using the command buffer |
| 0-n | entry in the command buffer |
bufferEntriesActive
USINTNumber of active buffer entries. This is the same as the commandsInUse
output of MLxCommunicationWrite.
It helps to understand what fill levels the command buffer reaches when running your MotoLogix application.
systemState
USINTMotoLogix system state. Check the state transitions diagram to learn more about below states.
| value | explanation |
|---|---|
| 0 | 0-Initializing |
| 1 | 1-EnablingToIdle |
| 2 | 2-EnablingToHeld |
| 3 | 3-Idle |
| 4 | 4-Running |
| 5 | 5-Holding |
| 6 | 6-Held |
| 7 | 7-Aborting |
| 8 | 8-ServosOffAborted |
| 9 | 9-StoppingToIdle |
| 10 | 10-StoppingToServosOff |
| 11 | 11-StoppingToServosOffHeld |
| 12 | 12-ServosOffReady |
| 13 | 13-ServosOffHeld |
| 14 | 14-FatalFault |
data
ARRAY[0..6] OF DINTCommand specific data.
See
MLxLogging
for details.
Conversion
Floating point (REAL) values are converted to integer (DINT) with the
specified precision.
Example of a conversion to .01 unit (resulting in a
precision of two decimals):
// conversion of a REAL to a DINT (.01 unit)
// 1234.56789 -> 123457
varDint := REAL_TO_DINT(varReal * 100)
userData
ARRAY [0..1] OF DINTThis allows you to store additional information with every log entry. It can be of great value when analyzing log data.
Some examples for user data:
- Index of the sent motion command (
PosTable.LoadIndex) - State machine variable
Example for converting a floating point variable:
// conversion of a REAL using factor 100
// 1234.56789 -> 123457
varDint := REAL_TO_DINT(varReal * 100)