Let's Make Robots!

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

The three motor have the same speed, or the controller calculates the invers or forward kinematics for speeds?

Drakuni's picture

go hansenberg ;D but nice made:)

mogul's picture

Perhaps geared steppers will work better for you than servos with encoders. Or do you plan to bypass the servo circuit completely while you are at it?

For $3.5 each, depending on your ebay luck, you can get a geared stepper including driver board. At least I'm considering trying to build an other delta robot with some of those.

christiankjaer's picture


I didn't know they were so cheap! :O I will definitely get some of those. My only concern is if they have enough torque. that 0,09° resolution sounds nice, especially when you have a very rigid contruction.

mogul's picture

Or even easier and cheaper, go for one with a driver board included, otherwise you will have to build them yourselves.


And with 64 times reduction there must be some torque.

mogul's picture

I like it's smooth and steady movements, do you use some fancy acceleration algorithms or is the mechanical design simply stiff enough by it selves?

Also, have you implemented the inverse kinematics in the Arduino or in your Qt application? (it took me quite some time to get that part right when making this one: http://letsmakerobots.com/node/27921)


christiankjaer's picture

The mechanical design is very stiff. The only thing is, that there is a little play in the servos, but it isn't a problem when you apply a load.

I have implemented the algorithms in C++ in the Qt app, i then send the required pulsewidths to the arduino over serial port. The only problem is that i don't get quite the speed i wanted to from the arduino, i suspect that the serial stuff is a little slow.

I have rewritten the BASIC code from here


The plan is to have som kind of image recognition, but i am not quite skilled enough to do the programming.

mogul's picture

You could move the inverse kinematic algorithm to the Arduino side. You have plenty processing power there, and that way you could lighten the load on the serial interface. Instead of sending updates for every small step on the way you could instead simply say "goto(x,y,z,speed)" and then the Arduino will do the work behind the scene.

christiankjaer's picture

Or i could just try to turn up the baud rate. Totally forgot about that ;)

NilsB's picture

The simplicity here is ingenious.

A nice finding are these igubal axial angle joints you use there. Applicable, available and affordable.  

Thanks for sharing.