X-Git-Url: https://git.harvie.cz/?a=blobdiff_plain;f=openscad%2Fconnector.scad;fp=openscad%2Fconnector.scad;h=d09ed2c2074d2380a760599e5413755818ca8894;hb=b8ad78c0ace23e51b0c41cb213ab9301a854cf30;hp=0000000000000000000000000000000000000000;hpb=54b335838d60577adc59d79fc2d7e4817208f7f9;p=mirrors%2FDesigns.git diff --git a/openscad/connector.scad b/openscad/connector.scad new file mode 100644 index 0000000..d09ed2c --- /dev/null +++ b/openscad/connector.scad @@ -0,0 +1,49 @@ +/* + * TODO + ** make more parametric + ** add parameter to specify number of wires/pins + */ + +$fn=10; //Minimum nuber of circle segments + +module conn_male(size=23, thickness=1.5, full=false) { + difference() { + union() { + translate([0,size*0.3,0]) cube([size-(thickness*2),(size-(thickness*2))*2,size-(thickness*2)], center=true); + translate([size/3,(size/3)-thickness]) rotate([0,0,145]) cube([size*0.2,size/4,size-(thickness*2)], center=true); + } + if(!full) { + translate([0,size/2,0]) cube([size-(thickness*4),size*1.5,size+1], center=true); + rotate([0,90,0]) + for(i = [(size/3)-thickness,-(size/3)+thickness]) + translate([i,0,0]) + rotate([90,0,0]) + cylinder(size*2, size/10, size/10); + } + } +} + +module conn_female(size=23, thickness=1.5) { + difference() { + cube(size, center=true); + conn_male(size, thickness=thickness, full=true); + for(i = [size/4,-size/4]) + translate([i,0,0]) + rotate([90,0,0]) cylinder(size*2, size/10, size/10); + } +} + +module connector(size=10, thickness=1.5, gap=0.6, design=false) { + if(!design) { + //Print + translate([0,size*1.5,-(thickness+gap/2)]) conn_male(size-gap,thickness); + conn_female(size,thickness); + } else { + //Design + conn_male(size-gap,thickness); + % conn_female(size,thickness); + } +} + +//connector(design=true); +connector(); \ No newline at end of file