While our LEGO-scale TrotBot solved the problem of feet jamming on obstacles, we weren't sure how our mechanism would work at large scale. So, in the ethos of our LEGO Engineering class, we decided to "put our ideas to the test" by scaling it up.
Team Preparation
Team members brought three key areas of experience to the scale-up:
1. Experience with Straight-Line Linkages that convert the rotational motion of an axle to the linear motion of a foot sweeping across the ground. The team explored various linkages, their trade-offs, and how they can be implemented on motorized frames to create functional walking machines in this advanced LEGO Engineering class.
2. Experience with Statics, or the building of strong structures with minimal material and weight. The primary problem with scaling up is reduced strength-to-weight ratios, and if we did not employ basic Statics principles in the scale-up the resulting TrotBot would not even be able to stand under its' own weight, let alone walk. For the previous two years the team had solved numerous Statics problems in our LEGO Engineering challenges, such as bridges and cranes which were tested for failure weight, and they had become quite skilled at using triangles to transform bending forces into tension and compression in creative ways.
3. Problem Solving. While all students develop problem solving skills to a degree, this project required those skills at a very high level. Problems had to be broken down into sub-problems, testing procedures for the sub-problems had to be developed, and the trade offs of potential solutions had to be thought about critically. The team had honed their problem solving skills in our various LEGO Engineering challenges where no solutions were provided for them, only parts, some sort of testing method like this bridge tester, and a motivating goal.
During the scale-up the team also developed skills with basic tool use, and showcased their computer programming skills by writing their own improved versions of our linkage simulation software, which uses the Pythagorean Theorem and some tricky algebra to calculate the joints' X,Y coordinates.
To Find Better Solutions, Focus on Defining Problems
“If I had an hour to solve a problem, I’d spend 55 minutes thinking about the problem and 5 minutes thinking about solutions.”
Albert Einstein
During the first month of the project we met a couple times a week to explore the problems involved in scaling up with experiments where possible. We even explored solving the problem of "how to solve problems", and employed techniques like "ask 3 whys" to get to the root causes: "What causes X? Y. What causes Y? Z. What causes Z?". If you've ever employed this powerful problem solving technique, then you probably know how difficult it can be to come up with the 3rd "Why?", and how you have to fight the urge to simply marvel at your initial solution.
Design Choice: Lean or Fat?
The major design decision we had to make was whether to go with 2 or 3 "horses" per side of the robot (8 or 12 legs). While we knew from both LEGO prototyping and computer modeling that 12 legs would significantly smooth TrotBot's gait due to having more foot-contact with the ground at each corner, this also seemed like an overly wide solution. Instead, we chose the more risky design path of 8 legs, thinking that if we could make that configuration functional we would have a better solution for our goal of creating a walking machine that could traverse rugged terrain.
To Find Better Solutions, Focus on Defining Problems
“If I had an hour to solve a problem, I’d spend 55 minutes thinking about the problem and 5 minutes thinking about solutions.”
Albert Einstein
During the first month of the project we met a couple times a week to explore the problems involved in scaling up with experiments where possible. We even explored solving the problem of "how to solve problems", and employed techniques like "ask 3 whys" to get to the root causes: "What causes X? Y. What causes Y? Z. What causes Z?". If you've ever employed this powerful problem solving technique, then you probably know how difficult it can be to come up with the 3rd "Why?", and how you have to fight the urge to simply marvel at your initial solution.
Design Choice: Lean or Fat?
The major design decision we had to make was whether to go with 2 or 3 "horses" per side of the robot (8 or 12 legs). While we knew from both LEGO prototyping and computer modeling that 12 legs would significantly smooth TrotBot's gait due to having more foot-contact with the ground at each corner, this also seemed like an overly wide solution. Instead, we chose the more risky design path of 8 legs, thinking that if we could make that configuration functional we would have a better solution for our goal of creating a walking machine that could traverse rugged terrain.
Construction
We then went into the garage to start building, which took most of the summer because the wooden parts had to be glued and clamped, and we manually drilled the joints' holes on a drill press. Replacing wood with square aluminum tubes would have been faster and the resulting parts would have weighed less, but aluminum was beyond our budget.
Walking Test 1: Breaking a Shoulder
While our frame, legs, transmission, etc. largely functioned as planned, our 2 horse per side design choice proved inadequate. Rather than having a foot on the ground of each corner of the machine like a stable, 4-wheeled vehicle, this configuration oscillated to a tripod state, which was also a low point from which the machine resisted rising. Furthermore, descending into these low points put large stresses on the legs, breaking a shoulder.
We then went into the garage to start building, which took most of the summer because the wooden parts had to be glued and clamped, and we manually drilled the joints' holes on a drill press. Replacing wood with square aluminum tubes would have been faster and the resulting parts would have weighed less, but aluminum was beyond our budget.
Walking Test 1: Breaking a Shoulder
While our frame, legs, transmission, etc. largely functioned as planned, our 2 horse per side design choice proved inadequate. Rather than having a foot on the ground of each corner of the machine like a stable, 4-wheeled vehicle, this configuration oscillated to a tripod state, which was also a low point from which the machine resisted rising. Furthermore, descending into these low points put large stresses on the legs, breaking a shoulder.
The Problem isn't the Shoulders, it's the Feet
While the obvious, brute-force solution for our broken shoulder was to build stronger shoulders, which we did, we first paused to explore why it broke to better define the problem. Slow-motion videos of the walking test showed the shoulder broke not just from the force of hitting the low point of the tripod state, but from the leg bending sideways upon impact. We debated solutions to prevent such bending, and finally got consensus when we ran an experiment on our LEGO Engineering bridge tester. This experiment made it obvious that legs with wide feet would resist bending sideways, since such bending would push the machine up. In other words, wide feet put gravity on our side. We then built and installed the stronger shoulders and the wide "Feet 1.0" and did our second walking test. While TrotBot still suffered from the tripod low points, the wide feet helped to keep the legs vertical and the shoulders did not break.
While the obvious, brute-force solution for our broken shoulder was to build stronger shoulders, which we did, we first paused to explore why it broke to better define the problem. Slow-motion videos of the walking test showed the shoulder broke not just from the force of hitting the low point of the tripod state, but from the leg bending sideways upon impact. We debated solutions to prevent such bending, and finally got consensus when we ran an experiment on our LEGO Engineering bridge tester. This experiment made it obvious that legs with wide feet would resist bending sideways, since such bending would push the machine up. In other words, wide feet put gravity on our side. We then built and installed the stronger shoulders and the wide "Feet 1.0" and did our second walking test. While TrotBot still suffered from the tripod low points, the wide feet helped to keep the legs vertical and the shoulders did not break.
After this test we disassembled TrotBot and we went back to prototyping in LEGO to find a solution for the tripod low points of our 8 leg configuration. All of our useful ideas came from such rapid LEGO prototyping, which we would then optimize with our computer simulators. Somehow, manipulating LEGO beams with our hands generated more ideas than when we only looked at our screens.
Since we didn't want to make new leg parts, we didn't re-optimize the linkage and instead focused on creating some sort of active foot that could smooth the gait. This effort yielded the additional linkage that acts like an expanding heel for each foot, which increased the amount of foot contact per crank rotation, reducing the need for more legs. We also explored adding toes to the feet, and chose the fixed-angle toe shown in the image below. We referred to this heel/toe combination as our "articulated foot", or "Feet 2.0". Walking Test 3 The following summer we installed Feet 2.0. This was much more involved than Feet 1.0 since the additional linkage attached to the mid-point of a leg section, which required trussing to handle the stress. As with the other leg sections we made jigs, or drill templates, to create identical parts on my drill press, which we would assemble into legs as if they were giant LEGO parts. |
Result
While feet 2.0 improved TrotBot's gait, it was still too bumpy. Also, the fixed-angle toes tended to trip on obstacles, compromising our primary goal of walking on rugged terrain! We played around with a few ideas to improve the feet, but instead decided to re-optimize the linkage. You can see simulations of this smoother, version 1 linkage, along with our original version 0 linkage here.
Below is a LEGO approximation of TrotBot's version 1 linkage while carrying a 10 pound load to simulate larger-scale performance. The test includes improved toes that retract to avoid tripping, and demonstrates how critical TrotBot's heels and toes are for bearing weight - at least for 8-legged TrotBots.
While feet 2.0 improved TrotBot's gait, it was still too bumpy. Also, the fixed-angle toes tended to trip on obstacles, compromising our primary goal of walking on rugged terrain! We played around with a few ideas to improve the feet, but instead decided to re-optimize the linkage. You can see simulations of this smoother, version 1 linkage, along with our original version 0 linkage here.
Below is a LEGO approximation of TrotBot's version 1 linkage while carrying a 10 pound load to simulate larger-scale performance. The test includes improved toes that retract to avoid tripping, and demonstrates how critical TrotBot's heels and toes are for bearing weight - at least for 8-legged TrotBots.
Below is a video summary of our project that we put together for the Maker Faire:
Thanks for your interest in our rabbit hole. If you're considering "going big", then our advice to you is:
- assume that a large-scale version of your walker will fail in a number of unknown ways
- therefore, do a lot of critical testing at small scales before proceeding
- with goal of breaking your creation in as many ways as you can
- go thru several iterations of build-test-modify, and if you can no longer break your creation, then start developing plans for scaling up
Good luck!
Wade