Rev Author Line No. Line
4331 jacho 1 //Funkce otvuru pro ruzne prvky umistene do celicek
2  
3 /*OBSAHUJE
4 1A) - LCD 2x16 - urceno pro montaz LCD 2x16 znaku
5 1B) - Pro modul RS232SINGLE01A
6 1C) - Pro modul USBI2C01A
7 1D) - Pro konektor MIC338
8 1E) - Pro modul UNIPOWER02A
9 */
10  
11  
12 //1A) - LCD 2x16
13 //--------------------------------------------------------
14 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)
15 {
16 //otvor na LCD
17 translate([0,0,(vyska-2*zapust-vule_vysky_celicka)/2])
18 cube(size = [ramecek_x,tloustka_celicka,ramecek_y], center = true);
19  
20 //diry na srouby pro LCD
21  
22 translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)])
23 rotate(a=[90,0,0])
24 cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true);
25  
26 translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)])
27 rotate(a=[90,0,0])
28 cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true);
29  
30 translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)])
31 rotate(a=[90,0,0])
32 cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true);
33  
34 translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)])
35 rotate(a=[90,0,0])
36 cylinder(h=ramecek_vyska+0.2, r=(prumer_otvoru/2), center=true);
37 }
38  
39 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)
40 {
41 union() {
42  
43 translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)])
44 rotate(a=[90,0,0])
45 cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true);
46  
47 translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)+vzdalenost_der_y/2)])
48 rotate(a=[90,0,0])
49 cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true);
50  
51 translate([vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)])
52 rotate(a=[90,0,0])
53 cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true);
54  
55 translate([-vzdalenost_der_x/2,(ramecek_vyska/2-((tloustka_celicka-vule_tlousky)/2)),(((vyska-2*zapust-vule_vysky_celicka)/2)-vzdalenost_der_y/2)])
56 rotate(a=[90,0,0])
57 cylinder(h=ramecek_vyska, r=(prumer_sloupku/2), center=true);
58  
59 }
60 }
61  
62  
63 /*1B) - Pro modul RS232SINGLE01A
64 --------------------------------------------------------
65 --------------------------------------------------------
66 pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky
67 posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka
68 vzdalenost_der - definuje rozec der
69  
70 modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu.
71  
72 */
73  
74 module RS232SINGLE01A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje,vzdalenost_der,vyska_listy)
75 {
76 RS232SINGLE01A_sirka_kon=32; //sirka konektoru
77 RS232SINGLE01A_vyska_kon=13.5; //vyska konektoru
78 RS232SINGLE01A_sirka_mod_otvory=5; //kolik modul zabira der
79 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])
80 cube(size = [RS232SINGLE01A_sirka_kon,tloustka_celicka,RS232SINGLE01A_vyska_kon], center = true);
81  
82 }
83  
84  
85 /*1C) - Pro modul USBI2C01A
86 --------------------------------------------------------
87 --------------------------------------------------------
88 pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky
89 posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka
90 vzdalenost_der - definuje rozec der
91  
92 modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu.
93  
94 */
95  
96 module USBI2C01A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje,vzdalenost_der,vyska_listy)
97 {
98 USBI2C01A_sirka_kon=13; //sirka konektoru
99 USBI2C01A_vyska_kon=12; //vyska konektoru
100 USBI2C01A_sirka_mod_otvory=3; //kolik modul zabira der
101 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])
102 cube(size = [USBI2C01A_sirka_kon,tloustka_celicka,USBI2C01A_vyska_kon], center = true);
103  
104 }
105  
106 /*1D) - Pro konektor MIC338
107 --------------------------------------------------------
108 --------------------------------------------------------
109 */
110  
111 module MIC338(tloustka_celicka,vyska,zapust,vule_vysky_celicka)
112 {
113 MIC338_polomer_kon=8; //polomer montazniho otvoru
114 translate([0,0,(vyska-2*zapust-vule_vysky_celicka)/2])
115 rotate(a=[90,0,0])
116 cylinder(h=tloustka_celicka+0.1, r=MIC338_polomer_kon+0.1, center=true);
117  
118 }
119  
120 /*1D) - Pro modul UNIPOWER02A
121 --------------------------------------------------------
122 --------------------------------------------------------
123 pocet_der_dane_strany - protoze nelze definovat na jake strane bude dira umistena, proto se musí rucne zadat pocet der zvolene strany krabicky
124 posun_od_okraje - zadava se o kolik der se ma posunot modul od kraje celicka
125 vzdalenost_der - definuje rozec der
126  
127 modul na dvou matkách má vysku 6.5 mm, pokud nebudo zasahne do nastaveni list krabicky, bude nutno zvednout vysku modulu.
128  
129 */
130  
131 module UNIPOWER02A(tloustka_celicka,pocet_der_dane_strany,posun_od_kraje,vzdalenost_der,vyska_listy)
132 {
133 UNIPOWER02A_sirka_kon=9; //sirka konektoru
134 UNIPOWER02A_vyska_kon=11; //vyska konektoru
135 UNIPOWER02A_sirka_mod_otvory=4; //kolik modul zabira der
136 UNIPOWER02A_vzdalenost_konektoru=6; //vzdalenost kraje konektoru od středu šroubu
137 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])
138 cube(size = [UNIPOWER02A_sirka_kon,tloustka_celicka,UNIPOWER02A_vyska_kon], center = true);
139 }
140  
141