Shop OBEX P1 Docs P2 Docs Learn Events
Educational robot arm — Parallax Forums

Educational robot arm

This coming semester, I've volunteered again to teach a robotics course at the local high school. The class of 20 students will be studying CAD and programming, beginning with ActivityBot programming in Spin. I will have 10 students on Tuesdays for an hour and a half, and the alternate ten on Thursdays for the same amount of time.

The course objective this semester is to design and program a robot arm capable of solving the Towers of Hanoi problem. (Thanks, erco, for the idea!) The CAD side will design the mechanical parts in Rhino, to be cut out on the school's laser cutter. The programmers will have to learn how to control the robot and figure out the puzzle algorithm.

I've never built or programmed a robot arm before. In order to stay a step or two ahead of the kids, I needed to do that -- pronto! So I went online and found a laser-cuttable arm design (the uArm) that uses standard servos and is free to duplicate under a Creative Commons license. In order accommodate the cheap 2.7mm meranti doorskin that I wanted to use, my own bearings and bushings, the Activity Board, and my own gripper design, I needed to make a considerable number of mods to the uArm patterns. Here's a short video of the result:

[video]

I like the uArm design, since it incorporates parallelograms that keep the gripper relatively level. That way a lot can be done without needing a wrist motor. It also has the advantage of keeping all three motion servos affixed to the base, so the arm does not have to lift them.

The video demos my first program, and the motions were sketched in totally by trial and error. I need to do a thorough kinematics and reverse-kinematics analysis yet, in order to produce predictable results. I'm thinking of redesigning some of the parts to incorporate protractor elements on the joints. That would make it easier to calibrate in terms of pulse-width vs. arm angle.

Anyway, I'm hoping to get the Towers of Hanoi program operating in time for the first class day. I can then invite a volunteer to try to beat the robot, using a separate of set of spindles and disks.

-Phil
«1

