Merge PR #74 from 'olivier-boesch/master' into master
This commit is contained in:
commit
59d97520c7
44
servos.scad
44
servos.scad
|
@ -9,6 +9,50 @@
|
||||||
|
|
||||||
use <triangles.scad>
|
use <triangles.scad>
|
||||||
|
|
||||||
|
/**
|
||||||
|
* TowerPro SG90 servo
|
||||||
|
*
|
||||||
|
* @param vector position The position vector
|
||||||
|
* @param vector rotation The rotation vector
|
||||||
|
* @param boolean screws If defined then "screws" will be added and when the module is differenced() from something if will have holes for the screws
|
||||||
|
* @param boolean cables If defined then "cables" output will be added and when the module is differenced() from something if will have holes for the cables output
|
||||||
|
* @param number axle_length If defined this will draw a red indicator for the main axle
|
||||||
|
*/
|
||||||
|
module towerprosg90(position=undef, rotation=undef, screws = 0, axle_length = 0, cables=0)
|
||||||
|
{
|
||||||
|
translate(position) rotate(rotation) {
|
||||||
|
difference(){
|
||||||
|
union()
|
||||||
|
{
|
||||||
|
translate([-5.9,-11.8/2,0]) cube([22.5,11.8,22.7]);
|
||||||
|
translate([0,0,22.7-0.1]){
|
||||||
|
cylinder(d=11.8,h=4+0.1);
|
||||||
|
hull(){
|
||||||
|
translate([8.8-5/2,0,0]) cylinder(d=5,h=4+0.1);
|
||||||
|
cylinder(d=5,h=4+0.1);
|
||||||
|
}
|
||||||
|
translate([0,0,4]) cylinder(d=4.6,h=3.2);
|
||||||
|
}
|
||||||
|
translate([-4.7-5.9,-11.8/2,15.9]) cube([22.5+4.7*2, 11.8, 2.5]);
|
||||||
|
}
|
||||||
|
//screw holes
|
||||||
|
translate([-2.3-5.9,0,15.9+1.25]) cylinder(d=2,h=5, center=true);
|
||||||
|
translate([-2.3-5.9-2,0,15.9+1.25]) cube([3,1.3,5], center=true);
|
||||||
|
translate([2.3+22.5-5.9,0,15.9+1.25]) cylinder(d=2,h=5, center=true);
|
||||||
|
translate([2.3+22.5-5.9+2,0,15.9+1.25]) cube([3,1.3,5], center=true);
|
||||||
|
}
|
||||||
|
if (axle_length > 0) {
|
||||||
|
color("red", 0.3) translate([0,0,29.9/2]) cylinder(r=1, h=29.9+axle_length, center=true);
|
||||||
|
}
|
||||||
|
if (cables > 0) color("red", 0.3) translate([-12.4,-1.8,4.5]) cube([10,3.6,1.2]);
|
||||||
|
if(screws > 0) color("red", 0.3) {
|
||||||
|
translate([-2.3-5.9,0,15.9+1.25]) cylinder(d=2,h=10, center=true);
|
||||||
|
translate([2.3+22.5-5.9,0,15.9+1.25]) cylinder(d=2,h=10, center=true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Align DS420 digital servo
|
* Align DS420 digital servo
|
||||||
*
|
*
|
||||||
|
|
Loading…
Reference in a new issue