/Modules/Mechanical/WINDGAUGE01A/CAD/SRC/WINDGAUGE01A_D01.scad
1,67 → 1,89
$fn=40; // model faces resolution.
include <../configuration.scad>
 
include <WINDGAUGE01A_D02.scad>
include <polyScrewThread_r1.scad>
 
PI=3.141592;
//Drzak na sloup - cast bez drzaku anemometru
module WINDGAUGE01A_D01(){
difference()
{
union()
{
//základní válec
cylinder(h=D02_vyska_uchytky,r=(D02_prumer_obruby+2*D02_sila_materialu)/2,center=true);
//úchytové plošky
translate([D02_dotahova_vzdalenost+D02_sila_materialu/2,0,0]){cube([D02_sila_materialu,D02_delka_celeho_uchytu,D02_vyska_uchytky],center=true);}
}
//válec na odečet
cylinder(h=D02_vyska_uchytky+0.01,r=D02_prumer_obruby/2,center=true);
//kvádr na odecet
translate([D02_dotahova_vzdalenost-(D02_prumer_obruby+2*D02_sila_materialu)/2,0,0]){cube([D02_prumer_obruby+2*D02_sila_materialu,D02_prumer_obruby+2*D02_sila_materialu,D02_vyska_uchytky+0.01],center=true);}
//otvory na sroub
translate([D02_dotahova_vzdalenost,(D02_delka_celeho_uchytu/2-D02_prumer_obruby/2-D02_sila_materialu)/2+D02_prumer_obruby/2+D02_sila_materialu,D02_vyska_uchytky/4]){rotate([0,90,0]){cylinder(h=D02_sila_materialu+0.01,r=D02_prumer_uchytneho_sroubu/2);}}
//drzak matky
translate([D02_dotahova_vzdalenost+D02_sila_materialu-D02_vyska_matky,(D02_delka_celeho_uchytu/2-D02_prumer_obruby/2-D02_sila_materialu)/2+D02_prumer_obruby/2+D02_sila_materialu,D02_vyska_uchytky/4]){rotate([0,90,0]){ cylinder (h = D02_vyska_matky+0.01, r= (D02_sirka_matky+0.2)/2, $fn=6);}}
translate([D02_dotahova_vzdalenost,(D02_delka_celeho_uchytu/2-D02_prumer_obruby/2-D02_sila_materialu)/2+D02_prumer_obruby/2+D02_sila_materialu,-D02_vyska_uchytky/4]){rotate([0,90,0]){cylinder(h=D02_sila_materialu+0.01,r=D02_prumer_uchytneho_sroubu/2);}}
//drzak matky
translate([D02_dotahova_vzdalenost+D02_sila_materialu-D02_vyska_matky,(D02_delka_celeho_uchytu/2-D02_prumer_obruby/2-D02_sila_materialu)/2+D02_prumer_obruby/2+D02_sila_materialu,-D02_vyska_uchytky/4]){rotate([0,90,0]){ cylinder (h = D02_vyska_matky+0.01, r= (D02_sirka_matky+0.2)/2, $fn=6);}}
translate([D02_dotahova_vzdalenost,-((D02_delka_celeho_uchytu/2-D02_prumer_obruby/2-D02_sila_materialu)/2+D02_prumer_obruby/2+D02_sila_materialu),-D02_vyska_uchytky/4]){rotate([0,90,0]){cylinder(h=D02_sila_materialu+0.01,r=D02_prumer_uchytneho_sroubu/2);}}
//drzak matky
translate([D02_dotahova_vzdalenost+D02_sila_materialu-D02_vyska_matky,-((D02_delka_celeho_uchytu/2-D02_prumer_obruby/2-D02_sila_materialu)/2+D02_prumer_obruby/2+D02_sila_materialu),-D02_vyska_uchytky/4]){rotate([0,90,0]){ cylinder (h = D02_vyska_matky+0.01, r= (D02_sirka_matky+0.2)/2, $fn=6);}}
 
//Držák anemometru
translate([D02_dotahova_vzdalenost,-((D02_delka_celeho_uchytu/2-D02_prumer_obruby/2-D02_sila_materialu)/2+D02_prumer_obruby/2+D02_sila_materialu),D02_vyska_uchytky/4]){rotate([0,90,0]){cylinder(h=D02_sila_materialu+0.01,r=D02_prumer_uchytneho_sroubu/2);}}
//drzak matky
translate([D02_dotahova_vzdalenost+D02_sila_materialu-D02_vyska_matky,-((D02_delka_celeho_uchytu/2-D02_prumer_obruby/2-D02_sila_materialu)/2+D02_prumer_obruby/2+D02_sila_materialu),D02_vyska_uchytky/4]){rotate([0,90,0]){ cylinder (h = D02_vyska_matky+0.01, r= (D02_sirka_matky+0.2)/2, $fn=6);}}
}
}
 