Comments

  • That looks good Phil, but I'd like to see it retrieve whatever that was that it dropped into the cup! :)
  • The uArm is a neat design and is a good choice if you want to avoid inverse kinematics. I think in theory avoiding lifting the weight of the servo is a good idea, but in practice with a good high torque should servo I've never had a problem.
  • Nice video Phil!

    I also like that Vimeo opens with one click! :)
  • John AbshierJohn Abshier Posts: 1,116
    edited 2015-08-24 15:30
    I don't see the video. All I see is a large blank area with [video] in the upper left.

    Edit: I can see the video if I use http instead of https.

    John Abshier
  • ercoerco Posts: 20,257
    edited 2015-08-25 01:17
    Cool beans, PhiPi! Looks awesome. I've built 2 ToH bots, my latest one was a compact unit based on a 99-cent store gripper. I like small bots now, my house is FULL. Small arm is faster and hangs on my wall like a piece of art (?).This was a 1-day slam build, 10 am-10 pm.



    And my original BS2 arm:



  • ercoerco Posts: 20,257
    IMO it's high time for Parallax to sell a robot arm. PhiPi, as long as you're using an Activity board and doing all the legwork, sell your fine design to Parallax!

    Ken, what do you think? Let's get Matt laser cutting arylic or better yet plywood arm parts ASAP!
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2015-08-25 02:08
    Erco, your design is both simple and brilliant! Dang! I wish we still had a dollar store in town. The last one closed more than a year ago.

    BTW, I'd definitely vote for plywood in the form of meranti doorskin. It's cheap! Even from Edensaw, it's only $17 for a 4x8 panel. (Okay, one side is good; the other needs a bit of sanding. And sometimes there is filler in the inner plies that the laser cutter won't touch; but that's rare enough not to discount the advantages.)

    Small, mechanically-critical parts, like the gripper arms and servo splines, are easily laser-cut from Delrin or an equivalent, such as acetal copolymer.

    -Phil
  • ercoerco Posts: 20,257
    I stocked up on those cute little arms, potentially for a class project like yours. I could mail you a couple. Let's see. The arm was made in China, shipped across the Pacific, and sold at retail for 99 cents. Postage to mail it to you would probably be $8-9 minimum. And our USPS is suffering? It's barely worth mailing anything anymore. I don't understand how so many places offer free shipping.
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2015-09-02 16:39
    'Finally finished the Towers of Hanoi demo:

    [video]

    School starts next Tuesday. Am I nervous? As always with a new class! But I think it will be fun. The emphasis this semester will be on "mechanisms": gears, levers, pulleys, etc. The robot arm is just one example of the interaction of a micro with the mechanical world.

    -Phil
  • Phil,
    The video seems to be missing.
    Jim
  • PublisonPublison Posts: 12,366
    edited 2015-09-02 14:00
    Jim,

    Are you logged in under HTTP or HTTPS ?
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2015-09-02 15:07
    Here's the URL for the video, in case it's not visible in my post:

    vimeo.com/138045291

    -Phil
  • "Ding, ding, ding!" - Brilliant!!!

    (over-achiever)
  • ercoerco Posts: 20,257
    edited 2015-09-02 20:50
    Fast, accurate, and fabulous. As Neuman said, "It's the wood that makes it good!"

    Love that gripper-friendly pickup flange on each disk.
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2015-09-02 21:06
    Thanks, erco! I'm using the recursive algo in Spin:
    move(how_many, from_pin, to_pin)
      if how_many == 1
        Just do the move.
      else
        move(how_many - 1, from_pin, other_pin)
        move(1, from_pin, to_pin)
        move(how_many - 1, other_pin, to_pin)
    

    'Don't even have to think about the low-level sequence: it works seemingly like magic!

    -Phil
  • Phil, the speed on that is really nice. The grab handles on top of the disks is a great idea, it gives a more predictable grasping width that is also near the center of the disk. The Bell is cute too, I'll have to incorporate that into a future robot arm project.
  • WhitWhit Posts: 4,191
    Sorry to be late to this thread! Phil - this is so cool - Great work as always. I agree with Martin_H and love the idea of the grab rings. The bell is a nice touch and the kind of thing that will get the students in the creative/play frame of mind - which really teaches about problem solving. It is game with purpose!

    Let us know how the class does too and how it is received. I wish I had had a teacher like you in robotics/programming when I had been in High School - oh wait - all the computers tat existed during those years were a bit larger and more expensive. ;-)

    1972-1976 for High School - by the way... We did have more affordable choices as I left college in 1982.
  • So cool Phil, well done as usual and I love the dings! It's like the bot is patting itself on the back! :)

    Now, I will have to make or get me a robot arm too.
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2015-09-03 05:17
    Thanks, guys!

    My biggest development issue was the positioning accuracy. Despite the tapered spindles and conical holes in the bottoms of the discs, the arm would still miss once in awhile, leaving a disc hanging on the top of a spindle, and it was driving me nuts. I was beginning to blame the cheap HobbyKing servos I was using. But then I realized that I had not yet glued the spindles into the base and that they were a bit wobbly. Aligning them and securing them with wood glue solved the problem.

    As a test, I programmed the bot to move the spindles from 1 to 3, then back to 1, continuously. After running for a couple hours, it had not missed once, so I feel better about presenting it to my class as a demo. Still, though, just moving it from my shop to the school might be enough to cause a disturbance in the Force ...

    -Phil
  • WhitWhit Posts: 4,191
    "Do or do not - there is no try." Yoda

    My money is on you Phil!
  • ercoerco Posts: 20,257
    Conical holes in the disks? Gasp! That's not easily visible. It's either inspired cheating or pure brilliance! Yup, lots of peg to peg testing required and all dimentions need to be locked down. Cheap servos work fine, but I notice sometimes their positional accuracy changes over time and temperature, probably feedback pot instability.

    BTW from my experience, most people actually like to see a robot fail occasionally. IMO it makes them think they might have a fighting chance when the bots become self aware and Judgement Day starts. Just to be safe, make sure the ToH arms your students build can't hold a gun or throw knives. AND NO BUILT-IN SELF DESTRUCT SEQUENCES!
  • Publison wrote: »
    Jim,

    Are you logged in under HTTP or HTTPS ?
    Doesn't seem to make any Difference. Just a blank hole on the page. problemy ancent iPad.
    Jim
  • ercoerco Posts: 20,257
    Phil: I had to cheat a lot with my 3 DOF arms shown previously (OT, I just noticed that the replies aren't numbered anymore, so I can't specify which reply). I had to play to the arm's spherical range of motion, so my pegs are arranged in an arc and leaned over slightly. The price of simplicity! Your pegs are nice and square.

    I was watching one of my walking sticks eat yesterday. They usually feed at night, so this was kind of rare, and I videoed it. She slowly rotates her head around, gnawing a perfect arc out of the leaf. Like my arm, Mother nature does not support rectilinear motion!

  • erco wrote: »
    I was watching one of my walking sticks eat yesterday. They usually feed at night, so this was kind of rare, and I videoed it. She slowly rotates her head around, gnawing a perfect arc out of the leaf. Like my arm, Mother nature does not support rectilinear motion!

    Smooth semi-circles. That walking stick is up for the figure-8 challenge!
  • ercoerco Posts: 20,257
    Publison wrote: »
    That walking stick is up for the figure-8 challenge!

    As long as I can "leave" a trail of edible bits in a figure 8 pattern. At that point, it's more of a line following (gobbling) challenge.

  • Phil, would you mind posting a diagram of the arm at some point? I like the idea of the servos being on the base.
  • Hi Larry,

    Yes, I'm planning to do that once I've cleaned up and annotated my Corel drawing. I also need to create a bill of materials for it. The design is based on -- well, a close copy of -- the uArm. The gripper is my own design.

    -Phil
  • NikosGNikosG Posts: 705
    edited 2015-09-21 15:34
    Hi Phil,
    Congratulation for your project! As always your project is fantastic! The disk's design is amazing and makes the arm's functionality much more easier!
    I decided to follow the same design and copy your project in order to demonstrate it to my students!
    Here is my attempt in order to make the disks! I made them as a set of two parts each one .
    https://dropbox.com/s/o42kd3tmgoybr2h/Hanoi_tower_disks.jpg?dl=0
    wqvfA3x4Vqwt_fINTDNM7fqecL7e-uCuSkQ22gPo79Q?size_mode=5
    Now is time for the arm. there is a newer version (update) of uarm, the Lite Arm i2. What do you think about it? Is it better than the old version?
  • ercoerco Posts: 20,257
    @Phipi: Two subtleties I just realized from seeing Nikos' pics :

    1) No peg is required, each disk stacks on the previous disk's knob.
    2) Each disk's knob is the same size, so the gripper opening never changes.

    Hard to appreciate these little niceties until you've made and programmed an arm.

    @Nikos: I love your optimism of 9 stacking disks. Each disk you add more than doubles the time & number of moves required.
  • NikosGNikosG Posts: 705
    edited 2015-09-21 16:48
    erco wrote: »

    @Nikos: I love your optimism of 9 stacking disks. Each disk you add more than doubles the time & number of moves required.

    erco,
    9 disks are not too much.
    Acording to the algorithm we need 511 steps .... I hope that Phil's arm makes the 1 step in 1sec..... so 9 disks are 8,5 min

    g79kO46v6BUSbQARezlyrD0icuDeNVwjCRSOMUwI_Xo?size_mode=5

Sign In or Register to comment.