Highest priority PRIORITY
Picks the ready slot with the highest Priority.
SEL2 · Bay2
Cands3
VAL1
| Tag | After two scans |
|---|---|
| Dock | EN 1 SEL 2 VAL 1 ERR 0 RES 0 |
How it works
A true rung picks. A false rung picks nothing, but new requests still join the line and .SEL is 0.
How it's used
Use it to send the next job to the most important waiting place, such as the dock bay with the highest priority.
Global.Bay1CallXIC
Global.Dock.Bay1.REQOTE
Global.Bay2CallXIC
Global.Dock.Bay2.REQOTE
Global.Bay3CallXIC
Global.Dock.Bay3.REQOTE
Global.PickXIC
SEL2 · Bay2
Cands3
VAL1
Global.Dock.VALXIC
Source2
Dest2
| Tag | Value |
|---|---|
| Bay1Call | 1 |
| Bay2Call | 1 |
| Bay3Call | 0 |
| Pick | 1 |
| Dock | EN 1 SEL 2 VAL 1 ERR 0 RES 0 |
| NextBay | 2 |
Bay1 and Bay2 are calling. Bay2 has the higher priority, so NextBay is 2.
In practice
Highest priority: picks the requested, available slot with the highest Priority; a tie goes to the lower slot.
Configuration
- One rung per bay writes Dock.Bay1.REQ, and Dock.Bay1.RDY where the bay can take work; then XIC Dock.VAL with MOVE Dock.SEL to the destination.
Limits and status
- .SEL is the 1-based candidate; 0 means none. .ERR holds the reason code.
- Renaming a candidate renames its members everywhere.
- Renaming the tag or changing its candidates starts the selection over.
- Algorithms instructions are learning aids for deterministic selection. They are not safety-rated or certified, and they do not plan paths, avoid collisions or control motion. This is not a safety function.
Operands
| Operand | Data type | Read or write |
|---|---|---|
| Tag | ALGORITHM | Reads and writes |
Common mistakes
- Ignoring priority tiesThe lower slot wins a tie. These learning aids do not plan paths or provide a safety function.