Shop OBEX P1 Docs P2 Docs Learn Events
Hints About My New Project (Video) — Parallax Forums

Hints About My New Project (Video)

Martin_HMartin_H Posts: 4,051
edited 2011-05-18 09:32 in Robotics
Last weekend I started working on a new robotics project. I wanted to branch out with this project, so I'm going to use metal and use the Propeller chip to control it. Now it's been years since metal shop, but I do remember that while aluminum is light and strong, it is nearly impossible to braze. Brass on the other hand is softer and heavier, but easier to work with. As this project will be fairly small, it should be strong enough. Brazing can be tricky as brass anneals quickly at that temperature, but brass silver solders like a champ.

So over the weekend I got some brass and made one of the first parts to my new project:

newproject.jpg


Can you figure out what the rest of it will be? More hints.

I've learned a little Spin and it looks OK. I've also learned how to poke around the object exchange for code. I'm going to need a servo controller object. Any one considered the best?

Now I already have code to do what I want in C/C++, so Catalina might be easier than porting the code. But will I lose access to the Spin servo controller?
1024 x 1394 - 83K
«1

Comments

  • WBA ConsultingWBA Consulting Posts: 2,934
    edited 2011-03-09 17:32
    Servo on a stick? So a propeller controlled marshmallow toaster? My second guess is a very large clock.....

    Kye's Dual Servo driver is a very straightforward and easy to use object for one or two servos. Otherwise, Beau's Servo32 object is pretty universal.
  • Martin_HMartin_H Posts: 4,051
    edited 2011-03-09 17:41
    The servo will definitely be on a stick, but if it was servo controlled marshmallow toaster I'd use a 555 timer. It's not a clock, but that's getting warmer.

    Thanks for the pointer to Beau's Servo32 object as I will be controlling more than two servos.
  • P!-RoP!-Ro Posts: 1,189
    edited 2011-03-09 22:54
    Funny lookin' robot arm, pendulum bot balancer...
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2011-03-09 23:24
    A knee for a spindly spider robot leg? BTW, that silver solder job is real purty!

    -Phil
  • HumanoidoHumanoido Posts: 5,770
    edited 2011-03-10 00:24
    It could be a linkage or a leg with a place for ankle pivot in a humanoid robot. It could be a sensor holder.
  • Martin_HMartin_H Posts: 4,051
    edited 2011-03-10 04:51
    @Humanoido, that just about covers it.

    @Phil, it could work as part of a spider robot leg, but that's not what I'm building. Thanks for the compliment, but you don't want to see my attempt to braze brass! I also learned that brass doesn't harden when you quench it.

    @P!-Ro, I'm hoping funny looking won't describe it when I am done. But you're the closest. It's the ulna and elbow joint for a robot arm. I haven't yet used the pipe cutter to cut the ulna to length as I need to build the wrist servo holder first.

    I found some C code to do an inverse kinematic transform, I ported it to C# and commented it so I would understand it. Now I need to learn how to do integer or fixed point trig in Spin to port the code.
  • WhitWhit Posts: 4,191
    edited 2011-03-10 07:29
    Ahhh! So you are building a robot army...

    Sorry.
  • ercoerco Posts: 20,256
    edited 2011-03-10 08:34
    I think Martin_H made some random metal brazing and is simply having some fun with the Forumistas. :)

    Can you guess which part of the flux capacitor this is?
  • P!-RoP!-Ro Posts: 1,189
    edited 2011-03-11 19:07
    Martin--I hope funny lookin' doesn't describe it either when it's all done. If you want my advise, wrap extra wire around it to make it look more beefy and to perplex the minds of those with little knowledge of electronics :)

    Okay, perhaps that wasn't too great of advice.
  • Martin_HMartin_H Posts: 4,051
    edited 2011-03-11 19:55
    P!-Ro, I plan to use a fair number of servo cables and zip ties for cable dressing. So I can throw in some extra window dressing too.

    Erco, lol!

    Whit, given how much work one robot is, an army is out of the question.
  • HumanoidoHumanoido Posts: 5,770
    edited 2011-03-12 07:17
    It's an ultrasonic eye on a long periscope metal tube to peer above the water or around corners..
  • kwinnkwinn Posts: 8,697
    edited 2011-03-12 11:11
    Martin_H wrote: »

    Whit, given how much work one robot is, an army is out of the question.

    Not if you build a self replicating robot with it's first task as making 2 replicas.
  • Martin_HMartin_H Posts: 4,051
    edited 2011-03-12 18:10
    So here's the completed ulna:

    ulna.jpg


    Here it is attached to the servos, the humerus, and the base:

    ThreeAxis.jpg


    I started with the humerus and thought of using silver solder with tubing after I built it. I used that for the ulna and liked the way it came out, so I may build a new humerus using that technique. But I'm going to resist this until I get it working. You may have seen me post some floating point code in the Propeller forum. That's part of an inverse kinematic program I found in C that I gave up trying to port to PBasic. But Spin and the Propeller look like they can handle it.
    1024 x 826 - 74K
    1024 x 618 - 34K
  • TtailspinTtailspin Posts: 1,326
    edited 2011-03-12 21:46
    Nice work Martin_H,

    Any details on the soldering technique you used?

    How did You apply the heat to the brass and silver?
    Was super extra special solder flux used?

    I ask because I have not tried silver solder, I have good results with 60/40 rosin core,
    and regular water soluble paste flux. using a small BernzOmatic pencil torch.

    Anyway's, that look's like a really interesting project You have.
  • Martin_HMartin_H Posts: 4,051
    edited 2011-03-13 05:00
    @Ttailspin, thanks for the compliment.

    For the silver solder I went to my local hardware store and bought a package of silver solder wire and flux in a tube. I've read that it's best to buy them together as the alloy and flux need to match. I used silver solder over lead solder because it is supposed to be nearly as strong as bronze brazing.

    Clean up the metal area to join with scotch brite until its shiny and finely scratched.

    Put a thin bead of flux around the pipe and on the bracket. When you apply heat the flux melts and spreads, so a little goes father than you think. The solder will flow where ever there is flux, so the key to a neat joint is not using to much.

    Cut off enough solder to go once around the pipe, and wrap the pipe at the end.

    I clamped the bracket to a piece of wood so the side I was soldering faced up. I placed the pipe on top and held them together with my hand far up the tube as heat travels.

    Heat with a torch (your small one should do nicely), the flux will boil and melt, the solder then melts and beads. A few seconds later the base metal will get hot enough for the joint to wet out. Stop heating at this point and the joint will look great. Hold the parts together until the solder solidifies.

    I over heated one of my joints and solder pooled on one side because the torch pushes the solder. The joint is still fine, but not as good looking.
  • doggiedocdoggiedoc Posts: 2,241
    edited 2011-03-13 06:55
    Martin_H wrote: »
    For the silver solder I went to my local hardware store and bought a package of silver solder wire and flux in a tube.
    I wonder if they have something like that at Home Depot or Lowe's Home Improvement stores. We don't have many small Hardware Stores around here anymore.

    Great job by the way!

    Paul
  • sam_sam_samsam_sam_sam Posts: 2,286
    edited 2011-03-13 08:00
    You can also buy silver solder at a welding supply company as well or at a air conditioning supply store
    There are different type of flux depending on the type of metal brazing that you are doing
    Three are also 5% to 15% silver brazing rods that will give better strength

    Martin
    This was right to the point this real good
    Clean up the metal area to join with scotch brite until its shiny and finely scratched.

    Put a thin bead of flux around the pipe and on the bracket. When you apply heat the flux melts and spreads, so a little goes father than you think. The solder will flow where ever there is flux, so the key to a neat joint is not using to much.

    Cut off enough solder to go once around the pipe, and wrap the pipe at the end.

    I clamped the bracket to a piece of wood so the side I was soldering faced up. I placed the pipe on top and held them together with my hand far up the tube as heat travels.

    Heat with a torch (your small one should do nicely), the flux will boil and melt, the solder then melts and beads. A few seconds later the base metal will get hot enough for the joint to wet out. Stop heating at this point and the joint will look great. Hold the parts together until the solder solidifies.
    I over heated one of my joints and solder pooled on one side because the torch pushes the solder. The joint is still fine, but not as good looking.
  • ercoerco Posts: 20,256
    edited 2011-03-13 10:17
    Sweet, I like the small size! From previous postings, you know to keep it lightweight and use smaller/lighter servos as you go farther out towards the gripper. It's all too easy to make a heavy, pendulous arm with jerky motions and very small payload capacity! Countersprings are also helpful sometimes, but you have to design those in as you go.

    Can YOUR Tower of Hanoi video be far away? It's a rite of passage for any arm builder! :)http://www.youtube.com/ercost60#p/u/12/-Z8lTSX4PHs
  • Martin_HMartin_H Posts: 4,051
    edited 2011-03-13 14:14
    Erco, sweet tower of Hanoi video.

    Yes, I've built two lego robot arms and the first smaller lighter one worked better. I got overly ambitious with the second one and ran afoul of it either being light but not stiff, or being stiff but too heavy. So with this one I picked a size I was pretty sure would work. I'm looking forward to trying Tower of Hanoi as the first arm's gripper wasn't suitable for anything other than Lego bricks.

    But I have a set back. The new fangled Propeller do hickey has 3.3v logic levels which it turns out won't work with Power HD or GWS mini servos. Argh!
  • ercoerco Posts: 20,256
    edited 2011-03-13 14:38
    You can always slam in a BS2 just to get 'er goin'! I'm also a fan of Pololu's $20 micro Maesto controller.
  • Martin_HMartin_H Posts: 4,051
    edited 2011-03-13 18:31
    @Erco, with this 32 bit floating point MCU I could probably do the whole project with the BS2:

    http://www.parallax.com/Store/Components/IntegratedCircuits/TimeMathCoprocessors/tabid/617/CategoryID/82/List/0/SortField/0/Level/a/ProductID/401/Default.aspx

    Add that servo controller and who needs the Propeller chip!


    @doggiedoc, thanks for the compliment. I am lucky to have an amazing old fashioned hardware store near me. It's owned by two brothers who have nearly everything tucked away somewhere. Usually on the stairs behind one of the ladders. They often get a kick hearing about what I'm building because I often ask for uncommon items.
  • HumanoidoHumanoido Posts: 5,770
    edited 2011-03-13 23:20
    Martin, you'll need an amazingly large humanoid to accommodate two of those powerful arms!
  • Martin_HMartin_H Posts: 4,051
    edited 2011-04-05 18:36
    After a month of distractions on other things which are generally known as life (i.e work, parenting, family, etc). I finally got my inverse kinematic transform working! So I put together a motion script of the arm solving Air Tower of Hanoi. It's what robots do instead of Air Guitar!

    Let's just say inverse kinematic transform bugs would make a pretty interesting out take reel if I had the presence of mind to video tape them.
  • ercoerco Posts: 20,256
    edited 2011-04-06 17:42
    Sa-Weet, Martin_H! Theoretically, anyway! Let's see some real disks get moved around soon. Make 'em lightweight to minimize dynamic effects; your arm is moving nice & fast. My cheap little arm had some shoulder shudder, so I programmed it to move slowly & stately: http://www.youtube.com/ercost60#p/u/14/-Z8lTSX4PHs
  • Martin_HMartin_H Posts: 4,051
    edited 2011-04-06 18:42
    Erco, thanks. I shall work on the posts and disks as soon as time permits.

    I never noticed the shoulder shudder on your arm, but watching the video again I see it ever so slightly. Do you think it's related to gearing in the servo or just a large rotational inertia?
  • ercoerco Posts: 20,256
    edited 2011-04-07 00:04
    Right on both counts, plus I didn't do any velocity ramping (decelerating) there. I rushed that code back then to "git 'er done" but now have it operating more smoothly, with ramping and damping. I have unlearned much that I have learned...
  • ercoerco Posts: 20,256
    edited 2011-04-07 00:23
    Hey, virtual Hanoi Brother: there may be a movement error in your sequence. You move disks 1 & 2 sequentially to the far left post properly, then you move disk 3 to the middle post properly, then at ~40 seconds, you drop disk 1 on top of disk 3 in the middle instead of going to the far right post. Let me know if I'm going senile early...

    One of the ToH descriptions I read says that disk 1 (the smallest disk) gets moved every other time. Further, it always moves one position in the same direction, except when it jumps back to the beginning. For instance:

    left center right left center right etc or right center left right center left etc...

    Since you're doing inverse kinematics, this may be an easy pattern for you to code.
  • Martin_HMartin_H Posts: 4,051
    edited 2011-04-07 06:28
    I quickly used three pieces of paper and twice followed the virtual post to post moves. The solution does move a three disk stack from our right to our left, and moves the small disk ever other time. It looked to me like the small disk moves across the three posts in the same direction, hits an end post, and it reverses direction. But with virtual disks and shadowing moves it is possible I missed something. It will become more apparent when I switch to real disks.

    You're correct that inverse kinematics will make fixing any glitches like that simple. The coordinates of the moves are all computed, at the moment the only hard coding is the post to post move sequence (1 to 2, 2 to 3, 2 to 3, etc). I'm going to add code to generate that, but I didn't want to deal with recursion in Spin just yet. I'll post the code when I am done.

    The ultimate one plus would be adding some kind of sensor to the gripper, have it count the disks, and solve the problem in the general case for any number placed on the first stack.
  • ercoerco Posts: 20,256
    edited 2011-04-07 13:30
    The sooner you get it going, and the faster it can move (as long as it can handle 64 disks), the sooner we are to the world ending. From
    http://en.wikipedia.org/wiki/Tower_of_Hanoi :

    The puzzle was invented by the French mathematician
Sign In or Register to comment.