Shop OBEX P1 Docs P2 Docs Learn Events
Making a 5-dof robotic arm draw a circle — Parallax Forums

Making a 5-dof robotic arm draw a circle

kalimeraskalimeras Posts: 1
edited 2008-01-17 17:39 in Robotics
· Hello everyone. I've been making some plans for creating a robot that will draw some specific shapes like a circle, rectangle, polygon etc. Could anyone offer me an easy way to program the robot and define the coordinates that the end effector of my robotic arm should follow, in order to get the shapes drawn? I mean, I will define the coordinates that the end effector of the robot should follow either in a text file or in an excel file and then transfer these coordinates to that inverse kinematic solver or anything like that. than the robot will follow these coordinates and draw the shapes. I need your offers and advices to get this job done. Thank you all.

Comments

  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2008-01-17 17:39
    For any given set of joint positions, you should be able to calculate the x, y, and z position of the pen tip, as well as the pen angle. The formulae to use will depend entirely on the construction of your arm and will involve numerous conversions from polar to rectangular coordinates. When you're done, you should have a closed-form set of five equations: one for each of x, y, z, and two for pen angle as functions of r1, r2, r3, r4, and r5, which are the joint positions.

    Next, you need to come up with parametric equations for your curves. They will be in the form (x, y, z, px, py) = f(t). For example, for a circle on a flat surface at height h, of radius r, and center on the origin, drawn with the pen straight up and down, the formulae would be:

    ····x(t) = r cos(t)
    ····y(t) = r sin(t)
    ····z(t) = h
    ····px(t) = 90 degrees
    ····py(t) = 90 degrees

    Now comes the hard part. You've got to solve your first set of equations for r1 ... r5 from the x, y, z, and pen-angle values you established in the second set, as a function of time t. You may or may not be able to come up with a closed-form solution. If not, numerical techniques (i.e. successive approximations) will have to be used, and if you have an inverse kinematic solver at hand, it should be able to do the job for you.

    For complex motions or positioning, some robot arms come with joint sensors and a "teach mode" that allows one to position the end effector manually and have the joint positions read back in. Your situation sounds more like a school project in analytic geometry! I would recommend that you scour your library or bookstore for a good text to help you with the math involved. Perhaps one of the other forum contributors can recommend one.

    Good luck!
    -Phil

    Post Edited (Phil Pilgrim (PhiPi)) : 1/17/2008 5:44:07 PM GMT
Sign In or Register to comment.