|
-
- $fn = $preview? 32 : 50;
- sg90_length = 22.2;
- sg90_width = 11.8;
- sg90_flange_pos = 15.9;
- sg90_flange_thinkness = 2.5;
- sg90_flange_length = 5;
- sg90_flange_hole_pos = 2.7;
- sg90_flange_hole_bore = 2;
-
- module sg90(){
- translate([0,0,-sg90_flange_pos+7]) {
- color("steelblue") import("SG90_v7.stl");
- }
- }
-
- module sg90_bracket_halve(){
- thinkness = 5;
- translate([0,0,-thinkness]) difference(){
- cube([sg90_width,sg90_flange_length,thinkness]);
- translate([sg90_width/2,sg90_flange_hole_pos,-1]) cylinder(d=sg90_flange_hole_bore,h=thinkness+2);
- }
- }
-
- module sg90_bracket(){
- hull(){
- translate([-2,-2,0]) cube([2,27.8,13]);
- translate([-5,-2,8]) cube([5,27.8,5]);
- }
- translate([-2,-2,0]) cube([16,2,7]);
- translate([-2,23.8,0]) cube([16,2,7]);
- translate([-2,23.8,9.5]) cube([4,2,3.5]);
- translate([-2,-2,9.5]) cube([4,2,3.5]);
-
- difference(){
- translate([13,-2,0]) cube([1.5,27.8,7]);
- translate([17.8,11.9,4]) rotate([0,0,45]) cube([20,20,10],center=true);
- }
- //import("servo-halter-sg90-1.stl");
- }
- /* translate([0,0,sg90_flange_pos]) {
- translate([0,-sg90_flange_length,0]) sg90_bracket_halve();
- translate([0,sg90_length,0]) sg90_bracket_halve();
- }*/
-
-
- sg90();
- sg90_arm(21,135);
- sg90_bracket();
-
- module sg90_arm(length, rot){
- translate([5.9,16.3,19.5]) rotate([0,180,rot]) difference(){
- union(){
- translate([0,0,-0.5]) cylinder(d=9,h=3.5,center=true);
- hull(){
- cylinder(d=9,h=2.5,center=true);
- translate([0,-length,0]) cylinder(d=5,h=2.5,center=true);
- }
- }
- cylinder(d=2.8,h=8,center=true);
- translate([0,0,0.5]) cylinder(d=4.8,h=3.5,center=true);
- translate([0,-length,0]) cylinder(d=2,h=8,center=true);
- }
- }
|