module WINDGAUGE01A_D01()
{
module WINDGAUGE01A_D01_2(){
difference()
{
union()
{
//výstuha
rotate ([0,-90,0])
linear_extrude (height = S01_sila_materialu, convexity = 10)
polygon(points=[[D02_vyska_uchytky/2,D01_delka_tyce+S01_prumer_vnitrni/2+D01_material_pred_zavitem+D02_sila_materialu],[0, D01_delka_tyce+S01_prumer_vnitrni/2+D01_material_pred_zavitem+D02_sila_materialu],[0,S01_prumer_vnitrni+D01_material_pred_zavitem],[D01_material_pod_zavitem,S01_prumer_vnitrni+D01_material_pred_zavitem]]);
//zavit
translate([0,0,D01_material_pod_zavitem])
screw_thread(S01_prumer_vnitrni-S01_tolerance_zavit,4,55,S01_vyska_spodniho_zavitu,PI/2,2);
union()
{
//základní válec
cylinder(h=D02_vyska_uchytky,r=(D02_prumer_obruby+2*D02_sila_materialu)/2,center=true);
//úchytové plošky
translate([D02_dotahova_vzdalenost+D02_sila_materialu/2,0,0]){cube([D02_sila_materialu,D02_delka_celeho_uchytu,D02_vyska_uchytky],center=true);}
}
//válec na odečet
cylinder(h=D02_vyska_uchytky+0.01,r=D02_prumer_obruby/2,center=true);
//kvádr na odecet
translate([D02_dotahova_vzdalenost-(D02_prumer_obruby+2*D02_sila_materialu)/2,0,0]){cube([D02_prumer_obruby+2*D02_sila_materialu,D02_prumer_obruby+2*D02_sila_materialu,D02_vyska_uchytky+0.01],center=true);}
//otvory na sroub
translate([D02_dotahova_vzdalenost,(D02_delka_celeho_uchytu/2-D02_prumer_obruby/2-D02_sila_materialu)/2+D02_prumer_obruby/2+D02_sila_materialu,D02_vyska_uchytky/4]){rotate([0,90,0]){cylinder(h=D02_sila_materialu+0.01,r=D02_prumer_uchytneho_sroubu/2);}}
translate([D02_dotahova_vzdalenost,(D02_delka_celeho_uchytu/2-D02_prumer_obruby/2-D02_sila_materialu)/2+D02_prumer_obruby/2+D02_sila_materialu,-D02_vyska_uchytky/4]){rotate([0,90,0]){cylinder(h=D02_sila_materialu+0.01,r=D02_prumer_uchytneho_sroubu/2);}}
translate([D02_dotahova_vzdalenost,-((D02_delka_celeho_uchytu/2-D02_prumer_obruby/2-D02_sila_materialu)/2+D02_prumer_obruby/2+D02_sila_materialu),-D02_vyska_uchytky/4]){rotate([0,90,0]){cylinder(h=D02_sila_materialu+0.01,r=D02_prumer_uchytneho_sroubu/2);}}
 
//spodní valec
translate([0,0,D01_material_pod_zavitem/2])
cylinder (h = D01_material_pod_zavitem, r=(S01_prumer_vnitrni-S01_tolerance_zavit+D01_material_pred_zavitem*2)/2, center = true, $fn=100);
 
//uchyt na tyc
translate([0,D01_delka_tyce/2+(S01_prumer_vnitrni-S01_tolerance_zavit)/2+D01_material_pred_zavitem,D01_material_pod_zavitem/2])
cube([D01_sirka_tyce,D01_delka_tyce,D01_material_pod_zavitem],center=true);
//uchyt na tyc ovalna cast
translate([0,(S01_prumer_vnitrni-S01_tolerance_zavit)/2+D01_material_pred_zavitem,D01_material_pod_zavitem/2])
cube([D01_sirka_tyce,D01_material_za_zavitem+D01_material_pred_zavitem,D01_material_pod_zavitem],center=true);
//material kolem uchytu na sloupek
translate([0,D01_delka_tyce+(S01_prumer_vnitrni-S01_tolerance_zavit)/2+D01_material_pred_zavitem+(D02_sila_materialu+D02_prumer_obruby/2)/2-D02_dotahova_vzdalenost,D01_material_pod_zavitem/2])
 
difference()
{
cube([D01_sirka_tyce,D02_sila_materialu+D02_prumer_obruby/2,D01_material_pod_zavitem],center=true);
translate([0,D02_prumer_obruby/2-D02_dotahova_vzdalenost-D02_sila_materialu,0])
cylinder(h=D02_vyska_uchytky+0.01,r=D02_prumer_obruby/2,center=true);
}
//uchyt na sloupek
translate([0,D01_delka_tyce+(S01_prumer_vnitrni-S01_tolerance_zavit)/2+D01_material_pred_zavitem+D02_sila_materialu+(D02_prumer_obruby)/2,D02_vyska_uchytky/2])
rotate(a=[0,0,270])
WINDGAUGE01A_D02();
 
}
 
//otvor
translate([0,0,(D01_material_pod_zavitem+S01_vyska_spodniho_zavitu)/2])
cylinder (h = D01_material_pod_zavitem+S01_vyska_spodniho_zavitu+0.02, r=((S01_prumer_vnitrni-S01_tolerance_zavit)-2*D01_material_za_zavitem)/2, center = true, $fn=100);
 
translate([D02_dotahova_vzdalenost,-((D02_delka_celeho_uchytu/2-D02_prumer_obruby/2-D02_sila_materialu)/2+D02_prumer_obruby/2+D02_sila_materialu),D02_vyska_uchytky/4]){rotate([0,90,0]){cylinder(h=D02_sila_materialu+0.01,r=D02_prumer_uchytneho_sroubu/2);}}
}
}
WINDGAUGE01A_D01();