The aim of this project is basically to interface the computer vision with the present day robotics. Butler bot locates object by finding its coordinates with the help of camera and then place it at position specified.
It can be used in industry production to assemble product components or product itself at a specified location.
-
Mechanical
-
2 standard wheel
- 1 castor wheel
- 2 DC Motors
- Steel Foil and Servo Motor (to pick object)
-
Electronics
- 1 Uno Arduino
- 5V Voltage Regulator (to give power to Arduino and servo motor)
- Motor Driver L298
- Bluetooth
- Matlab
- Arduino IDE
-
We detect object and bot on the basis of the color of dots made on them and find their coordinates w.r.t. the corner of rectangle made by four dots on arena. Bot reaches object by moving on straight path between them by using PID (Proportional-Integral-Derivative) and then it align itself to the object so that it can be lifted and then it identifies the number printed on it with the camera placed in the front of bot and then places it on its designated place.
- Coordinate System Transformation: We know coordinate of any point wrt image coordinate system. Now, we have to transform to world coordinate system. Let A, B, C and D are four points which defines our coordinate system and we know its coordinate wrt image coordinate system. Using equation of line AB, BC, CD and AD we can find out E and F and using point P, E and F we can find out P1 and P2. Let P1 and P2 intersect line AB and BC in the ratio of m1:n1 and m2:n2. Now, we know length of AB and BC in world coordinate system (say ABw and BCw). Also assume BP1 and BP2 in world coordinate system BP1w and BP2w. So, BP1w = (m1÷(m1+n1))xABw BP2w = (m2÷(m2+n2))xBCw
- Number Recognition: In Matlab every image is processed as a matrix. First Matlab is made to learn all the numbers from 0 to 9. Then the image which has to be tested is captured by the camera on the bot and is then converted to a matrix by Matlab. This matrix is multiplied by the all the matrices of numbers which have been pre stored by Matlab and all the elements of the matrix are then added. The pre stored matrix which gives the highest sum is the number captured initially.
- Color Detection and differentiation: To differentiate between different colors the RGB values are used.
- Vectors: To get the required trajectory of the bot, the rotation angle and directions, we used vectors for simplicity.
Object detection method can be generalized rather than just by using pattern. The model of bot can be made more stable.