This command is used to define a custom zone area that is not confined to a single Flyway. The minimum size of the zone is 10mm x 10mm. Zones can be used as either Loading Zones or Intersection Zones .
See also: Keep-Out Zones
Fieldbus Interface PMC_Zone_DefineZone
Inputs
Name
Data Type
Description
Execute
BOOL
Execution of the function block begins on a rising edge of this input.
ZoneID
USINT
Any ID from 1 to 235. Will overwrite the default zones created using Flyway IDs if the ID is a valid Flyway ID.
Mode
USINT
0: regular loading zone
>=1: number of XBots that are allowed to be inside the zone at the same time. This is used to enable the Intersection zone feature
BottomLeftX
REAL
X coordinate of the bottom left corner of the zone, meters
BottomLeftY
REAL
Y coordinate of the bottom left corner of the zone, meters
TopRightX
REAL
X coordinate of the top right corner of the zone, meters
TopRightY
REAL
Y coordinate of the top right corner of the zone, meters
EnableZLimit
USINT
0: no Z height limit on XBots that may enter the zone; 1: enable Z height limit on XBots that may enter the zone, see ZLimit input
ZLimit
REAL
If EnableZLimit input is set to 1, then XBots at a height above this limit will not be allowed to enter the zone
PM_Controller
PMControllerType
Data structure that specifies which PMC to connect to. There should be only 1 instance of this variable for each connected PMC.
Outputs
Name
Data Type
Description
Done
BOOL
Execution successful. Function block is finished. (Note: Done will not become TRUE if Execute is already FALSE)
Busy
BOOL
Function block is active and must continue to be called.
Aborted
BOOL
Command aborted by another command.
Error
BOOL
If there is an error in processing the command, then Error = TRUE, otherwise, FALSE.
ErrorID
UINT
0x0: All OK. Otherwise, please see PMC Reply Codes .
Ethernet Interface PMCRTN DefineZone(int zoneID, double minXM, double minYM, double maxXM, double maxYM)
Parameters
Name
Type
Description
zoneID
int
Any ID from 1 to 235. Will overwrite the default zones created using Flyway IDs is the ID is a valid Flyway ID.
minXM
double
X coordinate of the bottom left corner of the zone, meters
minYM
double
Y coordinate of the bottom left corner of the zone, meters
maxXM
double
X coordinate of the top right corner of the zone, meters
maxYM
double
Y coordinate of the top right corner of the zone, meters
Returns
Name
Type
Description
PMCRTN
PMCRTN enum
ALLOK (0): Command Accepted. Otherwise, please see Ethernet Reply Codes .
PMCRTN DefineIntersectionZone(int zoneID, double minXM, double minYM, double maxXM, double maxYM, int maxNumberOfXBot)
Parameters
Name
Type
Description
zoneID
int
Any ID from 1 to 235. Will overwrite the default zones created using Flyway IDs is the ID is a valid Flyway ID.
minXM
double
X coordinate of the bottom left corner of the zone, meters
minYM
double
Y coordinate of the bottom left corner of the zone, meters
maxXM
double
X coordinate of the top right corner of the zone, meters
maxYM
double
Y coordinate of the top right corner of the zone, meters
maxNumberOfXBot
int
Specifies maximum number of XBots allowed inside the zone
Returns
Name
Type
Description
PMCRTN
PMCRTN enum
ALLOK (0): Command Accepted. Otherwise, please see Ethernet Reply Codes .
PMCRTN DefineZLimitedIntersectionZone(int zoneID, double minXM, double minYM, double maxXM, double maxYM, double zLimitM, int maxNumberOfXBot)
Parameters
Name
Type
Description
zoneID
int
Any ID from 1 to 235. Will overwrite the default zones created using Flyway IDs is the ID is a valid Flyway ID.
minXM
double
X coordinate of the bottom left corner of the zone, meters
minYM
double
Y coordinate of the bottom left corner of the zone, meters
maxXM
double
X coordinate of the top right corner of the zone, meters
maxYM
double
Y coordinate of the top right corner of the zone, meters
zLimitM
double
Z limit for the zone, meters. XBots with or higher Z Height than the limit cannot enter the zone
maxNumberOfXBot
int
Specifies maximum number of XBots allowed inside the zone
Returns
Name
Type
Description
PMCRTN
PMCRTN enum
ALLOK (0): Command Accepted. Otherwise, please see Ethernet Reply Codes .
Conditions Operating Conditions
Preconditions
The specified zone ID is not currently in use. (i.e. not deactivated, not fenced).
Postconditions
The specified zone is defined and will be used the next time Zone Control or Zone Fence is called.
Description This command is used to define a custom zone area that is not confined to a single Flyway. The minimum size of the zone is 10mm x 10mm. Zones can be used as either Loading Zones or Intersection Zones .
For example, if the blue square is the desired zone, then the input would be:
BottomLeftX: 0.24
BottomLeftY: 0
TopRightX: 0.72
TopRightY: 0.48
After the zone is created, it can be controlled using the Zone Control or Zone Fence command.
Changelog PMC v11687 - Added EnableZLimit, ZLimit, and Mode inputs
PMC v117.10.10 - Zone minimum size decreased from 120 mm x 120 mm to 10 mm x 10 mm