86 lines
5 KiB
OpenSCAD
86 lines
5 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
|
|
|
|
// --- 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
|