Thank you. Will try Blender.
TheRobotStudio on YouTube is doing an open source robot called “Hope-Light” and inviting his viewers to follow along with his progress . I have decided to follow along, although I will be modifying his designs as I go to customize it more to my liking. He expressed he wants this to be a open source community to advance humanoid robotics development in the DIY space and usher in the wider adoption of humanoid robots in more homes across the world. He’s excited for what this can mean for global productivity and quality of life improvements it can bring if executed well. I like this vision.
My decision to follow along with his project is to pick up a extra head of steam in my own humanoid robot building projects by utilizing his experience and formal education in robotics engineering as a legit decorated world class humanoid roboticist. A world leader in the field. By following his open source project loosely, I can get a breath of fresh air by skipping past the bang my head against the wall dead-ends and regular difficult hurdles and just get results. Sort of like fast food drive thru. It will be a relief for me. And confidence booster. To see something really happen at a faster pace for a change.
Now none of this is to say I’m abandoning my existing projects. They will all go on as planned without interruption. This will be a parallel journey I will share. I will certainly learn a ton and can apply what I learn to my other projects.
I will have this Hope - Light robot adaptation be named Dinah. I’ll use Eve’s base mesh for the external appearance. The two females can look similar in build but have different faces.
This robot will use to some extent TheRobotStudio’s design philosophy and approach for the Hope-Light project. This means it WILL use metal geared brushed DC servos and it WILL use non-human-like bone structure, but I will still give it human-like realistic silicone skin and it will use the exterior exoskeleton shell of the Eve robot I 3d modeled already. One downside to this Hope-Light parallel implementation is that because it uses metal gearing it will be loud in its operation. So it will never be able to pass for human in public. That’s okay though. My other designs are reaching for that aim and my other designs are still the intention for Adam, Eve, and Abel. So that vision remains alive. And will continue. But this noisy robot will still be a great learning experience and capable of doing useful work including helping me build my other robots, chores, manufacturing products, cooking, etc. It will probably do most of the things the Adam, Eve, and Abel robot can do but not be as strong, fast, and articulated. So it will probably not play sports well or do rock climbing or various other serious physical strenuous types of work. But the long list of things it should be able to do is still enough for it to be awesome.
A great thing is that it won’t be so experimental and outside the box like my previous solo approaches. This one will be designed to a small degree by a real professional so it will happen way faster and more surely than mine. Although I am finding I am changing his design so much it’s not really his design at all anymore but my own. However, I still plan to retain a significant number of strategic decisions, placements, and organization following his lead. My other designs are more of a pipe dream shooting for the moon. Going more similar to this open source one designed by a real pro is more of a “sure thing”. Not that I don’t believe I can achieve my more ambitious designs, but just that they are admittedly a taller order and more crossing fingers about them is all. I really think building a top tier legit walking and talking full humanoid is going to legitimize my journey more in my own eyes and give me a better resume to bring MORE hope toward my own robot builds. Just seems like doing this is a no brainer.
Here’s a early design progress image from TheRobotStudio who is currently designing Hope-Lite in Solidworks.
You’ll note he fused the distal knuckle of 4 fingers so they are permanently partly bent. This was a decision to cut down on complexity but in my preference, I’d rather have that functionality. You’ll also note that it cannot pronate or supinate the wrist. That takes away a TON of functionality which is not my preference. So my robot will add this function back. That said, as I was studying how to add pronation and supination without a ulna and radius bone, I stumbled across the simple and effective design of posable love dolls’ skeletons. I realized they have pronation and supination in their stock skeletons, so I decided I will use that kind of skeleton for this project. They are simple, very strong, welded steel construction with heavy duty hinge systems. To be posable, the hinges are quite stiff, so I will need to loosen all hinges to reduce friction. They are a hollow lightweight tubing style. Actually not that heavy.
I just came up with a cool alternative way to downgear a 2430 BLDC motor that might work.
Here’s a illustration of the cheap downgearing idea:
So basically, I figured what if I could remove the N20 motor from its gearbox/“gear set” by cutting it free or w/e. But I keep its center axle in place cutting away only everything else. You’d then presumably have a metal shaft as a entrance to the gearbox and a metal shaft exiting the top of the gearbox. I then turn that metal input shaft and output shaft into pulleys. I feed my 2430 motor output shaft pulley/winch into the input shaft of each of 4 N20 motor gearboxes, evenly distributing the load. Each gearbox downgears my 2430 motor 150:1. Each gearbox chatgpt said could handle about 5-6lb load but this can’t be sudden or fast direction change this is really pushing it. But it seems 4 gearboxes should handle most of what we’d want from a 2430 motor. And the fact we can fit them all within the height of the motor output shaft default length and within the width of the 2430 motor diameter for the most part seems it would be a pretty significant downgearing for very low space taken as the cost. You could even locate a few more gearboxes off the motor anywhere and have those fed further distributing to them the load if only 4 gearboxes was not enough to handle expected forces. The cool thing is supposing we did this, it would cost us four N20 motors which is $0.80x4 = $3.20. That is VERY cheap for a gearbox as I read that a planetary gearbox for it would be like $25-30! And the planetary gearbox would take up WAY WAY WAY WAY more space which is highly coveted in our application - space we can’t afford to spare. And the great thing is these little gearboxes you can fit ANYWHERE into a nook or cranny since they are so tiny… and you can use as many as you want to get up to the total forces you need them to handle as a collective. Seems like this could be a cool technique. I want to give it a go. Any thoughts?
Note: this would be something I’d try on the Dinah robot where I’m using metal gears despite the noise these create since its a lower budget simpler robot I’m doing just to get something done faster for a change. My Adam, Eve, and Abel robots will be going pulleys to downgear to make them very quiet in operation as has been the plan forever.
So today I went ahead and extracted this metal skeleton from a male love doll I had bought some months back to use as a base form from which to sculpt the appearance of another robot. Just to clarify upfront, this was never purchased for any sexual purposes - strictly for its materials. I bought it mainly wanting the already decent human appearance it offers in the TPE body and face that can act as a starting point for sculpting a robot. This is better than having to begin sculpting from scratch in clay and making a mold or w/e. Just a shortcut for me. I bought a decent used male love doll for a few hundred dollars which was a bargain to say the least. The shipping alone had to be close to $200+ so it was priced WAY below the cost of the raw materials if I were to try to buy 50lb of TPE rubber. I intended to melt down the massive amount of TPE rubber once done using it to assist in the sculpt of another robot and use that melted down rubber to create the skin for a robot. So those ideas were I had planned for this doll. However, now that I have decided to use the skeleton for a robot build - now I’m REALLY maximizing that little investment! So after 4-5 hours of carefully removing the skin from the frame, I have it all off. I made a few tears here and there in the doll from rough handling during the skinning process and the lack of experience at this, but it went well overall. It was a very physically demanding job to separate the skin from the frame since you had to pry at it, cut it, and peel it and the whole time it fights you wanting to snap back to its original shape. I am quite sore but glad I got it done in a single day.
Here’s a photo of the skeleton I just extracted and will be modding and using for Dinah:
Now, having gotten the skeleton out and analyzed it carefully, I noticed it does not have the ability to shrug, so I’ll have to add a hinge on both sides to enable that movement. Also, its bar where the tibia and fibia would be is not proportional in length to the bar that acts as the femur. I can see that they made the doll taller by just adding length to the tibia/fibia bar rather than proportionally adding height throughout the robot. So its proportions are off due to their laziness or oversight. In any case, I have to modify ALL the proportions some I think to match the proportions of my Eve base mesh sculpt. The neck is also quite hard to bend so I might have to add a couple hinges to it. All the nuts for every hinge on it are welded into place to prevent them backing out so I will have to grind off all these welds so I can loosen the nuts to disable posing and instead have all joints freely moving to reduce friction. I will have to add proper fingers and a palm. I will 3d print these bones for the fingers.
TheRobotStudio is using Feetech SC0009 servos for the fingers. I’m planning to substitute in three N20 66rpm motors in place of each Feettech SC0009 servo. By combining three of these N20 motors, I am able to surpass the total torque of the SC0009 servo but after factoring in the size of our respective output winches, mine will be about 13% slower than his. This is fine by me because his robot hand designs are always extremely fast in finger speed and I can get by 13% slower than this. The purpose of swapping in N20 66rpm motors for the Feetech SC0009 motors is to cut costs and I just have a ton of them already and have been itching to use them. The Feetech SC0009 servo is around $11 and my N20 66rpm motors are only around $0.80 so 3 of them is $2.40. So that’s $8.60 saved ever time I do this part alternative strategy. Well the savings is a bit less since I then have to supply my own motor controller H-bridge chip and potentiometer to read joint angle. So maybe only $8 saved. However, from what I gather, the Feetech SC0009 requires a serial adapter board to run it and doesn’t use PWM but uses serial. I do NOT like this AT ALL in terms of my preferences and the adapter boards were $13 each and only serve 4 servos. That will add up quickly. So I’m actually saving that cost too. I prefer my microcontrollers to pwm directly to the h-bridge with no middle man software whatsoever to maximize my control.
TheRobotStudio is using 3 different sizes of Feetech servos in his approach. You can see the wrist servo is much bigger in his CAD model. I am operating under the assumption I can cram TONS of these little N20 66rpm motors and use more than one of them per joint. So I can use as many as I need to get to the torque I require. I will use L298N motor driver h-bridge chips with these N20 66rpm motors to drive them. This chip can safely power 2 N20 motors per channel and has two channels. It’s VERY cheap maybe like $0.15 per chip I think - don’t remember. I’ll use Arduino mega to send out the pwm. I’ll use 10k ohm 3 pin wheeled potentiometers to read the joint angles and these will be coupled to the joints by fishing line which will translate the joint angles over to the potentiometers whose values will be read in by the Arduino Megas. So a lot of my own designs for control and sensory input I’m sticking with for this project but using various elements of Hope-Light for a hybrid approach and swapping in different actuators whenever I feel inclined.
The Dinah robot is coming along well. I modeled the full steel skeleton in CAD to match the dimensions of the Dinah base mesh and created a human bones variation as well to compare that to the steel simplified skeleton and make sure all the joint pivots matched the locations of the human skeleton joints pivot points. With this CAD, I will be able to modify the proportions of the steel skeleton I have on hand. I also added several key additional joints using reference photos of a skeleton I found online. For example I now have 2 pivot points for the knee joint instead of one which gives more clearance when knee bends back. I also gave a few more degrees of freedom to the neck and shoulder area. Here’s the CAD:
Note also that I am well on my way to finishing up printing ABS solid infill fingers and wrist bones which I will retrofit onto the steel skeleton so that I can have full 27 degrees of freedom robot hands and wrists to match perfectly the dexterity of the human hand, which is a must.
I have decided that once I finish the arm and head, I will not go on to complete the building of the rest of the robot’s body but instead will switch my focus to the AI entirely from there forward. I will code the AI to cause that arm and head to build the rest of its own body.
I managed to get Dinah’s hand bones printed out in ABS on my Anet A8 3d printer the past couple days. I also cleaned up the prints, removed the supports, and sanded down high points. They are ready for attaching them together with cloth tape which will act as artificial ligaments.
You’ll note I fused the ulna and radius bones together to use as a rotational joint for the wrist to function like a human wrist. The actual pronation and supination of the forearm though will happen by way of the steel skeleton having a rotating pivot point unlike the human body where the radius rotates and twists over the ulna in a criss cross.
Note: in this photo the middle finger is missing the distal tip which I was reprinting as the time of this photo.
In these photos you can see the progression of going from the stock wrist to an axial rotating wrist assembly acting as a plain bearing. Pardon the Orgrimmar welding - it’s a cheapo welder.
The process involved cutting the bolt head off then grinding smooth the threads and then sliding on a stack of washers and welding the last couple washers into a mushroom head end stop then welding the other washers to eachother and these ones are to spin freely. They will do the pronation and supination. This replaces the need for a ulna and radius for that purpose, simplifying the skeleton some.
The metal outcroppings I left on the washers were meant to jut out significantly to give the fiberglass something to bite onto well for a dependable attachment.
Note: The stock skeleton does rotate axially already at a spot just near the elbow but that rotation is stiff and requires significant force to get it to move and loosening it is something I don’t know how to do. I don’t even know how it works at all. Advice on that for future reference would be helpful.
Note: There is too much clearance on the stack of washers so they can slide distally or proximally a good 8mm which is not okay - too much play. I need to fill that gap and lube it all with white lithium grease.
Note: I’m planning to probably just go fiberglass wraps over and over onto the stack of washers to grip it tightly and build outward from it and then go out and around the welded mushroom cap and then wrap onto the ABS wrist ulna/radius fused section.
Also note that I have reconsidered adding a dual hinge to the elbow joint and lean now toward just leaving it stock. I think the double hinge would add complication to the bicep attachment and cause some issues I’d rather avoid. A single hinge is easier to deal with IMO.
So I finally got the wrist done. And aside from grinding off welds on bolts and backing off the bolts to allow for free movement at joints, I’m mostly going to try to keep this skeleton stock for the most part. So I may be attaching the hand and going immediately into electronics rather than fiddling with the skeleton adding more range of motion here and there. I can always add that later anyways. And in fact the poseable joints that are fairly stiff I’m finding is actually pretty convenient while working on it so I may only free joints on an as needed basis for testing electronic actuation of that joint. Until then I’ll leave them alone.
Also note: I was planning to have the wrist rotate axially around the location of the wrist for the pronation and supination. However, I realized this will not look right since you can visibly see the forearms move and the muscles there moving when you pronate and supinate your arm. So I have to have the pronation and supination be where the skeleton was originally doing this near the elbow. This will allow for much more natural looking pronation and supination. So the wrist location will not rotate AT ALL after all. This made it all the easier to make the ulna and radius distal wrist joint where the little wrist bones and hand will attach to and rotate on. I sculpted it all in fiberglass and super glue with some nails and some ABS plastic pieces and epoxy to build up the shape. I used my ABS 3d print of this part as reference only. This thing needed to be very strong as it’s likely going to the point of failure as the rest of the arm is steel. So I wanted to make sure it was maximally solid and didn’t fully trust just going with a 3d print there.
I’m currently working to sew all the finger and wrist bones together for the Dinah robot and mount them to the arm. I wanted to show how I’m doing this process.
Here I tape the bone with adhesive transfer tape 3M 300 LSE. Note that I leave space on either end of the bone to allow some free fabric which is necessary to allow for elasticity as the bones need to rotate after all. Have to have enough free fabric to stretch as the joint rotates, allowing the rotation. But not so much free fabric that the joint is loose either. Has to be just right and snug.
Next I wrap the compression workout shirt fabric onto the tape and cut it to size. Here is just a rough wrap that hasn’t been cut down to size yet.
Then here is a bone finished on the sewing and ready to attach to a neighboring bone. The sewing is done with nylon upholstery thread and a curved suturing needle and a surgical pliers using a suturing technique.
Okay, so I finally got the Dinah robot hand sewn in and it is looking pretty good. The fingers could use some tweaking but overall I’m quite happy with how it came out. It’s solid and fully articulated.
Here’s a photo of it in place:
Now that out of the way, I want to announce I’m officially canceling the Dinah project as far as its current goals and here’s why: so basically I was thinking it would be nice to just crank out a working robot using some shortcuts and just do something quick and dirty as a learning experience side quest to get something going. It seemed reasonable at the time. Plus I could pace myself to match the build pace of a fellow roboticist and loosely follow his project’s designs. But some things I missed in this decision: 1) I’d be lowering my commitment to excellent quality with no shortcuts - ignoring the adage “do it right the first time” 2) by cutting down on workmanship maxing, I’d be inviting harsh criticism on the new lowered bar of build quality which is the last thing I need when already inviting heavy criticism for a extremely ambitious set of goals to begin with 3) I’d be going against my outspoken commitment to campaign against loud metal gear noise based robots that are completely impractical for home use due to sounding like a construction site 4) it would take away from the focus on my “real” robot projects by creating a “ghetto” side quest robot that could have just been skipped altogether. 5) this would in turn delay me truly solving downgearing by pulleys and actuating the robot arm silently once and for all, proving it can be done and proving that achieving a fully human level DOF human hand and arm while maintaining a human form factor and making all of this silent can and should be done for humanoids.
So is Dinah robot just trash now? No. I still plan to have this project be done, but like Adam, it will be shelved until such a day that the other robots, when ready, complete building these shelved robots for me. And when they are built, it will be using the best methods I have including silent BLDC motors with silent pulley based downgearing. So I’m returning to work on the Abel robot whose arm will build the rest of his own body and then he will build the Adam, Eve, and Dinah robots for me.
Here is a progress update on the silent pulley downgearing system I came up with using thumb tacks and a 2 fishing crimp sleeve and little plastic discs. It is some tiny fine precision necessary work but I’m getting it done and things seem to be looking pretty good so far.
For now, I ended up just using 401 glue to glue the thumb tacks down onto post it note paper. I then put another coat of the glue over the tops of the thumb tack heads to secure it further. I am planning to use nylon upholstery thread lashings to lash all the tacks down onto the top of the 2430 bldc motor tightly and glue the lashings down as well in order to make the thumbtacks even more solidly set into place. Now I’ll grant welding them down would be ideal, however, not having a micro tig welder made yet (future project), I just wanted to get going fast and I thought with enough care, it is possible these can be constructed solidly enough with composite material techniques to function reliably. I’m crossing my fingers. We’ll see.
I got done cutting out the pulley discs and drilling them and mounting them to the thumb tacks and gluing them in place with 401 glue using a sewing needle tip as the applicator. They all are reasonably square and solidly in place I think. Everything is moving freely. Everything seems lined up okay. I then mounted them all to the 2430 bldc motor.
These thumb tack based pulleys still need to be lashed down well and the lashings (upholstery thread) need to be coated in 401 glue to make them stiff and solid. I also need to add pulley discs to the 2430 bldc motor that are to line up well with the pulley disc slots the string is to go to. I then need to wind up the string sections themselves, loading up the system in preparation for actual testing.
I wound up my 6lb test Hercules PE braided fishing line onto the previous pulley system setup only to find out that the pulley could only handle about 21 inches of fishing line wound onto it before it started to come dangerously close to overfilling the pulley. The aim is to have plenty of the plastic disc overlapping the fishing line even when it is wound up fully to one side because that plastic disc acts as the guide to keep the line in its proper channel. I want at least 32:1 mechanical advantage out of this downgearing so if I want my final output to be 1" then the first pulley has to be able to wind 32" of fishing line onto it comfortably. So I realized at least the first pulley has to be a few more millimeters increased in diameter. So I had to rebuild the thumb tacks arrangement to accommodate these changes and make that first pulley bigger.
With this increased size first pulley, I realized I’m getting what looks to be 7:1 mechanical advantage from just the first pulley alone! At least initially when it starts. As the fully wound up pulley gets winched in by the motor, the relative size differential gets smaller which means it will speed up and the torque will be less than the starting torque and increasingly so as the size differential decreases. This will create a natural sort of acceleration effect and high initial power and gradually less power. I think these side effects of this system seem to be quite good but I’ll know for sure in testing. The next steps will be to wind up the reverse direction of the first pulley and start connecting the first pulley to the second pulley and so on. I may not even need all 5 pulleys but we’ll see. With the first pulley being already 7:1, if the remaining 4 are 2:1 say, then we’d have 7:1, 14:1, 28:1, 56:1, 112:1 so 112:1 would be the final output. That seems quite overkill and perhaps will be too slow. Although very strong. The motor outputs about 0.42 lb on average so .42*112= 47lb! Now the lever of the joint itself makes you lose mechanical advantage due to the fulcrum location etc so it would drop down to say 15lb but my finger individual joint flexion power is only like 5-7lb so that’s double mine. So a bit overkill. So I might skip using one of the 5 pulleys. Having it there is nice though just in case we wanted to trade speed for power for some of them we’d then use that one as an optional strength boost we can tap into in the future if we want to trade speed for strength so I might just leave it in the design even if I don’t use it just yet. In testing I may find I prefer to use it afterall. Nice to have that option if needed.
So it turns out that when the forward and reverse directions portions of the thumb tack pulley downgearing system are doing their thing, they won’t always have the same mechanical advantage and so will be moving at different speeds. Therefore, I have to treat the forward and reverse pulley systems as entirely separate systems that have to be completely decoupled and handled independently, each pretending like the other one doesn’t even exist. They can share the same thumb tack, but have to be decoupled. So I cut the 2 fishing crimp sleeve in half using my miter saw and have to redo the plastic discs phase.
Each half 2 fishing crimp sleeve will have 3 plastic discs, one for outside of the larger diameter pulley and one for the outside of the smaller diameter pulley and one to split the two. Three total. And so with 3 plastic discs on each half crimp sleeve we have 6 total discs per thumb tack. We only had to deal with 5 before so things will be even tighter but it’s fine. We have enough room.
Next, since both sets of pulleys have different speeds that vary over time, the one that is not being actively winched in at any given time will be randomly releasing slack in a chaotic way. This can lead to tangling and all sorts of problems. To resolve this, we need a automatic slack tensioner system to aid the pulley system by keeping this releasing group of pulleys in a state of good tension at all times. This I will resolve by the pictured method.
So basically a tension spring connected to a metal eyelet will at all times be trying to pull the fishing line out of alignment and draw slack out of it. So as looseness is detected, it will immediately draw that in removing it from the system maintaining taughtness everywhere at all times. This will prevent the pulleys from getting tangled or anything like that. This setup can be placed anywhere in the path between the pulley system and the joint the pulley system is to actuate.
I started some testing on just the first pulley and lots of things went wrong:
Twice I had to increase the pulley size because I wasn’t able to use enough line winding onto said pulley for my total line draw need after accounting for the 32:1 downgear ratio. I calculated 27" as the very least it has to winch in at the motor shaft to get 0.84" total draw at the joint of the index finger which is perfect (27/32=.84). The pulleys were too small to accommodate 27" winched onto them so I had to increase the size - which meant removing everything, increasing size, then rewinding everything by hand for an hour plus! Just so tedious and annoying!
Another failure was one time, the string was too loose on a pulley and a tighter wrap got under the looser wraps and then the looser ones snugged against it binding it down like someone said would happen - which made it all stuck. Also I had many derailments where the string came off the pulleys and started wrapping up on the axle off all the pulleys and getting things quite stuck that way. I’ve been dealing with carefully untangling and rewinding tangled messes over and over. It’s been a disaster. I thought of scrapping the whole thing a couple times.
However, after taking a step back, it occurred to me that the tangling issues were largely due to forgetting to put the final outlet of the system under load to tension the whole system which would keep every pulley winding nice and tight and aligned well. So this was user error and oversight, not the fault of the basic concept of the system then. I just forgot to do those parts in my rush to start testing things. I planned to only add that stuff at the very end once the whole system was done and did not think I needed to do that just to start initial testing on a single pulley. That was a faulty assumption and an oversight. The whole system always has to be under tension to work right. My bad. Lesson learned and a valuable one at that. I did not fully grasp until I saw with my own eyes the disasters the importance of keeping it all under tension at all times. Yes I knew theoretically it was needed eventually, but I did not realize the whole thing was absolutely doomed instantly every time if it is not immediately under tension even for a first set of simple tests. That was revelatory for me.
I’m glad I got to see the failures first hand though because it enabled me to study what failures can be expected when tension is not placed and know intimately first hand the importance of tension and how lack of tension causes the failures specifically. Valuable to see it with my own eyes instead of only imagining it. This has helped me come up with some cool derailment prevention and loss of tension prevention mechanisms to fool proof my system more - even beyond the tension spring drawing shown in my last post.
Note: At the top of the motor output shaft, you can see two large pulleys where I have wound 2 pulleys for moving the motor axle clockwise and counter clockwise to simulate the motor moving. These are temporary windings just for testing manually without messing with electronics for now. These need to be fed in under tension at their inlet and their inlet needs to have a eye positioned in front of it that forces the string to stay in line and not feed in astray out of alignment. So also the pulleys for the main motor output shaft pulley for flexion I’m testing and the first pulley downgear I’m testing. Every place a string enters a pulley needs to have a small eye that guides the string onto the pulley perfectly in alignment with the plastic discs of the pulley and prevents it from derailing.
I noticed that when feeding string into a pulley I intuitively hold the string between thumb and index finger and pull the string away from the pulley as its being fed into the pulley to apply tension on the line and tight wraps on the pulley. I also align the string with the center of the pulley and hold my fingers at a minimal distance away but not too close. You want the string to be able to easily angle up and down from your finger pinch point to ride up and down the height of the pulley creating layers of wraps evenly as opposed to all wrapping in one area and not having a well distributed wrapping. If you study how to wind a bobbin on the top of a sewing machine, you see the string take 3 turns and go through a metal wheel that places tension onto it and only then does it enter the bobbin which it then winches onto the bobbin rapidly to wrap up the bobbin with string. These are all designed to create tension from the otherwise loose and floppy string leaving the main spool of thread you are feeding into your empty bobbin. I need to create a similar type of tension system to feed onto my pulleys which are acting just like that bobbin and need the same type of setup to succeed.
To create the eye that centers the string and forces it to neatly stay on the bobbin and not derail so easily, I plan to use 28 ga tinned copper bus wire. I will cut out a small section of that wire and glue it to the base platform the thumb tacks are glued to and then run it vertically and then form the eye shape that acts as a guide and derailment preventer. The eye will just be a oval with a couple legs glued down with 401 glue to hold that oval into position.
For the tension maker, I’m planning to use just a couple windings of tension spring with two small square pieces of plastic which will sandwich together and be pinched together snugly by the tension spring and the fishing line will be fed through this. I will use the same produce container plastic I’m using for the pulley discs. The fishing line will not be abraded/damaged by this in theory but only some pinching force applied to it to give it some tension and cause its feeding action of winching onto the pulley to be tight and snug to help prevent derailments and tangles and loose wraps. This system is meant to emulate and replace holding the string snugly between thumb and index finger as it’s fed into the pulley tightly.
Note: I’m not surprised I’m having these issues. The system was not under tension with the spring tension system I posted in my last post yet so that’s largely why this is all happening. These measures are mainly resolving issues caused by that lack. However, by adding these problem preventers into the system, I make the system more redundantly protected from any issues coming up in the future. It’s like backup systems for problem prevention here.
Note: thinking back to the tremendous struggles and trial and error I watched the engineer on the YouTube channel “StuffMadeHere” has been an encouragement to me in this struggle. His videos never really have just perfect flawless success the first test run. There is always problems and tons of trial and error tweaking to resolve each issue and creatively work around it until he ends up with these beautiful and elegant solutions in the end that work great. This seems par for the course so I just have to remember that this type of headache phase is typical.
Note: it is VERY tedious to have to untangle messes I’ve made due to lack of tension and proper guidance etc for the string windings. We have 5 total windings each around 3 feet long and all within a envelope close to the area of my thumbnail. It’s all compact and tedious and little precision needle nose tweezers or the tip of a sewing needle is the only stuff small enough to even get in there to grab anything. Just a overwhelming mess to fix issues. Not for the faint of heart. If I did not believe this has strong potential I’d give up but everything so far isn’t proving lack of merit but moreso is user error and not having a good setup going yet. But even that is a good thing as studying the error and causes of error is giving me great insight into what needs to be done to prevent future error and make the system reliable. I need this first hand education to preempt future errors.
I managed to implement a friction device for both main manual input pulleys for manually turning the motor shaft and one for creating tension on the system at all times. The former I made by just running the fishing line through a tension spring between the coils which pinched the fishing line enough to provide friction and feed it snugly into the motor shaft as it winches it. This successfully replaced the need to feed it in by hand between thumb and index finger with snug pinching action to get it to winch in tightly. For the tension on whole system need, I ended up just hanging a bolt from the final output string which put the whole pulley system under light tension.
You can see the tension springs sewn into the bone fabric on the left hand of the pulley system in the attached photo. You can also see the thread going through those if you look carefully. You can also see the output pulley on the right hand side of the system and see the little metal 28ga wire eyelet I made and the string being fed through that eyelet as it heads toward the camera lense shooting the photo. It then drops down out of sight. So you have to visualize it tied to a bolt. The bolt is currently taped off to a piece of bone since I removed the tension after testing to do some repairs.
So to the results: with these little modifications, the testing went much better. It was fairly reliable. The only times anything tangled up was when the bolt caught on something when I wasn’t paying attention which relieved the pulley system momentarily of the tension created by the weight of the bolt pulling down by gravity and tensing up the system. As soon as the system lost that tension, it began to unravel and created a tangled mess. This happened a few times in testing and was user error. Although one time a pulley just stopped turning randomly despite the tension created by the bolt. That concerned me alot. I don’t know if something got wedged in it or it was cockeyed just right or what but sometimes it gets stuck a bit. That cannot happen ever or the whole thing fails. Perhaps greasing the inside of the fishing crimp sleeve would prevent this from happening anymore. Also, the bolt is not THAT heavy. Using something with a bit more tension force placed onto the system could also help some more perhaps. I think using a tension spring as the tensioner - as shown in a drawing I posted previously - will be just the right amount of tension. I think it might pull a bit harder than the weight of the bolt was pulling. So between those two improvements I think this rare fluke will be avoided. And so far, as far as I’ve seen, as long as the pulleys spin freely and no tension is lost, everything appears to work perfectly. I was able to go back and forth with no issues many times besides the few screw-ups I already mentioned.
So the system appears to be a success so far from testing. I can now move onto building pulley 2 and 3 and testing them thoroughly in conjunction with pulley 1.
Also of note: I thought pulley 1 was a 3:1 ratio and perhaps it is at times, but the mechanical advantage ratio changes over the course of the winching process because the larger pulley gets smaller as it unwinds and the smaller pulley gets bigger as it winds up. So their relative diameters changes. Therefore, I guess we have to treat it as what is the average mechanical advantage it produces. Well in the final measurement, it cut down the original 27" of string being winched in to 13" of string on the final output. Trading down that distance of travel is the key to the creation of mechanical advantage.
We want the final output to be around 0.84". We want 32:1 mechanical advantage in the end. So pulley 1 got us to 2:1 mechanical advantage only so far. The next pulley likely will get us to around 4:1 and the next one 8:1. I am considering just stopping there. I have room for two more pulleys, but at the moment I’m considering doing the last two down-gears with my Archimedes downgearing pulley design. I think that method might be a little more robust and I kind of just want to use both methods at this time. Both have their pros and cons. I feel using both methods can help me learn which one is superior and learn to perfect both as I see which one is more durable long term, which one has more incidents, which one tangles from time to time and why and resolving those issues if they come up.
The great thing is this: the compact pulley method (thumb tack method) is giving us 8:1 downgearing roughly. Of the 27" of total draw, that brings output draw at that point down to 27/8=3.37". So the final two downgearing stages will be reducing 3.37" draw down to 0.84" draw. So 3.37"/2=1.68" then 1.68/2=0.84". So the Archimedes pulley system only needs TWO pulleys (down from whatever huge number we had before in our previous monstrosity of wraps and turns we had to do). To make just two pulleys is a piece of cake. Also, given 3.37" is all we are working with for the first pulley, and the pulley is equidistance in the center of that stretch, the total draw length of the two string halves wrapping around that first pulley is only 1.68". And the next pulley’s total length is .84". So 1.68+.84=2.5" give or take is the total length of the pulley system for this. This edition of the Archimedes pulley system adds 4:1 downgearing to the compact thumb tack pulley system’s 8:1 downgearing. Giving us a total of 8x4= 32:1 downgearing. That 2.5" total length Archimedes pulley system setup is so small compared to my original 16:1 Archimedes pulley system I published earlier that it is a lot more practical to use and we still save a ton of space.
Note: I could do the rotate in place style pulleys but just put them on the forearm instead of the motor as the motor is already getting quite cramped and tedious to work with. Or I can do Archimedes pulley system style with pulleys that move lengthwise along the forearm. Both styles are good. I lean toward the latter though at this time. Both would work though. I kind of just like the variety for learning purposes but I’m not 100% sure on this decision.
Note: an advantage to completing the final 4:1 downgearing on the forearm closest to the finger joint is the total distance of string travel from the motor to the finger joint and the total bends it takes all adds friction and when that friction is placed with a large force on it, it is harder on the teflon guide tubing. But by only doing partial downgearing at the location of the motor and saving the next phase of downgearing for being closer to the finger joint in question, we avoid a lot of forces and frictions in the teflon guide tubing running longer distances to get to the finger. In some cases, I have motors intended to actuate finger joints placed in my CAD as far away from the finger joint as the upper spine area and some in the lower latimus dorsi area! That is a LONG travel to go across the torso, past the shoulder, down the humerus, past he elbow, down the forearm, and then FINALLY to the finger joint it is actuating. That is a LOT of friction and turns introduced. So to navigate such long distances, it is ideal to have it be just high speed low torque during that time-frame and only beef up the torque with downgearing NEAR the finger joint it is actuating.
Note: the fishing line selected for downgearing while in the early phases of downgearing gets to be very fine low test strength fishing line like the 6lb test braided pe fishing line I’m using here. However, as the downgearing progresses, trading speed for torque, so also the fishing line selected for these sections needs to progressively get larger in diameter to accommodate the higher tensile forces involved. So we’ll be graduating from 6lb test to 20lb test then 70lb test then 130lb test. So we’ll be changing fishing line diameter 4 times in the routing from the motor output shaft to the joint itself! That said, keeping the downgearing near the motor minimal is best since it enables us to use the finer diameter fishing line for the long travel distance from the motor to the finger area. Then only once near the finger do we do the final downgearing stages and beef up to the larger diameter fishing lines. Then another advantage to all of this is the teflon tpfe guidance tubing we are using as guide tubing gets to be smaller diameter guidance tubing for those long fishing line runs. This saves space and enables us to make tighter turns without as much consequences in terms of wear and tear on those turns and tension/friction concentration at those turns. Also, when making turns AFTER full downgearing, the higher forces involved tend to want to crush and deform the TPFE tubing - which is why sometimes metal spring is used on the outside of the TPFE guidance tubing to make it into a Bowden cable and reinforce it to make it non-collapsible under the high tension forces that get involved by that point. We avoid all of this by keeping the downgearing at the location of the motor more minimal.
Note: that all said, our downgearing at the location of the motor thus far is planned to be 8:1. The motor outputs .45lb at our distance from the center of the motor shaft roughly. So 8x.45= 3.6lb of tension force as the output at the motor then. This means we get to use our 20lb test fishing line for the long travel from the motor to the distal forearm where we will do the final 4:1 downgearing bringing us up to 32:1 downgearing. That 20lb test line is only 0.2mm diameter so it and the TPFE guidance tubing we pair with it is very fine and can easily weave its way past everything and get to the distal forearm without taking up too much space or having to be reinforced by metal spring to prevent crushing or distortion of the TPFE. At least not in theory. If this proves not true, I can always add metal springs to any sections that are getting crushed or distorted to reinforce the outer diameter of the TPFE guide tubing in those areas - probably areas near tight turns? We want to take as few turns as possible though and make the turn radius as large as possible to cut down on friction as much as we can during the fishing line routing runs.
This is a slow, careful hand test of the pulley. Everything looks good. Also, I did fast tests but didn’t capture a nice shot of those with good hd closeup like this. In any case, this can show you some idea of how it all looks in action so far. The motor shaft is not turning electronically but is being turned by me pulling string wrapped around it to screen left is my hand pulling. To screen bottom is a hanging bolt that is being winched (not shown its cropped out of the image).
I wanted to avoid working on the electronic actuation which is a rabbit hole in itself until I have the pulley system fully done and tested. THEN I will make it all work electronically as the next phase.
After further deliberation, I have concluded that I should put 4:1 downgearing on the motor’s top with the turn in place pulleys and put 8:1 further downgearing located nearer to the joint being actuated - in this case the distal forearm. My reasoning for this is as follows: the routing from motor to near the joint is facing turns and friction etc and these become smaller factors when under lesser loads. So leaving things more high speed low torque initially during this phase of the routing is advantageous to lower friction and issues relating to deformation and compaction on the guidance tubing. This means less wear and tear and lower maintenance as well. Next, the turn in place pulleys are quite difficult to work with being very small and compact and lots of winding and whatnot is hard to deal with and tedious. Further, the turn in place style, when fully winched in has a much lesser downgear ratio compared to when fully extended due to the relative diameter size ratios of the pulley pairs involved changing in size during the winching. Whereas in the Archimedes pulley downgearing system the mechanical advantage is fixed and doesn’t change during the entire flexion nor extension process. This makes it more reliable and limits our losses during the near end of the winching phase that are incurred in the turn in place technique. This ensures we retain adequate mechanical advantage during all times.
Another important update is I have added axial rotation to the proximal finger joint in CAD. My index finger has a little bit of this type of control to it so I think it will be a nice boost to control and dexterity for the robot. Really maxing out the ability of the robot to finely manipulate its finger positions and improve performance of the fingers at all tasks. I added the necessary 4 additional motors to achieve this into the CAD as well. You can see the highlighted pair of axial rotation red indicator arrows which show the angle and location of the tendons from where they terminate to where they will exit the guidance tubing - the range of motion if you will.
Yet another important update is I now plan to just use a spring for the extension actuation force rather than the reverse direction turning of the motor. This is admittedly going to give the extension less strength and the flexion less strength. The flexion will have less strength because it is now fighting against the extension spring to get the finger to flex. The extension will have less strength because a spring alone is making it happen rather than a strong motor making it happen. I don’t mind either of these trade-offs though because it will greatly simplify the routing - cutting it in half, simplify the motor mounted pulleys, cutting it in half, and simplify the Archimedes pulley systems, cutting the amount of them we have to make in half. That is just a massive amount of time and effort saved. I just am not convinced that spending that level of time and effort just to have a stronger extension of the finger joints is worth it. Relatively passive spring powered extension of fingers is very common in hobby humanoid robot hands from what I’ve seen and although I’ve always viewed it as a lazy solution, I do see some merit in embracing more simplicity at times. Especially if you cannot JUSTIFY the added work of the alternative. The more I think about when I have needed finger extension to be very strong, the more I find that it seems to be a relatively rare occurrence. It just doesn’t seem to happen often. Now as the robot grows more able with its AI and more sophisticated, and gets into more and more types of work, the occasional scenario where fully powered extension of fingers will start to crop up more and more as a need. So at that time, I am thinking we can revisit this and get the extension actuation installed. So I still plan to reserve space for it on the CAD and ensure it can be done without any major problems or redesigns needed. It should be a smooth and straightforward upgrade option. But for a minimum viable product that can meet all of my goals, it is not necessary to implement in this stage of development. In fact, it is also possible to just have the robot install these on himself once he’s building the rest of his own body. Which means me doing it would be a waste of time if the robot could do it later instead of me. So in any case, this acts as a MAJOR shortcut and time-saver for me and will be a big game changer IMO. I’m excited about it. These types of big shortcuts really move the project forward in development very rapidly in large leaps saving countless hours and I love them. As long as they aren’t shortcuts that will come back to bite us later, I’m okay with them. I don’t think this one will bite us later so I say let’s go with it!
Note: it also just occurred to me that the robot could potentially have the extension actuation be in the form of geared n20 motors instead of reverse direction of the main 2430 bldc motors with pulley based downgearing. This would save alot of work but introduce noisy metal gearing to the robot. The reason I think this is okay to do is that these geared n20 motors would be slack lined and not interfere with fingers AT ALL nor be used on any way at all UNTIL the fingers need strong extension actuation - which as I said is incredibly rare. In this rare event, it tapping into these geared n20 motors for some extra oomph to get the extension to actuate harder would solve the problem and the little noise it created would be a rare occurrence type of noise. It would hardly be noticeable then and 99.999% of the time you’d never encounter this noise. The bigger issue would be noise in a common feature like blinking. Now THAT is annoying to hear gears EVERY TIME the robot blinks.
I have added the final pulley and rigged the guidance TPFE tube up to that pulley and routed that to the general vicinity of the Archimedes pulley downgearing system. As seen in the photo, I used super glue and post it note paper to form a TPFE guidance tube support structure to hold it in place as well as wrapped it in fabric tape and soaked that tape in super glue. I applied the super glue with the tip of a sewing needle as a precision application method.
The next step will be to test the pulley system as is and make sure everything is working really well.
If all testing passes, we will then modify the Archimedes pulley system on the forearm that we were using before to simplify it some since it now deals with only 7" or so of string compared to 27" of string it dealt with when we did not have the turn in place pulley system in place. So it will now be much more compact and fewer pulleys needed in it. So a bit of redesign and part recycling and we’ll be good to go on that. Also, before, it was a 16:1 Archimedes pulley system whereas now it will just be a 8:1 system.
I just ran a test of the second turn in place winching pulley and ran into several problems. First I noticed my main lines turning the motor were not the full 27"+ which I thought they were but just remeasured and found they weren’t. My bad. So I have to rewind those to fix that. Next, I noticed that just as we depart from the motor output shaft we experience mechanical advantage with each downgearing, so also when traveling from the downgeared area back to the motor output shaft we experience mechanical disadvantage. Up-gearing. Which means the bolt hanging as a load to place tension on the pulleys during a release cycle was not enough weight anymore (was barely enough before now clearly not enough). Now note that the bolt represents what a tension spring will normally be doing, tensing up the winch system to keep it all solid and tight. I don’t want this to have to be much heavier than the bolt. I want the system to not need much pulling to remain good in tension. The friction of the teflon tubing plus mechanical disadvantage etc was causing the pulleys to not remain tense (and their not being lubed yet on the junction between fishing crimp sleeve and thumb tack. So my solution I’m now contemplating is either moving one of the turn in place winches down to the location of the Archimedes pulleys on the forearm area and putting the tensioner apparatus between it and the previous pulley mounted on the motor so that the tensioner apparatus does not suffer as much mechanical disadvantage due to up-gearing OR I get rid of the second pulley entirely and just have the winch in place be a single pulley 2:1 and the Archimedes system be 16:1. Which still works as we have then 32:1 which is great still. Under such a system, the original 27" winching would be reduced to 13.5" by the winch in place pulley attached to the motor. The Archimedes pulley system then needs to go down, around one pulley, back up, around another pulley, then down and around another pulley, then back up and tie off. The total travel for those one down, one up, one down, one up (4 trips) is 13.5/4 so 3.4". And we’d sit at 8:1 at that point. so adding two more pulleys beneath that first group would add another 4:1 for 32:1 total. And those two pulleys would add another half inch tops so that gives us around 4" total length of the Archimedes system and not too crazy many turns in that first system like we had in our first prototype. Still quite simplified comparatively speaking. So this is a very viable solution. And that 4" is around 10cm and we had 11cm already planned for this purpose in the CAD in the forearm from before. So we are still within that target and viable still without any change to the CAD at all which is great.
Anyways, back to the test’s issues discovered. Oh yeah, also, the load (in this case a bolt hanging) struggled to keep the turn in place winches under tension while the motor was releasing the bolt (loosening or unwinching itself) not only because of the mechanical disadvantage from the pulley upgearing itself and from the friction in the TPFE guidance tubing but also from the friction of yet another pulley and its friction between its fishing crimp sleeve and its thumbtack. So I was having to manually pull down assisting the bolt, pulling down fairly hard just to get the system to stay taught and release without becoming a derailed tangled mess.
One other work around if I were insistent on going with more than one winch in place pulley would be to wind up extra line onto each turn in place winch pulley and have that directly attached to a tensioner spring placed wherever on the robot. This would always keep tension on just that winch in place pulley and be responsible for just that pulley and suffer no mechanical disadvantage beyond the TPFE guidance tubing it has to pass through to get there which shouldn’t be too bad if the spring can be nearby. This is a valid solution but adds another layer of complexity to the winch in place pulleys and now more routing and string to deal with. It also means loads of extra springs to place. Attached is a drawing of the proposed tensioning mechanism for tensioning each pulley individually.
In any case, were I to add this type of tensioning apparatus to each pulley and the necessary extra plastic disc and vertical spacing to glue string to the fishing crimp sleeve and wrap it up, that takes up even more vertical space in the system and we were already really lacking sufficient space as is. So to gain the extra space needed to do that, we’d have to extend the height of the fishing crimp sleeve to accommodate this which would then remove the option to add the reverse direction set of pulleys to the same thumb tack. Although that is probably fine now that we were planning to achieve that with just a tension spring as the actuator for extension of fingers instead of motor actuated extension and coupling that with a n20 gear motor for extra oomph in demand on a rare as needed basis for extension action when the tension spring is not strong enough to do it for the task at hand (rare). So yeah, this apparatus would work to solve the issues I’m having with my current test setup I think. But just going 16:1 on the Archimedes instead of 8:1 on the Archimedes pulleys and simply deleting the second winch in place pulley on the motor seems like the best option to me right now. Doing so means the Archimedes pulleys bumps up from 27/4 = 6.75" for Archimedes pulleys to deal with 6.75/4 (for up and down passes around first group of pulleys) so 1.68" in length then another pulley brings it to 2.1" total length compared to 27/2 (only one winch in place pulley) = 13.5" for Archimedes pulleys to deal with 13.5/4 (for up and down passes around first group of pulleys) so 3.4" then add 2 more pulleys so 4.2". So 2.1" vs 4.2". If we keep the second winch in place pulley we shave off 2.1" in Archimedes pulley system total length and shave off one pulley from its system too. Well I think just going 16:1 on the Archimedes is my move here. The winch in place pulleys have been a finicky mess to me. I prefer the Archimedes style pulley more and prefer to have that do the lions share of the downgearing after that first winch in place pulley cuts our total run-out in half. It still is a very useful help to cut things in half like that and much appreciated. But any more winch in place action is asking for trouble. I am much less able to control it and prevent issues that I feel I can do with the Archimedes pulley system. And you all have not seen my Archimedes pulley system in action it is really beautiful and elegant to watch and totally silent. So I’ll rely on it more and keep the winching turn in place pulleys to the minimum 2:1.
Someone trying to do their own robot may appreciate that I’m leaving these options for further exploration open for future devs. I’m going the way I am most comfortable but if you think the winching method is more comfy for you, downgear more with those than I chose. I am not ruling that out here - just preferring the Archimedes more based on my experiences so far.