Oliwka - palik; dom - pod monitory
This commit is contained in:
parent
a80a2d3abe
commit
8f34b7a7af
2 changed files with 152 additions and 0 deletions
74
Dom/pod_monitory.scad
Normal file
74
Dom/pod_monitory.scad
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
// Moduły PWM do LEDów
|
||||
module pwm_board() {
|
||||
// PCB board
|
||||
translate([0,-31,0]) union() {
|
||||
cube([33,37,1.5], center=true);
|
||||
translate([0,33-2,7.5]) rotate([90,0,0]) cylinder(d=8, h=20, $fn=50);
|
||||
}
|
||||
}
|
||||
|
||||
// guzik
|
||||
module switch() {
|
||||
rotate([90,0,0]) union() {
|
||||
cylinder(d=20, h=100);
|
||||
rotate([0,0,0]) translate([-2.5,0,0]) cube([5,11,100]);
|
||||
rotate([0,0,180]) translate([-2.5,0,0]) cube([5,11,100]);
|
||||
rotate([0,0,90]) translate([-1,0,0]) cube([2,11,100]);
|
||||
}
|
||||
}
|
||||
|
||||
// wzkacniacz 2.1 z 3 potencjometrami
|
||||
module amp1() {
|
||||
translate([0,0,14.25]) rotate([90,0,0])
|
||||
for (i = [0,22.25, 44.5]) {
|
||||
translate([i,0,0]) cylinder(d=8, h=15, $fn=50);
|
||||
}
|
||||
translate([-25,-70-15,5.5]) cube([101,70,1.5]);
|
||||
}
|
||||
|
||||
// wzmacniacz 1 potencjometr
|
||||
module amp2() {
|
||||
translate([0,0,15.75]) rotate([90,0,0]) cylinder(d=8, h=15, $fn=50);
|
||||
translate([-18,-95-15,5]) cube([64,95,1.5]);
|
||||
}
|
||||
|
||||
t = 1.5; // wall thickness
|
||||
|
||||
h1 = 40; // wysokość
|
||||
w1 = 215; // szerokość
|
||||
d1 = 120; // głębokość
|
||||
|
||||
difference() {
|
||||
translate([0,-12,-t]) union() {
|
||||
cube([w1,t,h1]);
|
||||
rotate([90,0,0]) difference() {
|
||||
translate([0,0,0]) cube([w1,h1,d1]);
|
||||
translate([t,t,0]) cube([w1-2*t, h1-2*t, d1+5]);
|
||||
}
|
||||
}
|
||||
union() {
|
||||
translate([25,0,0]) amp2();
|
||||
translate([107,0,0]) amp1();
|
||||
translate([200,0,20]) switch();
|
||||
}
|
||||
}
|
||||
|
||||
h2 = 22; // wysokość
|
||||
w2 = 90; // szerokość
|
||||
d2 = 35; // głębokość
|
||||
|
||||
translate([(w1-w2)/2,0,h1 + 5]) difference() {
|
||||
translate([0,-12,-1.5]) union() {
|
||||
cube([w2,t,h2]);
|
||||
rotate([90,0,0]) difference() {
|
||||
translate([0,0,0]) cube([w2,h2,d2]);
|
||||
translate([t,t,0]) cube([w2-2*t, h2-2*t, d2+5]);
|
||||
}
|
||||
|
||||
}
|
||||
translate([20,0,0]) union() {
|
||||
translate([0,5,5]) pwm_board();
|
||||
translate([50,5,5]) pwm_board();
|
||||
|
||||
}
|
||||
}
|
||||
78
Oliwka/palik2.scad
Normal file
78
Oliwka/palik2.scad
Normal file
|
|
@ -0,0 +1,78 @@
|
|||
include <BOSL2/std.scad>
|
||||
// model 1 - palik
|
||||
palik_d = 50;
|
||||
palik_h = 170;
|
||||
t=2;
|
||||
|
||||
conn_clear=0.3; // clearance
|
||||
connect_h=15;
|
||||
|
||||
// model 2 - podstawka
|
||||
nozki_l = 30;
|
||||
nozki_t = 3;
|
||||
nozki_ile = 3;
|
||||
|
||||
noga_h = 50;
|
||||
noga_d = 5;
|
||||
|
||||
gora_h = 15;
|
||||
|
||||
dz_ile_kw = 3;
|
||||
dz_ile_kol = 3;
|
||||
|
||||
module column_hex(ile_h, ile_d, size, h, angle) {
|
||||
for(i=[0:ile_h]) {
|
||||
translate([0,0,i*h]) rotate([0,0,i*(360/ile_d/2)]) union() {
|
||||
for (j=[0:360/ile_d:360]) {
|
||||
rotate([angle,30,j]) cylinder(d=size, $fn=6, h=100);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
union() {
|
||||
// palik z dziurami
|
||||
difference() {
|
||||
cylinder(d=palik_d, h=palik_h, $fn=360);
|
||||
down(0.1) cylinder(d=palik_d-2*t, h=palik_h+0.2, $fn=360);
|
||||
up(8) column_hex(11, 10, 15, 13, 90);
|
||||
}
|
||||
// cienszy element do łączenia
|
||||
rotate([0,180,0]) difference() {
|
||||
union() {
|
||||
cylinder(d=palik_d, h=5, $fn=360);
|
||||
cylinder(d=palik_d-2*t-2*conn_clear, h=connect_h, $fn=360);
|
||||
}
|
||||
down(1) cylinder(d=palik_d-4*t-2*conn_clear, h=connect_h+3, $fn=360/2);
|
||||
}
|
||||
}
|
||||
|
||||
// podstawka
|
||||
right(2*palik_d) union() {
|
||||
// nóżki
|
||||
for (i=[0:360/nozki_ile: 360]) {
|
||||
rotate([0,0,i]) translate([0,-nozki_t/2,0])
|
||||
cube([nozki_l, nozki_t, nozki_t]);
|
||||
}
|
||||
// noga
|
||||
cylinder(h=noga_h, d=noga_d, $fn=20);
|
||||
// góra
|
||||
up(noga_h - t) union() {
|
||||
up (gora_h/2) difference() {
|
||||
cyl(d=palik_d, h=gora_h, $fn=360, rounding1=3);
|
||||
down(t) cyl(d=palik_d-2*t, h=gora_h+3*t, $fn=360, rounding2=-5);
|
||||
}
|
||||
// dziury + podstawka
|
||||
up(t/2 + 0.2) union() {
|
||||
for(i=[0:360/dz_ile_kw:360]) {
|
||||
rotate([0,0,i]) cube([palik_d-2*t,t,t], center=true);
|
||||
}
|
||||
for(i=[0:(palik_d-2*t)/dz_ile_kol: (palik_d-2*t)]) {
|
||||
down(t/2) difference() {
|
||||
cylinder(d=i+0.1, h=t, $fn=360);
|
||||
down(0.1) cylinder(d=i-2*t, h=t+0.2, $fn=360);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Reference in a new issue