Machine Vision, Software, and Robotic Arms


Implement machine vision into an existing automated robotic arm system to allow for flexible pick-and-place as well as error handling. A work cell with a simple robotic arm and a palletized transfer system was the work environment in which to demonstrate machine vision capabilities using Cognex vision. 


This project required programming the robotic arm in a proprietary variant of C, while the Cognex Vision software was written in C++. The vision system would look to locate distinct circular or rectangular shapes that it was trained for. Once the vision system was calibrated properly and correctly identified shapes of parts, it was fairly straightforward to assign and orient the origin of a shape and send those locations to the robotic arm for picking.


The first video demonstrates picking out distinct parts by their correct orientation, even during a disturbance of the part’s location and orientation. This was because the imaging camera would update continuously until robot picking. The robot still successfully picks the correct parts without issue. In the second video, the parts are placed, and even when, due to a slight inaccuracy in locating where to pick a part, error handling ensures the part is picked up, instead of just attempting a simple blind pick routine which would not have resulted in success.

All media used with permission from parent company