Canada
Asked — Edited
Resolved Resolved by DJ Sures!

True Autonomous Find, Pick Up And Movemovement

Rich mentioned today that it would be great to see a robot autonomously find an object, pick it up and move it. I agree! How the heck do you do that? I've been looking around at old posts but can't find anything to get me started.

I would like to do something like this with the robotic arm I just completed and eventually with my InMoov.

I suppose that a place to start would be to have it find an object (camera), then to navigate to the object, moving it would be the easiest part. Anyway, just blue skying here.

This, of course, would be a great feature for a robot to have to assist a person with limited mobility. Anyone have any thoughts on this.

Edit, Sorry about the title of this post. Why can't I edit that?


ARC Pro

Upgrade to ARC Pro

ARC Pro is your gateway to a community of like-minded robot enthusiasts and professionals, all united by a passion for advanced robot programming.

#33  

I asked this question a couple of days ago and didn't get an answer, so I'll post it again. Is it possible to use the$CameraObjectCenterY and the $CameraObjectCenterX Variables to direct the claw with the related servos to the object once it has been found?

PRO
Synthiam
#34  

You can, but that value changes as the arm moves toward the object. Because the camera will be seeing the object in a different location.

Also, as you have experienced, as you move closer to the object the color gets darker and isn't detected entirely - so you will receive X and Y values that are not for the entire object size.

Instead, disable the camera servo tracking and execute an Auto Position which moves the robot down to where the center of the camera view is and pickup the object. Once you have the object in view, you will know exactly where to bend down and pick it up. It will require a few Auto Position frames to bend the arm down toward the object, but you will know where it is because it was in the center of the camera view.

#35  

I am going to mark this as resolved. I don't have it working exactly as I had first envisioned it but with a little tweaking, I think I will be able to improve it. Earlier in the thread @DJ you say that a ControlCommand could be made so that the camera grid lines could be set, I would find that very useful.

Thanks for everyone's input.

#36  

I searched the forum and came up with this post. I would like to possibly expand on the idea and request any ideas or help.

  1. my robot has head pan/ tilt with camera mounted in eye. Do I use servo relative tracking or not.
  2. I would like the robot to pan the room until it finds its red ball. I would like the robot to move towards the red ball with a slight bias to the left drive track.
  3. arm extend down in front of left drive track and grab object.

I can do the extend arm part down and grab part fine. Where I believe I require assistance will be with commands for finding "red ball " and moving towards it a specific distance. Thanks for any ideas/help

#37  

I am interested in the same thing. I can track an object with the pan tilt, or with the robot itself, but as the robot gets closer, I need to change the camera (tilt specifically since once the pan is centered I want to turn the robot body not hte camera unless I need to get around an obstacle, which is a whole different challenge) to keep the object in view, and coordinating the activities has been a challenge (not that I have put a huge amount of time into it, but when I did I found myself quickly moving onto easier things....).

Alan

#38  

@kamaroman68

I don't want to hijack your question, so let me describe what I think we are both trying to do, and you can tell me if I am off base.

Let's say the robot is stationary but scanning the room with the pan/tilt camera. It sees its object of desire (red ball, fluffy mouse, etc..) at some distance, to the left side of hte room. The robot centers the camera on the object, then the robot starts turning left as the camera turns right keeping the object centered until the camera and robot are both facing forward with the object dead ahead.

Then the robot starts to move forward towards the object, with the camera tilting down to keep the object centered. When the tilt reaches the point that indicates the object is withing the claw, the robot stops moving forward and picks up the object.

For yours, that pan/tilt point will be slightly off center to the left because your claw is over the left tread. For mine it will be dead center because my robot arm is on the right, but articulated enough that the claw centers in front of the robot.

Am I close?

Alan

#39  

Absolutely right on. It doesn't necessarily have to be the left arm , could be the right. That's a moot point though cause I don't want to add any unnecessary complexity to the already complex task. Someday it will evolve into which side of the robot the object is closer to.

#40  

Btw when you figure it out, please pass on your findings