]> www.fi.muni.cz Git - things.git/commitdiff
ft scout landing gear support: longer rear stem
authorJan "Yenya" Kasprzak <kas@fi.muni.cz>
Fri, 10 Nov 2017 14:04:42 +0000 (15:04 +0100)
committerJan "Yenya" Kasprzak <kas@fi.muni.cz>
Fri, 10 Nov 2017 14:04:42 +0000 (15:04 +0100)
ft-scout-landing-gear-support.scad

index fe916a356511d52ee605a9c1f3c629c66937f96f..b24ed6346492c4058bcc91fedcfc640998b965bb 100644 (file)
@@ -3,28 +3,31 @@ eps = 0.01;
 
 fuse_w = 40;
 gear_w = fuse_w - 16;
-gear_l = 25;
+gear_l = 30;
 spring_l = 6;
 
 base_w = fuse_w - 10;
-base_l = gear_l + 3.5;
+base_l = gear_l + 5;
 base_h = 0.5;
 base_beam_w = spring_l + 2;
 base_reinf_h = 1;
 base_reinf_w = 1;
 
-rear_spring_l = 3;
-rear_beam_w = rear_spring_l + 3;
+rear_spring_l = 2.5;
+rear_spring_rear_l = 6;
+rear_beam_w = rear_spring_l + 4;
 rear_spring_w = 3;
-rear_spring_bot_w = 7;
-rear_slot_w = 0.8;
+rear_spring_bot_w = 9;
+rear_slot_w = 1.2;
 
 side_spring_bot_w = 3.5;
 side_spring_w = 1.5;
 
 hook_wall = 1;
-hook_in = 1.5;
+hook_in = 1.7;
 hook_h = base_h + base_reinf_h/2;
+side_hook_angle = 7;
+side_hook_angle_cut = 17;
 
 module body() {
        // wide beam
@@ -43,17 +46,24 @@ module body() {
                        cube([base_l - base_beam_w/2, base_reinf_w, base_reinf_h + eps]);
        }
 
-       // rear hook
+       // rear hook - front part
        hull() {
                translate([gear_l-rear_spring_bot_w/2, -rear_spring_l/2, base_h])
-                       cube([rear_spring_bot_w, rear_spring_l, eps]);
+                       cube([rear_spring_bot_w/2-rear_slot_w/2, rear_spring_l, eps]);
                translate([gear_l-rear_spring_w/2, -rear_spring_l/2, hook_h+hook_in+hook_wall-eps])
-                       cube([rear_spring_w, rear_spring_l, eps]);
+                       cube([rear_spring_w/2-rear_slot_w/2, rear_spring_l, eps]);
+       }
+       // rear hook - rear part
+       hull() {
+               translate([gear_l + rear_slot_w/2, -rear_spring_rear_l/2, base_h])
+                       cube([rear_spring_bot_w/2-rear_slot_w/2, rear_spring_rear_l, eps]);
+               translate([gear_l + rear_slot_w/2, -rear_spring_rear_l/2, hook_h+hook_in+hook_wall-eps])
+                       cube([rear_spring_w/2-rear_slot_w/2, rear_spring_rear_l, eps]);
        }
                
        // side hooks
        for (y = [-1, 1]) scale([1, y, 1]) intersection() {
-               translate([0, gear_w/2, eps]) rotate([0, 0, -20])
+               translate([0, gear_w/2, eps]) rotate([0, 0, -side_hook_angle])
                        translate([-10, 0, 0]) hull() {
                        cube([20, side_spring_bot_w, base_h-eps]);
                        cube([20, side_spring_w, hook_h + hook_in + hook_wall-eps]);
@@ -62,8 +72,8 @@ module body() {
                translate([0, -base_w/2, base_h/2])
                        cube([base_beam_w, base_w, infty]);
                // cut the front sides
-               translate([0, gear_w/2 + 0.8, eps])
-               rotate([0, 0, -30])
+               translate([0, gear_w/2 + 1.25, eps])
+               rotate([0, 0, -side_hook_angle_cut])
                        translate([-5, 0, 0])
                        cube(20);
                        
@@ -78,12 +88,12 @@ difference() {
        translate([0, 0, -rear_beam_w/2-eps])
                cylinder(h = rear_beam_w+2*eps, r = hook_in/2, $fn = 6);
        // rear slot above the hole
-       translate([gear_l-rear_slot_w/2, -rear_beam_w/2+eps, hook_h+hook_in/2])
-               cube([rear_slot_w, rear_beam_w+2*eps, infty]);
+       // translate([gear_l-rear_slot_w/2, -rear_beam_w/2+eps, hook_h+hook_in/2])
+       //      cube([rear_slot_w, rear_beam_w+2*eps, infty]);
        // side slots
        for (y = [-1, 1]) scale([1, y, 1]) {
                translate([0, gear_w/2, hook_h+hook_in/2]) {
-                       rotate([0, 90, -20])
+                       rotate([0, 90, -side_hook_angle])
                        translate([0, 0, -10])
                        cylinder(r = hook_in/2, h = 20, $fn = 6);
                }