Reading Between the Lines


Reading Between the Lines

Designing a complex machine vision system can be a grueling task. Defining the system objectives, designing an architecture, estimating performance requirements, working out bottlenecks, identifying components and solving interface issues are just a few of the steps required before even starting to tackle system integration.

One of the challenges in creating your own design is that manufacturer datasheets only tell a part of the story. A case in point would be the frame rate specifications when it comes to a high-speed application. A datasheet might publish a camera’s frame rate but might not specify actual frame loss in a specific, practical system as that would depend on too many parameters outside the camera. This is where the experience of a system designer comes into play. Other specifications on the datasheet, or lack thereof, might provide some clues into the true capabilities of the product. With camera frame rates for example, an onboard memory buffer coupled with adaptive dataflow management logic in a high-speed FPGA guarantees the consistent delivery of high frame rates with no lost frames in any environment, living up to the promises made on the product datasheet. Without such memory and its associated logic, the camera would claim a high frame rate on a datasheet but up to half of these frames could be lost in the real-life situation.

You’ve heard me use car analogies before – let me add one more. Car manufacturers find it very enticing to highlight horsepower ratings for their vehicles. Engine horsepower is much easier to sell in the showroom than discussing the initial bite, linearity or fade resistance of the braking system. Pushed to extreme, this leads to a car where the engine is much too powerful for the chassis and braking capabilities, but it looks great in a brochure at the dealership. By omitting the less glamorous braking system feature and highlighting the powerful engine, the vehicle can be sold at a high price. Imagine the user experience of driving that vehicle and how limited the vehicle really is.

Now back to cameras. A high frame rate specification looks great on a datasheet, but if the camera design does not allow you function without frame loss, then it does not represent the real-life capabilities of the product and might seriously cripple your application. While including memory and a powerful FPGA in the camera may add cost to a product, they will ensure that the camera performs reliably and consistently in the most demanding applications.