89 lines
5.2 KiB
OpenSCAD
89 lines
5.2 KiB
OpenSCAD
// ============================================================================
|
||
// Companion Cube — Configuration Paramétrique
|
||
// Version : 0.2.0
|
||
// ============================================================================
|
||
// Toutes les dimensions sont en millimètres.
|
||
// Modifier ce fichier pour ajuster les dimensions sans toucher au modèle.
|
||
// ============================================================================
|
||
|
||
// --- Dimensions Générales ---------------------------------------------------
|
||
CUBE_SIZE = 120; // Arête extérieure du cube (mm)
|
||
WALL_THICKNESS = 2.5; // Épaisseur des parois de la coque/face
|
||
CORNER_RADIUS = 6; // Rayon des arrondis extérieurs
|
||
CORNER_REINFORCE = 10; // Largeur des renforts de coins
|
||
|
||
// --- Squelette Interne (Frame) ----------------------------------------------
|
||
FRAME_EDGE_WIDTH = 12; // Largeur des arêtes du squelette
|
||
FRAME_EDGE_DEPTH = 12; // Profondeur des arêtes du squelette
|
||
FRAME_FILLET = 2; // Congé sur les arêtes du squelette
|
||
FRAME_MOUNT_DIAM = 3.2; // Diamètre des trous de fixation M3
|
||
FRAME_MOUNT_HEAD = 5.8; // Diamètre de la tête de vis M3
|
||
FRAME_MOUNT_DEPTH = 3; // Profondeur du lamage tête de vis
|
||
FRAME_SCREWS_PER_FACE = 4; // Nombre de vis par face
|
||
FRAME_LEDGE_WIDTH = 5; // Largeur corniche de contact (face ↔ squelette)
|
||
FRAME_LEDGE_HEIGHT = 3; // Épaisseur de la corniche plate
|
||
|
||
// --- Faces ------------------------------------------------------------------
|
||
FACE_TOTAL_DEPTH = 14; // Profondeur totale d'un module face (du bord ext.)
|
||
FACE_CENTER_DIAM = 40; // Diamètre de la zone tactile centrale
|
||
FACE_MEMBRANE_T = 1.0; // Épaisseur de la membrane tactile (centre)
|
||
SEAL_CORD_DIAM = 2.0; // Diamètre du cordon torique (joint O-ring)
|
||
FACE_SEAL_GROOVE_W = 2.8; // Largeur rainure = ~1.4 × cordon
|
||
FACE_SEAL_GROOVE_D = 1.4; // Profondeur rainure = ~0.7 × cordon
|
||
|
||
// --- LEDs (PCB Anneau — Étage B) --------------------------------------------
|
||
LED_COUNT = 12; // Nombre de WS2812B par face
|
||
LED_RING_DIAM_EXT = 70; // Diamètre extérieur de l'anneau LED
|
||
LED_RING_DIAM_INT = 40; // Diamètre intérieur (ouverture d'air)
|
||
LED_RING_HEIGHT = 1.6; // Épaisseur du PCB anneau
|
||
RING_SHROUD_HEIGHT = 6; // Hauteur de la chambre de diffusion
|
||
RING_SHROUD_WALL = 1.5; // Épaisseur paroi du shroud
|
||
|
||
// --- Capteur (PCB Bouchon — Étage A) ----------------------------------------
|
||
CAP_PCB_DIAM = 35; // Diamètre du PCB bouchon
|
||
CAP_PCB_HEIGHT = 1.6; // Épaisseur du PCB bouchon
|
||
CAP_CONNECTOR_H = 4; // Hauteur des connecteurs 2.54mm
|
||
|
||
// --- NFC (Face du dessus uniquement) ----------------------------------------
|
||
NFC_PCB_SIZE = 43; // Taille du module PN532 (carré)
|
||
NFC_PCB_HEIGHT = 5; // Hauteur du module PN532 avec antenne
|
||
NFC_ANTENNA_DIAM = 35; // Diamètre de l'antenne NFC
|
||
|
||
// --- Charge Qi (Face du dessous uniquement) ---------------------------------
|
||
QI_COIL_DIAM = 50; // Diamètre de la bobine Qi réceptrice
|
||
QI_COIL_HEIGHT = 3; // Épaisseur de la bobine Qi
|
||
QI_PCB_WIDTH = 30; // Largeur du PCB récepteur Qi
|
||
QI_PCB_LENGTH = 20; // Longueur du PCB récepteur Qi
|
||
QI_PCB_HEIGHT = 2; // Épaisseur du PCB Qi
|
||
|
||
// --- Batterie ---------------------------------------------------------------
|
||
BATT_LENGTH = 70; // Longueur batterie LiPo
|
||
BATT_WIDTH = 50; // Largeur batterie LiPo
|
||
BATT_HEIGHT = 10; // Épaisseur batterie LiPo (2500mAh ~)
|
||
BATT_TOLERANCE = 1; // Jeu autour de la batterie
|
||
|
||
// --- PCB Central (Motherboard) ----------------------------------------------
|
||
CENTRAL_PCB_WIDTH = 60; // Largeur du PCB central (ESP32-S3 + TP4056 + CW2015)
|
||
CENTRAL_PCB_LENGTH = 60; // Longueur du PCB central
|
||
CENTRAL_PCB_HEIGHT = 1.6; // Épaisseur du PCB
|
||
CENTRAL_COMP_H = 8; // Hauteur composants (ESP32-S3 module)
|
||
|
||
// --- Aération ---------------------------------------------------------------
|
||
AIR_HOLE_DIAM = 30; // Diamètre de l'ouverture d'air centrale (face intérieure)
|
||
|
||
// --- Tolérances d'Impression 3D -------------------------------------------
|
||
PRINT_TOLERANCE = 0.2; // Jeu général pour emboîtement
|
||
PRINT_LAYER_H = 0.2; // Hauteur de couche standard
|
||
|
||
// --- Rendu ------------------------------------------------------------------
|
||
$fn = 60; // Résolution des cercles (augmenter pour le rendu final)
|
||
|
||
// --- Couleurs pour la visualisation ----------------------------------------
|
||
COLOR_FRAME = [0.3, 0.3, 0.3]; // Gris foncé — squelette
|
||
COLOR_FACE = [0.6, 0.6, 0.6, 0.85]; // Gris clair semi-transparent — faces
|
||
COLOR_MEMBRANE = [0.8, 0.8, 0.8, 0.5]; // Blanc translucide — membrane tactile
|
||
COLOR_PCB = [0.1, 0.5, 0.1]; // Vert — PCBs
|
||
COLOR_LED = [1.0, 0.9, 0.3]; // Jaune — LEDs
|
||
COLOR_BATTERY = [0.2, 0.2, 0.6]; // Bleu foncé — batterie
|
||
COLOR_NFC = [0.6, 0.1, 0.1]; // Rouge — module NFC
|
||
COLOR_QI = [0.8, 0.5, 0.1]; // Orange — bobine Qi
|