Skip to content
This repository has been archived by the owner on Sep 30, 2023. It is now read-only.

Commit

Permalink
WINDGAUGE03A #15 - Updated venturi tube with fin holders and cut-out.…
Browse files Browse the repository at this point in the history
… Fixed parameter name R01_vyska_prekryti_statoru in WINDGAUGE_S01.scad.P_WINDGAUGE03A_R03.stl
  • Loading branch information
JanKott committed May 2, 2019
1 parent f6a6604 commit 7055162
Show file tree
Hide file tree
Showing 5 changed files with 95 additions and 39 deletions.
6 changes: 6 additions & 0 deletions mechanical/WINDGAUGE03A/cad/configuration.scad
Original file line number Diff line number Diff line change
Expand Up @@ -149,3 +149,9 @@ R03_slip_ring_offset = 0; // slip-ring offset from tube center
R03_venturi_tube_height = 150; // Venturi tube height (limited by max print size)
R03_wall_thickness = 3; // Venturi tube wall thickness
R03_sealing_ring_thickness = 1.5; // Sealing ring size
R03_fin_width = 0.8; // Width of vertical stabilizator
R03_fin_length = 150; // Length of vertical stabilizator
R03_fin_height = 150; // Height of vertical stabilizator
R03_fin_holder_width = M3_bolt_head_height + M3_bolt_length + M3_nut_height;
R03_fin_holder_height = M3_nut_diameter + 2*R03_wall_thickness;
R03_fin_holder_depth = R03_wide_D/2 + R03_fin_holder_height;
94 changes: 62 additions & 32 deletions mechanical/WINDGAUGE03A/cad/src/WINDGAUGE_R03.scad
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
include <../configuration.scad>
use <./lib/naca4.scad>
use <./lib/curvedPipe.scad>
use <./lib/copyFunctions.scad>
use <WINDGAUGE_R06.scad>

slip_ring_z = 2*R03_venturi_tube_height - R03_slip_ring_offset - 6*R03_wide_D;
Expand All @@ -12,41 +13,41 @@ exhaust_length = ((R03_wide_D - R03_narrow_D) / 2) / tan(15 / 2);
wide_body_length = (R03_venturi_tube_height - intake_length - exhaust_length
- R03_narrow_D) / 2;

module fins(outer_r, inner_r, wall, height, count, angle, draft) {
for (i = [1 : count]) {
rotate([0, 0, i * 360/count])
translate([-wall / 2, inner_r, 0])
difference () {
cube([wall, outer_r - inner_r, height]);

color("red")
translate([-1, 0, height])
rotate([-angle, 0, 0])
cube([wall + 2, (outer_r - inner_r) + height, height]);
}
}
inner_points = [ for (i = [0 : count - 1]) [sin(i * 360/count) * (outer_r),
cos(i * 360/count) * (outer_r)]];
// calculate coordinates of external fins polygon
vertex_angle = (180*(count-2)) / count; // angle in external fins polygon corner.
outer_points = [ for (i = [0 : count - 1]) [
sin(i * 360/count) * (outer_r + wall/sin(vertex_angle/2)),
cos(i * 360/count) * (outer_r + wall/sin(vertex_angle/2))
]];
polygon_paths = [ [ for (i = [0 : count-1]) i ],
[ for (i = [count : 2*count-1]) i ]];

//module fins(outer_r, inner_r, wall, height, count, angle, draft) {
// for (i = [1 : count]) {
// rotate([0, 0, i * 360/count])
// translate([-wall / 2, inner_r, 0])
// difference () {
// cube([wall, outer_r - inner_r, height]);
//
// color("red")
// translate([-1, 0, height])
// rotate([-angle, 0, 0])
// cube([wall + 2, (outer_r - inner_r) + height, height]);
// }
// }
// inner_points = [ for (i = [0 : count - 1]) [sin(i * 360/count) * (outer_r),
// cos(i * 360/count) * (outer_r)]];
// // calculate coordinates of external fins polygon
// vertex_angle = (180*(count-2)) / count; // angle in external fins polygon corner.
// outer_points = [ for (i = [0 : count - 1]) [
// sin(i * 360/count) * (outer_r + wall/sin(vertex_angle/2)),
// cos(i * 360/count) * (outer_r + wall/sin(vertex_angle/2))
// ]];
// polygon_paths = [ [ for (i = [0 : count-1]) i ],
// [ for (i = [count : 2*count-1]) i ]];
//
// echo("outer points = ", outer_points);
// echo("inner points = ", inner_points);
// echo("paths = ", polygon_paths);
// echo("vertex_angle = ", vertex_angle);

linear_extrude(height = height - (tan(angle)*(outer_r - inner_r)))
polygon(
points = concat(outer_points, inner_points),
paths = polygon_paths
);
}
//
// linear_extrude(height = height - (tan(angle)*(outer_r - inner_r)))
// polygon(
// points = concat(outer_points, inner_points),
// paths = polygon_paths
// );
//}

module drop_shape(drop_length, draft)
{
Expand Down Expand Up @@ -255,11 +256,39 @@ module WINDGAUGE03A_R03(draft = true)
$fn=draft ? 20 :100);
}

