Please excuse the rather random nature of the blog as it stands right now. I started this project a few weeks ago and I still need to add quite a lot of content before the blog is up to date. Until then I'll be dumping information here as and when I can.
Once I'm up to date posts should become a little more sequential and ordered.
Please bookmark, follow or whatever it is you do to a blog so that you can come back soon to see how my little biped is getting on.
Pi-Botics: [noun: the branch of technology that deals with the design, construction, operation, and application of Raspberry Pi controlled robots.]
18 November 2014
Leg development and testing
I wanted to make this robot as small and light and cheap as possible so I opted for some very small and light micro (9 gram) servos (Tower Pro SG92R) to power the joints. Various on-line sources rate them from about 1.6 kg.cm to 2.5 kg.cm which is a lot for a tiny servo, but still a pretty modest figure to work with.
I had already thought one might not be enough for some of the joints like the hips, knees, ankles etc so I had an idea to double them up. Basically mount them base-to-base and use the output shafts as rotation pivots for the joints, but even with this doubled-up configuration I began to wonder if my robot was going to end up too heavy for the little servos so I had another re-think.
To get the most out of a servo we need to match it's full range of motion (180 deg in the case of these servos) to the full range of the joint in question. A human knee might be able to rotate between about 0deg (standing upright) and maybe 170deg (kneeling down sitting on your heels), but to walk it only needs to rotate through about 60deg. So if I'm only using about 1/3rd of the rotational travel I'm effectively wasting 2/3rds by using them in this direct drive mode.
Time for another re-think.....
Two other option exist, levers, arms, pushrods...whatever you call them, they essentially link the servo output arm to the thing you want to move (in this example the lower leg). The trouble with this approach compared with the direct coupling method is that the torque is not distributed equally over the full range of travel **needs a pic to demonstrate**. It also has a rather interesting feature whereby the torque required to keep a system stable is effectively zero when the servo output arm is parallel with the push rod **needs a pic to demonstrate**, but on the down-side it can introduce slop into the system and the non-linear force issue is a big concern, especially since I may have to 'hold' the robot in a number of different positions and I would like the motion to be as smooth as possible.
One other thing I could do is to use gears (sometimes called cogs or sprockets). My idea is to mount one gear on the output shaft of the servo and one to the structure I need to move. By choosing the right size gears I will be able to match the rotational motion of the servo (180 deg) with the rotational motion of the joint (in this case about 60 deg). In this example I would use a 20 tooth gear on the servo output and a 60 tooth gear on the structure. Also, because the force is always acting on a tangent it will always be maximised and on top of that i should get a 3:1 increase in torque by reducing the rotational angle by the same ratio with the gears.
I need to do some tests, but if I'm right I should be able to get a constant high(ish) torque out of these little servos after all.
I'll mock up some physical tests for the servos and various options described above and post my results as son as I can.
EDIT: I did some testing with the servos discussed above. See the post here: Tower Pro Servo Testing Unfortunately the little servos turned out to be pretty weak. So, for now at least, they're sitting in my servo box waiting for a light weight application to put them to good use.....
I had already thought one might not be enough for some of the joints like the hips, knees, ankles etc so I had an idea to double them up. Basically mount them base-to-base and use the output shafts as rotation pivots for the joints, but even with this doubled-up configuration I began to wonder if my robot was going to end up too heavy for the little servos so I had another re-think.
To get the most out of a servo we need to match it's full range of motion (180 deg in the case of these servos) to the full range of the joint in question. A human knee might be able to rotate between about 0deg (standing upright) and maybe 170deg (kneeling down sitting on your heels), but to walk it only needs to rotate through about 60deg. So if I'm only using about 1/3rd of the rotational travel I'm effectively wasting 2/3rds by using them in this direct drive mode.
Time for another re-think.....
Two other option exist, levers, arms, pushrods...whatever you call them, they essentially link the servo output arm to the thing you want to move (in this example the lower leg). The trouble with this approach compared with the direct coupling method is that the torque is not distributed equally over the full range of travel **needs a pic to demonstrate**. It also has a rather interesting feature whereby the torque required to keep a system stable is effectively zero when the servo output arm is parallel with the push rod **needs a pic to demonstrate**, but on the down-side it can introduce slop into the system and the non-linear force issue is a big concern, especially since I may have to 'hold' the robot in a number of different positions and I would like the motion to be as smooth as possible.
One other thing I could do is to use gears (sometimes called cogs or sprockets). My idea is to mount one gear on the output shaft of the servo and one to the structure I need to move. By choosing the right size gears I will be able to match the rotational motion of the servo (180 deg) with the rotational motion of the joint (in this case about 60 deg). In this example I would use a 20 tooth gear on the servo output and a 60 tooth gear on the structure. Also, because the force is always acting on a tangent it will always be maximised and on top of that i should get a 3:1 increase in torque by reducing the rotational angle by the same ratio with the gears.
I need to do some tests, but if I'm right I should be able to get a constant high(ish) torque out of these little servos after all.
I'll mock up some physical tests for the servos and various options described above and post my results as son as I can.
EDIT: I did some testing with the servos discussed above. See the post here: Tower Pro Servo Testing Unfortunately the little servos turned out to be pretty weak. So, for now at least, they're sitting in my servo box waiting for a light weight application to put them to good use.....
Subscribe to:
Posts (Atom)