OpenCV Color Tracking Robot Arm

Posted on 01/03/2015 by jsmity
Modified on: 13/09/2018
Project
Press to mark as completed
Introduction
This is an automatic import from our previous community platform. Some things can look imperfect.

If you are the original author, please access your User Control Panel and update it.

I finally finished this OpenCV robo arm. It follows my neon green paper. I use the Romeo All in One microcontroller with the Arduino IDE. This microcontroller cannot take camera input, so I execute the program aws Follows. 1. I use the Logitech Quickcam Pro 9000 Webcam that is attached via usb to my mac. 2. Using OpenCV on my computer I run a program on eclipse that converts the frame to HSV, filters out neon green, then draws a target over the object. I got the source code for the color filter ...


OpenCV Color Tracking Robot Arm

I finally finished this OpenCV robo arm. It follows my neon green paper. I use the Romeo All in One microcontroller with the Arduino IDE. This microcontroller cannot take camera input, so I execute the program aws Follows.

1. I use the Logitech Quickcam Pro 9000 Webcam that is attached via usb to my mac.

2. Using OpenCV on my computer I run a program on eclipse that converts the frame to HSV, filters out neon green, then draws a target over the object. I got the source code for the color filter from this video. https://www.youtube.com/watch?v=bSeFrPrqZ2A .

3. The Eclipse Program sends serial data via usb to my Romeo all in one microcontroller V1

 

Romeo All in One

4. My Arduino Code reads the Serial data that reads l for left, r for right, u for up, d for down, and f for fire.

5. The Robot Arm( https://www.robotshop.com/en/dagu-6-degrees-of-freedom-robotic-arm.html ) adjusts accordingly.

6. As a later add on I added a laser diode that only fires when the arm is locked on ( when the object is int the middle of the cameras view. ) This laser can hit the green paper from up to 10ft away, and the card is about 12'' by 8''.

Largest Challenge:

The hardest part when building this robot was getting the Serial to work. On a mac I originally thought I had to use the extremely complicates stdio.h library, but I came across a command called popen. This is very simple. To send a byte, such as u you need to do very little. popen("echo u > (your own usb serial port)", "r")

I use c++ in eclipse. Getting OPenCV on my computer was also very challenging. I wnated to attach a micro electric airsoft gun and have it shoot red balloons, but my parents won't let me get an airsoft gun.

Flag this post

Thanks for helping to keep our community civil!


Notify staff privately
It's Spam
This post is an advertisement, or vandalism. It is not useful or relevant to the current topic.

You flagged this as spam. Undo flag.Flag Post