Industrial Vision: Inline Inspection at the Edge
From trigger to inspection result: preprocess image data locally and separate time-critical vision tasks from control and software functions.
A machined aluminum housing travels on a conveyor into an optical inspection cell. A top camera captures position and hole patterns, while two side cameras observe contours, edges and visible surfaces. A trigger starts image acquisition and an encoder associates the images and inspection result with the product position.
This creates a typical embedded-vision design question: which image data really needs to be stored or transferred to software, and which processing can stay directly in the data stream?
Practical architecture example, not a finished reference system
The scenario describes one possible system architecture for an industrial multi-camera inspection cell. Camera models, frontends, FPGA functions, software and machine interfaces must be selected and implemented for the actual application.
Acquire and synchronize
A part-present sensor can trigger image acquisition while an encoder provides the conveyor position. In this example, three camera perspectives inspect geometry, completeness and visible surfaces.
The TEB0865 provides, among other interfaces, a documented four-data-lane MIPI CSI-2 connector. Additional camera channels require a suitable interface frontend, mezzanine and FPGA design.
Prepare image data in programmable logic
On the TE0865, programmable logic can implement processing stages that are well suited to a continuous stream – for example formatting, synchronization, correction, filtering or region-of-interest selection.
Intermediate data can be buffered in the dedicated PL-side DDR4 memory when required. The exact functions remain part of the application design.
Keep software focused on control tasks
The Processing System can manage inspection recipes, parameters, diagnostics, the user interface and communication. Software therefore does not need to move every pixel between all processing stages.
The TE0865-02-DGI83MA combines an AMD Zynq UltraScale+ ZU17EG with 4 GB DDR4 ECC connected to the Processing System and 4 GB DDR4 connected to the programmable logic.
Forward only relevant results
After evaluation, the system can pass a good/bad result, measurement values or a defect class to machine control.
Selected images and diagnostic data can be stored for HMI, traceability or process analysis while the continuous image stream remains local to the vision pipeline.
Why the data path matters in practice
An uncompressed 1,920 × 1,080 stream at 8 bits per pixel and 60 frames/s produces about 124.4 MB/s of image payload per camera..
Three equally configured cameras already produce about 373.2 MB/s..Writing and reading all of that data once corresponds to about 746.5 MB/s of pure data movement – before protocol overhead, padding, additional memory accesses or traffic peaks.
This is an illustrative sizing example, not a hardware benchmark.
DThe practical value of the partitioning is therefore not a single performance figure but a controllable data path: time-critical and highly parallel processing stays close to the camera stream, while software handles the parts of the system that change more frequently.
New inspection recipes or product variants can be adjusted in software without restructuring the entire acquisition and preprocessing chain.