Splunker les données… pour la sécurité routière
Tips & Tricks SplunkLa sécurité routière nous concerne tous, et dans la mesure où chacune de nos actions peut aujourd’hui générer une donnée à analyser, quoi de mieux que Splunk pour mettre en évidence des comportements accidentogènes, les analyser et identifier des solutions adaptées ?
C’est ce que j’ai voulu faire sur un tronçon de rue particulièrement dangereux en bordure de mon village.
Concept et collecte des données
Le règlement général sur la protection des données (RGPD) à caractère personnel implique de ne pas identifier les véhicules ni leurs conducteurs et conductrices sans leur accord. Il convient donc de quantifier et exposer de manière factuelle le comportement déviant de certains automobilistes tout en respectant cela.
La solution choisie : un radar tronçon utilisant des capteurs de mouvements qui transmettent leurs détections à Splunk.
Matériel :
- Arduino R4 WiFi
- Fils de connexion
- Capteurs infrarouges HC-SR501
- Éléments recyclés pour protéger le tout
Spéciale dédicace à Angus qui m’a appris qu’il existait toujours une solution étonnante à n’importe quel besoin !
Principe du code Arduino (disponible sur Github) : connexion au réseau wifi, synchronisation NTP et envoi des détections à Splunk via HEC :
Dashboard et analyse
Voici les différents éléments du dashboard créé, volontairement séparés pour une meilleure lisibilité, et sur une période d’analyse représentative de 24 heures consécutives dans une rue limitée à 30 km/h en bordure de village :
⮕ Les données parlent d’elles-mêmes :
- Un tiers d’excès de vitesse (même après avoir retiré 5 km/h aux mesures).
- Plus de 27 000 € d’amendes et presque 170 points retirés en une journée.
- Les plus grandes infractions sont généralement commises dans la matinée, aux alentours de midi (pauses déjeuner) et en fin d’après-midi (retours du travail).
⮕ La majorité des infractions sont situées entre 5 et 19 km/h au-dessus de la vitesse autorisée (donc une vitesse entre 35 et 49 km/h).
⮕ La vitesse moyenne est proche de la limite autorisée.
⮕ Mais le 90ème percentile est plus de 10 km/h au-dessus, ce qui signifie qu’une personne sur dix roule à plus de 42 km/h.
⮕ L’écart type est de 11 km/h, ce qui correspond à la dispersion des données autour de la valeur moyenne : cela permet de mettre en évidence les différences de comportements entre les automobilistes. Un faible écart type indiquerait qu’une grande partie d’entre eux roulent à une vitesse proche de la valeur moyenne (28 km/h pour cette journée). Plus l’écart-type augmente, plus les valeurs sont au contraire dispersées.
⮕ Il y a légèrement plus de sorties du village que d’entrées.
⮕ Le nombre d’entrées augmente brusquement en fin d’après-midi (certainement dû aux retours du travail) tandis que les sorties sont davantage étalées dans le temps.
⮕ Malgré le nombre de passages plus élevés en sortie du village, plus de 76 % des infractions sont faites dans le sens inverse, et ce, quelle que soit l’heure.
⮕ Les infractions en entrée du village sont à un niveau d’excès de vitesse largement supérieur à celui du sens inverse.
⮕ Cela confirme mon hypothèse concernant la topologie de la rue qui incite davantage à ces comportements déviants dans ce sens de circulation.
Axes d’amélioration
Comme tout projet, celui-ci n’est pas parfait... Pas au niveau de Splunk (évidemment), qui effectue son travail de collecte et d’exploitation des données exactement de la manière dont je l’avais imaginée, mais au niveau du système de détection qui reste du bricolage et comporte des défauts non négligeables.
Les principales améliorations à apporter seraient :
- d’utiliser une seule et même carte pour les deux capteurs afin d’avoir une seule et même base temporelle pour les détections,
- d’utiliser des capteurs plus précis, tels que des capteurs laser au lieu de capteurs à infrarouge,
- de réaliser un véritable produit autonome, robuste et étanche plutôt que des boîtes de conserve avec des fils sans protection jusqu’à une carte électronique à l’air libre.
Vous avez des questions ? Vous souhaitez participer à la prochaine étape ou à l’évolution du code utilisé ? Contactez-moi sur LinkedIn.
Pour aller plus loin techniquement
- Mon code: ici
- How to use HC-SR501 PIR Motion Sensor with Arduino
- ezTime, an Arduino library for all of time : ici ·
- Arduino, Meet Splunk : ici·
- Vitesse au volant : ici
D’autres articles pour splunker votre quotidien
- Monitorer une F1 sur PS4
- Télétravail : la data pour mesurer nos changements de rythme de vie
- Confinement : Splunker sa consommation Netflix
- Monitorer ses entraînements sportifs
- Monitorer sa consommation d’électricité grâce à Splunk et Linky
- Splunker sa maison : monitorer sa cave à vin
- Un peu d’air : Quand les données améliorent la qualité de l’air intérieur
Passionné par l’utilisation de ce logiciel depuis qu’il y a goûté en 2013, Damien Branger accompagne depuis lors ses clients pour mettre en place et utiliser au mieux Splunk dans leurs contextes respectifs. Partant du principe que la connaissance n’a de la valeur que si celle-ci est partagée, il accorde une importance toute particulière à rendre celle-ci accessible au plus grand nombre au même titre que la valeur des données qu’il exploite.
Articles similaires

Splunk Connect for Syslog : une GDI clé en main et évolutive pour les données syslog – Partie 3

Le point sur la formation Splunk
