diff --git a/pf-conn.scad b/pf-conn.scad new file mode 100644 index 0000000..575a3bc --- /dev/null +++ b/pf-conn.scad @@ -0,0 +1,40 @@ +// Lego PF-like connector layout +// GPLv3, (c) Vitaliy Filippov, 2016 + +$fn = 40; +difference() { + union() { + cube(size=[16, 16, 6.4]); + translate([4, -4, 2]) cube(size=[8, 5.7+0.1, 6.4]); + translate([4, 1.3, 2]) cube(size=[8, 6.8, 6.4]); + translate([(16-11.2)/2, 1.7, 2]) cube(size=[11.2, 6, 6.4]); + translate([(16-11.2)/2, 1.7+3, 6.4]) scale([(13-11.2)/2/3, 1, 1]) cylinder(r=3, h=2); + translate([16-(16-11.2)/2, 1.7+3, 6.4]) scale([(13-11.2)/2/3, 1, 1]) cylinder(r=3, h=2); + translate([12, 12, 6.4]) cylinder(r=4.9/2, h=2); + translate([4, 12, 6.4]) cylinder(r=4.9/2, h=2); + } + translate([(16-10.5)/2, 1.7+1.7, 6.4]) cube(size=[10.5, 3, 2.1]); + + difference() { + translate([1.6, 1.6, -0.1]) cube(size=[16-3.2, 8-1.6, 2+0.1]); + translate([(16-9.2)/2, 1.7+1.6, -0.2]) cube(size=[9.2, 3, 2]); + } + difference() { + translate([1.6, 8+1.6, -0.1]) cube(size=[16-3.2, 8-3.2, 2+0.1]); + translate([8, 8+4, -0.1]) cylinder(r=1.5, h=2); + } + translate([4, -4, -0.1]) cube(size=[8, 6, 2+0.1]); +} + +// red = +9V, black = ground +// green = C1, blue = C2 (control wires). C1-C2 voltage may vary from -9V to +9V + +color([1, 0, 0]) translate([16-4-0.8-1.8, 6.3, 6.4]) cube(size=[1.8, 1.1, 2.1]); +color([0, 1, 0]) translate([16-4-3.8-1.8, 6.3, 6.4]) cube(size=[1.8, 1.1, 2.1]); +color([0, 0, 0]) translate([4+0.8, 2.4, 6.4]) cube(size=[1.8, 1.1, 2.1]); +color([0, 0, 1]) translate([4+3.8, 2.4, 6.4]) cube(size=[1.8, 1.1, 2.1]); + +color([1, 0, 0]) translate([16-4-0.8-1.8, 6.3-1, -0.1]) cube(size=[1.8, 1.1, 2.1]); +color([0, 1, 0]) translate([16-4-3.8-1.8, 6.3-1, -0.1]) cube(size=[1.8, 1.1, 2.1]); +color([0, 0, 0]) translate([4+0.8, 2.2+1, -0.1]) cube(size=[1.8, 1.1, 2.1]); +color([0, 0, 1]) translate([4+3.8, 2.2+1, -0.1]) cube(size=[1.8, 1.1, 2.1]);