Part V. Lesson 19. Sensing and Identification.
The whole controls stack exists to make decisions. Sort this carton to Door 1. Hold that one. Reject the overweight one. Every decision runs on information, and the information comes from one place: the sensing layer, where the system actually reads the world.
A decision is only as good as the read it's made from.
Is there a package here, yes or no. A steady-state question the eye answers for as long as the package sits in front of it. This is the transducer that reports to an accumulation zone.
Exactly when a leading edge crosses one fixed point. An event, a single instant. Every timed action in a section, the scan, the tracking clock, the divert, hangs off a registration read.
A photoeye used for registration has to be mounted square to the direction of travel. Square, the leading edge breaks the beam at the same repeatable point on every carton, no matter where it rides across the belt.
Angle it and you trade a repeatable trigger for a variable one.
An angled eye can look like it catches more of the box. For registration that's exactly backwards.
A read happens at one fixed point. The divert happens well downstream. In between, nothing watches that specific carton. The encoder closes the gap: it measures belt travel in precise increments, and the PLC uses that measurement to know exactly where every item is at any moment.
The carton stops being a thing to watch and becomes a number, a position counted forward from induction. Same principle a CNC machine or an industrial robot runs on. But tracking doesn't fix a bad read. It commits to it.
Designing as if every barcode reads. It never happens. Damaged labels, bad orientation, poor print, and shrink-wrap glare all produce no-reads, and if you didn't plan a destination for the ones that fail, the first no-read of the shift is a carton sitting at a decision point with nowhere to go and a line backing up behind it. Design for the no-read rate. It's a number, not a hope.
I've watched a brand-new engineer angle a registration photoeye across the belt because it looked like it grabbed more of the box. Every timing in that section started drifting, and nobody could figure out why the sorter kept missing by a lane. A registration eye has to be square to travel. It's the plainest decision on the drawing, and it decides whether the whole section keeps time.

"When an order wave goes out the WMS knows which carrier each carton is going to. That information is tied to the barcode on each carton."
The carrier lives on the barcode, so the device list at the sort point is fixed: a registration photoeye square to travel, a barcode read to pull the carrier, and the sorter encoder to carry each carton from read to divert. Make the single-scanner-versus-tunnel call from label orientation, not cost. Name the no-read destination. Mark the one thing you can't lock yet: exactly where the scan point sits. That comes back.
Next: How does a decision become motion the machine can execute safely?