LEGO Strandbeest Optimizer
Posted by Wade
This Jansen Linkage calculator allows you to quickly check how changing Strandbeest's bar lengths affect its foot-path, but remember, just because something looks good in a simulation doesn't guarantee it will work well when built - at least not without some tinkering, such as managing possible dead-points (see below).
This Jansen Linkage calculator allows you to quickly check how changing Strandbeest's bar lengths affect its foot-path, but remember, just because something looks good in a simulation doesn't guarantee it will work well when built - at least not without some tinkering, such as managing possible dead-points (see below).
Below is a video of the simulator in action, and the interactive simulator can be found further down this page:
Below are Jansen's linkage and a LEGO approximation, scaled so that the crank=3:
As you can see in the above images, the "LowFrame" variables are the distances from frame connection #2 to the center of the crank.
Below are the bar and joint maps used in Strandbeest's Scratch and Python code (which you can download here).
When building a simulated linkage in LEGO, remember to use beams with one more hole than the bar's length. For example, a bar of length 8 requires a LEGO beam with 9 holes, because when determining the length of LEGO beams, the first hole is always counted as zero.
Here's a LEGO build of this configuration in action:
Below are the foot-paths of both versions, as well as the speed of the feet when in contact with the ground (assuming 8 legs, not 12).
Notice how Strandbeest's horizontal foot-speed slows at both ends of the foot-path, which can cause Strandbeest to have a halting gait on higher friction terrain. This can be mitigated with feet that slide or rotate, as shown in this experiment. |
We tested this LEGO approximation with the heavy EV3 brick, which walked well on smooth surfaces, but needed rotating feet for carpeting - the leverage of its long legs put too much force on them when turning.
We tested this LEGO approximation with the heavy EV3 brick, which walked well on smooth surfaces, but needed rotating feet for carpeting - the leverage of its long legs put too much force on them when turning.
Below is the Scratch simulator which is started by clicking the green flag. You can also run the simulator on MIT's site where you can modify the Scratch code. A description of the algorithms used in this Jansen linkage calculator is here. To more finely tune the linkage you can find a Bars X 10 version of the simulator further down on this page.
After changing a bar's length, click somewhere other than a slider bar and then press the space bar to see the new linkage and foot-path, and use your keyboard's left/right arrows to rotate the crank. To choose Strandbeest's bar lengths click "Jansen" then press the space bar.
Below is another LEGO option with a higher, but shorter foot-path. Notice the X-value of the leg's lower frame connection #2 is one hole further from the crank ("LowFrameX" is increased from 8 to 9). You can see an example leg built with these dimensions in LEGO below.
Below is an example of how to build the legs of this shorter foot-path approximation of Strandbeest in LEGO. This configuration may work as an 8-leg, steerable Strandbeest, but it will need to be tested, and may require some tinkering. The long legs would provide plenty of room beneath the frame to mount either LEGO's battery box or EV3 brick, like with this long-legged Klann walker. But, as shown in the above Mindstorms Strandbeest video, EV3 versions may need either smooth surfaces, or rotating/sliding feet.
As shown below, Strandbeest's knee joint may tend to "flip" at its Dead Point:
As shown below, to build straight legs that don't bind or jam, make sure leg parts connect to parts in an adjacent plane
Other LEGO-Friendly Possibilities for Strandbeest
Other LEGO-Friendly Possibilities for Strandbeest
Below are a few more possibilities for approximating Strandbeest in LEGO with only using straight Technic beams. You may be able to find better approximations if you include more of LEGO's bent beams in your optimization (lengths below).
Of the above LEGO approximations of Strandbeest, Ver 3 has the most consistent foot-speed, but it doesn't step as high:
Of the above LEGO approximations of Strandbeest, Ver 3 has the most consistent foot-speed, but it doesn't step as high:
There are likely better LEGO-friendly versions of Strandbeest that can be found with the simulator, especially if LEGO's bent bars are included in the search. Note: more odd-length beams can be created by extending the below beams with straight beams, and plugging the side lengths and angle into the Law of Cosines to calculate the new distances.
An online triangle calculator is here.
Below is the Bars X 10 version of the simulator to more finely tune Jansen's linkage:
Below is the Bars X 10 version of the simulator to more finely tune Jansen's linkage: