Fiz o desenho e impressão de uma caixinha dutada para um falante pequeninho que eu tinha aqui. É possível redimensionar o tamanho da caixa para outros tamanhos de alto-falantes, bem como de outros parâmetros.
segue a listagem do programa em OpenScad (renomear arquivo para: caixa.scad):
$fn = 100;
len = 90; //eixo y altura
wid = 55; //eixo x largura
hei = 40; //eixo z profundidade
thi = 1.6; //espessura parede
diamspeak = 36.5; // diametro do falante
diamduto = 20; // diametro do duto
diamanele = diamspeak + thi;
lenduto = 20; // comprimento do duto
clen = len / 2;
cwid = wid / 2;
separ = 70;
caixa = true;
tampa = true;
if(caixa){
difference(){
union(){
difference() {
translate([-cwid, -clen, 0])
cube([wid, len ,hei]); // x y z desenha caixa
translate([-cwid + thi, -clen + thi, thi])
cube([wid - 2*thi, len - 2*thi, hei - thi]); // oco da caixa
}
translate([0,-20,0])
cylinder(d = diamanele, h = 3.2); // desenha anel do falante
translate([0,20,0])
cylinder(d = diamduto, h = lenduto); // desenha duto
}
translate([0,-20,thi])
cylinder(d = diamspeak, h = thi); // oco do falante
translate([0,-20,0])
cylinder(d = diamspeak- thi, h = thi); // buraco do falante
translate([0,20,0])
cylinder(d = diamduto - thi, h = lenduto); // oco do duto
}
}
if(tampa){
difference(){
union(){
translate([-cwid, -clen, separ])
cube([wid, len ,thi]); // x y z
translate([-cwid+thi, -clen+thi, separ-thi])
cube([wid-2*thi, len-2*thi ,thi]); // x y z
}
translate([-cwid+2*thi, -clen+2*thi, separ-thi])
cube([wid-4*thi, len-4*thi ,thi]); // x y z
translate([10,-20,separ])
cylinder(d = 3, h = 4); // furo1 de borne
translate([-10,-20,separ])
cylinder(d = 3,h = 4); // furo2 de borne
}
}
Se fizer citação desta mensagem, retire as imagens de dentro da citação.