| 4357 | 
        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 | 
          |