Vai al contenuto
CADCAMFUN
Documentazione

Documentazione

Generatori di funzionalità

Ingranaggi ad evolvente, filettature metriche ISO, eliche e nastri di lamiera con motivi piani: profili e maglie esatti da pochi numeri.

Tradotto automaticamente dall'inglese. Vedi l'originale in inglese

Generatori di funzionalità

I generatori di caratteristiche trasformano alcuni numeri tecnici in profili o mesh esatti: un ingranaggio evolvente dal numero di moduli e denti, una filettatura ISO da diametro e passo, un'elica da raggio e passo, una striscia piegata da una linea centrale e uno spessore. Ciascuno è una pura funzione in packages/core/src/cad; l'editor, l'assistente e il modello CAM chiamano la stessa funzione, quindi tutti e tre vedono la stessa parte.

GeneratoreFilePrincipali esportazioni
Ingranaggio cilindrico evolventegear.tsgearDimensions, gearOutline, MIN_GEAR_TEETH = 6
Filettatura metrica ISOthread.ts (124 righe)threadSizes, threadProblem, threadTool, threadGroove
Elica/bobinahelix.ts (41 righe)coilGeometria, passiPerGiro, COIL_STEPS_PER_TURN = 32, COIL_MAX_TURNS = 60
Lamierasheet-metal.ts (235 righe)foglioContorno, sviluppatoLunghezza, conBordi, piattoSchemaDisegni, piattoSchemaDxf

Ingranaggi ad evolvente

Pitch radius m·z/2, tip radius pitch + m, root radius pitch − 1.25·m, flanks the involute of the base circle r_p·cos α (ISO 53 / DIN 867). The outline is one counter-clockwise ring about the origin with tooth 0 centred on +X. When the teeth would come to a point before the tip circle (few teeth, a large pressure angle), the tip is pulled in by bisection to where the tooth is still 2 % of a pitch wide.

Specpecebasemanciaradice
m 2, z 18, 20°1816.9142015.5
m 2, z 12, 20°1211.276149.5
m 2, z 18, 25°1816.3142015.5
Coppia di mesh m 2: z 18 e z 12 Trascina per orbitare · scorri per ingrandire · trascina con il tasto destro per eseguire la panoramica
Both outlines are gearOutline(…, 4) output, extruded 8 mm with Ø8 and Ø6 bores. Centre distance m(z₁ + z₂)/2 = 30 mm; the 12-tooth gear is turned half a pitch (π/12) so its tooth sits in a gap of the 18-tooth gear.
Errori: messaggi reali
gearOutline({ moduleValue: 2, teeth: 5 })
// RangeError: A gear needs a module > 0 and at least 6 whole teeth
gearOutline({ moduleValue: 2, teeth: 18, pressureAngle: 50 })
// RangeError: The pressure angle must be between 0 and 45 degrees

Filettature metriche ISO

A modelled thread is real helical geometry: a core cylinder at the root united with a ridge swept along a helix with the profile kept radial, clipped to the thread length. External threads have their core at d₃ = d − 1.22687·P and a ridge up to d; internal ones are the tool that cuts a tapped hole, core at D₁ = D − 1.08253·P (the tap drill) and a groove out to D. The flank is cut square to the helix and the axial widths are corrected by the cosine of the helix angle so pitch and crest widths are exact.

Filoest. minore d₃est. altezza h₃int. minore D₁larghezza della radicelarghezza della cresta
M6 × 14.77310.61344.91750.83330.125
M8 × 1.256.46640.76686.64681.04170.1563
M10 × 1.58.15970.92018.37621.250.1875
M12 × 1.759.8531.073510.10561.45830.2188

I valori sono threadSizes(d, P, internal) output. Heights are 0.61343·P (external) and 0.54127·P (internal); the crest is P/8.

