Testeur de Piles AA/AAA — Proto 1 Canal
Réf : BATT-TEST-PROTO1 | Version 5.0 — Avril 2026
Banc de test haute précision pour révéler les vraies capacités des piles grand public. Décharge contrôlée 0–3 A, simulation lampe de poche 3 niveaux, mesure ESR, enregistrement SD, interface WiFi.
Pourquoi ce projet ?
Les fabricants de piles annoncent des capacités de 2850 mAh pour les AA ou 1250 mAh pour les AAA. Ces chiffres sont-ils réels ? Les piles "premium" valent-elles 3× leur prix ? Ce banc de test apporte des réponses objectives avec des mesures reproductibles sur 20+ références commerciales (Duracell, Energizer, Varta, marques distributeurs, piles no-name).
Le proto v5.0 est un canal unique (évolutif vers 4 canaux), conçu pour valider l'architecture et produire les premiers résultats comparatifs.
Questions auxquelles ce banc répond
- Les capacités annoncées (mAh) sont-elles exactes ?
- Quel est le vrai rapport capacité/prix de chaque marque ?
- Y a-t-il des risques (surchauffe, fuite) en usage normal ?
- Comportement en usage continu vs. intermittent vs. faible courant ?
- Quelle est la résistance interne (ESR) et son impact sous charge ?
Deux Modes de Test
- Mode 1 — Décharge courant constant : 0 à 3000 mA réglable par pas de 83 µA (DAC 12 bits). Cutoff 0,9 V (norme IEC 61960) ou 0,4 V (limite absolue). Mesure capacité réelle, énergie, ESR.
- Mode 2 — Simulation lampe de poche : LED blanche 3 niveaux — 2 mA (veille), 20 mA (standard), 200 mA (turbo). Alimentation via LTC3105 boost + LM3405 buck LED. Vf ≈ 3,2 V : charge représentative d'une vraie lampe de poche.
Visualisation 3D de la Platine
🖥️ PCB 4 couches 100×100 mm — Proto 1 canal
Vue 3D du circuit imprimé généré sous KiCad. On distingue les deux convertisseurs buck MPM3610, les 3 relais ALFG2PF121, le support pile AA/AAA, le connecteur Hirose DM3AT micro-SD, l'afficheur SSD1306 et l'ESP32.
PCB 4 couches 100×100 mm — Vue 3D KiCad — Proto v5.0 Avril 2026
Architecture d'Alimentation
⚡ Chaîne 12 V → systèmes isolés
L'alimentation externe 12 V (HLK-10M12 ou équivalent) traverse un fusible 1 A et une diode anti-inversion SS34 avant de distribuer les rails.
MPM3610 #1 — Buck 3,3 V / 1,2 A
Alimente l'ESP32, l'afficheur SSD1306, la carte micro-SD, les drivers relais BC817 et le buzzer. Précision de sortie : 3,292 V (erreur −0,27 %). Mode AAM actif (R=39 kΩ) pour efficacité à charge légère.
MPM3610 #2 — Buck 4,0 V / 1,2 A
Rail intermédiaire exclusivement dédié aux 3 LDO AP2112K-3.3. Marge dropout 0,7 V garantit 3,3 V stable même en forte charge. Précision : 4,000 V (erreur +0,01 %).
3× AP2112K-3.3 — LDO 3,3 V isolés
#1 alimente l'
Domaine Pile — Isolé Galvaniquement
🔋 Support pile et mesure de courant
Deux supports PCB (AA et AAA) sont présents sur le PCB mais ne doivent jamais être peuplés simultanément — la sélection se fait par peuplement. Cette approche évite toute résistance série parasite liée à une commutation.
Le shunt de mesure 30 mΩ est placé en série côté + de la pile, entre le support et le reste du circuit. L'
⚡ Supercondensateur 2 F/2,7 V — Tampon pile
Placé en parallèle avec la pile (côté pile, avant le boost LTC3105), le supercap absorbe les pics de courant pendant les transitions de charge. Le LTC3105 voit une tension d'entrée stable, ce qui améliore la mesure ESR par le firmware.
Phase précharge (branchement pile)
Q1 DMG3404L (soft-charge) ON, Q2 (bypass) OFF. Courant limité par R=22 Ω à ~68 mA @ 1,5 V. Temps de charge 95 % : τ = 22 Ω × 2 F = 44 s, soit ≈ 3,7 min. Le LTC3105 démarre dès Vin ≥ 0,25 V.
Phase test actif
Q1 OFF, Q2 (bypass) ON — le 22 Ω est shunté. Le supercap est directement en parallèle pile pour soutenir les pics. Énergie stockée : E = ½ × 2 × 1,5² = 2,25 J.
Commutation par 3 Relais ALFG2PF121
🔌 Architecture 3 relais (bobine 12 V)
- K1 — Rail pile : Coupe totale pile + supercap en urgence. Protection principale, isolation complète.
- K2 — Décharge rapide (Mode 1) : Connecte le rail test vers le circuit IRLZ44NS +
TLV9101 + shunt 30 mΩ. Courant 0–3000 mA. - K3 — Mode LED (Mode 2) : Connecte le rail test vers le LTC3105 boost → LM3405 × 3. Simulation lampe de poche.
K2 et K3 sont mutuellement exclusifs (firmware). Commande via BC817-40 (NPN) piloté par GPIO ESP32 avec résistance de base 2,7 kΩ. Diode 1N4148 + condensateur 100 nF anti-rebond + LED rouge 2 kΩ en parallèle bobine pour visualisation état.
Mode 1 — Décharge Courant Constant 0–3000 mA
⚙️ Boucle de régulation analogique
La consigne de courant est générée par le
- Réseau de protection entrées AOP : 1 kΩ série + BAT54S (SOT-23) sur Vin+ et Vin−
- Résistance gate : 100 Ω (stabilité + protection court-circuit)
- Compensation boucle : 100 pF de Vout vers Vin− du TLV9101
- Pull-down gate : 100 kΩ vers GND (état OFF garanti hors régulation)
- Charge résistive : R_charge = 333 mΩ (1 kΩ PWR) + shunt 30 mΩ en série
Mode 2 — Simulation Lampe de Poche (2 / 20 / 200 mA)
💡 LTC3105 Boost + LM3405 × 3 Buck LED
Le LTC3105 (boost à démarrage ultra-basse tension Vin min = 0,25 V) est alimenté directement par la pile via le relais K3. R_MPPC = 10 kΩ fixe le seuil MPPC à 25 mV — protection optimale pile usée sans contrainte pile neuve. Vout = 5 V.
Trois LM3405 buck LED alimentent les LEDs blanches dans le domaine isolé pile (pas depuis le rail 4 V système) :
- LED 200 mA : LED blanche 3535 haute puissance (Cree CLM3C ou équivalent), Vf = 3,15 V @ 200 mA, pad thermique PCB obligatoire (P = 630 mW)
- LED 20 mA et 2 mA : LED blanche 1206 standard (Würth 150120WW75000), Vf = 3,2 V @ 20 mA
- Selfs LM3405 (Bourns SRR0604) : 10 µH (200 mA) / 100 µH (20 mA) / 1 mH (2 mA) — même footprint 6×6×4 mm, empreinte KiCad unique
- Pull-down 100 kΩ sur chaque broche EN — état OFF garanti au démarrage
Mesures Analogiques — 2× ADS1115
📊 Acquisition 16 bits, gain 1 (FSR ±2,048 V)
Deux
ADS1115 #1 (adresse 0x48) — Mesures pile
A0 : V_pile direct (0,4–1,5 V, dans plage ±2,048 V)
A1 : NTC #1 support AA (pont 10 kΩ / 10 kΩ @ 25°C → 1,65 V)
A2 : NTC #2 support AAA (même schéma)
A3 : Libre (réserve)
ADS1115 #2 (adresse 0x49) — Surveillance rails
A0 : Vout LTC3105 ~5 V (pont 150 kΩ / 82 kΩ → 1,767 V)
A1 : Rail 12 V (pont 560 kΩ / 100 kΩ → 1,818 V)
A2 : Rail 4 V (pont 100 kΩ / 100 kΩ → 2,000 V)
A3 : Rail 3,3 V (pont 100 kΩ / 100 kΩ → 1,650 V)
V_charge (shunt décharge 363 mΩ) : Mesuré directement par GPIO35 ESP32 (input-only ADC). V_max = 363 mΩ × 3 A = 1,09 V < 3,3 V — aucun canal ADS1115 nécessaire.
Protections Multi-Niveaux
🛡️ 4 niveaux de protection (firmware + hardware)
Hard limit absolu — non modifiable
V_pile < 0,4 V → arrêt d'urgence immédiat : K1 ouvert, K2 ouvert, K3 ouvert, SHDN LTC3105. Marge de 175 mV au-dessus du minimum boost (0,25 V).
Température critique (NTC)
T > 60°C → arrêt d'urgence. Détecte pile défectueuse ou en cours de fuite. Buzzer alarme double bip.
Cutoff standard — 0,9 V (IEC 61960)
Arrêt normal en fin de test. Enregistrement des résultats sur SD, mélodie buzzer Sol-Mi-Do, affichage résultat sur OLED.
Surveillance rails alimentation
ADS1115 #2 surveille 12 V / 4 V / 3,3 V / Vout LTC3105 en continu. Alerte si hors plage ±10 %.
Interface Utilisateur
🖥️ Affichage, navigation et alertes sonores
- Afficheur SSD1306 : OLED I²C 128×64 px (adresse 0x3C), menu de configuration, courbe de décharge temps réel, résultats finaux
- Encodeur rotatif EC11 : Navigation menu. ENC_A (GPIO36) + ENC_B (GPIO39) en input-only avec pull-up 10 kΩ externe + 100 nF anti-rebond matériel. Interruptions sur front.
- Bouton Start/Stop : GPIO17, pull-up 10 kΩ + 10 nF anti-rebond. Démarrage / arrêt test.
- Buzzer piézo passif : GPIO4 → PWM LEDC ESP32 → BC817 → buzzer. Mélodies : démarrage (gamme montante), fin OK (Do-Mi-Sol), cutoff 0,9 V (Sol-Mi-Do), urgence 0,4 V (bip rapide 880 Hz), alarme température (bip double).
- WiFi ESP32 : Interface web monitoring pour suivi décharge en temps réel depuis un smartphone.
- Carte micro-SD : Connecteur Hirose DM3AT, SPI (GPIO18/19/23/5), enregistrement CSV horodaté par test.
Mesures et Calculs en Temps Réel
📈 Grandeurs calculées par le firmware
| Grandeurs mesurées et calculées | |
|---|---|
| Capacité (mAh) | Intégration I×t via INA226 |
| Énergie (mWh) | Intégration V×I×t |
| ESR (mΩ) | ΔV / ΔI lors des transitions K2/K3 |
| Rendement η (%) | P_LED / P_pile × 100 (ex. canal 200 mA ≈ 87,9 %) |
| Température (°C) | NTC 10 kΩ @ 25°C, B=3950 K, plage 10–80°C |
| Durée de décharge | Horodatage CSV micro-SD |
L'ESR typique discrimine nettement les piles de qualité : Energizer Lithium 80–120 mΩ, Duracell 250–300 mΩ, piles discount 400–600 mΩ, contrefaçons >800 mΩ.
Spécifications Complètes
📋 Tableau de spécifications — Proto v5.0
| Général | |
|---|---|
| Canaux actifs | 1 (proto), évolutif vers 4 |
| Piles supportées | AA et AAA (2 supports PCB, non simultanés) |
| PCB | 4 couches, 100×100 mm, JLCPCB |
| Microcontrôleur | ESP32 (WiFi + FreeRTOS) |
| Mesure courant (INA226) | |
| Shunt | 30 mΩ |
| Résolution | 83 µA / LSB |
| Pleine échelle | 2,73 A |
| Précision totale | ±0,55 % après calibration |
| Mode 1 — Décharge courant constant | |
| Plage courant | 0–3000 mA |
| DAC consigne | MCP4725 12 bits, I²C 0x60 |
| MOSFET | IRLZ44NS D2PAK (logic-level) |
| Cutoff standard | 0,9 V (IEC 61960) |
| Cutoff absolu | 0,4 V (hard limit) |
| Mode 2 — Simulation lampe de poche | |
| Niveaux | 2 mA / 20 mA / 200 mA |
| Boost | LTC3105, Vin min 0,25 V, Vout 5 V |
| R_MPPC | 10 kΩ (seuil MPPC 25 mV) |
| LED 200 mA | Blanche 3535 haute puissance, Vf = 3,15 V |
| LED 20 mA / 2 mA | Blanche 1206 standard, Vf = 3,2 V |
| Interface & enregistrement | |
| Afficheur | SSD1306 OLED 128×64, I²C 0x3C |
| Navigation | Encodeur rotatif EC11 + bouton Start/Stop |
| Enregistrement | Micro-SD SPI (Hirose DM3AT), CSV horodaté |
| WiFi | Interface web monitoring ESP32 |
| Buzzer | Piézo passif, mélodies via PWM LEDC |
| Alimentation système | |
| Entrée | Jack 5,5×2,1 mm + bornier vis, 12 V DC |
| Protection | Fusible 1 A + diode SS34 anti-inversion |
| Rails générés | 12 V / 4 V / 3,3 V × 4 (dont 3 isolés) |
| Alimentation recommandée | HLK-10M12 (10 W / 0,83 A) |
Affectation GPIO ESP32
📌 23 GPIO utilisés
| GPIO | Fonction | Remarque |
|---|---|---|
| GPIO2 | SHDN LTC3105 | Pull-down 10 kΩ (compatible boot) |
| GPIO4 | Buzzer PWM (LEDC) | |
| GPIO5 | CS carte SD | Pull-up 10 kΩ |
| GPIO12 | EN LM3405 #3 (2 mA) | Pull-down 10 kΩ (attention boot) |
| GPIO13 | EN LM3405 #2 (20 mA) | |
| GPIO14 | EN LM3405 #1 (200 mA) | |
| GPIO15 | ENC_SW encodeur | Pull-up interne |
| GPIO16 | Card Detect SD | Pull-up 10 kΩ |
| GPIO17 | Bouton Start/Stop | Pull-up 10 kΩ |
| GPIO18 | SPI SCK | |
| GPIO19 | SPI MISO | Pull-up 10 kΩ |
| GPIO21 | I²C SDA | Pull-up 2,2 kΩ |
| GPIO22 | I²C SCL | Pull-up 2,2 kΩ |
| GPIO23 | SPI MOSI | |
| GPIO25 | K1 — Relais rail pile | Via BC817 |
| GPIO26 | K2 — Relais décharge | Via BC817 |
| GPIO27 | K3 — Relais LED boost | Via BC817 |
| GPIO32 | Q1 DMG3404L (soft-charge) | |
| GPIO33 | Q2 DMG3404L (bypass) | |
| GPIO34 | PGOOD LTC3105 | Input-only, pull-up 10 kΩ |
| GPIO35 | V_charge 363 mΩ | Input-only, ADC direct |
| GPIO36 | ENC_A encodeur | Input-only, pull-up 10 kΩ ext. |
| GPIO39 | ENC_B encodeur | Input-only, pull-up 10 kΩ ext. |
Schéma Électronique Complet
📄 7 feuilles — KiCad v5.0 — Avril 2026
Le schéma est organisé en 7 feuilles thématiques pour faciliter la lecture et le routage PCB :
- Page 1 — Synoptique général : vue d'ensemble des domaines (système 12 V / domaine pile isolé), interconnexions et blocs fonctionnels
- Page 2 — Alimentation auxiliaire 12 V : jack + fusible + SS34, MPM3610 ×2 (3,3 V / 4 V), AP2112K ×3, LEDs de signalisation rails
- Page 3 — Circuit pile : supports AA/AAA, shunt 30 mΩ + INA226, supercondensateur 2 F/2,7 V, soft-start (R=22 Ω + DMG3404L Q1) et bypass (DMG3404L Q2)
- Page 4 — Décharge résistive paramétrable : relais K2, boucle TLV9101, DAC MCP4725, IRLZ44NS D2PAK, R_charge 333 mΩ + shunt 30 mΩ
- Page 5 — Boost pile & simulation LED : LTC3105 boost (Vin min 0,25 V), relais K3, LM3405 ×3 (2/20/200 mA), LEDs blanches 3535 / 1206
- Page 6 — Affectation broches ESP32 : tableau complet des 23 GPIO avec fonctions, niveaux logiques et contraintes de boot
- Page 7 — Interfaces : ADS1115 ×2 (ADC 16 bits), encodeur EC11, buzzer piézo, carte SD Hirose DM3AT, afficheur SSD1306 (I²C + broches), bouton Start/Stop
Livrables & Planning
📦 Livrables open-source (GitHub)
- Firmware ESP32 complet — FreeRTOS, mesure/affichage/SD en tâches parallèles
- Schémas KiCad + Gerbers 4 couches + BOM avec références LCSC
- Guide calibration INA226 + ADS1115
- Fichiers CSV horodatés par test (carte SD)
- Tableaux comparatifs (capacité, ESR, prix/mAh) pour 20+ références
- Courbes de décharge + graphiques rendement pile→LED
📅 Planning
| Fév. 2026 | Schéma KiCad v1 complet ✅ |
| Mars 2026 | Schéma finalisé, début implantation PCB ✅ |
| Avril 2026 | Finalisation PCB 4 couches + commande JLCPCB |
| Mai 2026 | Assemblage proto + tests alimentation |
| Juin 2026 | Validation firmware + calibration |
| Juillet 2026 | Tests comparatifs 20+ références piles |
| Août 2026 | Publication résultats + code open-source |
Intéressé par le projet ?
Retrouvez la page générale du banc de test 4 canaux ou contactez-nous pour toute question technique.