// Fin holders
rotate_copy([0, 0, 180])
difference()
{
// Holder
translate([-R03_fin_holder_width/2, 0, 0])
cube([R03_fin_holder_width, R03_fin_holder_depth, R03_fin_holder_height]);
// Bolt hole
translate([-R03_fin_holder_width/2,
R03_fin_holder_depth - R03_fin_holder_height/2,
R03_fin_holder_height/2])
rotate([0, 90, 0])
cylinder(h = R03_fin_holder_width, d = M3_bolt_diameter,
$fn=draft ? 20 :100);
// Nut holes
mirror_copy([1, 0, 0])
translate([R03_fin_holder_width/2 - M3_nut_height,
R03_fin_holder_depth - R03_fin_holder_height/2,
R03_fin_holder_height/2])
rotate([0, 90, 0])
cylinder(h = M3_nut_height, d = M3_nut_diameter,
$fn=6);
}

}
// // Prototyping cut-out cube.
// translate([0, -75, 0])
// cube([150, 150, 150]);

// Fin cut-out
translate([-R03_fin_width/2, -R03_fin_holder_depth, 0])
cube([R03_fin_width, 2*R03_fin_holder_depth, 2*R03_fin_holder_height]);

// Slip-ring opening
translate([0, R03_wide_D/2 + 5, slip_ring_z])
rotate([90, 0, 0])
Expand Down Expand Up @@ -403,7 +432,8 @@ module WINDGAUGE03A_R03(draft = true)

}

fins(1.5*R03_wide_D, R03_wide_D/2, R03_wall_thickness, 20, 6, 20);
// Replaced by single fin in issue #15
// fins(1.5*R03_wide_D, R03_wide_D/2, R03_wall_thickness, 20, 6, 20);

}

Expand Down
12 changes: 5 additions & 7 deletions mechanical/WINDGAUGE03A/cad/src/WINDGAUGE_S01.scad
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@ module WINDGAUGE01A_S01()
//krycí ovál - usnadnění povolení
difference()
{
cylinder (h = R01_vyska_preryti_statoru+5, r=S01_prumer_vnitrni/2+5/2*S01_sila_materialu, $fn=100);
cylinder (h = R01_vyska_prekryti_statoru+5, r=S01_prumer_vnitrni/2+5/2*S01_sila_materialu, $fn=100);

cylinder (h = R01_vyska_preryti_statoru+5+0.01, r=S01_prumer_vnitrni/2+3/2*S01_sila_materialu, $fn=100);
cylinder (h = R01_vyska_prekryti_statoru+5+0.01, r=S01_prumer_vnitrni/2+3/2*S01_sila_materialu, $fn=100);

}

Expand Down Expand Up @@ -97,13 +97,13 @@ translate([0,0,S01_sila_materialu])
difference ()
{

cylinder (h = R01_vyska_preryti_statoru+2*lozisko_vyska+2*S01_sila_materialu+2*S01_sila_materialu+vyska_hlavy_sroubu+magnet_vyska+vyska_matky, r= sirka_matky/2+S01_sila_materialu, $fn=20);
cylinder (h = R01_vyska_prekryti_statoru+2*lozisko_vyska+2*S01_sila_materialu+2*S01_sila_materialu+vyska_hlavy_sroubu+magnet_vyska+vyska_matky, r= sirka_matky/2+S01_sila_materialu, $fn=20);

translate([0,0,R01_vyska_preryti_statoru+2*lozisko_vyska+2*S01_sila_materialu+2*S01_sila_materialu+vyska_hlavy_sroubu+magnet_vyska+vyska_matky-vyska_matky])
translate([0,0,R01_vyska_prekryti_statoru+2*lozisko_vyska+2*S01_sila_materialu+2*S01_sila_materialu+vyska_hlavy_sroubu+magnet_vyska+vyska_matky-vyska_matky])
cylinder (h = vyska_matky+0.01, r= (sirka_matky+0.2)/2, $fn=6);

translate([0,0,-0.01])
cylinder (h = R01_vyska_preryti_statoru+2*lozisko_vyska+2*S01_sila_materialu+2*S01_sila_materialu+vyska_hlavy_sroubu+magnet_vyska+vyska_matky+0.01, r= (prumer_sroubu+0.2)/2, $fn=40);
cylinder (h = R01_vyska_prekryti_statoru+2*lozisko_vyska+2*S01_sila_materialu+2*S01_sila_materialu+vyska_hlavy_sroubu+magnet_vyska+vyska_matky+0.01, r= (prumer_sroubu+0.2)/2, $fn=40);

translate([0,0,-0.01])
cylinder (h = vyska_hlavy_sroubu-S01_sila_materialu, r= (prumer_hlavy_sroubu)/2, $fn=40);
Expand All @@ -117,5 +117,3 @@ translate([0,0,S01_sila_materialu])


WINDGAUGE01A_S01();


22 changes: 22 additions & 0 deletions mechanical/WINDGAUGE03A/cad/src/lib/copyFunctions.scad
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
// copyFunctions.scad - library for copy versions of mirror/rotate/translate
// May 2019

// general use: just like normal version of given function

module rotate_copy(v=[1,0,0])
{
children();
rotate(v) children();
}

module mirror_copy(v=[1,0,0])
{
children();
mirror(v) children();
}

module translate_copy(v=[1,0,0])
{
children();
translate(v) children();
}
Binary file modified mechanical/WINDGAUGE03A/doc/img/P_WINDGAUGE03A_R03.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 7055162

Please sign in to comment.