diff --git a/projects/tube-bender/cad/README.md b/projects/tube-bender/cad/README.md new file mode 100644 index 000000000..fc894c037 --- /dev/null +++ b/projects/tube-bender/cad/README.md @@ -0,0 +1,56 @@ +# CAD Files — Tube Bender + +All CAD source files live here. +Export chain: **OpenSCAD → FreeCAD → STEP → Fusion 360 → CAM** + +## Files + +| File | Description | Status | +|------|-------------|--------| +| `base_plate.scad` | Parametric base plate (400 × 300 × 12 mm, fully adjustable) | ✅ | +| `side_plates.scad` | Vertical side plates with pivot bore | 🔜 | +| `bend_die.scad` | Main form die (parametric by tube OD + CLR) | 🔜 | +| `clamp_block.scad` | Clamp / clamp die | 🔜 | +| `pressure_die.scad` | Follower / pressure die assembly | 🔜 | +| `bending_arm.scad` | Lever arm with handle provision (3-piece assembly) | ✅ | +| `pivot_shaft.scad` | Pivot shaft + bushing | 🔜 | +| `assembly.scad` | Full machine assembly (includes all parts) | 🔜 | + +## Export Workflow + +### 1. OpenSCAD → STL / AMF +``` +File → Export → Export as STL… +``` +For FreeCAD import, **AMF** or **STL** both work. +Use `$fn = 128` or higher before final export. + +### 2. FreeCAD — STL/AMF → STEP +1. Open FreeCAD → **Part** workbench. +2. `File → Import` → select `.stl` / `.amf`. +3. `Part → Convert to Solid`. +4. `File → Export` → choose **STEP (*.step)**. + +### 3. Fusion 360 — STEP import +1. `File → Open → Open from my computer` → select `.step`. +2. Review bodies, set material. +3. Proceed to **CAM** workspace. + +### 4. CAM +- Set up stock, WCS (Work Coordinate System) at plate bottom face, front-left corner. +- Operations: face mill, drill (mount holes, side-plate holes), pocket (if enabled). + +## Key Parameters (base_plate.scad) + +| Variable | Default | Notes | +|----------|---------|-------| +| `plate_length` | 400 mm | Front → back | +| `plate_width` | 300 mm | Left → right | +| `plate_thickness` | 12 mm | Steel stock | +| `corner_radius` | 8 mm | Plate corner fillet | +| `mount_bolt_d` | 14 mm | M12 bench holes | +| `mount_cbore_d` | 24 mm | Counterbore Ø (0 = none) | +| `side_plate_gap` | 65 mm | Clear inner gap between side plates | +| `side_plate_cx` | 220 mm | Bolt pattern centre from front | +| `receiver_slot_enable` | false | Slot for receiver-tube stand | +| `pocket_enable` | false | Lightening/chip pockets | diff --git a/projects/tube-bender/cad/base_plate-group.SLDPRT b/projects/tube-bender/cad/base_plate-group.SLDPRT new file mode 100644 index 000000000..9dd4842dc --- /dev/null +++ b/projects/tube-bender/cad/base_plate-group.SLDPRT @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2fc278463c6fc42a873055e999b6a3fb21631e33d6c80ec2eb031670874d475 +size 76270 diff --git a/projects/tube-bender/cad/base_plate-group.step b/projects/tube-bender/cad/base_plate-group.step new file mode 100644 index 000000000..972a1dec2 --- /dev/null +++ b/projects/tube-bender/cad/base_plate-group.step @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23bdea49ddb00d0d39e1a71a755a1e98dc9d34715e8551b83b00a7f510dad94b +size 108816 diff --git a/projects/tube-bender/cad/base_plate.20260405-224604.FCBak b/projects/tube-bender/cad/base_plate.20260405-224604.FCBak new file mode 100644 index 000000000..f4d2af3ac Binary files /dev/null and b/projects/tube-bender/cad/base_plate.20260405-224604.FCBak differ diff --git a/projects/tube-bender/cad/base_plate.FCStd b/projects/tube-bender/cad/base_plate.FCStd new file mode 100644 index 000000000..94487f94a Binary files /dev/null and b/projects/tube-bender/cad/base_plate.FCStd differ diff --git a/projects/tube-bender/cad/base_plate.scad b/projects/tube-bender/cad/base_plate.scad new file mode 100644 index 000000000..ecca18e69 --- /dev/null +++ b/projects/tube-bender/cad/base_plate.scad @@ -0,0 +1,180 @@ +// ============================================================================= +// TUBE BENDER — BASE PLATE (Aluminium) +// File : base_plate.scad +// Project: OSR Machines / Tube Bender +// Author : PolyMech +// Date : 2026-04-05 +// Mat : Aluminium plate (6061-T6 or similar) +// +// Parametric base plate for a manual rotary-draw tube bender. +// All critical dimensions are exposed as top-level variables. +// +// Workflow: OpenSCAD → STL/AMF → FreeCAD → STEP → Fusion 360 → CAM +// +// Coordinate origin: +// X = along plate length (front → back) +// Y = along plate width (symmetric, left = −Y, right = +Y) +// Z = upward (bottom face at Z = 0) +// ============================================================================= + +/* [Plate Body] */ +plate_length = 400; // mm — front-to-back (X) +plate_width = 300; // mm — left-to-right (Y) +plate_thickness = 30; // mm — stock thickness (12 mm alu plate) + +/* [Corner Rounding] */ +corner_radius = 8; // mm — plate corner fillet (0 = sharp) + +/* [Bench / Floor Mounting — 4× corner holes] */ +// M10 cap-head bolt: clearance hole Ø 11 mm, cbore Ø 18 mm × 10 mm deep +mount_bolt_d = 11; // mm — through-hole diameter +mount_inset_x = 25; // mm — hole centre inset from plate edge (X) +mount_inset_y = 25; // mm — hole centre inset from plate edge (Y) +mount_cbore_d = 19; // mm — counterbore Ø on underside (0 = none) +mount_cbore_h = 10; // mm — counterbore depth (must be < plate_thickness) + +/* [Side Plate Bolt Holes — 2 holes per side plate, 4 total] */ +// Each vertical side plate lands on the base and is bolted with 2× M10 bolts. +// The two holes per plate are spaced along X (front / rear) for rotational +// stability. Both sides are symmetric about the plate Y centreline. +// +// Layout (top view): +// front of plate ←→ back of plate +// [SP_BH_F] .............. [SP_BH_R] ← right side plate +// ────────── gap ────────────────── +// [SP_BH_F] .............. [SP_BH_R] ← left side plate + +sp_gap = 65; // mm — clear gap between inner faces of side plates +sp_bolt_d = 11; // mm — M10 clearance hole Ø +sp_cbore_d = 19; // mm — counterbore Ø on underside (0 = none) +sp_cbore_h = 10; // mm — counterbore depth +sp_bolt_y_offset = 20; // mm — bolt centre offset outward from inner face +// (= half side-plate thickness + bolt-edge margin) +sp_bolt_x_front = 160; // mm — X position of front bolt (from front edge) +sp_bolt_x_rear = 280; // mm — X position of rear bolt (from front edge) + +/* [Pivot Shaft Datum Hole] */ +// Small through-hole on the plate centreline directly below where the pivot +// shaft will be. Used as a layout / alignment datum — not structural. +pivot_datum_x = 220; // mm — from front edge (should be between sp bolts) +pivot_datum_d = 8; // mm — hole Ø (set 0 to omit) + +/* [Receiver Slot — optional, back edge] */ +// Open slot at the back edge so the base can sit over a square receiver tube +// for stand/vice mounting. Disabled by default. +receiver_enable = false; +receiver_w = 52; // mm — slot width (50 mm sq. tube + 2 mm clearance) +receiver_depth = 50; // mm — slot depth into plate from back edge + +/* [Render Quality] */ +$fn = 64; // facets — use 128+ for final STL export + +// ============================================================================= +// DERIVED VALUES (calculated — do not edit) +// ============================================================================= + +_half_W = plate_width / 2; + +// Y centre of each side plate bolt group (measured from plate Y centre) +_sp_y_R = sp_gap / 2 + sp_bolt_y_offset; // right side (+Y) +_sp_y_L = -sp_gap / 2 - sp_bolt_y_offset; // left side (−Y) + +// ============================================================================= +// ENTRY POINT +// ============================================================================= + +base_plate(); + +// ============================================================================= +// MODULE: base_plate +// ============================================================================= +module base_plate() { + difference() { + rounded_box(plate_length, plate_width, plate_thickness, corner_radius); + + corner_mount_holes(); + side_plate_bolt_holes(); + + if (pivot_datum_d > 0) + translate([pivot_datum_x, 0, -1]) + cylinder(d=pivot_datum_d, h=plate_thickness + 2); + + if (receiver_enable) + receiver_slot(); + } +} + +// ============================================================================= +// MODULE: rounded_box +// Rectangular solid with optional corner rounding. +// Plate front-left-bottom corner sits at origin. +// Plate spans [0..L] in X, [−W/2..+W/2] in Y, [0..T] in Z. +// ============================================================================= +module rounded_box(L, W, T, r) { + if (r <= 0) { + translate([0, -W / 2, 0]) cube([L, W, T]); + } else { + union() { + translate([r, -W / 2, 0]) cube([L - 2*r, W, T]); + translate([0, -W / 2 + r, 0]) cube([L, W - 2*r, T]); + for (xp = [r, L - r], yp = [-W / 2 + r, W / 2 - r]) + translate([xp, yp, 0]) cylinder(r=r, h=T); + } + } +} + +// ============================================================================= +// MODULE: corner_mount_holes +// 4× M10 through-holes at corners with underside counterbores. +// ============================================================================= +module corner_mount_holes() { + xs = [mount_inset_x, plate_length - mount_inset_x]; + ys = [-_half_W + mount_inset_y, _half_W - mount_inset_y]; + + for (xp = xs, yp = ys) { + translate([xp, yp, -1]) { + cylinder(d=mount_bolt_d, h=plate_thickness + 2); // through + if (mount_cbore_d > 0 && mount_cbore_h > 0) + cylinder(d=mount_cbore_d, h=mount_cbore_h + 1); + // cbore + } + } +} + +// ============================================================================= +// MODULE: side_plate_bolt_holes +// 2 holes per side plate × 2 sides = 4 holes total. +// Each hole pair (front / rear) sits at a fixed Y, one per side. +// ============================================================================= +module side_plate_bolt_holes() { + xs = [sp_bolt_x_front, sp_bolt_x_rear]; + ycs = [_sp_y_R, _sp_y_L]; + + for (xp = xs, yp = ycs) { + translate([xp, yp, -1]) { + cylinder(d=sp_bolt_d, h=plate_thickness + 2); // through + if (sp_cbore_d > 0 && sp_cbore_h > 0) + cylinder(d=sp_cbore_d, h=sp_cbore_h + 1); + // cbore + } + } +} + +// ============================================================================= +// MODULE: receiver_slot +// Open slot cut into the back edge, centred on Y = 0. +// ============================================================================= +module receiver_slot() { + translate( + [ + plate_length - receiver_depth, + -receiver_w / 2, + -1, + ] + ) + cube([receiver_depth + 1, receiver_w, plate_thickness + 2]); +} + +// ============================================================================= +// END OF FILE +// ============================================================================= diff --git a/projects/tube-bender/cad/bending_arm-group.SLDPRT b/projects/tube-bender/cad/bending_arm-group.SLDPRT new file mode 100644 index 000000000..0c02f667d --- /dev/null +++ b/projects/tube-bender/cad/bending_arm-group.SLDPRT @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:97ba8e3785d75fdedc913764451a02f48ba86eb7ec64522b9aec3d885160f537 +size 109437 diff --git a/projects/tube-bender/cad/bending_arm-group.step b/projects/tube-bender/cad/bending_arm-group.step new file mode 100644 index 000000000..17465930d --- /dev/null +++ b/projects/tube-bender/cad/bending_arm-group.step @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4efa8205a4d65d590688a4d0dfdcd4cff91d0b9846643c43b42569c28db189a2 +size 137260 diff --git a/projects/tube-bender/cad/bending_arm.scad b/projects/tube-bender/cad/bending_arm.scad new file mode 100644 index 000000000..ab356df96 --- /dev/null +++ b/projects/tube-bender/cad/bending_arm.scad @@ -0,0 +1,187 @@ +// ============================================================================= +// TUBE BENDER — BENDING ARM (U-Bracket) +// File : bending_arm.scad +// Project: OSR Machines / Tube Bender +// Author : PolyMech +// Date : 2026-04-05 +// Mat : Aluminium plate (30 mm stock) +// +// Parametric 3-piece bending arm assembly. Includes the top plate, bottom +// plate, and the rear spacer block. +// +// Workflow: OpenSCAD → STL/AMF → FreeCAD → STEP → Fusion 360 → CAM +// ============================================================================= + +/* [Export Selection] */ +// Select which part to view or export +part = "assembly"; // [assembly, top_plate, bottom_plate, spacer] + +/* [Basic Dimensions & Stock] */ +plate_thickness = 30; // mm — Stock thickness of top/bottom plates +inner_gap = 51; // mm — Clear gap between top and bottom plates (50mm die + 1mm clear) +arm_width = 90; // mm — Overall width of the arm +arm_length = 250;// mm — Distance from main pivot center to back edge + +/* [Pivot Holes] */ +main_pivot_d = 40; // mm — Main die shaft clearance hole +counter_die_d = 30; // mm — Counter/pressure die shaft clearance hole +pivot_dist = 130;// mm — Center-to-center distance between main and counter die + +/* [Spacer & Assembly Bolts] */ +// Spacer block sits at the back. By setting length to 30, it can be cut +// from the same 30mm plate stock as the arms, just stood vertically on edge! +spacer_length = 30; // mm — Length of the spacer block at the back edge (X) +spacer_bolt_d = 11; // mm — M10 clearance hole for top/bottom plates +spacer_cbore_d = 19; // mm — Counterbore diameter for M10 socket head +spacer_cbore_h = 10; // mm — Counterbore depth +spacer_tap_d = 8.5;// mm — Tap drill size for M10 threads in the spacer block itself +spacer_bolt_pitch = 28; // mm — Y-distance between the 3 bolts + +/* [Handle attachment] */ +// Optional bore in the back face of the spacer to receive a pipe handle. +// Note: verify it doesn't intersect your bolts! +handle_bore_enable = false; +handle_bore_d = 34; // mm — Fits a ~33.7mm pipe (1" nominal) +handle_bore_depth = 20; // mm + +/* [Render Quality] */ +$fn = 64; // Use 128+ for final export + +// ============================================================================= +// DERIVED VALUES +// ============================================================================= +// Origin (0,0,0) is center of main pivot on the bottom face of each respective plate. +_r = arm_width / 2; + +// ============================================================================= +// ENTRY POINT SWITCH +// ============================================================================= +if (part == "assembly") { + arm_assembly(); +} else if (part == "top_plate") { + arm_top_plate(); +} else if (part == "bottom_plate") { + arm_bottom_plate(); +} else if (part == "spacer") { + arm_spacer(); +} + +// ============================================================================= +// MODULES +// ============================================================================= + +module arm_assembly() { + // Bottom plate + color("#a0a0a0") + arm_bottom_plate(); + + // Spacer block + color("#606060") + translate([0, 0, plate_thickness]) + arm_spacer(); + + // Top plate + color("#c0c0c0") + translate([0, 0, plate_thickness + inner_gap]) + arm_top_plate(); +} + +// Shared 3D profile for top and bottom plates +module _arm_profile_3d() { + union() { + cylinder(r = _r, h = plate_thickness); + translate([-arm_length, -_r, 0]) + cube([arm_length, arm_width, plate_thickness]); + } +} + +// Top Plate +module arm_top_plate() { + difference() { + // Main body + _arm_profile_3d(); + + // Main pivot hole + translate([0, 0, -1]) + cylinder(d = main_pivot_d, h = plate_thickness + 2); + + // Counter die pivot hole + translate([-pivot_dist, 0, -1]) + cylinder(d = counter_die_d, h = plate_thickness + 2); + + // Spacer bolt holes (Counterbored from +Z face down) + _spacer_bolts() { + translate([0, 0, -1]) + cylinder(d = spacer_bolt_d, h = plate_thickness + 2); + + if (spacer_cbore_d > 0 && spacer_cbore_h > 0) + translate([0, 0, plate_thickness - spacer_cbore_h]) + cylinder(d = spacer_cbore_d, h = spacer_cbore_h + 1); + } + } +} + +// Bottom Plate +module arm_bottom_plate() { + difference() { + // Main body + _arm_profile_3d(); + + // Main pivot hole + translate([0, 0, -1]) + cylinder(d = main_pivot_d, h = plate_thickness + 2); + + // Counter die pivot hole + translate([-pivot_dist, 0, -1]) + cylinder(d = counter_die_d, h = plate_thickness + 2); + + // Spacer bolt holes (Counterbored from -Z face up) + _spacer_bolts() { + translate([0, 0, -1]) + cylinder(d = spacer_bolt_d, h = plate_thickness + 2); + + if (spacer_cbore_d > 0 && spacer_cbore_h > 0) + translate([0, 0, -1]) + cylinder(d = spacer_cbore_d, h = spacer_cbore_h + 1); + } + } +} + +// Rear Spacer Block +module arm_spacer() { + difference() { + // Main block + translate([-arm_length, -arm_width/2, 0]) + cube([spacer_length, arm_width, inner_gap]); + + // Through holes for bolts (Can be tapped or used as clearance for through-bolts) + _spacer_bolts() { + translate([0, 0, -1]) + cylinder(d = spacer_tap_d, h = inner_gap + 2); + } + + // Optional handle bore into the back face + if (handle_bore_enable) { + // Cut from X = -arm_length extending positively into the block + // Centered in Z based on inner_gap + translate([-arm_length - 1, 0, inner_gap / 2]) + rotate([0, 90, 0]) + cylinder(d = handle_bore_d, h = handle_bore_depth + 1); + } + } +} + +// Helper: Bolt Positions +module _spacer_bolts() { + // Holes are centered in the spacer piece on the X axis + bx = -arm_length + spacer_length / 2; + // 3 bolts spread along the Y axis + for (by = [-spacer_bolt_pitch, 0, spacer_bolt_pitch]) { + translate([bx, by, 0]) + children(); + } +} + +// ============================================================================= +// END OF FILE +// ============================================================================= diff --git a/projects/tube-bender/cad/global.SLDASM b/projects/tube-bender/cad/global.SLDASM new file mode 100644 index 000000000..74db0306c --- /dev/null +++ b/projects/tube-bender/cad/global.SLDASM @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef28daab36f1dc5c6a2f0adf995f1a4e57831046ff86108b2ea28a38f37ab935 +size 89660 diff --git a/projects/tube-bender/cad/sw-base_plate.SLDPRT b/projects/tube-bender/cad/sw-base_plate.SLDPRT new file mode 100644 index 000000000..fcd552a03 --- /dev/null +++ b/projects/tube-bender/cad/sw-base_plate.SLDPRT @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e283422a4e1488611c079d257786f8e9a6f98dca27e74fe289344e189a642dd8 +size 88241 diff --git a/projects/tube-bender/cad/sw-bending_arm.SLDPRT b/projects/tube-bender/cad/sw-bending_arm.SLDPRT new file mode 100644 index 000000000..b1546ea66 --- /dev/null +++ b/projects/tube-bender/cad/sw-bending_arm.SLDPRT @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c52f66a188ee78107a23117cbc959e9b2e7c025e30e9989c26c731e0159c32c +size 145898 diff --git a/projects/tube-bender/media/build/perspective-1.jpg b/projects/tube-bender/media/build/perspective-1.jpg new file mode 100644 index 000000000..f3a93ee88 --- /dev/null +++ b/projects/tube-bender/media/build/perspective-1.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c738f62db6cae331b41b2a155c7261a203c4e2b5d329bbb270bb41c935d7ebcc +size 121370 diff --git a/projects/tube-bender/media/build/perspective-2.jpg b/projects/tube-bender/media/build/perspective-2.jpg new file mode 100644 index 000000000..e6b4badf8 --- /dev/null +++ b/projects/tube-bender/media/build/perspective-2.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ced64dcd69b8b39dd1a90e263cb37fd8a08db163438dca43380e7b305536d65 +size 198933 diff --git a/projects/tube-bender/readme.md b/projects/tube-bender/readme.md new file mode 100644 index 000000000..13c55aed0 --- /dev/null +++ b/projects/tube-bender/readme.md @@ -0,0 +1,310 @@ +--- +title: "Overview: Manual Round Tube Bending Device" +slug: "overview-manual-round-tube-bending-device" +date: "2026-04-05" +author: "PolyMech" +--- + +# Table of Contents + +- [Overview: Manual Round Tube Bending Device](#overview-manual-round-tube-bending-device) + - [1. Functional Principle](#1-functional-principle) + - [2. Main Components](#2-main-components) + - [2.1 Frame and Base](#21-frame-and-base) + - [2.2 Main Bend Die (Form Die)](#22-main-bend-die-form-die) + - [2.3 Clamp Block / Clamp Die](#23-clamp-block-clamp-die) + - [2.4 Follower / Pressure Die Assembly](#24-follower-pressure-die-assembly) + - [2.5 Bending Arm / Handle](#25-bending-arm-handle) + - [2.6 Optional Accessories](#26-optional-accessories) + - [3. Dies: Types and Design Notes](#3-dies-types-and-design-notes) + - [3.1 Bend Die Geometry](#31-bend-die-geometry) + - [3.2 Groove Shape](#32-groove-shape) + - [3.3 Materials](#33-materials) + - [4. Typical Limits for a Manual Tube Bender](#4-typical-limits-for-a-manual-tube-bender) + - [4.1 Tube Size Range (Common DIY)](#41-tube-size-range-common-diy) + - [4.2 Minimum Bend Radius](#42-minimum-bend-radius) + - [4.3 Bend Angle Limits](#43-bend-angle-limits) + - [4.4 Repeatability and Springback](#44-repeatability-and-springback) + - [5. Sketches and Concept Layout for Building One](#5-sketches-and-concept-layout-for-building-one) + - [5.1 Side View – Overall Arrangement](#51-side-view-overall-arrangement) + - [5.2 Front View – Die Stack and Clamp](#52-front-view-die-stack-and-clamp) + - [5.3 Simple Dimensions to Start From (Example)](#53-simple-dimensions-to-start-from-example) + - [5.4 Simple Build Sequence](#54-simple-build-sequence) + - [6. Practical Tips and Safety](#6-practical-tips-and-safety) + - [7. Summary](#7-summary) + +--- + +*Figure 1 – Conceptual side view of a manual round tube bender with main components labeled.* + +![Selected image](https://ytoadlpbdguriiccjnip.supabase.co/storage/v1/object/public/pictures/cache/919bafebbb1c7a6480a763d3fbe13c7056afc911259f0bbbac0042911d967d6b.jpeg) + +![image](https://ytoadlpbdguriiccjnip.supabase.co/storage/v1/object/public/pictures/cache/41483eaa457dcebbd72118d0d0e50cbae535344a37cf98307d95329d6e6f7527.jpeg "image") + +[Youtube Source](https://www.youtube.com/watch?v=k1hlAYbiNHY "Youtube Source") + +# Overview: Manual Round Tube Bending Device + +This page gives a practical overview of a **manual round tube bender** suitable for a small workshop or DIY fabrication. It covers: + +* Functional principle +* Main components and dies +* Typical limits (diameter, wall, bend radius) +* Simple design sketches and build notes (concept-level, not certified drawings) + +*** + +## 1. Functional Principle + +A manual round tube bender for smooth, repeatable bends usually works on the **rotary draw** principle: + +1. The tube is clamped against a **form die** (also called bend die) that has a groove matching the tube OD. +2. The die rotates around its center, pulling the tube with it. +3. A **pressure/follower die** supports the tube on the tangent side and keeps it in the groove. +4. Optionally, a **wiper** or roller can be used to reduce flattening and wrinkling. + +Compared to simple "pipe hickey" benders or crude pinch benders, a die-based rotary bender gives: + +* Better control of bend radius +* Less flattening of the tube cross‑section +* Repeatable angles + +*** + +## 2. Main Components + +A typical manual rotary tube bender you can build in a small shop includes: + +### 2.1 Frame and Base + +* **Base plate**: Thick steel plate or welded frame that bolts to the floor, a large bench, or a receiver tube on a stand. +* **Vertical post / side plates**: + * Support the pivot shaft of the main bend die + * Take bending loads; use adequate section (e.g., 10–15 mm thick plates or heavy channel/box) +* **Reinforcement gussets** between base and posts to resist twisting. + +### 2.2 Main Bend Die (Form Die) + +Function: Sets the **centerline bend radius** and supports the tube during bending. + +Key features: + +* **Outside diameter and profile**: + * Large circular form with a **groove** machined or turned into the rim to match the tube OD. + * Groove profile: usually a **semi‑circular or slightly open U** shape, just larger than tube OD. +* **Center bore / hub**: + * Fits on a strong **pivot shaft** (e.g., 30–40 mm or more, depending on tube size and force). + * May have a **keyway** or bolt‑on interface to the bending arm. +* **Detent or hole pattern** (optional): + * For a spring pin to lock the die at standard angles (0°, 45°, 90°, etc.). + +You will typically need **multiple bend dies**, each tailored to: + +* Tube OD (e.g., 19, 25, 32, 38, 50 mm) +* Desired bend radius (e.g., 2×D, 3×D, 4×D) + +### 2.3 Clamp Block / Clamp Die + +Function: Grips the tube to the main die so the tube rotates with the die. + +* Shaped with a matching groove for the tube. +* Bolts or pins into the main die. +* Uses a **clamping bolt** or lever to tighten onto the tube. +* Often split into two halves for quick loading/unloading. + +### 2.4 Follower / Pressure Die Assembly + +Function: Supports the straight tube just as it enters the bend, minimizing flattening and kinks. + +Typical DIY options: + +1. **Sliding block pressure die**: + * A block with a matching groove riding on guide rails. + * Spring‑loaded or cam‑adjusted to press the tube into the main die. +2. **Roller pressure die**: + * A hardened or machined roller with a groove. + * Mounted on a pivoting arm with adjustable pressure. + +Key considerations: + +* Low friction (use bronze bushings, bearings, or good lubrication). +* Sufficient adjustment range for different tube diameters and wall thicknesses. + +### 2.5 Bending Arm / Handle + +* Long lever arm attached to the main die hub. +* Provides mechanical advantage; typical length: 1–1.5 m for hand power on smaller tubes. +* May be detachable for storage. +* Often includes: + * **Angle scale** (protractor, engraved scale, or pointer on a stationary reference plate). + * **Handle grip** or crossbar for two‑handed operation. + +### 2.6 Optional Accessories + +* **Angle stop**: Adjustable mechanical stop to repeat a given bend angle. +* **Backstop / start position gauge**: For consistent bend location from the tube end. +* **Wiper die**: Small, sharpened block near the tangent to reduce inside‑radius wrinkling. + +*** + +## 3. Dies: Types and Design Notes + +### 3.1 Bend Die Geometry + +For a round tube of **outside diameter D**: + +* **Centerline radius (CLR)** \= distance from die center to tube centerline. +* Outer diameter of die OD\_die ≈ 2 × (CLR + D/2). +* Groove: + * Depth ≈ 0.55–0.65 × D + * Width a bit larger than D to allow easy loading but still support the tube. + +Example: For 25 mm tube, CLR \= 75 mm (≈3×D): + +* OD\_die ≈ 2 × (75 + 12.5) \= 175 mm +* Groove depth \~ 14–16 mm, width slightly larger than 25 mm. + +### 3.2 Groove Shape + +* **Best**: Proper machined radius matching the tube OD, with smooth surface finish. +* **DIY compromise**: Multi‑pass machining with a ball end mill, or turning on a lathe using form tools. +* Avoid sharp edges; always **chamfer or radius** the edges of the groove to avoid scoring the tube. + +### 3.3 Materials + +* **Dies**: Medium‑carbon steel (e.g., C45/1045) or similar. For light duty, mild steel is often acceptable. +* **Clamp blocks**: Same as main die, optionally with **replaceable aluminum or nylon inserts** to reduce marking. + +**Rollers**: Hardened or case‑hardened if high wear is expected. + +*** + +## 4. Typical Limits for a Manual Tube Bender + +Exact capabilities depend on materials, dimensions, and workmanship, but for a well‑built manual bender (no hydraulic assist): + +### 4.1 Tube Size Range (Common DIY) + +* OD: \~10–38 mm (3/8"–1 1/2") is practical by hand. +* Material: Mild steel, stainless, or aluminum tube (not heavy schedule pipe). +* Wall thickness: \~1–3 mm. + +Above these, bending force increases quickly; you may need **hydraulic assistance** or longer handles. + +### 4.2 Minimum Bend Radius + +Depends on tube material and wall thickness. Approximate guidelines: + +* Steel tube: **CLR ≥ 2.5–3 × OD** for general work without mandrel. +* Thin‑wall tube or tight cosmetic bends may require: + * **CLR ≥ 3–4 × OD**, or + * Internal support (packing sand, low‑melt alloy, or a proper internal mandrel). + +### 4.3 Bend Angle Limits + +* Mechanically, you can design for 0–180°. +* Common useful range: **0–120°** for hand‑operated, as force gets high at large angles. +* Ensure frame clearance: the tube and bending arm must not hit the base or floor as you approach maximum angle. + +### 4.4 Repeatability and Springback + +* Metals will **spring back**, so you must over‑bend slightly. +* Typical springback for steel tube: **2–5°**, more for harder materials. +* A simple **angle scale** and test bends in scrap will help you dial in accurate angles. + +*** + +## 5. Sketches and Concept Layout for Building One + +Below is a conceptual layout. Dimensions are **indicative** only; adapt to your materials and tube sizes. + +### 5.1 Side View – Overall Arrangement + +Key elements in a side view sketch: + +* Base plate +* Vertical side plates with pivot hole +* Main die on pivot shaft +* Bending arm fixed to die hub +* Pressure die arm supporting the straight tube + +> Build tip: Start the design around your **largest bend die** and required **frame clearances**. Ensure that at full bend angle the handle and tube do not clash with the floor or base. + +### 5.2 Front View – Die Stack and Clamp + +Elements to show in a front view sketch: + +* Tube running horizontally through the die groove. +* Clamp block on the front face of the die, bolted with two or more M10–M12 bolts. +* Pivot shaft through die and side plates, retained with nut or collar. +* Pressure die block or roller just tangent to the die. + +### 5.3 Simple Dimensions to Start From (Example) + +For a bender intended for up to 32 mm OD mild‑steel tube: + +* **Base plate**: 300 × 400 × 12 mm +* **Side plates**: 250 mm high, 12–15 mm thick, spaced 60–70 mm +* **Pivot shaft**: 35–40 mm diameter, medium‑carbon steel +* **Largest bend die**: OD ≈ 220–250 mm (e.g., CLR ≈ 100–110 mm for 32 mm tube) +* **Bending arm**: 1.2–1.4 m long, 40 × 20 rectangular tube or 40 mm round solid/pipe +* **Pressure die block**: 50 × 80 × 80 mm with a 32 mm groove and adjustable mount + +These values are a **starting point**; verify against: + +* Available stock sizes +* Intended tube material +* Your own strength / acceptable effort + +### 5.4 Simple Build Sequence + +1. **Design dies first**: + * Choose tube sizes and CLRs. + * Draw each die full scale (even on paper/card) to check clearances. +2. **Design frame around dies**: + * Set pivot height so that your longest tube can swing without hitting the floor. + * Confirm maximum bend angle. +3. **Build frame and mount pivot**: + * Weld base and side plates. + * Drill/ream pivot holes, fit shaft and bushings. +4. **Machine main die and clamp block**: + * Turn OD and face on lathe. + * Cut hub bore and keyway or bolt pattern. + * Machine groove. +5. **Make pressure die and arm**: + * Simple block on adjustable slide or a roller on a pivot. + * Ensure smooth movement and easy adjustment. +6. **Add handle, angle pointer, and stops**: + * Fit long bending arm. + * Add a pointer and fixed scale or mark common angles. +7. **Test and refine**: + * Make test bends, note springback and any flattening. + * Adjust pressure die, add lubrication, or increase radius if necessary. + +*** + +## 6. Practical Tips and Safety + +* **Clamping**: The most common DIY issue is tube slipping in the clamp. Use enough bolt area, roughen clamp surface slightly, or add a soft insert with high friction. +* **Lubrication**: Use bending lubricant (wax/grease) in the groove to reduce marking and flattening. +* **Fasteners**: Use high‑strength bolts for clamp and handle connections. +* **Welding**: If frame is welded, brace and cool slowly to minimize distortion; check pivot bores afterwards. +* **Safety**: + * Keep fingers away from pinch points between tube, dies, and frame. + * Long tubes can swing with force—keep the area clear. + * Wear eye and hand protection. + +*** + +## 7. Summary + +A manual round tube bender with **proper dies** and a **robust frame** can reliably bend mild‑steel and aluminum tubing for roll cages, furniture, handrails, and general fabrication. + +Key design steps: + +1. Choose your target **tube sizes** and **minimum bend radii**. +2. Design and dimension **main dies** first. +3. Build a **stiff frame** and **long handle** around those dies. +4. Add a **pressure die** and **good clamping** for clean, repeatable bends. + +Use the conceptual sketches and guidelines above as a base, then adapt details to your tools, materials, and accuracy requirements. \ No newline at end of file diff --git a/vfs-settings.json b/vfs-settings.json index b7bd03208..2c1b602d5 100644 --- a/vfs-settings.json +++ b/vfs-settings.json @@ -17,6 +17,14 @@ "list" ], "userId": "authenticated" + }, + { + "path": "/3dprint", + "permissions": [ + "read", + "list" + ], + "group": "Pacbot-Pro" } ] } \ No newline at end of file