
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
@Tom... Do you want to track colour? If so you need to provide the x and y servo info (in the middle of your picture above). You need to specifiy the x axis servo port, the min an max values for it (usually 1 - 180) and then the same for the y axis servos (these are the servos in JD's or Roli's neck/head)... Your camera will have to be in a "pan and tilt" configuration like as mentioned JD's head or Roli's head (which I think you have)...
**** Note**** Also your board index should be 0 on both servos above
There is a video tutorial for color tracking from the Learn Section under ARC Manual. Have you seen this?
I believe the @tom is asking for the Roli to follow a ball by moving. The AR Drone is a flying drone robot and should not be used as a reference for the Roli robot, as the roli robot does not fly and therefore the settings recommended in that video cannot apply to Roli. I do believe I know what you're asking
.
FYI, the Question Mark (next to the X) on all controls brings you to instructions on how to use a control. When you load ARC, there is a window that tells you how to use the ? question mark buttons on controls. In your case, press the ? on the Camera Control.
Here is some feedback to your excellent screenshare. Thank you for that! Makes it much easier to help
The board index should be set to 0. You only have 1 robot, therefore only 1 ezb. You should be using the first connection in the connection control, if you followed the tutorials - so 0 is your board index. Did you find information about changing the board index somewhere? Please let me know so I can fix where it is referenced.
Servo tracking should be disabled. You are asking to move the robot, not a servo. There is a blue question mark beside the servo checkbox that explains what it does. Hover over blue question marks to read what an option does. Uncheck the servo Tracking checkbox
Enable Movement Tracking checkbox should be checked. You are correct by checking it. Hovering over the blue question mark would have told you what that option does. It allows your robot to move when tracking objects, and I believe that is what you're asking the robot to do
Press SAVE on your config window. That's the button on the bottom of the image that you had screen shotted for us
In the main Camera control, select your COLOR, Tracking type as "COLOR". You may need to adjust the brightness of the object under the COLOR tab. You only want the object that you are tracking to be detected, not your skin or anything else. Also make sure you have a nice bright room because computer vision requires that, as stated in the camera control manual. You can find the camera control manual by pressing the ? (question mark) next to the X button on the camera control.
The GRID lines on the camera control will need to be fine tuned for your tracking. If the object is on the RIGHT of the right vertical grid, the robot will turn right. If the object is on the LEFT of the left vertical grid line, the robot will turn left.
Good luck!
Should be easy from here!
Ok, thanks everyone. I have some homework to do. I'll get back to you tonight or tomorrow with the results.
Tom
k! good luck!
We have lots of tutorials on the to-do list.. however, i'm the only one who makes them, and programs, and runs the company - so we're a little under staffed at the moment
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
Well, I had some luck last night. I followed all of the steps listed above - and yes, I'm fully aware of the ? marks and tutorials on this. I got Roli to respond to a red ball. It moved forward - it was jerky but it moved. No matter what I tried, I could not get it to move left or right. I assumed this had something to do with the brightness & grid settings. I decided to wait until today and try different lighting. You mentioned this was really important. I repeated everything using both natural (sunlight from a window) and (office) lighting. I didn't get any response from Roli whatsoever. I re-created that same environment as last night - still no response.
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?
@tom... is your Roli able to manually move left and right using the Movement Panel control? I mean can you drive him manually? Another thing is make sure there is good lighting on the object and the camera grid lines are set to default... If the object is too close and or occupying more than one grid square then it will be difficult for ARC to determine which direction (left or right) to move Roli in....
disable MOTION in the Tracking Modes.
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: https://synthiam.com/Tutorials/Lesson/14