Last Updated or created 2025-04-15
Using 3x SG90s (metal gears).
These performed far better using my Servo tester than the cheap plastic ones.
First version using Openscad, with variables to control how it looks.
This is printed using TPU.
RepeatingBit = 4; nr = 20; difference(){ union(){ for (a =[0:nr]) { translate([0,0,(a * (RepeatingBit))]) { translate([0,0,a*a*1.3]) cylinder ( h=1+(a*1.1), r1=1,r2=7.5+(a*(a/10)), $fn=30 ); translate([0,0,a*a*1.3+1+(a*1.1)]) cylinder ( h=3+(a*1.5), r1=7.5+(a*(a/10)),r2=7.5+(a*(a/10)), $fn=30 ); } } translate([0,0,0]) cylinder( h=650, r1=2,r2=4 , $fn=30 ); } translate([5,0,-10]) rotate([0,2.5,0]) cylinder( h=1000, r1=1,r2=1 , $fn=30 ); translate([-3,4,-10]) rotate([-4/2,-3/2,0]) cylinder( h=1000, r1=1,r2=1 , $fn=30 ); translate([-3,-4,-10]) rotate([4/2,-3/2,0]) cylinder( h=1000, r1=1,r2=1 , $fn=30 ); translate([2,3,-10]) rotate([-1.4,0.6,0]) cylinder( h=1000, r1=2,r2=nr*1.3 , $fn=30 ); translate([2,-3,-10]) rotate([1.6,0.7,0]) cylinder( h=1000, r1=2,r2=nr*1.3 , $fn=30 ); translate([-3.5,0,-10]) rotate([0,-1.8,0]) cylinder( h=1000, r1=2,r2=nr*1.3 , $fn=30 ); }
Video with some organic movement
Using a Raspberry Pi, Python3 and a Servo HAT.
Bottom part
