Rev 4298 Rev 4314
-   1 include <manufactury_conf.scad>
-   2 include <../configuration.scad>
-   3 use <MLAB_logo.scad>
-   4  
1 //Funkce pro generovani sloupku 5 //Funkce pro generovani sloupku
2 module sloupek( 6 module sloupek(
3 vyska, 7 vyska,
4 zapust, 8 zapust,
5 vzdalenost_der, 9 vzdalenost_der,
6 vzdalenost_od_okraje, 10 vzdalenost_od_okraje,
7 vzdalenost_od_diry, 11 vzdalenost_od_diry,
8 radidus_hrany, 12 radidus_hrany,
9 prumer_sroubu, 13 prumer_sroubu,
10 prumer_matice, 14 prumer_matice,
11 vyska_matice, 15 vyska_matice,
12 posuv_dorazu, 16 posuv_dorazu,
13 matice_sila_materialu) { 17 matice_sila_materialu,logo_vyska,logo_sirka) {
14   18  
15 difference () { 19 difference () {
16 union () { 20 union () {
17 color("green") 21 color("green")
18 translate([-(vzdalenost_od_okraje-radidus_hrany),-(vzdalenost_od_okraje-radidus_hrany),0]) // center top screw 22 translate([-(vzdalenost_od_okraje-radidus_hrany),-(vzdalenost_od_okraje-radidus_hrany),0]) // center top screw
19 cylinder(vyska, d=(2*radidus_hrany), center=true); 23 cylinder(vyska, d=(2*radidus_hrany), center=true);
20   24  
21 color("cyan") 25 color("cyan")
22 translate([vzdalenost_der/4, vzdalenost_der/4, -vyska/2]) 26 translate([vzdalenost_der/4, vzdalenost_der/4, -vyska/2])
23 linear_extrude(height = vyska) 27 linear_extrude(height = vyska)
24 square([vzdalenost_der/2, vzdalenost_der/2], center = true); 28 square([vzdalenost_der/2, vzdalenost_der/2], center = true);
25   29  
26 color("gray") 30 color("gray")
27 translate([-vzdalenost_od_okraje/2, vzdalenost_der/4, -vyska/2]) 31 translate([-vzdalenost_od_okraje/2, vzdalenost_der/4, -vyska/2])
28 linear_extrude(height = vyska) 32 linear_extrude(height = vyska)
29 square([(vzdalenost_od_okraje), vzdalenost_der/2], center = true); 33 square([(vzdalenost_od_okraje), vzdalenost_der/2], center = true);
30 34
31 color("gray") 35 color("gray")
32 translate([vzdalenost_der/4, -vzdalenost_od_okraje/2, -vyska/2]) 36 translate([vzdalenost_der/4, -vzdalenost_od_okraje/2, -vyska/2])
33 linear_extrude(height = vyska) 37 linear_extrude(height = vyska)
34 square([vzdalenost_der/2, vzdalenost_od_okraje], center = true); 38 square([vzdalenost_der/2, vzdalenost_od_okraje], center = true);
35 39
36 color("red") 40 color("red")
37 translate([-(vzdalenost_od_okraje-radidus_hrany)/2, -vzdalenost_od_okraje/2, -vyska/2]) 41 translate([-(vzdalenost_od_okraje-radidus_hrany)/2, -vzdalenost_od_okraje/2, -vyska/2])
38 linear_extrude(height = vyska) 42 linear_extrude(height = vyska)
39 square([vzdalenost_od_okraje-radidus_hrany, vzdalenost_od_okraje], center = true); 43 square([vzdalenost_od_okraje-radidus_hrany, vzdalenost_od_okraje], center = true);
40 44
41 color("red") 45 color("red")
42 translate([-vzdalenost_od_okraje/2,-(vzdalenost_od_okraje-radidus_hrany)/2, -vyska/2]) 46 translate([-vzdalenost_od_okraje/2,-(vzdalenost_od_okraje-radidus_hrany)/2, -vyska/2])
43 linear_extrude(height = vyska) 47 linear_extrude(height = vyska)
44 square([vzdalenost_od_okraje, vzdalenost_od_okraje-radidus_hrany], center = true); 48 square([vzdalenost_od_okraje, vzdalenost_od_okraje-radidus_hrany], center = true);
45   49  
46 color("green") 50 color("green")
47 translate([vzdalenost_der, -vzdalenost_od_okraje/2, -(vyska-(2*zapust))/2]) 51 translate([vzdalenost_der, -vzdalenost_od_okraje/2, -(vyska-(2*zapust))/2])
48 linear_extrude(height = (vyska-(2*zapust))) 52 linear_extrude(height = (vyska-(2*zapust)))
49 square([vzdalenost_der, vzdalenost_od_okraje], center = true); 53 square([vzdalenost_der, vzdalenost_od_okraje], center = true);
50 54
51 color("red") 55 color("red")
52 translate([-vzdalenost_od_okraje/2,vzdalenost_der, -(vyska-(2*zapust))/2]) 56 translate([-vzdalenost_od_okraje/2,vzdalenost_der, -(vyska-(2*zapust))/2])
53 linear_extrude(height = (vyska-(2*zapust))) 57 linear_extrude(height = (vyska-(2*zapust)))
54 square([ vzdalenost_od_okraje,vzdalenost_der], center = true); 58 square([ vzdalenost_od_okraje,vzdalenost_der], center = true);
55 59
56 color("cyan") 60 color("cyan")
57 translate([vzdalenost_od_diry/2, vzdalenost_der, -(vyska-(2*zapust))/2]) 61 translate([vzdalenost_od_diry/2, vzdalenost_der, -(vyska-(2*zapust))/2])
58 linear_extrude(height = (vyska-(2*zapust))) 62 linear_extrude(height = (vyska-(2*zapust)))
59 square([(vzdalenost_od_diry), vzdalenost_der], center = true); 63 square([(vzdalenost_od_diry), vzdalenost_der], center = true);
60 64
61 color("cyan") 65 color("cyan")
62 translate([vzdalenost_der, vzdalenost_od_diry/2, -(vyska-(2*zapust))/2]) 66 translate([vzdalenost_der, vzdalenost_od_diry/2, -(vyska-(2*zapust))/2])
63 linear_extrude(height = (vyska-(2*zapust))) 67 linear_extrude(height = (vyska-(2*zapust)))
64 square([vzdalenost_der, vzdalenost_od_diry ], center = true); 68 square([vzdalenost_der, vzdalenost_od_diry ], center = true);
-   69
-   70  
-   71
-   72
65 } 73 }
66   74  
67 //diry na sroub 75 //diry na sroub
68 translate([0,0,0]) // center top screw 76 translate([0,0,0]) // center top screw
69 cylinder(2*vyska, d=(prumer_sroubu), center=true); 77 cylinder(2*vyska, d=(prumer_sroubu), center=true);
70   78  
71 translate([vzdalenost_der,0,0]) // center top screw 79 translate([vzdalenost_der,0,0]) // center top screw
72 cylinder(2*vyska, d=(prumer_sroubu), center=true); 80 cylinder(2*vyska, d=(prumer_sroubu), center=true);
73   81  
74 translate([0,vzdalenost_der,0]) // center top screw 82 translate([0,vzdalenost_der,0]) // center top screw
75 cylinder(2*vyska, d=(prumer_sroubu), center=true); 83 cylinder(2*vyska, d=(prumer_sroubu), center=true);
76   84  
77 //diry na matice 85 //diry na matice
78 //1. krajni matice 86 //1. krajni matice
79 translate([vzdalenost_der,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw 87 translate([vzdalenost_der,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
80 88
81 cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true); 89 cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
82   90  
83 translate([vzdalenost_der,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),-(((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw 91 translate([vzdalenost_der,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),-(((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
84 92
85 cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true); 93 cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
86   94  
87   95  
88 //2. krajni matice 96 //2. krajni matice
89 translate([(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)), vzdalenost_der,((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw 97 translate([(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)), vzdalenost_der,((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
90 98
91 cube([ prumer_matice+posuv_dorazu+vzdalenost_od_diry,prumer_matice,vyska_matice], center = true); 99 cube([ prumer_matice+posuv_dorazu+vzdalenost_od_diry,prumer_matice,vyska_matice], center = true);
92   100  
93 translate([(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)), vzdalenost_der,-(((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw 101 translate([(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)), vzdalenost_der,-(((vyska-2*zapust)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
94 102
95 cube([ prumer_matice+posuv_dorazu+vzdalenost_od_diry,prumer_matice,vyska_matice], center = true); 103 cube([ prumer_matice+posuv_dorazu+vzdalenost_od_diry,prumer_matice,vyska_matice], center = true);
96   104  
97 //prostredni dira 105 //prostredni dira
98 translate([0,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),((vyska)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw 106 translate([0,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),((vyska)/2-vyska_matice/2)-matice_sila_materialu]) // center top screw
99 107
100 cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true); 108 cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
101   109  
102 translate([0,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),-(((vyska)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw 110 translate([0,(((((prumer_matice)/2)+posuv_dorazu+vzdalenost_od_diry)/2)-(posuv_dorazu+prumer_matice/2)),-(((vyska)/2-vyska_matice/2)-matice_sila_materialu)]) // center top screw
103 111
104 cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true); 112 cube([prumer_matice, prumer_matice+posuv_dorazu+vzdalenost_od_diry,vyska_matice], center = true);
105   113  
-   114 //----------------------------------------------------
-   115 //LOGO MLAB
-   116 union (){
-   117 translate ([-vzdalenost_od_okraje+1,5, 0]) // ODROIDs passive components hole.
-   118 rotate([0, 90, 180])
-   119 scale(v = [logo_sirka, logo_vyska, 0.3])
-   120 MLAB_logo_short();
-   121 }
-   122  
106 } 123 }
107 } 124 }
-   125  
-   126 /*sloupek(
-   127 vyska,
-   128 zapust,
-   129 vzdalenost_der,
-   130 vzdalenost_od_okraje,
-   131 vzdalenost_od_diry,
-   132 radidus_hrany,
-   133 prumer_sroubu,
-   134 prumer_matice,
-   135 vyska_matice,
-   136 posuv_dorazu,
-   137 matice_sila_materialu);