/Modules/Mechanical/Boxes/BASEBOX02A/CAD/assembly.scad |
---|
1,60 → 1,53 |
use <configuration/sloupek.scad> |
use <configuration/plbase.scad> |
use <configuration/bocnice.scad> |
use <configuration/otvory.scad> |
use <configuration/text/Write.scad> |
include <configuration/manufactury_conf.scad> |
include <configuration.scad> |
include <configuration/otvory_conf.scad> |
barva_sloupku = "cyan"; |
barva_listy = "red"; |
barva_celicka = "green"; |
barva_plbase = "yellow"; |
//translate([0.5*10.16,-5.08,14]) |
// cube([10.16,10.16,10.16]); |
//BOCNICE |
//------------------------------------------------------------- |
bocnice(pocet_der1+2,pocet_der2+2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_bocnice,prekryti_der,tloustka_bocnice); |
//PLBASE SPODNI |
//------------------------------------------------------------- |
color(barva_plbase) |
translate([-((pocet_der2+2)*vzdalenost_der+2*vzdalenost_od_okraje)/2-tloustka_bocnice,-vzdalenost_od_okraje-tloustka_bocnice,-(vyska_bocnice/2)]) |
rotate(a=[180,0,90]) |
plbase(pocet_der1+3,pocet_der2+3,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,tloustka_plbase,prekryti_der,tloustka_bocnice); |
//PLBASE HORNI |
//------------------------------------------------------------- |
translate([plbase_tolerance_horni-0.2,+plbase_tolerance_horni-0.2,vyska_bocnice/2-tloustka_plbase/2]) |
rotate(a=[0,0,0]) |
{ |
//plbase_vrchni_kryt(pocet_der1+2,pocet_der2+2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_bocnice,prekryti_der,tloustka_bocnice,plbase_tolerance_horni); |
plbase_vrchni_kryt_pro_odecet(pocet_der1+2,pocet_der2+2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_bocnice,prekryti_der,tloustka_bocnice,-0.2,tloustka_plbase); |
} |
use <configuration/sloupek.scad> |
use <configuration/plbase.scad> |
use <configuration/bocnice.scad> |
use <configuration/otvory.scad> |
use <configuration/text/Write.scad> |
use <upravena_bocnice.scad> |
include <configuration/manufactury_conf.scad> |
include <configuration.scad> |
include <configuration/otvory_conf.scad> |
barva_sloupku = "cyan"; |
barva_listy = "red"; |
barva_celicka = "green"; |
barva_plbase = "yellow"; |
//translate([0.5*10.16,-5.08,14]) |
// cube([10.16,10.16,10.16]); |
//BOCNICE SE DNEM |
//------------------------------------------------------------- |
upravena_bocnice(); |
//PLBASE HORNI |
//------------------------------------------------------------- |
translate([plbase_tolerance_horni-0.2,+plbase_tolerance_horni-0.2,vyska_bocnice/2-tloustka_plbase/2]) |
rotate(a=[0,0,0]) |
{ |
//plbase_vrchni_kryt(pocet_der1+2,pocet_der2+2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_bocnice,prekryti_der,tloustka_bocnice,plbase_tolerance_horni); |
plbase_vrchni_kryt_pro_odecet(pocet_der1-1,pocet_der2-1,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_bocnice,prekryti_der,tloustka_bocnice,-0.2,tloustka_plbase); |
} |
/Modules/Mechanical/Boxes/BASEBOX02A/CAD/configuration/bocnice.scad |
---|
1,160 → 1,160 |
use <text/Write.scad> |
use <MLAB_logo.scad> |
use <sloupek.scad> |
use <plbase.scad> |
include <manufactury_conf.scad> |
include <../configuration.scad> |
//Bočnice |
//------------------------------------------------------------ |
module bocnice(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_bocnice,prekryti_der,tloustka_bocnice){ |
difference () { |
union() |
{ |
translate([-((pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,vyska_bocnice/2]) |
rotate(a=[180,0,90]) |
translate([radidus_hrany,radidus_hrany,0]) |
translate([-tloustka_bocnice,-tloustka_bocnice,0]) |
//obvod |
difference () { |
minkowski() |
{ |
cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,vyska_bocnice+tloustka_plbase]); // base plastics brick |
cylinder(r=radidus_hrany,h=0.1); |
} |
translate([tloustka_bocnice,tloustka_bocnice,-0.1]) |
minkowski() |
{ |
cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany,vyska_bocnice+tloustka_plbase+0.2]); // base plastics brick |
cylinder(r=radidus_hrany,h=0.1); |
} |
translate([-radidus_hrany-tloustka_bocnice,-radidus_hrany-tloustka_bocnice,-0.1]) |
cube([vzdalenost_der/2+tloustka_bocnice,vzdalenost_der/2+tloustka_bocnice,vyska_bocnice+tloustka_plbase+0.2]); |
translate([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-radidus_hrany-tloustka_bocnice,-0.1]) |
cube([vzdalenost_der/2+tloustka_bocnice,vzdalenost_der/2+tloustka_bocnice,vyska_bocnice+tloustka_plbase+0.2]); |
translate([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-0.1]) |
cube([vzdalenost_der/2+tloustka_bocnice,vzdalenost_der/2+tloustka_bocnice,vyska_bocnice+tloustka_plbase+0.2]); |
translate([-radidus_hrany-tloustka_bocnice,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-0.1]) |
cube([vzdalenost_der/2+tloustka_bocnice,vzdalenost_der/2+tloustka_bocnice,vyska_bocnice+tloustka_plbase+0.2]); |
} |
//pro vyboceni sloupku |
translate([-((pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,vyska_bocnice/2]) |
rotate(a=[180,0,90]) |
translate([radidus_hrany,radidus_hrany,0]) |
translate([-2*tloustka_bocnice,-2*tloustka_bocnice,0]) |
difference () { |
minkowski() |
{ |
cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+4*tloustka_bocnice,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+4*tloustka_bocnice,vyska_bocnice+tloustka_plbase]); // base plastics brick |
cylinder(r=radidus_hrany,h=0.1); |
} |
translate([tloustka_bocnice,tloustka_bocnice,-0.1]) |
minkowski() |
{ |
cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,vyska_bocnice+tloustka_plbase+0.2]); // base plastics brick |
cylinder(r=radidus_hrany,h=0.1); |
} |
translate([-radidus_hrany+vzdalenost_der/2+tloustka_bocnice+1,-radidus_hrany-0.25,-0.1]) |
cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje+4*tloustka_bocnice-vzdalenost_der-2*tloustka_bocnice-2,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje+4*tloustka_bocnice+0.5,vyska_bocnice+tloustka_plbase+0.2]); |
translate([-radidus_hrany-0.25,-radidus_hrany+vzdalenost_der/2+tloustka_bocnice+1,-0.1]) |
cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje+4*tloustka_bocnice+0.5,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje+4*tloustka_bocnice-vzdalenost_der-2*tloustka_bocnice-2,vyska_bocnice+tloustka_plbase+0.2]); |
} |
//SLOUPKY |
//------------------------------------------------------------ |
//sloupek 1 |
translate([(-(pocet_der2)*vzdalenost_der)/2-tloustka_bocnice,-tloustka_bocnice,vyska_bocnice/2-(vyska_matice+2*tloustka_bocnice+0.1)-tloustka_plbase]) |
sloupek (); |
//sloupek 2 |
translate([((pocet_der2)*vzdalenost_der)/2+tloustka_bocnice,-tloustka_bocnice,vyska_bocnice/2-(vyska_matice+2*tloustka_bocnice+0.1)-tloustka_plbase]) |
rotate(a=[0,0,90]) |
sloupek (); |
//sloupek 3 |
translate([((pocet_der2)*vzdalenost_der)/2+tloustka_bocnice, (pocet_der1)*vzdalenost_der+tloustka_bocnice,vyska_bocnice/2-(vyska_matice+2*tloustka_bocnice+0.1)-tloustka_plbase]) |
rotate(a=[0,0,180]) |
sloupek (); |
//sloupek 4 |
translate([-((pocet_der2)*vzdalenost_der)/2-tloustka_bocnice, (pocet_der1)*vzdalenost_der+tloustka_bocnice,vyska_bocnice/2-(vyska_matice+2*tloustka_bocnice+0.1)-tloustka_plbase]) |
rotate(a=[0,0,270]) |
sloupek (); |
} |
//---------------------------------------------------- |
//LOGO MLAB |
/* |
translate([(5-(pocet_der2)*vzdalenost_der)/2,0,0]) |
translate ([0, -vzdalenost_od_okraje-tloustka_bocnice*1/2,0]) // |
rotate([0, 90, 270]) |
scale(v = [logo_sirka, logo_vyska, 0.3]) |
MLAB_logo_short(); |
*/ |
translate([-0.5,-0.5,vyska_bocnice/2-tloustka_plbase/2+0.05]) |
rotate(a=[0,0,0]) |
{ |
plbase_vrchni_kryt_pro_odecet(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_bocnice,prekryti_der,tloustka_bocnice,-0.5,tloustka_plbase+0.1); |
} |
} |
} |
use <text/Write.scad> |
use <MLAB_logo.scad> |
use <sloupek.scad> |
use <plbase.scad> |
include <manufactury_conf.scad> |
include <../configuration.scad> |
bocnice(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_bocnice,prekryti_der,tloustka_bocnice); |
//Bočnice |
//------------------------------------------------------------ |
module bocnice(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_bocnice,prekryti_der,tloustka_bocnice){ |
difference () { |
union() |
{ |
translate([-((pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,vyska_bocnice/2]) |
rotate(a=[180,0,90]) |
translate([radidus_hrany,radidus_hrany,0]) |
translate([-tloustka_bocnice,-tloustka_bocnice,0]) |
//obvod |
difference () { |
minkowski() |
{ |
cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,vyska_bocnice+tloustka_plbase]); // base plastics brick |
cylinder(r=radidus_hrany,h=0.1); |
} |
translate([tloustka_bocnice,tloustka_bocnice,-0.1]) |
minkowski() |
{ |
cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany,vyska_bocnice+tloustka_plbase+0.2]); // base plastics brick |
cylinder(r=radidus_hrany,h=0.1); |
} |
translate([-radidus_hrany-tloustka_bocnice,-radidus_hrany-tloustka_bocnice,-0.1]) |
cube([vzdalenost_der/2+tloustka_bocnice,vzdalenost_der/2+tloustka_bocnice,vyska_bocnice+tloustka_plbase+0.2]); |
translate([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-radidus_hrany-tloustka_bocnice,-0.1]) |
cube([vzdalenost_der/2+tloustka_bocnice,vzdalenost_der/2+tloustka_bocnice,vyska_bocnice+tloustka_plbase+0.2]); |
translate([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-0.1]) |
cube([vzdalenost_der/2+tloustka_bocnice,vzdalenost_der/2+tloustka_bocnice,vyska_bocnice+tloustka_plbase+0.2]); |
translate([-radidus_hrany-tloustka_bocnice,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-radidus_hrany+2*tloustka_bocnice-vzdalenost_der/2,-0.1]) |
cube([vzdalenost_der/2+tloustka_bocnice,vzdalenost_der/2+tloustka_bocnice,vyska_bocnice+tloustka_plbase+0.2]); |
} |
//pro vyboceni sloupku |
translate([-((pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje)/2,-vzdalenost_od_okraje,vyska_bocnice/2]) |
rotate(a=[180,0,90]) |
translate([radidus_hrany,radidus_hrany,0]) |
translate([-2*tloustka_bocnice,-2*tloustka_bocnice,0]) |
difference () { |
minkowski() |
{ |
cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+4*tloustka_bocnice,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+4*tloustka_bocnice,vyska_bocnice+tloustka_plbase]); // base plastics brick |
cylinder(r=radidus_hrany,h=0.1); |
} |
translate([tloustka_bocnice,tloustka_bocnice,-0.1]) |
minkowski() |
{ |
cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje-2*radidus_hrany+2*tloustka_bocnice,vyska_bocnice+tloustka_plbase+0.2]); // base plastics brick |
cylinder(r=radidus_hrany,h=0.1); |
} |
translate([-radidus_hrany+vzdalenost_der/2+tloustka_bocnice+1,-radidus_hrany-0.25,-0.1]) |
cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje+4*tloustka_bocnice-vzdalenost_der-2*tloustka_bocnice-2,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje+4*tloustka_bocnice+0.5,vyska_bocnice+tloustka_plbase+0.2]); |
translate([-radidus_hrany-0.25,-radidus_hrany+vzdalenost_der/2+tloustka_bocnice+1,-0.1]) |
cube([(pocet_der1)*vzdalenost_der+2*vzdalenost_od_okraje+4*tloustka_bocnice+0.5,(pocet_der2)*vzdalenost_der+2*vzdalenost_od_okraje+4*tloustka_bocnice-vzdalenost_der-2*tloustka_bocnice-2,vyska_bocnice+tloustka_plbase+0.2]); |
} |
//SLOUPKY |
//------------------------------------------------------------ |
//sloupek 1 |
translate([(-(pocet_der2)*vzdalenost_der)/2-tloustka_bocnice,-tloustka_bocnice,vyska_bocnice/2-(vyska_matice+2*tloustka_bocnice+0.1)-tloustka_plbase]) |
sloupek (); |
//sloupek 2 |
translate([((pocet_der2)*vzdalenost_der)/2+tloustka_bocnice,-tloustka_bocnice,vyska_bocnice/2-(vyska_matice+2*tloustka_bocnice+0.1)-tloustka_plbase]) |
rotate(a=[0,0,90]) |
sloupek (); |
//sloupek 3 |
translate([((pocet_der2)*vzdalenost_der)/2+tloustka_bocnice, (pocet_der1)*vzdalenost_der+tloustka_bocnice,vyska_bocnice/2-(vyska_matice+2*tloustka_bocnice+0.1)-tloustka_plbase]) |
rotate(a=[0,0,180]) |
sloupek (); |
//sloupek 4 |
translate([-((pocet_der2)*vzdalenost_der)/2-tloustka_bocnice, (pocet_der1)*vzdalenost_der+tloustka_bocnice,vyska_bocnice/2-(vyska_matice+2*tloustka_bocnice+0.1)-tloustka_plbase]) |
rotate(a=[0,0,270]) |
sloupek (); |
} |
//---------------------------------------------------- |
//LOGO MLAB |
/* |
translate([(5-(pocet_der2)*vzdalenost_der)/2,0,0]) |
translate ([0, -vzdalenost_od_okraje-tloustka_bocnice*1/2,0]) // |
rotate([0, 90, 270]) |
scale(v = [logo_sirka, logo_vyska, 0.3]) |
MLAB_logo_short(); |
*/ |
translate([-0.5,-0.5,vyska_bocnice/2-tloustka_plbase/2+0.05]) |
rotate(a=[0,0,0]) |
{ |
plbase_vrchni_kryt_pro_odecet(pocet_der1,pocet_der2,radidus_hrany,vzdalenost_der,vzdalenost_od_okraje,prumer_sroubu,vyska_bocnice,prekryti_der,tloustka_bocnice,-0.5,tloustka_plbase+0.1); |
} |
} |
} |
/Modules/Mechanical/Boxes/BASEBOX02A/CAD/configuration/otvory.scad |
---|
1,141 → 1,169 |
//Funkce otvuru pro ruzne prvky umistene do celicek |
/*OBSAHUJE |
1A) - LCD 2x16 - urceno pro montaz LCD 2x16 znaku |
1B) - Pro modul RS232SINGLE01A |
1C) - Pro modul USBI2C01A |
1D) - Pro konektor MIC338 |
1E) - Pro modul UNIPOWER02A |
*/ |
//1A) - LCD 2x16 |
//-------------------------------------------------------- |
module otvor_LCD2_16_diry(vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy,vzdalenost_der_x,vzdalenost_der_y,prumer_otvoru,prumer_sloupku,ramecek_x,ramecek_y,ramecek_vyska) |
{ |
//otvor na LCD |
translate([0,0,(vyska-2*zapust-vule_vysky_celicka)/2]) |
cube(size = [ramecek_x,tloustka_celicka,ramecek_y], center = true); |
//diry na srouby pro LCD |
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)]) |
rotate(a=[90,0,0]) |
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true); |
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)]) |
rotate(a=[90,0,0]) |
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true); |
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)]) |
rotate(a=[90,0,0]) |
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true); |
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)]) |
rotate(a=[90,0,0]) |
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true); |
} |
module otvor_LCD2_16_sloupky(vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy,vzdalenost_der_x,vzdalenost_der_y,prumer_otvoru,prumer_sloupku,ramecek_x,ramecek_y,ramecek_vyska) |
{ |
union() { |
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)]) |
rotate(a=[90,0,0]) |
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true); |
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)]) |
rotate(a=[90,0,0]) |
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true); |
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)]) |
rotate(a=[90,0,0]) |
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true); |
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)]) |
rotate(a=[90,0,0]) |
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true); |
} |
} |
/*1B) - Pro modul RS232SINGLE01A |
-------------------------------------------------------- |
-------------------------------------------------------- |
pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky |
posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka |
vzdalenost_der - definuje rozec der |
modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu. |
*/ |
module RS232SINGLE01A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje,vzdalenost_der,vyska_listy) |
{ |
RS232SINGLE01A_sirka_kon=32; //sirka konektoru |
RS232SINGLE01A_vyska_kon=13.5; //vyska konektoru |
RS232SINGLE01A_sirka_mod_otvory=5; //kolik modul zabira der |
translate([-(pocet_der_dane_strany-1)*vzdalenost_der/2+1*vzdalenost_der+vzdalenost_der*(RS232SINGLE01A_sirka_mod_otvory-1)/2+posun_od_kraje*vzdalenost_der,0,RS232SINGLE01A_vyska_kon/2+vyska_listy]) |
cube(size = [RS232SINGLE01A_sirka_kon,tloustka_celicka,RS232SINGLE01A_vyska_kon], center = true); |
} |
/*1C) - Pro modul USBI2C01A |
-------------------------------------------------------- |
-------------------------------------------------------- |
pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky |
posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka |
vzdalenost_der - definuje rozec der |
modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu. |
*/ |
module USBI2C01A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje,vzdalenost_der,vyska_listy) |
{ |
USBI2C01A_sirka_kon=13; //sirka konektoru |
USBI2C01A_vyska_kon=12; //vyska konektoru |
USBI2C01A_sirka_mod_otvory=3; //kolik modul zabira der |
translate([-(pocet_der_dane_strany-1)*vzdalenost_der/2+1*vzdalenost_der+vzdalenost_der*(USBI2C01A_sirka_mod_otvory-1)/2+posun_od_kraje*vzdalenost_der,0,USBI2C01A_vyska_kon/2+vyska_listy]) |
cube(size = [USBI2C01A_sirka_kon,tloustka_celicka,USBI2C01A_vyska_kon], center = true); |
} |
/*1D) - Pro konektor MIC338 |
-------------------------------------------------------- |
-------------------------------------------------------- |
*/ |
module MIC338(tloustka_celicka,vyska,zapust,vule_vysky_celicka) |
{ |
MIC338_polomer_kon=8; //polomer montazniho otvoru |
translate([0,0,(vyska-2*zapust-vule_vysky_celicka)/2]) |
rotate(a=[90,0,0]) |
cylinder(h=tloustka_celicka+0.1, r=MIC338_polomer_kon+0.1, center=true); |
} |
/*1D) - Pro modul UNIPOWER02A |
-------------------------------------------------------- |
-------------------------------------------------------- |
pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky |
posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka |
vzdalenost_der - definuje rozec der |
modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu. |
*/ |
module UNIPOWER02A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje,vzdalenost_der,vyska_listy) |
{ |
UNIPOWER02A_sirka_kon=9; //sirka konektoru |
UNIPOWER02A_vyska_kon=11; //vyska konektoru |
UNIPOWER02A_sirka_mod_otvory=4; //kolik modul zabira der |
UNIPOWER02A_vzdalenost_konektoru=6; //vzdalenost kraje konektoru od středu šroubu |
translate([-(pocet_der_dane_strany-1)*vzdalenost_der/2+1*vzdalenost_der+posun_od_kraje*vzdalenost_der+UNIPOWER02A_vzdalenost_konektoru+UNIPOWER02A_sirka_kon/2,0,UNIPOWER02A_vyska_kon/2+vyska_listy]) |
cube(size = [UNIPOWER02A_sirka_kon,tloustka_celicka,UNIPOWER02A_vyska_kon], center = true); |
} |
//Funkce otvuru pro ruzne prvky umistene do celicek |
/*OBSAHUJE |
1A) - LCD 2x16 - urceno pro montaz LCD 2x16 znaku |
1B) - Pro modul RS232SINGLE01A |
1C) - Pro modul USBI2C01A |
1D) - Pro konektor MIC338 |
1E) - Pro modul UNIPOWER02A |
1F) - Pro modul I2CDIFF01A |
*/ |
//1A) - LCD 2x16 |
//-------------------------------------------------------- |
module otvor_LCD2_16_diry(vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy,vzdalenost_der_x,vzdalenost_der_y,prumer_otvoru,prumer_sloupku,ramecek_x,ramecek_y,ramecek_vyska) |
{ |
//otvor na LCD |
translate([0,0,(vyska-2*zapust-vule_vysky_celicka)/2]) |
cube(size = [ramecek_x,tloustka_celicka,ramecek_y], center = true); |
//diry na srouby pro LCD |
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)]) |
rotate(a=[90,0,0]) |
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true); |
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)]) |
rotate(a=[90,0,0]) |
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true); |
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)]) |
rotate(a=[90,0,0]) |
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true); |
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)]) |
rotate(a=[90,0,0]) |
cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true); |
} |
module otvor_LCD2_16_sloupky(vyska,zapust,vule_vysky_celicka,pocet_der2,vzdalenost_der,vule_delky_celicka,tloustka_celicka,vule_tlousky,vyska_listy,vzdalenost_der_x,vzdalenost_der_y,prumer_otvoru,prumer_sloupku,ramecek_x,ramecek_y,ramecek_vyska) |
{ |
union() { |
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)]) |
rotate(a=[90,0,0]) |
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true); |
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)]) |
rotate(a=[90,0,0]) |
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true); |
translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)]) |
rotate(a=[90,0,0]) |
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true); |
translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)]) |
rotate(a=[90,0,0]) |
cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true); |
} |
} |
/*1B) - Pro modul RS232SINGLE01A |
-------------------------------------------------------- |
-------------------------------------------------------- |
pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky |
posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka |
vzdalenost_der - definuje rozec der |
modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu. |
*/ |
module RS232SINGLE01A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje,vzdalenost_der,vyska_listy) |
{ |
RS232SINGLE01A_sirka_kon=32; //sirka konektoru |
RS232SINGLE01A_vyska_kon=13.5; //vyska konektoru |
RS232SINGLE01A_sirka_mod_otvory=5; //kolik modul zabira der |
translate([-(pocet_der_dane_strany-1)*vzdalenost_der/2+1*vzdalenost_der+vzdalenost_der*(RS232SINGLE01A_sirka_mod_otvory-1)/2+posun_od_kraje*vzdalenost_der,0,RS232SINGLE01A_vyska_kon/2+vyska_listy]) |
cube(size = [RS232SINGLE01A_sirka_kon,tloustka_celicka,RS232SINGLE01A_vyska_kon], center = true); |
} |
/*1C) - Pro modul USBI2C01A |
-------------------------------------------------------- |
-------------------------------------------------------- |
pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky |
posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka |
vzdalenost_der - definuje roztec der |
modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu. |
*/ |
module USBI2C01A(tloustka_bocnice,vzdalenost_der) //uz upraveno |
{ |
USBI2C01A_sirka_kon=12; //sirka konektoru |
USBI2C01A_vyska_kon=11; //vyska konektoru |
USBI2C01A_sirka_mod_otvory=3; //kolik modul zabira der |
USBI2C01A_svyska_nad_plbase=6; //kolik modul zabira der |
translate([vzdalenost_der*(USBI2C01A_sirka_mod_otvory-1)/2,0,USBI2C01A_vyska_kon/2+USBI2C01A_svyska_nad_plbase]) |
cube(size = [USBI2C01A_sirka_kon,tloustka_bocnice+0.2,USBI2C01A_vyska_kon], center = true); |
} |
/*1D) - Pro konektor MIC338 |
-------------------------------------------------------- |
-------------------------------------------------------- |
*/ |
//posun_od_okraje - zadava se o kolik der se ma posunot otvor od středu celicka v nasobcich roztece der |
module MIC338(tloustka_bocnice,vzdalenost_der,vyska_bocnice) |
{ |
MIC338_polomer_kon=8; //polomer montazniho otvoru |
translate([0,0,vyska_bocnice/2]) |
rotate(a=[90,0,0]) |
cylinder(h=tloustka_bocnice+0.1, r=MIC338_polomer_kon+0.1, center=true); |
} |
/*1E) - Pro modul UNIPOWER02A |
-------------------------------------------------------- |
-------------------------------------------------------- |
pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky |
posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka |
vzdalenost_der - definuje rozec der |
modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu. |
*/ |
module UNIPOWER02A(tloustka_bocnice,vzdalenost_der) |
{ |
UNIPOWER02A_sirka_kon=10; //sirka konektoru |
UNIPOWER02A_vyska_kon=11; //vyska konektoru |
UNIPOWER02A_sirka_mod_otvory=4; //kolik modul zabira der |
UNIPOWER02A_vzdalenost_konektoru=6; //vzdalenost kraje konektoru od středu šroubu |
UNIPOWER02A_vyska_nad_plbase=6; //vyska mezi albase a konektorem |
translate([UNIPOWER02A_vzdalenost_konektoru,-tloustka_bocnice/2-0.05,UNIPOWER02A_vyska_nad_plbase]) |
cube(size = [UNIPOWER02A_sirka_kon,tloustka_bocnice+0.1,UNIPOWER02A_vyska_kon], center = false); |
} |
/*1F) - Pro modul I2CDIFF01A |
-------------------------------------------------------- |
-------------------------------------------------------- |
pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky |
posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka |
vzdalenost_der - definuje roztec der |
modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu. |
*/ |
module I2CDIFF01A(tloustka_bocnice,vzdalenost_der) //uz upraveno |
{ |
I2CDIFF01A_sirka_kon=16.5; //sirka konektoru |
I2CDIFF01A_vyska_kon=13.5; //vyska konektoru |
I2CDIFF01A_sirka_mod_otvory=4; //kolik modul zabira der |
I2CDIFF01A_vyska_nad_plbase=6; //vyska mezi albase a konektorem |
translate([vzdalenost_der*(I2CDIFF01A_sirka_mod_otvory-1)/2,0,I2CDIFF01A_vyska_kon/2+I2CDIFF01A_vyska_nad_plbase]) |
cube(size = [I2CDIFF01A_sirka_kon,tloustka_bocnice+0.2,I2CDIFF01A_vyska_kon], center = true); |
} |
/Modules/Mechanical/Boxes/BASEBOX02A/CAD/configuration.scad |
---|
1,41 → 1,41 |
//Název boxu (zařízení) |
box_jmeno="BASEBOX02A"; |
//ALBASE1115 |
//------------------------------------------------------------ |
///* |
vzdalenost_der = 10.16; //rozteč děr mezi sebou |
radidus_hrany = 3; //radius zaobleni sloupku |
//parametry lišty |
vzdalenost_od_okraje = 5.08; //vzdalenost stredu upevnovaci diry od kraje desky |
//mala hrana |
pocet_der1 = 2; //pocet der desky, ponížené o 3 |
//velka hrana |
pocet_der2 = 2; //pocet der desky, ponížené o 3 |
//*/ |
//OBECNE PARAMETRY KRABICKY |
//------------------------------------------------------------ |
//BOCNICE |
vyska_bocnice=30; |
tloustka_bocnice=2; |
//PLBASE PARAMETRY |
//------------------------------------------------------------ |
tloustka_plbase = 2; //tloustka plbase |
prekryti_der=0.3; //sila materiálu, který překrývá díry |
plbase_tolerance_horni=0.0; //pro zvětšení tolerance aby tam šlo dát horní čelíčko |
//PRIPADNA VYSKA NOZICEK |
//------------------------------------------------------------ |
vyska_nozicky=5; |
//Rozmery loga MLAB |
//------------------------------------------------------------ |
logo_vyska=0.15; |
//Název boxu (zařízení) |
box_jmeno="BASEBOX02A"; |
//ALBASE1115 |
//------------------------------------------------------------ |
///* |
vzdalenost_der = 10.16; //rozteč děr mezi sebou |
radidus_hrany = 3; //radius zaobleni sloupku |
//parametry lišty |
vzdalenost_od_okraje = 5.08; //vzdalenost stredu upevnovaci diry od kraje desky |
//mala hrana |
pocet_der1 = 4; //pocet děr v ose y |
//velka hrana |
pocet_der2 = 4; //pocet der v ose x |
//*/ |
//OBECNE PARAMETRY KRABICKY |
//------------------------------------------------------------ |
//BOCNICE |
vyska_bocnice=30; |
tloustka_bocnice=2; |
//PLBASE PARAMETRY |
//------------------------------------------------------------ |
tloustka_plbase = 2; //tloustka plbase |
prekryti_der=0.3; //sila materiálu, který překrývá díry |
plbase_tolerance_horni=0.0; //pro zvětšení tolerance aby tam šlo dát horní čelíčko |
//PRIPADNA VYSKA NOZICEK |
//------------------------------------------------------------ |
vyska_nozicky=5; |
//Rozmery loga MLAB |
//------------------------------------------------------------ |
logo_vyska=0.15; |
logo_sirka=0.15; |