I am working on a factory automation project, and would like to see any feasibility of object tracking on a conveyor. Currently, a worker manually picks up a bolt and screw it on the hole of an object which is flowing on a conveyor. The speed of conveyor is approximately 100 mm/s. (speed can change during operation) To automate the task using robot arm (UR, Yaskawa.. etc), first it needs to detect the object is, find the hole, and then screw the bolt along the moving object.
For each task, I was thinking to use following methods:
- Template Matching for detection of object.
- Hough Circle for finding hole. Contour might be better if houghcircle is too slow for real time tracking
- For tracking, use kalman filter based on the hole location calculated from 2.
The problem is, I think time for doing each image process will be too slow on a real-time tracking, and I am not sure the finding the center of a hole will be accurate enough for screwing. Maybe I should just find the hole once and track the initial coordinate based on the speed of conveyor. The speed of conveyor will be tracked by two ways, vision and encoder. (not decided yet)
What would be a better option to deal with this problem? Any advice is appreciated.