Who owns clearing the job handshake? (part inspection)

AdaAllen0303 · 3 Jun 2026, 04:36 UTC

Reply to discussion
AD
AdaAllen0303
I'm reviewing our non-safety job handshake for part inspection with Fairino FR5 in a training inspection cell with an ordinary job interface, using a sample housing. 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.

21 replies

LI
LinBennett0705
Replying to AdaAllen0303

Can you compare the request trace with your application's polls? Also note which side clears the request.

9points
AD
AdaAllen0303
Replying to LinBennett0705

Our trace shows it rising and falling between two polls. The PLC clears it without an observed acknowledgement. No wonder the application misses it.

17points
LI
LinBennett0705
Replying to AdaAllen0303

@AdaAllen0303 Take an ownership table and a retained-request proposal to the interface owner. A request held until matching acknowledgement should settle the handshake in an offline review.

14points
OS
OscarBaker0445
Replying to LinBennett0705

@LinBennett0705 Holding the request addresses the missed pulse, but it doesn't settle the interface. A retained request needs identity and restart rules to avoid being mistaken for new work.

21points
LI
LinBennett0705
Replying to OscarBaker0445

Yes, I overstated that. Retention addresses the missed pulse. The offline review also needs matching identity, reset ownership and restart cases before the design is complete.

11points
AD
AdaAllen0303
Replying to LinBennett0705

Would your table include who reads each field too? Our notes say used by PLC, which could mean practically anything.

5points
LI
LinBennett0705
Replying to AdaAllen0303

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

5points
EL
EllaArcher0381
Replying to LinBennett0705

@LinBennett0705 My setup had two programs clearing the acknowledgement under different conditions. Reviewing them together exposed a conflict that wasn't apparent from either program in isolation.

9points
AD
AdaAllen0303
Replying to EllaArcher0381

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.

3points
OS
OscarBaker0445
Replying to AdaAllen0303

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

20points
NA
NadiaBennett0726
Replying to LinBennett0705

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

21points
LI
LinBennett0705
Replying to NadiaBennett0726

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

9points
AD
AdaAllen0303
Replying to LinBennett0705

@LinBennett0705 Our review will distinguish accepted from completed. I want a delayed result to look delayed, not mysteriously finished because a request was seen.

-1points
EL
EllaArcher0381
Replying to AdaAllen0303

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

3points
NA
NadiaBennett0726
Replying to EllaArcher0381

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

7points
LI
LinBennett0705
Replying to NadiaBennett0726

@NadiaBennett0726 Yes. Show timeout as an unresolved exchange, with the defined owner responsible for recovery. Don't turn absence of acknowledgement into an automatic resend rule.

12points
AD
AdaAllen0303
Replying to LinBennett0705

I'll add that case to our offline examples. The missing pulse and a retained but unanswered request need different descriptions.

3points
OS
OscarBaker0445
Replying to AdaAllen0303

What if acknowledgement belongs to an older request? Holding bits longer won't answer that.

21points
LI
LinBennett0705
Replying to OscarBaker0445

@OscarBaker0445 Add it as a mismatched-identity case. The interface owner needs to define how the supported exchange links a response to its request.

4points
AD
AdaAllen0303
Replying to LinBennett0705

@LinBennett0705 I've answered why this request can be missed: our trace shows it entirely between polls. I'll treat the handshake fix as complete only after the interface owner reviews ownership and the relevant offline transitions.

-2points

Add to the discussion

Welcome to Application Robot

Everyone can read the forum. Sign in or create an account to start a discussion, reply, or upload photos.

Forgot your password?

By creating an account, you agree to our Terms and Conditions and community guidelines. Read our Privacy Policy for how your information is handled.