Possibility of two methods of controlling a robot arm

I'm considering starting a project to build a robot arm.

At the moment there are two ways that I'm considering being able to control the arm with. First is to have the arm follow a laser pointer (in such a way that one could almost point the laser at something to be picked up and the arm would move to it).

My other consideration (which is probably the more realistic of the two) is some sort of rig attached to my arm that can measure the angle of my elbow and orientation of my arm. My fingers would be used to control different functions of the arm, and the arm would basically mimic my motions.

Which of these is more realistically achievable and how would I start to go about it?

Thanks
Ben

(Despite my low post count, this is not my first Arduino project.)

Doesn't the laser idea involve some sort of computer vision library (opencv comes to mind) ?

mromani:
Doesn’t the laser idea involve some sort of computer vision library (opencv comes to mind) ?

I wouldn’t know, never tried it. I was thinking a small camera or light sensor coupled with ultrasonic distance sensor.

First is to have the arm follow a laser pointer (in such a way that one could almost point the laser at something to be picked up and the arm would move to it).

I was thinking a small camera or light sensor coupled with ultrasonic distance sensor.

I see this as a computer vision project. And a challenging one, IMHO. I don't see how a light sensor could give you direction information...

Your other idea seems more realistic to me. And quite "sci-fi"-looking... ben the elbow and see the robotic arm replicate your move! :slight_smile:

DarkBen:
I'm considering starting a project to build a robot arm.

At the moment there are two ways that I'm considering being able to control the arm with. First is to have the arm follow a laser pointer (in such a way that one could almost point the laser at something to be picked up and the arm would move to it).

My other consideration (which is probably the more realistic of the two) is some sort of rig attached to my arm that can measure the angle of my elbow and orientation of my arm. My fingers would be used to control different functions of the arm, and the arm would basically mimic my motions.

Which of these is more realistically achievable and how would I start to go about it?

Thanks
Ben

(Despite my low post count, this is not my first Arduino project.)

Answer this honestly:

What is your level of mathematical skills and knowledge?

Do the terms "forward kinematics", "inverse/reverse kinematics", and "arm solution" mean anything to you?

If you google the above - does any of it "scare" you?

Believe me - depending on your skill level and/or stubbornness, the second method will likely be infinitely easier to implement than the first.

The first will require not only implementing computer/machine vision algorithms to determine "where" the spot is (indeed, whether it is in the arm's "work envelope" at all), but will also require the knowledge and implementation of forward and reverse kinematic "arm solutions" (especially the latter), of which for most arms, there may be more than one possible solution (thus, being able to determine the most efficient solution is also necessary).

The second, while still complex, is far easier to implement relative to the first...

cr0sh:

DarkBen:
I'm considering starting a project to build a robot arm.

At the moment there are two ways that I'm considering being able to control the arm with. First is to have the arm follow a laser pointer (in such a way that one could almost point the laser at something to be picked up and the arm would move to it).

My other consideration (which is probably the more realistic of the two) is some sort of rig attached to my arm that can measure the angle of my elbow and orientation of my arm. My fingers would be used to control different functions of the arm, and the arm would basically mimic my motions.

Which of these is more realistically achievable and how would I start to go about it?

Thanks
Ben

(Despite my low post count, this is not my first Arduino project.)

Answer this honestly:

What is your level of mathematical skills and knowledge?

Do the terms "forward kinematics", "inverse/reverse kinematics", and "arm solution" mean anything to you?

If you google the above - does any of it "scare" you?

Believe me - depending on your skill level and/or stubbornness, the second method will likely be infinitely easier to implement than the first.

The first will require not only implementing computer/machine vision algorithms to determine "where" the spot is (indeed, whether it is in the arm's "work envelope" at all), but will also require the knowledge and implementation of forward and reverse kinematic "arm solutions" (especially the latter), of which for most arms, there may be more than one possible solution (thus, being able to determine the most efficient solution is also necessary).

The second, while still complex, is far easier to implement relative to the first...

I'm currently working through a maths and further maths a-level early, and have come across inverse kinematics in game programming that I've done previously. I have, however, never implemented it in the real world, which as you say is far more difficult.

Looking at the second suggestion, I'm assuming a setup of 3 gyros (upper arm, lower arm, hand) and a potentiometer (elbow) would be a good starting place?

Looking at the second suggestion, I’m assuming a setup of 3 gyros (upper arm, lower arm, hand) and a potentiometer (elbow) would be a good starting place?

You need to do your research so you can answer your own questions as to what difficulty of a project you can handle. Youtube has a lot of videos of various types of arms and google as well as robotic sites are your friends. The forum responds better to specific questions rather than broad project concepts.

I saw a similar project on here once... can't seem to find it now. Basically it was a robotic arm that shadowed a human arm like you describe. They used a strip (I forget the name) that changes resistance based on how much it is bent.

If you can get those, the project seems simple.

  1. Make a glove or arm glove with these bendy-resistance-thing at each joint.
  2. Figure out what the resistance is when the arm is at various positions.
  3. Send this as a signal to a servo on your robotic arm.