// ============================================================================ // 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 // --- 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) FACE_SEAL_GROOVE_W = 1.5; // Largeur de la rainure joint torique FACE_SEAL_GROOVE_D = 1.5; // Profondeur de la rainure joint torique // --- 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