← Web API - POST | Sommaire | Suivant : Guide MQTT →
10. Calibrage des capteurs
Sommaire
- 10.1 Vue d'ensemble
- 10.2 Calibrage du capteur de tension ZMPT107
- 10.3 Calibrage du capteur de courant SCT-013
- 10.4 Sauvegarde du calibrage
- 10.5 Réinitialisation aux valeurs d'usine
10.1 Vue d'ensemble
ACRouter prend en charge le calibrage des capteurs pour garantir des mesures précises de tension et de courant. Le calibrage s'effectue en calculant un coefficient multiplicateur à partir de mesures réalisées avec des instruments de référence.
Pourquoi le calibrage est-il nécessaire ?
- Tolérances de fabrication : chaque capteur présente de légères variations par rapport aux valeurs nominales
- Différences de tension réseau : les pays utilisent des standards différents (230V, 110V, 220V, 240V, etc.)
- Précision de mesure : le calibrage garantit une précision de ±2 % ou mieux
Valeurs par défaut d'usine
Au premier démarrage ou après une réinitialisation, les valeurs suivantes sont utilisées :
| Capteur | Modèle | Multiplicateur | Remarque |
|---|---|---|---|
| Tension | ZMPT107 | 328.57 | Calibré pour 230V (0,70V RMS = 230V AC) |
| Courant | SCT-013-030 | 30.0 | Maximum 30A |
10.2 Calibrage du capteur de tension ZMPT107
⭐ Calibrage automatique (Recommandé)
À partir de la version 2.0, ACRouter prend en charge le calibrage automatique du capteur de tension. Le système mesure automatiquement la sortie du capteur (VDC RMS) et calcule le multiplicateur de calibrage.
Procédure de calibrage automatique
Étape 1 : Mesurer la tension réseau
Utilisez un multimètre pour mesurer la tension réseau réelle :
Example:
Multimeter shows: 232.5V AC
Étape 2 : Lancer le calibrage automatique
Entrez la commande avec la tension mesurée :
hardware-voltage-calibrate 232.5
Étape 3 : Le système effectue automatiquement :
- Mesure de la sortie actuelle du capteur (VDC RMS) — par ex. 0,72V
- Calcul du multiplicateur :
232.5 / 0.72 = 322.92 - Sauvegarde des données de calibrage dans le NVS
Exemple de sortie :
Auto-calibrating voltage sensor...
Measured grid voltage (from multimeter): 232.5 V
Raw sensor VDC output: 0.72 V
Calculated multiplier: 322.92
Sensor type: ZMPT107
Configuration updated:
nominal_vdc = 0.72 V (measured)
multiplier = 322.92
Calibration saved to NVS. Please reboot to apply: reboot
Étape 4 : Redémarrage
reboot
Avantages du calibrage automatique :
✅ No need to adjust sensor potentiometer manually
✅ Works with any sensor output voltage (0.5V, 0.7V, 1.0V, etc.)
✅ Automatically updates nominal_vdc to actual measured value
✅ More accurate and faster calibration
Via Web API :
curl -X POST http://192.168.4.1/api/hardware/voltage/calibrate \
-H "Content-Type: application/json" \
-d '{"measured_vac": 232.5}'
Via l'interface web :
- Ouvrez
http:///settings/hardware - Find "Voltage Sensor Auto-Calibration" section
- Entrez la tension réseau mesurée (VAC)
- Click "Calibrate" button
- Redémarrez l'appareil
Calibrage manuel (Méthode héritée)
Pour la compatibilité avec les versions antérieures ou les cas particuliers, le calcul manuel peut être utilisé.
Principe de calibrage
The ZMPT107 sensor is factory-calibrated so that:
- Nominal grid voltage ≈ 0.70V RMS output (may vary ±0.1V)
- Formula: multiplier = V_measured / V_sensor_vdc
Procédure de calibrage manuel
Étape 1 : Préparation
- Connectez ACRouter au secteur
- Connectez-vous au port série (115200 bauds)
- Vérifiez que le capteur ZMPT107 est connecté au GPIO configuré
Étape 2 : Mesurer la tension réseau
Utilisez un multimètre pour mesurer la tension réseau réelle :
Example:
Multimeter shows: 232.5V AC
Étape 3 : Vérifier la sortie du capteur
Exécutez la commande pour afficher le VDC brut :
hardware-voltage-show
Exemple de sortie :
Voltage Sensor Configuration:
GPIO: 35
Type: ZMPT107
Nominal VDC: 0.70 V (factory default)
Multiplier: 328.57
Current reading: 232.5 V (from 0.72 V raw)
^^^^^^ ← use this value
Étape 4 : Calculer le multiplicateur
Utilisez la formule avec le VDC réel du capteur :
multiplier = V_measured / V_sensor_vdc
Pour l'exemple ci-dessus (232,5V / 0,72V) :
multiplier = 232.5 / 0.72 = 322.92
Étape 5 : Appliquer le calibrage
Via la console :
hardware-voltage-config-multiplier 322.92
Via Web API :
curl -X POST http://192.168.4.1/api/hardware/config \
-H "Content-Type: application/json" \
-d '{
"adc_channels": [
{
"gpio": 35,
"type": 1,
"multiplier": 322.92,
"offset": 0.0,
"enabled": true
}
]
}'
Étape 6 : Redémarrage
reboot
Remarques importantes
⚠️ WARNING: The ZMPT107 sensor uses a voltage divider circuit:
- DC bias center: 1.65V DC
- Maximum peak voltage: 3.06V (for 230V AC)
- This is very close to ESP32 ADC maximum input (3.3V)!
Recommendations:
- Do not use with grid voltage above 250V AC
- For voltages above 240V, consider factory recalibration of ZMPT107 (reduce output to 0.60V = 240V)
10.3 Calibrage du capteur de courant SCT-013
Principe de calibrage
SCT-013 sensors are available in different variants:
- SCT-013-030: 0-30A, output 0-1V
- SCT-013-050: 0-50A, output 0-1V
- SCT-013-100: 0-100A, output 0-1V
Formule : multiplier = I_measured / V_adc
Procédure de calibrage
Étape 1 : Préparation
- Connectez une charge connue (par ex. un radiateur électrique de 2000W)
- Mesurez le courant à l'aide d'une pince ampèremétrique
- Vérifiez que le capteur SCT-013 est correctement installé sur le câble
Étape 2 : Mesurer le courant
Example:
Load: 2000W heater
Grid voltage: 230V
Expected current: 2000W / 230V = 8.7A
Clamp meter shows: 8.65A
Étape 3 : Vérifier la lecture ADC du courant
Exécutez la commande :
status
Recherchez les courants :
Power Measurements:
Voltage: 230.0 V
Current (Load): 7.2 A ← Uncalibrated current
Current (Grid): 0.0 A
...
Étape 4 : Calculer le multiplicateur
Utilisez la formule :
multiplier_new = multiplier_old × (I_measured / I_current)
Pour l'exemple ci-dessus :
multiplier_old = 30.0 (factory default SCT-013-030)
I_measured = 8.65A (clamp meter reading)
I_current = 7.2A (ACRouter reading)
multiplier_new = 30.0 × (8.65 / 7.2) = 36.04
Étape 5 : Appliquer le calibrage
Via Web API :
{
"adc_channels": [
{
"gpio": 39,
"type": 2,
"multiplier": 36.04,
"offset": 0.0,
"enabled": true
}
]
}
Étape 6 : Vérification
Redémarrez et vérifiez :
reboot
status
Le courant devrait maintenant s'afficher correctement :
Power Measurements:
Current (Load): 8.65 A ← Accurate value!
Remarques importantes
- Pour un calibrage précis, utilisez une charge résistive stable (radiateur, lampes à incandescence)
- Ne pas utiliser pour le calibrage : alimentations à découpage ou moteurs (courant d'appel élevé)
- Courant minimum pour le calibrage : 5A (en dessous de ce seuil, le bruit ADC affecte les mesures)
10.4 Sauvegarde du calibrage
Toutes les modifications de configuration sont automatiquement enregistrées dans le NVS (Non-Volatile Storage) et persistent après un redémarrage.
Vérifier la sauvegarde
Après le redémarrage, exécutez :
hardware-config
Vous devriez voir les valeurs multiplier mises à jour.
10.5 Réinitialisation aux valeurs d'usine
Via la console
hardware-reset
Puis redémarrage :
reboot
Via Web API
Envoyez une requête POST à http:// :
curl -X POST http://192.168.4.1/api/hardware/config/reset
Tableau de référence : Valeurs typiques des multiplicateurs
Capteurs de tension
| Modèle | Réseau | Calibrage | Multiplicateur |
|---|---|---|---|
| ZMPT107 | 230V AC | 0,70V = 230V | 328.57 |
| ZMPT107 | 220V AC | 0,70V = 220V | 314.29 |
| ZMPT107 | 240V AC | 0,70V = 240V | 342.86 |
| ZMPT107 | 110V AC | 0,70V = 110V | 157.14 |
Capteurs de courant
| Modèle | Plage | Sortie | Multiplicateur |
|---|---|---|---|
| SCT-013-030 | 0–30A | 1V à 30A | 30.0 |
| SCT-013-050 | 0–50A | 1V à 50A | 50.0 |
| SCT-013-100 | 0–100A | 1V à 100A | 100.0 |
Commandes utiles
# Show current measurements
status
# Show sensor configuration
hardware-config
# Reset to factory defaults
hardware-reset
# Reboot
reboot