PDA

View Full Version : [Project] IK Video of a Planar 2R AX-12 Arm



MikeG
12-21-2009, 05:24 PM
I have wanted to get my inverse kinematics on for some time. So, I went ahead and built a simple 2R IK engine in C#. I know managed code…but I like .NET. Anyway, here’s the video.


http://www.youtube.com/watch?v=JvZmRHVpQZk



My PC is sending raw instruction packets to a Parallax Propeller or you can substitute an USB2Dynamixel. The Prop forwards the commands over to the AX-12 network.

The C# project contains several classes. The main classes are DenavitHartenberg and Planar2R. As the name suggests I’m using DH parameters. The IK number crunching executes through a service. The service takes a DH table, start point, end point, and an accuracy parameter. The service sends back a solution set which is parsed and filtered by the client, converted to the old Dynamixel SyncWrite command, and sent on through the virtual serial port.

The lines are a little shaky but it works better than I thought it would. By the way, I’m using a cheapo Papermate 0.7m mechanical pencil. It fits nice and snug (with a little force) in the AX-12 bracket.

Eventually, I'll have the source on www.agaverobotics.com

Alex
12-22-2009, 08:17 AM
wow Mike! Mighty impressive work:D I'd love to take a look at that source!

[waiting for the managed code haters to post;)]

MikeG
12-23-2009, 07:35 AM
Thanks for the kind words...

I'll post the C# solution once I clean up the client source which contains tons of unit test code and sparse comments.

This project was challenging in a way that I did not expected. Getting the math to work was simply an exercise in details. Getting the AX-12s to draw a relatively straight line was tough until I realized what was happening. It all seems elementary now :veryhappy:

Below are the items that I had to consider.


Converting between angles and dynamixel - significant figures
Motor backlash and overshoots
Gearing
Speed relationship between motors

Drawing a line really highlights any imperfections.

Alex
12-23-2009, 09:12 AM
Drawing a line really highlights any imperfections.I can imagine so!

The closest thing I ever came to some IK work was when I did some work with Matt a few years back on a robot arm:

YouTube- Visual Studio Controlled Robotic Arm

This was made prior to the "bioloid servo takeover in robotics" though so the arm itself was fairly primitive using old school servos. Still, the app was pretty fun to make:)

MikeG
12-24-2009, 11:10 PM
Alex, that is very nice work.
I just had to try Hello World...


http://www.youtube.com/v/07AI2uXGZ-k&hl=en_US&fs=1

jes1510
12-25-2009, 05:24 PM
Nice work! It looks like you are just a Dremel Flex-Shaft away from a CNC engraver.

sam
12-25-2009, 07:57 PM
very ncie work! impressive.

Now, try to make it write with a nice caligraphy without lifting the pencil! :happy:

Good job,

Sam

WRT123
03-14-2013, 09:53 PM
Hi,
I noticed this is a tad late, and this thread is probably dead.
But we've been assigned a task very similar to your project.
Do you have any pieces of advice when going about trying to code this? We're very stuck.
Much appreciated

MikeG
03-15-2013, 09:30 AM
Do you have any pieces of advice when going about trying to code this?

You can start by reading the openly published source code from the link on post #1? Who's we? Is this a school project?