generated from CubeCraft-Creations/Tracehound
fix: make camera node strap loops vertical
This commit is contained in:
+7400
-7120
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,11 +1,11 @@
|
||||
// RemoteRig camera node case v4
|
||||
// Upright appliance-style OpenSCAD prototype for a strap-mounted camera node.
|
||||
// Units: millimeters. Coordinate system: X=width, Y=depth/front-back, Z=height.
|
||||
// Front/service lid is on the -Y face. Rear strap channels are on the +Y face.
|
||||
// Front/service lid is on the -Y face. Rear zip-tie pass-through loops are on the +Y face.
|
||||
//
|
||||
// v4 visual direction: tall/upright appliance/control box matching the original
|
||||
// reference image, replacing the rejected wide, low generic electronics box.
|
||||
// Nominal body: 56 W x 36 D x 82 H mm; with low rear strap bridges ~40 D.
|
||||
// Nominal body: 56 W x 36 D x 82 H mm; with low rear zip-tie loops ~41 D.
|
||||
//
|
||||
// Prototype assumptions to confirm against purchased parts:
|
||||
// - 1.3 inch OLED module/window opening: 31 x 16 mm visible window, 37 x 22 mm panel recess.
|
||||
@@ -50,14 +50,19 @@ rocker_h = 19.0;
|
||||
front_slot_w = 34.0; // two long rounded horizontal slots near lower front
|
||||
front_slot_h = 3.2;
|
||||
|
||||
// Rear reusable cloth zip-tie / Velcro strap channels: low-profile external loops.
|
||||
strap_bridge_w = case_w - 14;
|
||||
strap_bridge_h = 6.5; // outer raised rail height
|
||||
strap_slot_h = 4.2; // strap thickness opening; adjust for cloth ties
|
||||
strap_gap_y = 2.4; // clearance behind bridge for strap material
|
||||
strap_bridge_y = strap_gap_y + 2.4;
|
||||
strap_z1 = 23.0;
|
||||
strap_z2 = 50.0;
|
||||
// Rear reusable cloth zip-tie / Velcro pass-through loops.
|
||||
// Two visibly vertical external belt-loop brackets sit left/right of center.
|
||||
// The strap path is the real non-solid tunnel between rear wall and raised bridge;
|
||||
// it stays outside the electronics cavity and is open at the top/bottom for feeding.
|
||||
rear_loop_x = 13.0;
|
||||
rear_loop_w = 8.5; // outside bracket width in X
|
||||
rear_loop_h = 50.0; // outside bracket height in Z
|
||||
rear_loop_z = case_h/2;
|
||||
rear_loop_gap_y = 3.8; // usable strap-thickness clearance behind raised bridge
|
||||
rear_loop_face_t = 1.4; // low-profile outer bridge skin
|
||||
rear_loop_y = rear_loop_gap_y + rear_loop_face_t;
|
||||
rear_loop_usable_w = 6.4; // usable strap width through each vertical loop
|
||||
rear_loop_side_pad = (rear_loop_w - rear_loop_usable_w) / 2;
|
||||
|
||||
// USB power connector placeholder cutouts
|
||||
usb_c_cutout_w = 10.5; // bottom USB-C female inlet visible opening, X width
|
||||
@@ -107,24 +112,27 @@ module screw_boss(x, z) {
|
||||
}
|
||||
}
|
||||
|
||||
module strap_bridge(zc) {
|
||||
// Low external rear belt-loop bridge for cloth ties/Velcro.
|
||||
// The slot is entirely behind the rear wall so it does not expose the
|
||||
// electronics cavity; a small overlap keeps the bridge connected to shell.
|
||||
bridge_overlap_y = 0.8;
|
||||
translate([0, case_d/2 + strap_bridge_y/2 - bridge_overlap_y, zc - strap_bridge_h/2])
|
||||
union() {
|
||||
difference() {
|
||||
rounded_box([strap_bridge_w, strap_bridge_y, strap_bridge_h], r=1.8);
|
||||
translate([0, -strap_bridge_y/2 + bridge_overlap_y + 0.05 + (strap_bridge_y + 1.0)/2,
|
||||
(strap_bridge_h - strap_slot_h)/2])
|
||||
rounded_box([strap_bridge_w - 9.0, strap_bridge_y + 1.0, strap_slot_h], r=1.1);
|
||||
}
|
||||
module rear_zip_tie_loop(xc) {
|
||||
// Vertical external belt-loop bracket for reusable cloth zip ties/Velcro.
|
||||
// The central void is a real strap tunnel: rear wall -> air gap -> raised
|
||||
// outer bridge face. Side pads weld the bridge to the shell while keeping
|
||||
// the electronics cavity sealed; the tunnel is open at top and bottom.
|
||||
loop_overlap_y = 0.75;
|
||||
tunnel_extra_y = 0.35;
|
||||
tunnel_clear_z = rear_loop_h + 0.8;
|
||||
|
||||
// Rear-wall weld pad: mechanically joins the external bridge to the
|
||||
// shell while keeping the belt slot outside the electronics cavity.
|
||||
translate([0, -strap_bridge_y/2 + bridge_overlap_y, strap_bridge_h/2])
|
||||
cube([strap_bridge_w, 0.9, strap_bridge_h], center=true);
|
||||
translate([xc, case_d/2 + rear_loop_y/2 - loop_overlap_y, rear_loop_z])
|
||||
difference() {
|
||||
xz_rounded_prism(rear_loop_w, rear_loop_y, rear_loop_h, r=1.6);
|
||||
|
||||
// Real vertical feed-through gap behind the raised bridge. Starts
|
||||
// just outside the rear wall, so it cannot cut into the enclosure.
|
||||
translate([0,
|
||||
-rear_loop_y/2 + loop_overlap_y + rear_loop_gap_y/2 + 0.08,
|
||||
0])
|
||||
cube([rear_loop_usable_w,
|
||||
rear_loop_gap_y + tunnel_extra_y,
|
||||
tunnel_clear_z], center=true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -137,9 +145,9 @@ module camera_node_body_v4() {
|
||||
// Upright outer shell with softened appliance-like corners.
|
||||
rounded_box([case_w, case_d, case_h], r=corner_r);
|
||||
|
||||
// Rear cloth zip-tie / Velcro strap bridges kept flat/quiet.
|
||||
strap_bridge(strap_z1);
|
||||
strap_bridge(strap_z2);
|
||||
// Rear cloth zip-tie / Velcro pass-through loops kept flat/quiet.
|
||||
rear_zip_tie_loop(-rear_loop_x);
|
||||
rear_zip_tie_loop( rear_loop_x);
|
||||
}
|
||||
|
||||
// Full-height front recessed lid pocket, like the green reference panel.
|
||||
|
||||
Reference in New Issue
Block a user