PCT Robot arm, only control loops, no inverse kinematics

EDIT: new version of the arm: https://www.youtube.com/watch?v=wQ6FGeSjN9c


I've built a robot arm (using OWI 535, 4 deg. of freedom) that uses a hierarchy of control loops for positioning - there is no inverse kinematics. There are three levels of control. The first level controls the speed of the motors using potentiometers as sensors. The second levels loops control the angles of each joint. Loops on the third level coordinate second level loops in complex movements such as extending reach while maintaining hand pitch.

It's based on PCT (perceptual control theory) and a fascinating virtual model of a human arm (http://www.billpct.org/ after dl, look for Coordination Demo)

I'ts primary purpose is modeling the human nervous system, and since there is no inverse kinematics, just simple control loops, it might be useful elsewhere. The control loops are currently simulated on the computer. An arduino collects sensor data and sends it to the computer, and receives motor speed commands and sends them to motors. It might also be possible to do all the calculations on the arduino itself (but then I'd need more analog inputs). The software is written in C#.

So.. it's working. I'm planing a more complex arm. I'd be happy to answer any questions.

Hi there amatic,

I'm trying to control the same OWI-535 to get it to grab an object through some instructions (not sure if voltages of time spent in certain direction) using and arduino or even through MATLAB.

So it would be really helpfull to get more directions on your project.

Sorry if my explanation was too poor.

Best regards

Hi Glor

Current functions of the arm include only positioning on a certain point in 3D space. No object grabbing yet. For object grabbing, there should be some kind of visual feedback - "object-arm distance control loop".

What i did is similar to this project on instructables: http://www.instructables.com/id/Intro-and-what-youll-need/

Then, on top of that, there is another layer of control loops that coordinates lower levels, like in the link I posted in the first post.

best amatic

Here is different robot arm based on the same principles. A Teensy 3.1 board is used, but I guess an Arduino Due would be simmilar: https://www.youtube.com/watch?v=wQ6FGeSjN9c