You have a 24-place indexing conveyor for surgical gloves, a servo that steps it, and a PLC that must send every glove either to packing or to its own reject. The short version: one camera, one verdict register and the servo's index count replace 24 timers and 24 vision outputs. This walkthrough sizes the camera, lens and light for a translucent glove, then builds the PLC handshake and the nest-tracking logic that decides which of the 24 outputs fires. The numbers assume a glove about 250 mm long on a former, a dial that indexes one nest per servo move, and a 0.3 mm pinhole as the smallest defect that must not escape. Where your machine differs, the arithmetic is shown so you can redo it with your values.
How do you inspect 24 gloves with one camera and 24 rejects?
Give every glove a nest number instead of a time delay: one camera at one station, one hardware-triggered exposure per index stop, and one verdict that the PLC files into a 24-bit tracking array. Output n — whether the 24 actuators share one reject station or each nest keeps its own ejector — fires only when nest n parks at a reject with its bit set.
The 24 outputs are an addressing problem, not a vision problem. The camera answers one question per trigger: good, bad, or no-read. Everything positional — which glove, which actuator, when — belongs to the index count. That split keeps the optics tuned once at one station, and keeps the PLC program flat no matter how many nests the dial carries.
It also removes the classic failure of timer-based rejects: a dwell that stretches under load silently moves every reject point. An absolute nest count cannot drift, and a once-per-revolution re-sync closes even the residual risk. If a robot joins the cell later, the same results table feeds it, the pattern in single camera inspection routing to a robot and reject pusher — but with individually addressed actuators you never queue rejects at all.
What resolution does a glove pinhole inspection need?
Design for a 0.3 mm pinhole with 4 pixels across it: over a 300 × 225 mm field that is 0.075 mm per pixel, which needs a 4000 × 3000 frame — a 12 MP camera, sized below.
Start from the release test, not the sensor list. The water-tightness dip is what releases a glove lot; the camera is the 100 percent inline screen behind it. Commit the vision limit at 0.3 mm, where a stretched glove visibly leaks, and leave sub-0.1 mm porosity to the lab test.
Geometry: a size 7.5 glove on a former spans about 250 mm fingertip to cuff and 110 mm across the palm. Add margin for the former clamp and cuff ring, and the frame becomes 300 × 225 mm. The arithmetic:
- pixel size on the object: 300 mm ÷ 4000 px = 0.075 mm per pixel
- pinhole coverage: 0.3 mm ÷ 0.075 mm = 4 px across, a blob of about 13 px of area
- detection threshold: 6 px of blob area, a 2:1 margin over noise
Run your own glove size through the camera resolution calculator, then browse area scan cameras or the camera finder. At 1/1.7-inch format, 12 MP means 1.85 µm pixels and a 7.4 × 5.6 mm sensitive area — the numbers the lens step needs.
Two catalog cameras carry that sensor:
| Specification | LS-CMR-0053 | LS-CMR-0166 |
|---|---|---|
| Resolution | 4000 px x 3000 px | 4000 × 3000 (12MP) |
| Pixel size | 1.85 μm x 1.85 μm | 1.85 μm |
| Max. frame rate | 9 fps | 30 fps |
| Sensor model | IMX 226 | Sony IMX226 |
| Shutter | Rolling Shutter | rolling shutter |
| Data interface | GigE | USB 3.0 |
| Pixel bit depth | 8 / 10 / 12 bits | 10-bit |
| Price | $560.00 | $560.00 |
All 2 share: Sensor size 1/1.7". Values as printed in each product's data sheet; open a part for its drawing and full specifications.
Both are 12 MP IMX226 cameras: the GigE version at 9 fps, the USB3 version at 30 fps. Cabling decides: keep the controller at the machine for USB3, or mount it in a remote cabinet for GigE, which runs 100 m on standard industrial cable. Either rate clears one shot per index in a 2.0 s dwell.
Which lens and working distance frame a whole glove?
A 12 mm focal-length lens at about 500 mm working distance frames the 300 × 225 mm field on the 7.4 mm-wide sensor — two minutes of arithmetic, with your own numbers swapped in.
Worked through:
- magnification: m = 7.4 mm ÷ 300 mm = 0.0247
- focal length at 500 mm: f = 500 mm × 0.0247 ÷ 1.0247 = 12.0 mm, so fit a 12 mm lens
- check: at 12 mm and 500 mm, m ≈ 12 ÷ 488 = 0.0246, and the field is 7.4 ÷ 0.0246 ≈ 301 mm × 228 mm — the 300 × 225 mm target fits
Working distance is sensor to glove. Reserve about 80 mm behind the glove plane for the backlight panel, and confirm the camera and ring light clear the guard in front. Stop down to f/8: at this magnification the depth of field runs about 100 mm with a two-pixel circle of confusion, so the ±3 mm that nests vary never defocuses a pinhole — the depth of field calculator plots the curve. Order a lens whose image circle covers the 1/1.7-inch format or larger.
How do you light a translucent glove so pinholes show?
Use transmitted light — a backlight panel behind the former — strobed for about 0.5 ms; the latex attenuates it, so a pinhole or thin spot reads as a bright point on a dim body.
Front light cannot find a hole in a translucent film; light that passes through it can. Stretched latex absorbs and scatters part of the beam while an open hole passes all of it, so set exposure with the film body near mid-grey: the hole saturates and a thinned area steps visibly brighter. Drive the panel at strobe current — the 0.5 ms pulse freezes settling vibration and keeps average power low. Size the panel at 1.5 times the field, about 450 × 340 mm, or fit an opal diffuser, so a 13-px dot is judged on brightness rather than panel structure.
Stains, powder and the former edge need a front pass with a diffused ring around the lens, and cross polarization when wet latex glares. Browse ring lights and the lighting finder for that pass:
- Size
- 100-200 mm
- Type
- Diffused
- Angle
- Low angle (0-15°)
- Voltage
- 24 V
The LS-RNG-0426 is a 120 mm diffused white ring at 0° on 24 V. Trigger both lights from the camera's strobe output, or through a small controller when the camera has no flash line — adding an external strobe without a camera API covers the wiring. Two exposures per index, backlight frame then ring frame 33 ms later, cover both defect families inside one dwell; fail the glove if either frame fails.
How does one pass-fail verdict drive 24 reject outputs?
One verdict register and one sequence counter do it: the camera never needs nest numbers, because the PLC latches which nest faced the lens when it sent the trigger, then fires output n when nest n parks at a reject with its bit set.
Over Ethernet, write two registers to the PLC — Modbus TCP and PROFINET both carry it. Discrete I/O is the fallback: a fail line and a one-shot valid pulse are enough, because attribution lives in the PLC. A minimal register map:
| Tag | Size | Direction | Meaning |
|---|---|---|---|
| Verdict | 16-bit | camera to PLC | 0 pass, 1 fail, 2 no-read |
| Seq | 16-bit | camera to PLC | counts up once per result |
| Ack | 1-bit | PLC to camera | one-scan pulse after the copy |
| Track | 32-bit | PLC internal | bit n set means nest n to reject |
Treat a no-read as a reject, and never let a missing result default to pass: a trigger with no Seq advance inside two dwells stops the feed. Keep images out of the PLC entirely — send pass-fail results to the PLC, not images — and follow the timing discipline of sending vision data through a register handshake. Pass gloves need no logic at all: a clear bit simply means the nest continues to the packing unload.
The outputs stay simple. One shared 150 ms pulse timer fires whichever output the index count selects, and the bit clears as it fires, so a nest cannot reject twice. Latch one status bit per nest for the HMI — one timer and one latch block cover all 24 stations, the scheme in latching reject status with a single timer. Twenty-four solenoids fit one 32-channel output module.
// Illustrative names — map them to your own symbols
IndexCount : DInt := 0 // +1 on each servo index-complete
NestAtCam : Int := 0 // latched when the trigger fired
Offset : Int := 0 // reject-station offset, set at commissioning
Verdict : UInt := 0 // 0 pass, 1 fail, 2 no-read
Seq : UInt := 0 // from the camera, +1 per result
Track : DInt := 0 // bit n set = nest n to reject
ON index_complete : IndexCount := IndexCount + 1
ON trigger_sent : NestAtCam := IndexCount MOD 24
ON Seq change : IF Verdict <> 0 THEN Track.NestAtCam := 1
NestAtReject := (IndexCount + Offset) MOD 24
IF Track.NestAtReject AND NOT pulse_busy THEN
Track.NestAtReject := 0
fire output NestAtReject for 150 ms
END_IF
How do you track which glove is at which reject station?
Count index pulses, not seconds: the nest at any station equals (IndexCount plus that station's offset) modulo 24, the offset set once by parking a known nest and reading the count — one equation replaces every reject timer.
Set Offset at commissioning: park nest 0 at the reject, read IndexCount, store the difference. Re-sync every revolution from the servo's modulo position or a proximity marker at nest 0, and cumulative drift has nowhere to live. Attribution is safe by construction: NestAtCam is latched when the exposure is commanded, so a late verdict still files into the right nest, and the glove cannot return to the reject for a full revolution — 24 × 2.0 s = 48 s of slack at this speed.
Timers tempt people because they look simpler. On a continuous bottle conveyor a tuned delay can hold, the case examined in vision system reject delay: fixed delay or bottle tracking; on an indexed dial with per-nest actuators the absolute count is strictly better. When rejects start landing one nest late after a jam, you are seeing queue drift — a documented camera reject queue drift case — and the cure is the re-sync, not retuned timers. A trigger with no index-complete coming back is a stop condition, never a guess.
How fast can one camera inspect a 24-place dial?
One frame per index supports 30 gloves per minute at a 2.0 s dwell: exposure 0.5 ms, camera frame about 33 ms, analysis about 300 ms per pass, and the PLC handshake one scan — everything fits with slack to spare.
The budget, two passes per glove:
| Step | Time | Basis |
|---|---|---|
| Servo move and settle | 1.0 s | one nest pitch |
| Exposure | 0.5 ms | strobed, inside the stationary dwell |
| Two frames read out | 66 ms | backlight pass, then ring pass |
| Analysis | 600 ms | 300 ms per pass |
| Register write and ACK | under 10 ms | one PLC scan |
| Total | 1.68 s | 0.32 s of margin in a 2.0 s dwell |
Throughput is 60 ÷ 2.0 = 30 gloves per minute. The ceiling comes from the chain, not the camera: with region-of-interest analysis at about 200 ms per pass and a 0.6 s move, the chain is 1.08 s, so a 1.2 s dwell runs 50 gloves per minute with 0.12 s of margin. Below that the servo is the limit, not the vision. Keep the camera hardware-triggered from index-complete — free-running frames are how verdicts land on the wrong nest, the discipline laid out in a triggered stereo pair beside a free-run camera.
What should you check before running product?
Prove the chain with one marked glove: punch a known pinhole, mount it in nest 7, run ten revolutions, and confirm output 7 fires exactly once per revolution and nothing else moves — then move it to nest 18.
- Marked-glove test: ten revolutions in nest 7, then in nest 18; the right output fires once per revolution, every other output stays quiet.
- Force-word test: write all 24 Track bits from a test screen; one revolution later every output pulses once, in station order. Clear and repeat with no bits set.
- Home re-sync: slow-jog one revolution and confirm the nest-0 marker lands with IndexCount MOD 24 = 0.
- Strobe timing: scope trigger-to-light and confirm the panel is fully on inside the exposure window.
- Missing-verdict alarm: a trigger with no Seq advance inside two dwells stops the feed.
- No-read rate: count verdict-2 results per shift; a climbing count points at lighting, not logic.
- Power quality: if verdicts glitch when the servo accelerates, feed the camera from a filtered entry rather than shared drive power — an inspection-camera failure traced to a failed AC filter.
- Batch counters: reset pass and fail counts at every lot change so yields read per batch, per resetting pass-fail counters in a vision inspection script.
When is one camera the wrong answer?
Take a second camera when two checks need different geometry at one station — a macro view for fingertip pinholes beside the full-glove view — or when the dial becomes a continuous conveyor and tracking, not framing, becomes the hard part.
Three cases change the decision. If the fingertip limit tightens to 0.15 mm, add a camera covering about 100 mm of fingertip (0.025 mm per pixel, the 0.15 mm hole at 6 px) instead of pushing the whole-glove optic into macro. If the dial converts to a belt, nests lose their numbers: switch to encoder-count tracking with one merged results table, the structure in multi-camera conveyor tracking with one merged results table. And if the water test stays the release control and the inline job is gross defects only — tears, stains, missing fingers, presence — browse smart cameras; one of them carries the whole job:
- Interface
- GigE
- Resolution
- Up to 3 MP
The LS-SMC-0063 is a 1.6 MP smart camera at 60 fps with a 16 mm lens and built-in white light, polarized and transparent, over GigE. Over the same 300 mm field, 1.6 MP resolves about 0.2 mm per pixel: tears and stains yes, a 0.3 mm pinhole no. If a second station appears later, the same light family serves it — modular machine vision lighting: one light, many tasks.
The decisions, then: pinholes in scope — the 12 MP camera with strobed backlight; gross defects only — a smart camera with transmitted light built in; the machine going continuous — encoder tracking and a merged results table. Size the station in the configurator, and if a former geometry or glove size falls outside these numbers, send it through the contact page and we will rerun the arithmetic with your values.
Questions
How many registers or wires does the camera need for 24 reject outputs?
Two 16-bit registers over Ethernet: a verdict word (0 pass, 1 fail, 2 no-read) and a rolling sequence counter. On discrete I/O, a fail line plus a one-shot valid pulse is the wired equivalent. The nest number never travels to the camera — the PLC already knows which nest it triggered. Add a defect-code register only if the HMI must show why a glove failed; the reject logic needs nothing beyond the verdict.
What happens if a verdict arrives after the dial has moved on?
Nothing is lost, provided the PLC latches the nest number at the moment it commands the exposure rather than when the verdict lands. The result files into that nest's bit, and since the nest cannot return to the reject for a full revolution — 48 s at a 2.0 s dwell — the reject simply fires one revolution late. Alarm on any verdict older than two dwells so a slow link surfaces instead of silently passing product.
Can the camera replace the water-leak test for surgical gloves?
No — the water-tightness test releases the lot; the camera is the inline screen behind it. Vision commits to 0.3 mm holes (4 pixels at 0.075 mm per pixel), which is where visible leaking starts, while sub-0.1 mm porosity stays with the lab dip. Audit the split monthly: run a marked set of known leakers through both the camera and the water bath, and confirm the camera catches every gross leaker.
Do the 24 reject outputs need 24 timers?
No. A single shared 150 ms pulse timer strobes whichever output the index count points at, and clearing the nest's bit on the fire makes a repeat reject impossible. Twenty-four separate timers make the program grow with the nest count, hide double-fires behind per-station resets, and invite drift when someone retunes one of them. Flat, addressed logic also matches the force-word test: set all bits and watch all 24 outputs pulse once, in order.
How do you keep the camera from imaging a moving glove?
Hardware-trigger the exposure from the servo's index-complete signal and strobe the backlight for roughly 0.5 ms inside that window — the dial is stationary and even settling vibration is frozen. Gate the trigger through a one-shot if the in-position contact bounces. Free-running the camera and matching the nearest frame to the nearest nest is exactly how verdicts end up attributed to the wrong glove.