M8 × 1.25 filettatura esterna, 5 mm Trascina per orbitare · scorri per ingrandire · trascina con il tasto destro per eseguire la panoramica
threadTool({ diameter: 8, pitch: 1.25, length: 5, internal: false }): 3 698 triangles. The full 10 mm version is 7 020 triangles, a closed solid of genus 0, V 408.0 mm³, built in 460 ms.
threadProblem: messaggi reali
threadProblem({ diameter: 6, pitch: 4, length: 10, internal: false })
// "A pitch of 4 mm is too coarse for a 6 mm thread"       (pitch > d/2)
threadProblem({ diameter: 6, pitch: 0.1, length: 10, internal: false })
// "A thread has at most 58 turns (this one is 100.0 long: 10 mm at a pitch of 0.1 mm)"
threadProblem({ diameter: 6, pitch: 1, length: 10, internal: false })   // undefined: buildable

Il limite di 58 turni è COIL_MAX_TURNS − 2: il colmo inizia un passo prima della filettatura e termina uno dopo, in modo che i tagli dell'estremità piatta incontrino il profilo completo.

Eliche

coilGeometry restituisce la linea centrale e il primo anello del profilo di un filo avvolto attorno a Z, for sweepSolid. I punti per giro seguono dal raggio in modo che le corde rimangano entro 0.01 mm dalla vera elica: stepsPerTurn(r) = clamp(⌈π / acos(1 − 0.01/r)⌉, 32, 128).
raggiostepsPerTurn
132
550
50128
Bobina r 10, passo 4, 5 giri Trascina per orbitare · scorri per ingrandire · trascina con il tasto destro per eseguire la panoramica
coilGeometry({ cx: 0, cy: 0, z0: 0, radius: 10, pitch: 4, turns: 5, wire: 1.5, square: false, left: false }).path: 356 points (5 × 71 + 1), drawn as a toolpath-style polyline.

Lamiera

Un profilo in lamiera è una linea centrale ispessita in una striscia di spessore costante, con il materiale a sinistra, a destra o su entrambi i lati e con un raggio di curvatura interno r su ogni angolo. developedLength unbends it with a K-factor (default 0.44): each bend contributes (r + K·t)·θ and each straight run loses the setback of its neighbouring bends.

Canale a U: t 2, interno R3, flangia da 30 mm Trascina per orbitare · scorri per ingrandire · trascina con il tasto destro per eseguire la panoramica
sheetOutline([(0,30),(0,0),(40,0),(40,20)], 2, ”left”, 3): an 80-point closed outline, extruded 30 mm along the sketch normal as the history does.
developmentLength(percorso, 2, 3, "sinistra") — output reale
{"straight":70,
 "bends":[{"angle":1.5707963267948966,"allowance":6.094689747964199},
          {"angle":1.5707963267948966,"allowance":6.094689747964199}],
 "length":82.18937949592839}
SegmentoLuce piana, mm
piatto0 → 25
piegare 90°25 → 31.095 (indennità 6.0947)
piatto31.095 → 61.095
piegare 90°61.095 → 67.189
piatto67.189 → 82.189

Check: (3 + 0.44 × 2) × π/2 = 6.0947 per bend, and 70 + 2 × 6.0947 = 82.189 mm.

Risoluzione dei problemi

MessaggioAggiustare
Un ingranaggio necessita di un modulo > 0 e almeno 6 denti interiutilizzare z ≥ 6 e un numero intero di denti
L'angolo di pressione deve essere compreso tra 0 e 45 gradi20° è standard; 14.5° e 25° sono alternative comuni
Un passo di P mm è troppo grosso per una filettatura D mmil passo deve essere al massimo la metà del diametro
Un thread ha al massimo 58 giridividere la filettatura in tratti più corti o utilizzare un passo più grossolano
Lo spessore del foglio deve essere positivo (è 0)superare uno spessore > 0
Il percorso è troppo stretto per questo spessore: la sua curva offset si spezzaaumentare il raggio di curvatura o ridurre lo spessore