Instructions - Palletizing Control
1. Palletizing Start (PALON)
Description: Palletizing start determination. Controls which layer and which workpiece through variable modification.
Parameter Description
| Parameter Name | Type | Description |
|---|---|---|
| ID | int | Palletizing process number, value range [1,99] |
| STACKTYPE | int | Palletizing type, value range [0,1] 0: Palletizing 1: Depalletizing |
| _pCurrentLayersNum | Variable object | Current layer count; int type variable or bound variable, global or local When the variable value represents string type [-]: indicates not used |
| _pLayersNum | Variable object | Current palletizing layer; int type variable or bound variable, global or local When the variable value represents string type [-]: indicates not used |
| _pWorkpieceSum | Variable object | Current total palletized count; int type variable or bound variable, global or local When the variable value represents string type [-]: indicates not used |
| _stackSequence | int | Single layer palletizing/depalletizing sequence, value range [0,1] 0: Forward sequence 1: Reverse sequence |
| logout | bool | Whether to comment out true: the instruction will not execute in the job file false: not commented out, executable |
| type | int | PALON is 70 in the enum type list |
| userParamInt | int | Customer-defined for secondary development, currently meaningless |
| userParamString | string | Customer-defined for secondary development, currently meaningless |
Example
json
{
"ID": 1,
"STACKTYPE": 0,
"_pCurrentLayersNum": {"data": 0.0, "secondvalue": 1, "value": 4, "varname": "GI[GI001]"},
"_pLayersNum": {"data": 0.0, "secondvalue": 1, "value": 1, "varname": "I[I001]"},
"_pWorkpieceSum": {"data": 0.0, "secondvalue": 0, "value": 1, "varname": "[-]"},
"_stackSequence": 1,
"logout": false,
"type": 70,
"userParamInt": 0,
"userParamString": ""
}2. Switch Gripper (PALGRIPPER)
Description: Selects gripper.
Parameter Description
| Parameter Name | Type | Description |
|---|---|---|
| ID | int | Palletizing process number, value range [1,99] |
| logout | bool | Whether to comment out true: the instruction will not execute in the job file false: not commented out, executable |
| tool | int | Gripper number, value range [1,4] |
| type | int | PALGRIPPER is 71 in the enum type list |
| userParamInt | int | Customer-defined for secondary development, currently meaningless |
| userParamString | string | Customer-defined for secondary development, currently meaningless |
Example
json
{
"ID": 17,
"logout": false,
"tool": 3,
"type": 71,
"userParamInt": 0,
"userParamString": ""
}3. Palletizing Entry Point (PLAENTER)
Description: Selects gripper, palletizing entry point.
Parameter Description
| Parameter Name | Type | Description |
|---|---|---|
| ID | int | Palletizing process number, value range [1,99] |
| ParaACC | Variable object | Acceleration; int type or double type variable or bound variable, global or local; value range [1,100] |
| ParaDEC | Variable object | Deceleration; int type or double type variable or bound variable, global or local; value range [1,100] |
| ParaLINE | Variable object | Arch displacement distance; manually entered value or int type or double type variable or bound variable, global or local; value range [-5000,5000] Used when interpolation method is Arch |
| ParaPL | Variable object | Smoothing; int type variable or bound variable, global or local; value range [0,5] |
| ParaTIME | Variable object | Pre-execution time; int type or double type variable or bound variable, global or local |
| ParaSTRAIGHT | Variable object | Arch straight line distance; manually entered value or int type or double type variable or bound variable, global or local; value range [0,5000] |
| ParaV | Variable object | Motion speed; int type or double type variable or bound variable, global or local When motion mode is joint: m_vUnit value is 2, speed unit is %; value range [1,100] When motion mode is arc or linear: m_vUnit value is 1, speed unit is mm/s; value range [1,1000] |
| Posture | int | Posture, value range [0,2] 0: Off 1: Manual entry Auto-calculated posture |
| logout | bool | Whether to comment out true: the instruction will not execute in the job file false: not commented out, executable |
| moveType | string | Motion interpolation method MovJ: Joint MovL: Linear MovC: Arc MovArch: Arch |
| para_posture_ | Variable object | Manually entered posture value; int type or double type variable or bound variable, global or local |
| type | int | PLAENTER is 73 in the enum type list |
| offsetAxis | int | Offset axis, value range [0,2] 0: X axis 1: Y axis 2: Z axis |
| userParamInt | int | Customer-defined for secondary development, currently meaningless |
| userParamString | string | Customer-defined for secondary development, currently meaningless |
| xyOpt | int | Optimize XY axis motion path, value range [0,1] 0: Off 1: On |
| zOpt | int | Optimize Z axis motion path, value range [0,1] 0: Off 1: On To optimize Z axis path, a fixed point must be inserted before palletizing |
Example
json
{
"ID": 1,
"ParaACC": {"data": 0.0, "secondvalue": 0, "value": 4, "varname": "GI001"},
"ParaDEC": {"data": 0.0, "secondvalue": 1, "value": 5, "varname": "GD[GI001]"},
"ParaLINE": {"data": 0.0, "secondvalue": 0, "value": 5, "varname": "GD001"},
"ParaPL": {"data": 0.0, "secondvalue": 1, "value": 1, "varname": "I[GI001]"},
"ParaTIME": {"data": 0.0, "secondvalue": 1, "value": 5, "varname": "GD[GI001]"},
"ParaSTRAIGHT": {"data": 0.0, "secondvalue": 1, "value": 5, "varname": "GD[I001]"},
"ParaV": {"data": 300.0, "m_vUnit": 1, "secondvalue": 0, "value": 0, "varname": ""},
"Posture": 1,
"logout": false,
"moveType": "MovC",
"para_posture_": {"data": 0.0, "secondvalue": 0, "value": 4, "varname": "GI005"},
"type": 73,
"offsetAxis": 2,
"userParamInt": 0,
"userParamString": "",
"xyOpt": 1,
"zOpt": 1
}4. Palletizing Auxiliary Point (PALSHIFT)
Description: Palletizing auxiliary point.
Height Rule Description:
- When entry point height is lower than the fixed point, the entry point height will be aligned to the same height as the fixed point and auxiliary point (same straight line in side view, not same line in top view, XY axes unchanged)
- When entry point height is between the fixed point and auxiliary point, the entry point height remains unchanged
- When entry point height is above the fixed point and auxiliary point, the entry point height will be optimized to the same height as the fixed point
- When both entry point and auxiliary point height are above the fixed point, the entry point height will be optimized to the same height as the auxiliary point
Parameter Description
| Parameter Name | Type | Description |
|---|---|---|
| ID | int | Palletizing process number, value range [1,99] |
| ParaACC | Variable object | Acceleration; int type or double type variable or bound variable, global or local; value range [1,100] |
| ParaDEC | Variable object | Deceleration; int type or double type variable or bound variable, global or local; value range [1,100] |
| ParaLINE | Variable object | Arch displacement distance; manually entered value or int type or double type variable or bound variable, global or local; value range [-5000,5000] Used when interpolation method is Arch |
| ParaPL | Variable object | Smoothing; int type variable or bound variable, global or local; value range [0,5] |
| ParaSTRAIGHT | Variable object | Arch straight line distance; manually entered value or int type or double type variable or bound variable, global or local; value range [0,5000] |
| ParaTIME | Variable object | Pre-execution time; int type or double type variable or bound variable, global or local |
| ParaV | Variable object | Motion speed; int type or double type variable or bound variable, global or local When motion mode is joint: m_vUnit value is 2, speed unit is %; value range [1,100] When motion mode is arc or linear: m_vUnit value is 1, speed unit is mm/s; value range [1,1000] |
| logout | bool | Whether to comment out true: the instruction will not execute in the job file false: not commented out, executable |
| moveType | string | Motion interpolation method MovJ: Joint MovL: Linear MovC: Arc MovArch: Arch |
| type | int | PALSHIFT is 74 in the enum type list |
| offsetAxis | int | Offset axis, value range [0,2] 0: X axis 1: Y axis 2: Z axis |
| userParamInt | int | Customer-defined for secondary development, currently meaningless |
| userParamString | string | Customer-defined for secondary development, currently meaningless |
Example
json
{
"ID": 17,
"ParaACC": {"data": 0.0, "secondvalue": 1, "value": 5, "varname": "GD[I001]"},
"ParaDEC": {"data": 0.0, "secondvalue": 1, "value": 1, "varname": "I[I001]"},
"ParaLINE": {"data": 0.0, "secondvalue": 0, "value": 5, "varname": "GD001"},
"ParaPL": {"data": 0.0, "secondvalue": 0, "value": 1, "varname": "I001"},
"ParaSTRAIGHT": {"data": 0.0, "secondvalue": 1, "value": 5, "varname": "GD[I001]"},
"ParaTIME": {"data": 0.0, "secondvalue": 0, "value": 4, "varname": "GI006"},
"ParaV": {"data": 0.0, "m_vUnit": 1, "secondvalue": 0, "value": 4, "varname": "GI001"},
"logout": false,
"moveType": "MovArch",
"type": 74,
"offsetAxis": 2,
"userParamInt": 0,
"userParamString": ""
}5. Palletizing Approach Point (PALAPPRO)
Description: The palletizing approach point is the transition point between the auxiliary point and the workpiece point, and is also the position reached by the approach method.
Parameter Description
| Parameter Name | Type | Description |
|---|---|---|
| ID | int | Palletizing process number, value range [1,99] |
| ParaACC | Variable object | Acceleration; int type or double type variable or bound variable, global or local; value range [1,100] |
| ParaDEC | Variable object | Deceleration; int type or double type variable or bound variable, global or local; value range [1,100] |
| ParaLINE | Variable object | Arch displacement distance; manually entered value or int type or double type variable or bound variable, global or local; value range [-5000,5000] Used when interpolation method is Arch |
| ParaPL | Variable object | Smoothing; int type variable or bound variable, global or local; value range [0,5] |
| ParaSTRAIGHT | Variable object | Arch straight line distance; manually entered value or int type or double type variable or bound variable, global or local; value range [0,5000] |
| ParaTIME | Variable object | Pre-execution time; int type or double type variable or bound variable, global or local |
| ParaV | Variable object | Motion speed; int type or double type variable or bound variable, global or local When motion mode is joint: m_vUnit value is 2, speed unit is %; value range [1,100] When motion mode is arc or linear: m_vUnit value is 1, speed unit is mm/s; value range [1,1000] |
| logout | bool | Whether to comment out true: the instruction will not execute in the job file false: not commented out, executable |
| moveType | string | Motion interpolation method MovJ: Joint MovL: Linear MovC: Arc MovArch: Arch |
| offsetAxis | int | Offset axis, value range [0,2] 0: X axis 1: Y axis 2: Z axis |
| type | int | PALAPPRO is 76 in the enum type list |
| userParamInt | int | Customer-defined for secondary development, currently meaningless |
| userParamString | string | Customer-defined for secondary development, currently meaningless |
Example
json
{
"ID": 16,
"ParaACC": {"data": 0.0, "secondvalue": 1, "value": 2, "varname": "D[I001]"},
"ParaDEC": {"data": 0.0, "secondvalue": 1, "value": 4, "varname": "GI[GI001]"},
"ParaLINE": {"data": 0.0, "secondvalue": 0, "value": 5, "varname": "GD001"},
"ParaPL": {"data": 0.0, "secondvalue": 0, "value": 4, "varname": "GI001"},
"ParaSTRAIGHT": {"data": 0.0, "secondvalue": 1, "value": 5, "varname": "GD[I001]"},
"ParaTIME": {"data": 0.0, "secondvalue": 0, "value": 5, "varname": "GD001"},
"ParaV": {"data": 0.0, "m_vUnit": 1, "secondvalue": 0, "value": 1, "varname": "I001"},
"moveType": "MovL",
"type": 76,
"offsetAxis": 2,
"userParamInt": 0,
"userParamString": ""
}6. Palletizing Workpiece Point (PALREAL)
Description: The position where the palletizing workpiece is located.
Parameter Description
| Parameter Name | Type | Description |
|---|---|---|
| ID | int | Palletizing process number, value range [1,99] |
| ParaACC | Variable object | Acceleration; int type or double type variable or bound variable, global or local; value range [1,100] |
| ParaDEC | Variable object | Deceleration; int type or double type variable or bound variable, global or local; value range [1,100] |
| ParaLINE | Variable object | Arch displacement distance; manually entered value or int type or double type variable or bound variable, global or local; value range [-5000,5000] Used when interpolation method is Arch |
| ParaPL | Variable object | Smoothing; int type variable or bound variable, global or local; value range [0,5] |
| ParaSTRAIGHT | Variable object | Arch straight line distance; manually entered value or int type or double type variable or bound variable, global or local; value range [0,5000] |
| ParaTIME | Variable object | Pre-execution time; int type or double type variable or bound variable, global or local |
| ParaV | Variable object | Motion speed; int type or double type variable or bound variable, global or local When motion mode is joint: m_vUnit value is 2, speed unit is %; value range [1,100] When motion mode is arc or linear: m_vUnit value is 1, speed unit is mm/s; value range [1,1000] |
| logout | bool | Whether to comment out true: the instruction will not execute in the job file false: not commented out, executable |
| moveType | string | Motion interpolation method MovJ: Joint MovL: Linear MovC: Arc MovArch: Arch |
| offsetAxis | int | Offset axis, value range [0,2] 0: X axis 1: Y axis 2: Z axis |
| type | int | PALREAL is 75 in the enum type list |
| userParamInt | int | Customer-defined for secondary development, currently meaningless |
| userParamString | string | Customer-defined for secondary development, currently meaningless |
Example
json
{
"ID": 16,
"ParaACC": {"data": 0.0, "secondvalue": 1, "value": 4, "varname": "GI[I001]"},
"ParaDEC": {"data": 0.0, "secondvalue": 0, "value": 5, "varname": "GD001"},
"ParaLINE": {"data": 0.0, "secondvalue": 0, "value": 5, "varname": "GD001"},
"ParaPL": {"data": 0.0, "secondvalue": 0, "value": 1, "varname": "I001"},
"ParaSTRAIGHT": {"data": 0.0, "secondvalue": 1, "value": 5, "varname": "GD[I001]"},
"ParaTIME": {"data": 0.0, "secondvalue": 0, "value": 2, "varname": "D001"},
"ParaV": {"data": 0.0, "m_vUnit": 1, "secondvalue": 0, "value": 4, "varname": "GI001"},
"logout": false,
"moveType": "MovArch",
"offsetAxis": 2,
"type": 75,
"userParamInt": 0,
"userParamString": ""
}7. Palletizing Reset (PALCLEAR)
Description: Data initialization after palletizing starts.
Parameter Description
| Parameter Name | Type | Description |
|---|---|---|
| ID | int | Palletizing process number, value range [1,99] |
| logout | bool | Whether to comment out true: the instruction will not execute in the job file false: not commented out, executable |
| type | int | PALCLEAR is 77 in the enum type list |
| userParamInt | int | Customer-defined for secondary development, currently meaningless |
| userParamString | string | Customer-defined for secondary development, currently meaningless |
Example
json
{
"ID": 16,
"logout": false,
"type": 77,
"userParamInt": 0,
"userParamString": ""
}8. Palletizing End Check (PALOFF)
Description: Determines whether palletizing has finished.
Parameter Description
| Parameter Name | Type | Description |
|---|---|---|
| ID | int | Palletizing process number, value range [1,99] |
| _pPalOffvarName | Variable object | End check variable; bool type variable or bound variable, global or local true: finished false: not finished |
| logout | bool | Whether to comment out true: the instruction will not execute in the job file false: not commented out, executable |
| type | int | PALOFF is 78 in the enum type list |
| userParamInt | int | Customer-defined for secondary development, currently meaningless |
| userParamString | string | Customer-defined for secondary development, currently meaningless |
Example
json
{
"ID": 17,
"_pPalOffvarName": {"data": 0.0, "secondvalue": 1, "value": 6, "varname": "GB[I001]"},
"logout": false,
"type": 78,
"userParamInt": 0,
"userParamString": ""
}9. Get Workpiece Position (PAL_POS)
Description: Gets the position of a specified workpiece.
Parameter Description
| Parameter Name | Type | Description |
|---|---|---|
| PalPOS_pointType | int | Get point type, value range [0,2] 0: Entry point 1: Auxiliary point 2: Workpiece point |
| _pLayNum | Variable object | Layer where the workpiece is located; manually entered value or int type variable or bound variable |
| _pSerialNum | Variable object | Workpiece serial number; manually entered value or int type variable or bound variable |
| _pTecNUM | Variable object | Palletizing process number; manually entered value or int type variable or bound variable; value range [1,99] |
| getPointPosPos | int | Variable type bound to m_getPointPosname node, value range [1,2] 1: Fixed position variable name, e.g.: P0001, G001 2: Non-fixed position variable name, e.g.: P$I001, P$GI001, G$I001, G$GI001 |
| logout | bool | Whether to comment out true: the instruction will not execute in the job file false: not commented out, executable |
| m_getPointPosname | string | Variable name bound to the node |
| tool | int | Tool number |
| type | int | PAL_POS is 221 in the enum type list |
| userParamInt | int | Customer-defined for secondary development, currently meaningless |
| userParamString | string | Customer-defined for secondary development, currently meaningless |
Example
json
{
"PalPOS_pointType": 2,
"_pLayNum": {"data": 0.0, "secondvalue": 1, "value": 1, "varname": "I[I001]"},
"_pSerialNum": {"data": 0.0, "secondvalue": 1, "value": 1, "varname": "I[GI001]"},
"_pTecNUM": {"data": 0.0, "secondvalue": 0, "value": 1, "varname": "I001"},
"getPointPosPos": 2,
"logout": false,
"m_getPointPosname": "GP$GI001",
"tool": 0,
"type": 221,
"userParamInt": 0,
"userParamString": ""
}10. Simple Palletizing (PALSIMPLESET)
Description: Simple palletizing.
Parameter Description
| Parameter Name | Type | Description |
|---|---|---|
| _pTecNUM | Variable object | Process number for storing palletizing parameters; manually entered value or int type, variable or bound variable, global or local; value range [1,99] |
| logout | bool | Whether to comment out true: the instruction will not execute in the job file false: not commented out, executable |
| m_numVariableType | int array | Whether row count, column count, layer count are bound variables; value range [0,1] 0: Manually entered value or variable 1: Bound variable |
| m_pointVariableType | int array | Variable type, value range [1,3] Currently only positions 2-7 are used Position 1: None Position 2: Start workpiece point Position 3: Column end point Position 4: Row end point Position 5: Height end point Position 6: Auxiliary point Position 7: Entry point 1: Fixed position variable name, e.g.: P0001, G001 2: Non-fixed position variable name, e.g.: P$I001, P$GI001, G$I001, G$GI001 3: Not used |
| pointVariableName | string array | Point variable name array Position 2: Start workpiece point Position 3: Column end Position 4: Row end Position 5: Height end Position 6: Auxiliary point Position 7: Entry point Currently only positions 2-7 are used |
| type | int | Simple Palletizing is 222 in the enum type list |
| userParamInt | int | Customer-defined for secondary development, currently meaningless |
| userParamString | string | Customer-defined for secondary development, currently meaningless |
| variableData | string array | Bound variable data |
Example
json
{
"_pTecNUM": {"data": 0.0, "secondvalue": 0, "value": 1, "varname": "I001"},
"logout": false,
"m_numVariableType": [0, 1, 0],
"m_pointVariableType": [0, 1, 1, 2, 2, 2, 2, 0, 0, 0],
"pointVariableName": ["[-]", "GP0001", "GP0002", "GP$I001", "P$I001", "GP$I003", "P$GI003", "[-]", "[-]", "[-]"],
"type": 222,
"userParamInt": 0,
"userParamString": "",
"variableData": ["GI003", "GI[I004]", "GI005"]
}