Responsibilities and timing
WCS coordinates tasks and routes; PLCs execute local sequences and interlocks. Document the actual division. Safety functions belong to the appropriate machine architecture and must not depend on a WCS response.
Choose communication rates from controller update cycles, network load and operational need. Destination assignment and motion control have different timing requirements. The smallest polling interval is not automatically the best design.
A coherent command contract
A handshake may include identifier, sequence, parameters and processing state. Distinguish requested, acknowledged, executing and completed. Assign one writer per field and define when parameters become a coherent command.
Separate writes can expose mixed parameter sets. Use the agreed consistency mechanism, such as a validated structure and publication sequence. Adding a validity bit without update rules does not eliminate the race.
Watchdog and reconnection
A watchdog detects missing updates, not complete application health. A process may toggle a heartbeat while its command queue is stuck. Monitor progress and request age as well as connectivity.
After reconnecting, distinguish current observations from retained values. Compare physical state and acknowledged sequence. Resetting everything can hide a moving load or reapply an old command.
Worked lost-response scenario
The PLC executes command 204 but WCS misses completion. Where supported, repeating identity 204 should return existing state. Otherwise recovery requires a query or controlled reconciliation before another movement command.
Interrupt before acceptance, during movement and after completion. Define expected physical behavior for each case. Acceptance requires no unintended movement, coherent state and an operational explanation for remaining blocks.
Command ownership, consistency and identity
A PLC contract defines who writes, who reads and when parameters form a complete command. Separate writes to destination, load and request fields can expose mixed generations. Use a supported, tested consistency mechanism; sharing a display does not imply atomicity.
One reference design prepares parameters and publishes a command sequence after the set becomes coherent. The receiver captures and validates the generation before acceptance. This needs visibility and update guarantees from the chosen mechanism; a sequence alone does not make separate writes atomic.
| Logical field | Writer | Reference rule |
|---|---|---|
| Command identity / generation | Authorized WCS or adapter | Stable across retries; restart is not a new command. |
| Task parameters | Command producer | Do not change accepted parameters outside an update flow. |
| Acknowledged identity and outcome | Equipment controller/interface | Associate the response with the correct request. |
| Mode and availability | Responsible controller | Validate operating mode before admission. |
| Session / restart identity | Each endpoint as contracted | Detect lost history and require reconciliation. |
Transfer without relying on short pulses
A pulse can appear and disappear between reads. For indispensable events, retain requests and results until acknowledged or provide recoverable history. Choose according to platform and volume, including limits and reconnection behavior.
Producer → command area
Prepare parameters and publish a coherent generation.
Receiver → validation
Check identity, mode, eligibility and consistency.
Receiver → acknowledgement
Identify the accepted or rejected generation.
Equipment → execution
Execute under local logic and interlocks.
Receiver → result
Retain identity and outcome until contracted acknowledgement.
Producer → next cycle
Record the result before reusing the channel.
One in-flight request simplifies correlation but can limit throughput. Multiple requests require explicit identities, queue capacity and ordering.
Watchdog, command timeout and stalled progress
Separate communication-data age, command-acknowledgement deadline and execution/progress time. A recent heartbeat does not prove the task queue is advancing. Long execution may indicate destination waiting rather than communication failure.
Detection estimates must include production interval, read/subscription period, network delay and observed margin. An illustrative 100 ms update and 200 ms evaluation already require phase-offset consideration. These are not configuration recommendations; real limits depend on equipment and agreed behavior.
| Indicator | Interpretation | Design response |
|---|---|---|
| Stale data | Observation may no longer represent current state | Prevent dependent decisions and diagnose communication. |
| Unacknowledged command | Acceptance is unknown | Query outcome; do not assume the request never arrived. |
| Execution without progress | Blocked load or abnormal condition | Inspect reason, position and exception procedure. |
| New session after reconnect | History may have reset | Reconcile before issuing new commands. |
Independent endpoint restarts
Restart WCS and PLC separately. One side may retain values while the other loses its last-operation record. Identify available history and reconcile open commands with physical state. Clearing bits or reservations does not establish load location.
Define counter reset, rollover and reuse. A boot generation or session can distinguish operating periods where supported. Otherwise resumption needs controlled blocking and operational reconciliation.
| Scenario | Check | Resume condition |
|---|---|---|
| WCS restarts; PLC continues | Acknowledged command and in-transit load | Recovered state matches execution. |
| PLC restarts; WCS continues | Mode, retained values and sequence loss | Verified identity and location. |
| Both restart | Persistent history and present loads | Reconciled work, no blind replay. |
| Old response after recovery | Session and request identity | Stale event cannot change new work. |
Minimum interface-test evidence
Record contract version, configuration, request/response sequence, equipment mode and load observations. Interrupt before acknowledgement, during movement and after completion. Verify operators can distinguish communication loss from operational blocking.
Require no duplicated movement, no completion without evidence and explainable resumption. Machine-safety validation belongs to its specific plan and responsible teams. This execution handshake does not replace it.
Project verification criteria
- Assign a single writer to every handshake field.
- Test partial updates, retained values and repeated sequences.
- Recover without blindly replaying movement commands.
Examples describe engineering decisions and test scenarios. Implemented interfaces, limits and features are defined by each project’s scope.