Monday, December 10, 2007

Working with a machine-vision-system integrator




A discussion with John Nagle, Nagle Research

VSD: What sort of systems or services does Nagle Research provide?
Nagle: While many companies are involved with 2-D machine vision...

VSD: What sort of systems or services does Nagle Research provide?

Nagle: While many companies are involved with 2-D machine vision, we have decided to devote ourselves almost exclusively to 3-D machine-vision development. We think this has allowed us to build an expertise and body of experience with 3-D technology that is second to none in the industry. Nagle Research is a SICK (Minneapolis, MN, USA; www.sick.com) vision integrator. We are entirely brand loyal to SICK|IVP vision products, most often using the Ranger series of cameras. We started the company in June 2003.

My business partner, Andy Thyssen, is also a software engineer, and he is the chief technology officer of the company. Our first project and what is generally regarded as our “claim to fame” is the Aurora automated high-speed railroad track-inspection system. In our past lives, we spent more than a decade making video games for Nintendo, Playstation, and others. That experience has been immeasurably valuable in keeping the performance of our systems on the leading edge.

VSD: What sort of questions should be asked when considering the services of a machine-vision system integrator?

Nagle: Suffice it to say, it is impossible to engineer a solution without a thorough understanding of the problem. But to truly know the problem, you have to get past the superficial goals and get to the meat of the challenges that any solution will have to face. There can be many gremlins hiding just below the surface of what seems like an “easy” project.

For example, a candy factory needs a vision system that can count jellybeans moving down a conveyor belt. That’s the superficial goal. Obviously this is a very straightforward task for a vision system to accomplish. To be able to intelligently plan a solution, however, requires much more information. What should the system do with the count? Does it need to trigger a signal when a certain count is reached? Does it need to communicate with a PLC? What if a jellybean is malformed, does it count? And how does the system determine what is a “good” jellybean? How fast are the jellybeans moving? Do we need to count the individual colors? What are the space considerations for the vision system? This is very “goal-oriented” fact-finding research, and so this sort of questionand- answer probing can be done even by nontechnical people. Once all of the major and minor goals are known, then it is straightforward to isolate the specific disciplines and skill sets required to make the project a success.

VSD: So what can be done in-house by a company?

Nagle: Evaluating one’s own capabilities or the capabilities of company staff members is the next step in deciding how much, if any, of the project can be done in-house. If the project can be accomplished with off-the-shelf vision solutions or relatively simple smart cameras and only minor external connectivity is required, then the chances of being able to do this are good. If complicated record keeping, PLC connectivity, or advanced image-processing algorithms are required, it is almost certain that a third-party vision-system integrator with software-development capability will be necessary.

Different skills are required to integrate vision systems of varying degrees of complexity. Even a good list of necessary skills cannot be comprehensive and should be treated only as a guideline or rule of thumb.

VSD: What are the implications of working with a 2-D vs. 3-D system?

Nagle: Most people who have experience with vision are likely to have worked only with 2-D systems. Far less common are those who have worked with 3-D. Twodimensional systems deal with color and contrast; three-dimensional systems deal with materials and geometry. The share a lot of the same concepts, but, in general, 3- D is more difficult to implement. This is because now we are not just dealing with a light and a camera, we have to deal with laser light frequency; beam spread angle and thickness; laser power requirements based on material properties and stand-off distance; ranging algorithms; angular orientation of camera/subject/laser to obtain required accuracy; safety issues related to working with the laser; and coping with less than ideal material properties.

Integrating a SICK-IVC-3D or a Ruler product can mitigate some of these issues, in that the camera lens, laser type, and orientation are fixed at the factory (which also limits to some degree their applicability.) Ranging algorithms and material properties must still be dealt with in any case.

VSD: Is a vision software-development kit difficult to learn?

Nagle: In any nonsmart camera system, the integrator must have a thorough knowledge of the vision hardware SDK (software development kit), including the SDK for the frame grabber if applicable. Speaking in general terms, these are highly nontrivial software toolkits and a deep-rooted foundation in C++ and software development is essential. Even with the requisite C++ experience, the SDK itself—like any complex system—has a learning curve. If the project can absorb the extra time and cost associated with becoming proficient with the SDK, then it is very feasible.

VSD: What are the benefits of third-party integration?

Nagle: Any competent vision integrator should be able to integrate vision in simple to moderately complex projects. Many vision integrators do not have great depth in software and electrical engineering, and so for many the more complicated vision projects are beyond them. When choosing vision integrators do not have great depth in software and electrical engineering, and so for many the more complicated vision projects are beyond them. When choosing an integrator, it becomes very important to match the skills they bring to the table with the skills that will be required. Dealing with an integrator can save an enormous amount of time and development effort. In many cases, experienced integrators have saved companies from spending hundreds of thousands of dollars on inappropriate equipment and software.

For example, we were asked by a railroad-equipment manufacturer to provide consultation as to what camera would be required for a 2-D high-speed-railroad-inspection system. The company had already spent many thousands of dollars on image-processing software to locate defects in crossties using 2-D imaging techniques. The problem was that their approach had not accounted for surface stains, sealant, and debris confusing the analysis software. We ultimately concluded that a 3-D solution was more appropriate for this application and developed a Ranger-based solution that handles these material properties nicely.

VSD: When working with a system integrator, what are you paying for?

Nagle: Speaking only for Nagle Research, in most cases vision projects are quoted on a flat fee basis. Usually the process is phone conference to discuss the challenges and goals; if possible, samples are sent for testing and proof-of-concept; and if the project proves solvable, we submit a proposal.

With projects whose goals are a moving target--for example, additional defects to detect or additional accuracy requiring more cameras--there will most likely be proposed a flat fee for a defined scope of work and a standard hourly fee for work that is out of scope. The proposal will include time for travel, but the travel expenses are billed separately.

For our fee, the client receives our professional consultation, software and electrical engineering resources, and, in the end, a solution that meets their requirements. In most cases, unless specifically agreed to, the client does not get source code to the final solution. In some arrangements we will relinquish source code for the application, for example, their user interface and project-specific algorithms. Our proprietary Javelin Vision Engine, however, remains closed source. Javelin is the 3-D technology infrastructure to help us in developing more robust vision systems

VSD: What are the fundamental questions to ask before calling an integrator?

Nagle: The basic questions that need to be answered before an integrator is called are • Is the project outside the scope of in-house capabilities? • Is the company open to using third-party integrators? • What is the price of failure or delays arising from lack of internal experience? • Is there a budget for vision that includes third-party integration? • Is there likelihood that given a workable solution within budget, the project would proceed?

If the answer to all of these is “yes,” then most any integrator would be willing to take the challenge. A competent vision integrator is the key to successfully deploying a machine-vision system. Whether or not that expertise comes from within or from a third party is a decision the client ultimately will have to make. The most important thing to keep in mind is that in any event, a broad skill set and expertise in a variety of disparate disciplines will be required to complete the project on time and on budget.

No comments: