Bonjour à tous
J’ai un pulsemeter configuré sur un ESP32 avec un pluviometre DAVIS .
Globalement ça marche très bien, sauf que je me rend compte que par moment le nombre total d’impulsion augmente même si il ne pleut pas.
J’ai tout vérifié tout essayé. Je ne comprends pas trop d’ou ça peut venir.
Auriez vous une petite idée ? C’est complètement aléatoire. Ca peut aller jusqu’à une dizaine d’impulsions de trop par jou. (1 impulsion = 0,2mm de pluie pour mon capteur)
Mes idées : pb de pullup ?
Je n’ai rien pour analyser / voir avec un scope. Et puis de toute façon vu que c’est dehors, je vais pas rester planter en attendant les goutes.
Pas d’idée pour diagnostiquer.
J’avais un pulse counter avant qui marchait bien mais qui ne me permettait pas d’avoir la pluviometrie en temps réeel. Il est de toute façon conseiller de basculer sur du pulse meter plus précis
Voici mon code du capteur (que j’écris dans une variable globale qui est stocké en flash)
- platform: pulse_meter
pin:
# ILS contact of the rain sensor must be connect between GPIO32 and GND
number: 32 # GPIO32 avec pullup
mode:
input: true
pullup: true
name: 'Pluie Intensité'
id: weatherstation_rain_gauge # Optional ID, necessary if you want to calculate the total number of pulses.
unit_of_measurement: 'mm/h'
device_class: precipitation_intensity
state_class: measurement
internal_filter: 1s # Si 1 impulsion par secondes => 0,2mm de pluie par seconde soit 12mm en 1 minute ce qui est impossible.
# On supprime donc toutes les micro impulsions transitoires du contact (bounce)
internal_filter_mode: EDGE # default to edge
accuracy_decimals: 1
timeout: 15min
filters:
- multiply: 12 # 0.2 mm x 60 min
total:
unit_of_measurement: 'mm' # par day, to be reset each night at midnight
name: 'Pluie Cumul Journalier'
id: weatherstation_daily_rain
accuracy_decimals: 1
filters:
- multiply: 0.20
# copie la valeur dans la variable globale écrite dans la flash
- lambda: |-
id(global_raingauge) = id(weatherstation_daily_rain).raw_state;
return x;