Who owns clearing the job handshake? (sample verification)

ChenArcher0355 · 15 Apr 2026, 23:16 UTC

Closed
CH
ChenArcher0355
I'm reviewing our non-safety job handshake for sample verification with Fairino FR5 in a PLC-coordinated fixture inspection cell, using an inspection coupon. The PLC sends a brief request, and our application sometimes misses it. I can't find anything clear about who owns each signal or when it gets cleared. Safety functions are independently engineered; this is the ordinary job interface.

19 replies

GA
GabrielAli0192
Replying to ChenArcher0355

Does your trace show when the PLC request is raised and cleared relative to application polls, including which side performs the clearing?

4points
CH
ChenArcher0355
Replying to GabrielAli0192

I've compared the trace: the PLC raises and clears the request between consecutive application polls, with no observed acknowledgement before it clears.

-1points
GA
GabrielAli0192
Replying to ChenArcher0355

Draft one writer and clear conditions for each field, then review a request retained until matching acknowledgement with the interface owner. That should settle the handshake offline.

11points
AN
AnilBaker0462
Replying to GabrielAli0192

Settle it? Retaining a request fixes visibility, but can also keep an old request alive after a restart. Identity and reset rules matter

7points
GA
GabrielAli0192
Replying to AnilBaker0462

@AnilBaker0462 You're right; my conclusion skipped necessary cases. Retaining the request addresses visibility, while identity, clearing ownership and restart behaviour must also be reviewed.

4points
CH
ChenArcher0355
Replying to GabrielAli0192

@GabrielAli0192 Should I record readers as well as the single writer? Our existing phrase used by PLC doesn't distinguish setting, reading or clearing a field.

8points
GA
GabrielAli0192
Replying to ChenArcher0355

@ChenArcher0355 Yes: writer, readers, meaning, set condition and clear condition. Then give each legal transition a concrete example.

17points
LI
LiamChan1099
Replying to GabrielAli0192

On my interface, both sides cleared acknowledgement for different reasons. Each program looked reasonable alone. Put them together and the answer vanished.

18points
CH
ChenArcher0355
Replying to LiamChan1099

Our code also lets both sides clear the acknowledgement. I've identified the competing conditions and will bring them to the interface review for an explicit decision.

4points
AN
AnilBaker0462
Replying to ChenArcher0355

Good. Renaming the field won't remove the second writer. The agreed ownership needs to match both programs

23points
NO
NoraArcher0409
Replying to GabrielAli0192

@GabrielAli0192 Does the acknowledgement indicate that inspection is complete, or might it only mean the request was accepted?

1points
GA
GabrielAli0192
Replying to NoraArcher0409

That depends on the defined interface. If it means accepted, completion needs a separate event. Don't make readers infer which meaning you intended.

10points
CH
ChenArcher0355
Replying to GabrielAli0192

@GabrielAli0192 I'll distinguish request acceptance from job completion in our review, so an accepted request with a delayed result can't appear completed just because it was acknowledged.

5points
LI
LiamChan1099
Replying to ChenArcher0355

@ChenArcher0355 A step-by-step example from idle to acceptance and completion, showing each field's value, can reveal missing transitions in the proposed interface.

21points
NO
NoraArcher0409
Replying to LiamChan1099

@LiamChan1099 Should the offline review also follow a request that receives no acknowledgement, rather than only the successful sequence?

8points
GA
GabrielAli0192
Replying to NoraArcher0409

Include missing acknowledgement and the documented recovery ownership. A timeout doesn't by itself justify submitting the work again, so that transition needs explicit treatment.

12points
CH
ChenArcher0355
Replying to GabrielAli0192

Our offline review will include a retained request without acknowledgement, keeping it distinct from the transient request the application never observed.

5points
CH
ChenArcher0355
Replying to ChenArcher0355

The missed-request diagnosis is settled for this trace. Completing the handshake fix still depends on the interface owner's assessment of signal ownership and the offline transition cases.

13points
GA
GabrielAli0192
Replying to ChenArcher0355

You've closed the specific missed-pulse question without assuming that explains or verifies every handshake transition.

8points

Discussion closed

This discussion is closed to new replies after six months without activity. Last activity: .