Projets

RATP

RATP

Stage au Centre Bus Lebrun : une webapp d'aide au dépannage des bus Heuliez (arbres de décision à deux niveaux, 100% data-driven), un outil Excel/VBA d'analyse du distributeur d'outils Electroclass, et les guides illustrés pour que les agents s'en servent en autonomie.

Résultats

  • Webapp de dépannage : 7 modèles de bus modélisés, 3 entièrement documentés
  • Outil Excel/VBA qui restaure la traçabilité du distributeur d'outils (stock, emprunts par badge)
  • Deux guides illustrés, bouton par bouton, utilisables par des agents peu habitués à l'informatique

Stack technique

  • React
  • TypeScript
  • Vite
  • Tailwind CSS
  • FastAPI
  • JSON data-driven
  • Excel / VBA

Trois semaines au Centre Bus Lebrun, un site de maintenance du parc bus parisien en pleine transition énergétique : des Heuliez Diesel et GNV y côtoient les générations électriques et hydrogène. Trois livrables en sont sortis, du plus technique au plus opérationnel.

3
livrables produits
7
modèles de bus modélisés
27
arbres de décision (GX 137 E)
2
niveaux : machiniste / atelier

La webapp de dépannage

Quand un voyant s'allume, deux questions : qu'est-ce que je peux faire moi, tout de suite, et à partir de quand je passe la main ? La réponse vit dans des manuels constructeurs épais, propres à chaque énergie. La webapp en fait un parcours guidé, interrogeable par voyant, code défaut ou symptôme.

https://depannage.lebrun.local
Écran de sélection des modèles de bus, avec vignette par véhicule et badge d'énergie
Sélection du modèle, trié par famille (GX 137, GX 337) et par énergie : électrique, Diesel, GNV, hydrogène.

Une architecture data-driven

Parti pris structurant : aucune règle métier dans le code. Tout le savoir (arbres de décision, seuils, procédures) vit dans des fichiers JSON ; le frontend n'est qu'un moteur générique qui lit un noeud et passe au suivant. Ajouter un modèle de bus ou corriger une procédure ne touche pas au code.

Chaque modèle est décrit par sept fichiers, du plus stable au plus vivant, et agrège ses specs constructeur en une vue unifiée tracée jusqu'à la page du PDF source.

  • data
    • index.json# registre des modèles
    • sources.json# PDF sources tracés à la page
    • models/gx137_e_2019
      • model.json# identité, énergie, normes
      • specs.json# dimensions, masses, capacités
      • powertrain.json# groupe motopropulseur
      • systems.json# freinage, portes, pneumatique
      • electrical.json# HT/BT, ECUs, réseaux CAN
      • dashboard.json# voyants et actions
      • troubleshooting.json# arbres de décision
    • shared
      • diagnostic_tools.json# ElfaTool, Forsee Diag...
      • safety_procedures.json# consignation HT, VAT
https://depannage.lebrun.local/gx137_e
Fiche technique d'un bus avec identification, dimensions et masses
Fiche d'un GX 137 E. Six onglets : vue d'ensemble, motorisation, systèmes, électrique, tableau de bord, dépannage.

Deux niveaux, un relais explicite

Le coeur du dispositif : séparer hermétiquement ce que peut faire le conducteur (Niveau 1), sans outil ni mesure, de ce qui relève de l'atelier (Niveau 2). Quand le Niveau 1 est épuisé, un noeud passe explicitement la main, avec un pré-diagnostic, plutôt que de finir en cul-de-sac.

Niveau 1 — MachinisteNiveau 2 — Atelier
QuiConducteur, sur la voieTechnicien habilité
ActionsVérif. visuelle, cycle clé, resetMesures, outils diag, consignation HT
OutillageAucunMégohmmètre, ElfaTool, VAT
SortieRésolu, ou relais vers l'atelierDiagnostic et réparation
https://depannage.lebrun.local/gx137_e/depannage
Catalogue de dépannage avec filtres par catégorie et cartes par symptôme
Catalogue du modèle : 16 points d'entrée, filtrés par domaine, triés par sévérité (critique / alerte).
https://depannage.lebrun.local/gx137_e/depannage/isolement-ht
Étape guidée de niveau 1, machiniste, avec méthode, composant ciblé et résultat attendu
Étape de Niveau 1 (bandeau vert) : un cycle clé pour effacer un défaut fugitif, sans aucun outil.
https://depannage.lebrun.local/gx137_e/depannage/isolement-ht
Noeud de relais entre niveau 1 et niveau 2 avec bouton de bascule vers l'atelier
Le relais : actions Niveau 1 épuisées, pré-diagnostic affiché, bascule vers l'atelier.
https://depannage.lebrun.local/gx137_e/depannage/isolement-ht-atelier
Étape guidée de niveau 2, atelier, avec outillage requis et procédure de consignation haute tension
Niveau 2 (bandeau bleu) : outillage requis, consignation HT, avertissement danger de mort.

Traçabilité et extrapolation maîtrisée

Chaque donnée technique porte une référence à sa source, page comprise, vérifiable en moins de trente secondes. Et là où le manuel utilisateur ne détaille pas la réparation, l'arbre la déduit de l'architecture réelle du bus (HV-BOX, BMS Master, le bon outil) sans jamais inventer un composant absent du véhicule.

L'outil d'analyse du distributeur Electroclass

L'atelier distribue ses outils via une machine Electroclass (distributeur automatique adossé au logiciel SupplyPoint). Le logiciel d'origine est lent et personne ne s'en sert pour la seule question qui compte au quotidien : qui a pris quoi, et qu'est-ce qui n'a pas été rendu ?

Le poste RATP est verrouillé, pas de Node ni de Python. J'ai donc bâti l'outil sous Excel + VBA (analyse.xlsm), le seul environnement disponible partout. Il ingère l'export CSV des transactions de la machine et reconstruit deux vues exploitables.

  • STOCK : par outil, le stock courant et l'historique des dernières opérations (rendu / pris, quantité, date, badge).
  • EMPRUNTS : par badge, les outils sortis et toujours pas rendus.

Détail piégeux réglé au passage : la machine exporte les dates au format anglais, Excel les lit en français. Il fallait neutraliser ces collisions avant tout calcul, sinon l'historique partait en vrille. L'outil fait aussi remonter les trous de traçabilité accumulés au fil des ans, jusqu'aux outils à stock nul candidats au renouvellement.

Les guides, pour que ça tourne sans moi

La consigne : que les mécanos puissent tout refaire eux-mêmes après mon départ. Or beaucoup ont peu l'habitude de l'ordinateur. Pas un guide en jargon avec deux captures, donc, mais du bouton par bouton, captures annotées. J'en ai produit deux.

Analyser les données

Extraire l'historique des transactions de la machine au format CSV, le charger dans analyse.xlsm, lire les tableaux STOCK et EMPRUNTS. De l'export jusqu'à la lecture, chaque clic est illustré.

Renouveler un tiroir

Repérer les outils à stock nul, puis désattribuer et réattribuer un tiroir dans la configuration de la machine. La documentation constructeur datait de 2011 et était incomplète : je l'ai refaite à jour en une après-midi.