
tom.caine
USA
Asked
— Edited

Hi All,
Is there a step-by-step tutorial on how to get my robot to respond to color? I've seen the tutorials, but can't get it to work. I want to have Roli follow a red ball as was demonstrated with the AR Drone by DJ Sures.
I added the Camera Controls to the project. Selected (red) which is the default color. Under 'Tracking Types' I've selected Color.
I've attached a screen shot of the configuration window. Are my settings correct?
Tom
Good news though, you can be the first to know - the iOS app is ready and should be in the store within the next week
I rebooted, reconnected, checked all of the settings and checked again and again. Nothing changed from last night to today. I adjusted the color brightness and the grid lines. No response. I can see the "blue box" around the red ball. So yes, the camera is seeing the object. It just won't perform the action.
I checked to see if the actions in the Auto Position window worked and they were fine.
Just to confirm, I have the following settings established:
Servo Tracking - off
Track by Relative Position - off
Board Index (X & Y) - 0
Movement Tracking - enabled
Allow Movement Forward - enabled
Allow Left/Right Movement - enabled
All of these settings were saved.
In the main Camera window I have the following selected:
Tracking - Color and Motion
Color - red
Min Object Size - very small, although I have changed this to see if this would have an effect, no response.
Object Brightness - various settings, no response.
Grid - various settings, for the most part I have the grid divided into 9 equally sized squares. I've moved the ball all over the grid - no response - but as mentioned, the camera sees the ball and is positioning a blue square over it. I have the brightness tuned to the point where there is only 1 square. I see that when it is too bright, there are multiple squares and this triggered false positives as experienced last night.
All I want is for Roli to follow the red ball as I move it around. Help! What am I doing wrong?
MOTION is not what you're asking to track. From what I understand, you would like Roli to track a red ball. The tracking of a color is COLOR tracking, not MOTION tracking.
MOTION tracking is observing and tracking movement in the camera. It is not COLOR. To track a color, only select COLOR. Do not select other tracking methods.
Also, you would never want to track MOTION with Movement Enabled. This is for obvious reasons. The robot would move, therefore the entire image would have been tracked as a giant "motion".
Motion tracks changes within the image. Motion is an object moving. Color is a color, such as Red, Green or Blue.
And as Richard asked, can you move the robot using the movement panels? Meaning, does your Roli robot move? Because it sounds as if you did not connect to the robot and was only connected to the Camera.
Remember, the Camera and the Robot are two different things
Here a link to the tutorial that demonstrates how to connect to the robot: http://www.ez-robot.com/Tutorials/Lesson/14
To answer your question, yes I can drive him manually. I can use the buttons in the Movement Panel. Works like a charm. Never a problem there.
I now have the same problem as last night. Roli jerks around but does not follow the red ball as I move it. I adjusted the grid lines to the default setting and tried moving them to create a 3 x 3 square grid. I can barely get him to turn - maybe a few degrees but I certainly can't get him to follow the ball as I move it around.
I have the Object Brightness set all the way to Dim. If I raise it up, Roli jerks even more. The other problem is that even on the Dim setting, Roli sees furniture (mahogany colored) and treats this as Red. Only with a completely white background does the jerking stop.
Regarding the lighting, I tried a bright sunny area in my office (sun room) this morning. I figured the extra light would make it work better. As you saw in my last post, it didn't respond at all. Zero - it's as if Roli was turned off. There was no movement whatsoever.
So am I expecting too much? I'm a newbie with this. I'm going to show this at a conference next week and I thought this would be a great way to show the product. If I could have Roli follow the red ball in my booth, it would be a great attention getter. Obviously if I'm able to figure out the settings in my office, they will be certainly be different in the conference hall and I won't have the luxury of time to figure things out.
BTW - I'm not totally clueless with this! I've also got Six and JD, and have created two projects that work really well with Six (voice commands and basic movements), and have the Mobile interface on two Droid devices controlling everything. So I think I'll do OK at the conference, but the color recognition would be a super function if I could get it working the way I want.
Thanks in advance.
Tom
This afternoon, I was able to get Roli to at least recognize the red ball. I mentioned in my last post that he jerked quite a bit but I was unable to get him to move. Now he doesn't respond at all. He's in the exact same spot - the lighting is the same. And yes, he responds to the Motion Panel commands. All of the example projects work perfectly well.
I have restarted my Windows (8.1) computer, reconnected to Roli, restarted ARC, etc.
I have attached a screen shot of the Camera Config window.
Tom
Roli's head should move side to side and up and down as you move the object around... He should follow it...
I promise you this works, you just have to get the settings correct...
@Tom, I assure you it does work
1) you obviously can't track a color if the objects in the background are the same color
2) did you read this page? http://www.ez-robot.com/Tutorials/Help.aspx?id=80 It explains how to hold the object in front of the robot and adjust the values until ONLY the object that you wish for it to track is detected. Here, i'll quote it for you..
3) Obviously you do not want the size dial to be as small as possible, because the object you are tracking is larger than a single pixel - I hope. Perhaps you can tell us, or show us a picture of what it is that you are tracking?
One sec, i'll make a tutorial for you
The biggest challenge is that ppl believe it to be more difficult than it really is and over think it. He will have an eureka moment
My tutorial covers everything anyone would need for color movement tracking
By now I'm sure you're wondering what's going on here. I can assure you that all of the settings you mentioned in the Tutorial sent yesterday were the same. In fact, I double checked everything this morning and it did not work at all. I then triple checked everything. No response. I was about to post the results.
BTW - I'm using a red pool table ball. It's about 2.5 " in diameter.
Finally, I decided to load the Roli example project, made the necessary changes to the Camera controls (as mentioned in numerous posts above) and Roli worked!
Then I went back to my original project and it worked! But the original project didn't work 5 minutes earlier. You get the point. I'm trying to eliminate variables to figure out where the problem is. I'm going back and forth between projects and don't see any differences in the settings. Obviously there's a setting I missed somewhere but I can't figure out what the heck it could possibly have been.
OK, so now Roli moves forward. He's not so smooth moving left or right (jerky). I've been changing some of the settings (grid lines, brightness, Motion Delay - now at 100 - but have moved it up to 400.) I have also changed speeds in the H Bridge PWM Movement Panel. So any advice here would be appreciated. Perhaps I'm expecting too much for this type of robot? I saw how smoothly the AR Drone responded in your video. I certainly understand that Roli can't move up and down.
I sure would like to know what the problem is/was. I'm not confident this will hold. Any other suggestions. Thanks for all of your help.
Tom
TC
You should check your existing project for scripts and objects that might be issuing contradictory commands. For instance, i put a ping sensor with a ping radar control on the front of my Roli. If I were to get too close to it while trying to position the ball for tracking, my Roli would stop, move backwards, and turn with no relation to the direction the tracking was trying to move it. As the two control contradicted, it might jerk back and forth, or just stop altogether.
I was going to make a simple project this afternoon with just a Movement Panel and camera this afternoon to see if I could help, but it seems you got to that point already with some success, so now it is just a matter of tweaking the parameters.
My only other suggestion is that you could change from color tracking to multi-color tracking which allows you can fine tune the color being detected to the actual object you are using.
Alan
Thanks for the info. PWM speed and motion delay are key. I also discovered the issues with carpeting vs. floor.
Tom