Différences entre les versions de « Reconnaître les cartographies dans un DUMP »
(20 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 10 : | Ligne 10 : | ||
Une fois la mémoire programmée, ces adresses ne changeront plus. | Une fois la mémoire programmée, ces adresses ne changeront plus. | ||
Dans la plus par des éditeurs hexadécimal que vous utiliserais, cela sera présenté comme suit: | |||
[[Fichier:Adress000.svg|600px|thumb|center|Exemple d'adressage]] | |||
L' | L'adressage apparaît sous forme Hexadécimal dans une colonne à gauche (en jaune), il commence à partir de 000000 jusqu'à FFFFFF soit environ 16 777 215 adresses !!! Cela varie en fonction des composants utilisés et peuvent aller au-delà. | ||
Les adresses suivantes ne sont pas indiquées dans la colonne de | Un corps central, ou ce trouve les données du DUMP (en vert). | ||
Une colonne optionnelle qui peut afficher les valeurs du DUMP souvent en ASCII (d'autres options existent, graphique, ANSI, MAC, ..) | |||
[[Fichier:Adress001.svg|600px|thumb|center|Exemple d'adressage]] | |||
L'adresse entourée en rouge de la colonne de gauche correspond à l'adresse du premier octet de la ligne des données. | |||
Les adresses suivantes ne sont pas indiquées dans la colonne de gauche, pourtant elles existent bien. | |||
L'adresse de votre curseur apparait souvent dans un champs du logiciel d'édition que vous aurais choisis, ici encadré en bleu clair. | |||
==Reconnaître les cartographies du soft.== | ==Reconnaître les cartographies du soft.== | ||
Ligne 51 : | Ligne 63 : | ||
Dans le Dump, on trouve les valeurs de consigne pour les capteurs et les actuateurs, mais aussi les valeurs constituant le formatage de la cartographie. | Dans le Dump, on trouve les valeurs de consigne pour les capteurs et les actuateurs, mais aussi les valeurs constituant le formatage de la cartographie. | ||
Ce formatage est l'indexation des axes de la cartographie, c'est une sorte de quadrillage avec des colonnes et des lignes. | |||
Avant les données de la cartographie, des valeurs indiquant le formatage / l'indexation des axes X et Y. | |||
[[Fichier:Index000.svg|600px|thumb|center|Exemple d'index en text]] | |||
La navigation entre les modes 2D et Texte aidera grandement les recherches. | La navigation entre les modes 2D et Texte aidera grandement les recherches. | ||
[[Fichier:Index001.svg|600px|thumb|center|Exemple d'index en 2D]] | |||
Certains logiciels d’édition dédiée à la modification de cartographie, ont une fonction recherche automatique de MAP, bien que cela semble pratique au première abord, il faut faire extrêmement attention à ce qu'il trouve !! | Certains logiciels d’édition dédiée à la modification de cartographie, ont une fonction recherche automatique de MAP, bien que cela semble pratique au première abord, il faut faire extrêmement attention à ce qu'il trouve !! | ||
Ligne 64 : | Ligne 84 : | ||
Ces cartographies seront alors éditables en mode Texte, en 2D et enfin en 3D. | Ces cartographies seront alors éditables en mode Texte, en 2D et enfin en 3D. | ||
[[Fichier:ExText000.png|600px|thumb|center|Exemple Cartographie Mode Texte]] | |||
[[Fichier:Ex2D000.png|600px|thumb|center|Exemple Cartographie Mode 2D]] | |||
[[Fichier:Ex3D000.png|600px|thumb|center|Exemple Cartographie Mode 3D]] | |||
===Les Axes=== | |||
Une fois les cartographies isoler, reste à définir leurs Axes ! | |||
Comme nous l'avons constaté, une cartographie est une suite de points qui forment des courbes. | |||
Encore faut-il donner un sens à ces courbes, pour cela il faut comprendre de quoi elles sont formées. | |||
Elles sont formées de Trois Axes, X, Y et Z. | |||
De façon générale, un moteur a besoins de plusieurs informations qui vont varier (des Variables) pour fonctionner, mais le choix de base se limite à seulement Trois valeurs variables de données. | |||
*la vitesse moteur (Tr/Min) | |||
*la charge moteur (hPa) | |||
et/ou | |||
*la position de l'axe du papillon d'admission (Alpha-N). | |||
Nous retrouverons ces variables sur les axes X et Y le plus souvent sur les cartographies que nous avons isolées. | |||
[[Fichier:Index002.svg|600px|thumb|center|Exemple d'index en text en 16x14]] | |||
L'axe Z quant à lui, délivrant une information de consigne servant à commander un actuateur ou bien à devenir une nouvelle variable pour une autre cartographie (voir les deux). | |||
La valeur des axes sont rarement exploitable tel quel ! La valeur doit souvent ce voir attribuer un facteur de correction pour être plus réaliste et exploitable. | |||
C'est à dire que sur un axe donnant une information de charge, vous pouvez avoir par exemple des Hectopascals (hPa), des millibars (mBar), des centimètres de mercure (Hg), une échelle de 0 à 10, etc... voir des unités de références qui leur sont propres ! | |||
Vous pouvez au même titre trouver pour des temps d'avance des millisecondes (ms), des degrés angulaires (°<), ou d'autres valeurs ''exotique''... | |||
Ainsi, il est donc nécessaire de donner un facteur de correction aux valeurs des axes afin de les rendre cohérentes avec les valeurs physiques qu'ils représentent. | |||
J'en veux pour exemple, sur certain Motronic ML1.1/1.2/3.1, il faut appliquer un facteur de 40 à la valeur originale pour avoir la vitesse moteur. Mais toujours sur la gamme de Motronic ML 4.1/2.1 il faut déterminer la fréquence du processeur en hertz (datasheet, quartz interne...), puis lui appliquer un facteur variable à la valeur originale !! | |||
Bien sûr, tous les modèles n'étant pas identiques, chaque recherche pour chaque ECU lui est propre, parfois même au sein d'une même famille d'ECU de même génération. | |||
Vous comprendrez qu'il est extrêmement difficile de s'y retrouver dans une telle jungle et qu' une bonne dose de logique et de réflexion sont de mise lors de l'indexation de ces axes. | |||
Bien que les trois variables précitées (RPM, hPa, Alpha-N) sont omniprésente, il n'en reste pas moins que d'autres variables vont apparaître, tel que les températures du moteur, de l'aire d'admission, de carburant, des quantités injectés, des pressions, capteur de couple, etc … | |||
Une bonne chose est de travailler avec un outil de diagnostic pouvant lire en temps réel les valeurs de commande des différents actionneurs, cela permet de faire un rapprochement avec les valeurs trouvées dans les différentes cartographies. | |||
Cela va donner des cartographies qui serviront à toutes les phases d'utilisation du moteur dans des conditions diverses et variés, tel que le démarrage à froid, démarrage à chaud, avance allumage, injection,... en fonction des divers état du moteur. | |||
Il faut traiter chaque information de façon individuelle afin d’établir avec précision le rôle de la cartographie et la répertorier en la renommant avec un nom qui rappellera facilement sa fonction (exemple: delay inject, pression turbo, demande utilisateur, départ à froid, etc...). Il existe des mnémonique avec les quelles il est bon de ce familiariser (voir la section Damos) | |||
Si vous travaillez seul, ces termes peuvent vous rester propres, si vous travaillez en collectivité (ce que je vous recommande au vus de l'importance de la somme de travail) il est bon d’établir un langage de base afin d’éviter les confusions (d'où l'utilisation des mnémoniques !). | |||
===La single value=== | |||
La traduction de single value est Valeur seule! | |||
C'est une cartographie de une seul valeur, c'est bien souvent des limiteurs, comme par exemple une limite de régime moteur qui limitera le moteur en RPM ou encore une limitation de vitesse qui aura pour effet de limiter la voiture a une vitesse maximum défini par ce limiteur. | |||
Il est plus difficile de les trouver car comme pour les cartographies précédentes, il n'y a pas de succession de courbe pouvant indiquer leur présence. Par contre elles suivent souvent la cartographie qu'elle limite ! | |||
Note: Ce document ne donne que les directives et axes de travail, chaque manipulation pour y arriver sera propre au logiciel que vous aurez choisi pour exécuter ce travail. Nous vous recommandons la lecture du manuel du logiciel que vous aurez choisi avant son utilisation. Souvent les manuels fournis pour l'utilisation de ces logiciels d’édition sont aussi importants que le présent ouvrage, ce qui explique l'impossibilité de détailler chacun d'eux. | Note: Ce document ne donne que les directives et axes de travail, chaque manipulation pour y arriver sera propre au logiciel que vous aurez choisi pour exécuter ce travail. Nous vous recommandons la lecture du manuel du logiciel que vous aurez choisi avant son utilisation. Souvent les manuels fournis pour l'utilisation de ces logiciels d’édition sont aussi importants que le présent ouvrage, ce qui explique l'impossibilité de détailler chacun d'eux. |
Version actuelle datée du 7 février 2022 à 20:37
Décodage des Données
Une fois les données extraites et ouvertes dans un logiciel d'édition, un gros travail va commencer !!
Il va falloir retrouver dans un premier temps les données qui sont susceptibles de nous intéresser pour ensuite les isoler et les renommer.
Les adresses
Les données qui sont stockées dans la mémoire sont organisées au travers d'adresses afin de pouvoir les retrouver lorsque le microcontrôleur à besoin d'y accéder.
Une fois la mémoire programmée, ces adresses ne changeront plus.
Dans la plus par des éditeurs hexadécimal que vous utiliserais, cela sera présenté comme suit:
L'adressage apparaît sous forme Hexadécimal dans une colonne à gauche (en jaune), il commence à partir de 000000 jusqu'à FFFFFF soit environ 16 777 215 adresses !!! Cela varie en fonction des composants utilisés et peuvent aller au-delà.
Un corps central, ou ce trouve les données du DUMP (en vert).
Une colonne optionnelle qui peut afficher les valeurs du DUMP souvent en ASCII (d'autres options existent, graphique, ANSI, MAC, ..)
L'adresse entourée en rouge de la colonne de gauche correspond à l'adresse du premier octet de la ligne des données.
Les adresses suivantes ne sont pas indiquées dans la colonne de gauche, pourtant elles existent bien.
L'adresse de votre curseur apparait souvent dans un champs du logiciel d'édition que vous aurais choisis, ici encadré en bleu clair.
Reconnaître les cartographies du soft.
Cette reconnaissance de cartographie se fait dans la plupart du temps de façon empirique.
Dans le dump, il y a plusieurs types de données, il y a une partie soft qui va travailler avec le processeur et les données (dont les cartographies) qui vont être traitées.
Pour reconnaître les cartographies ou MAP, nous allons rechercher en 2D les séquences de courbes qui se répètent de façon cyclique dans le dump.
Ses recherches doivent s'effectuer en mode 8 et 16 Bits et en mode LO/HI et HI/LO de façon complète et alternative pour trouver le maximum d'informations.
Là commence un long travaille, le temps peut se compter pour certain Dump en mois ! Il n'est pas rare de revenir sur un Dump déjà longuement travaillé et de découvrir des informations qui n'avaient pas vu le jour lors des premières recherches.
Il est aussi bon, une fois une certaine expérience acquise, de lancer de nouvelles recherches sur d'anciens dump en parallèle, cela permet de découvertes inattendus.
Il faut méticuleusement observer les séries se répétant dans l'ensemble du Dump de façon méthodique et structurée pour ne pas passer à côté de choses importantes.
Cela, je le répète mais c'est important, en alternant les recherches :
- en 8 bits
- en 16 bits
- en LO/HI ( en 8 et 16 bits)
- en HI/LO ( en 8 et 16 bits)
Texte, 2D et 3D
Pour s’aider dans le travail d'identification des cartographies à l’intérieur du Dump, il est pratique de connaître la conception d'une cartographie en mode texte.
Dans le Dump, on trouve les valeurs de consigne pour les capteurs et les actuateurs, mais aussi les valeurs constituant le formatage de la cartographie.
Ce formatage est l'indexation des axes de la cartographie, c'est une sorte de quadrillage avec des colonnes et des lignes.
Avant les données de la cartographie, des valeurs indiquant le formatage / l'indexation des axes X et Y.
La navigation entre les modes 2D et Texte aidera grandement les recherches.
Certains logiciels d’édition dédiée à la modification de cartographie, ont une fonction recherche automatique de MAP, bien que cela semble pratique au première abord, il faut faire extrêmement attention à ce qu'il trouve !!
Il n'est pas rare qu'il propose des MAP fantaisistes que vous n'aurez que faire et risque probablement de passer à côté d'autres MAP plus intéressantes que celles trouvées.
Le contrôle manuel de chaque MAP dans le domaine est certes plus long, mais bien plus sûr !
Une fois ce long travail effectué, vous vous retrouverez avec une liste de cartographies que vous aurez isolées.
Ces cartographies seront alors éditables en mode Texte, en 2D et enfin en 3D.
Les Axes
Une fois les cartographies isoler, reste à définir leurs Axes !
Comme nous l'avons constaté, une cartographie est une suite de points qui forment des courbes.
Encore faut-il donner un sens à ces courbes, pour cela il faut comprendre de quoi elles sont formées.
Elles sont formées de Trois Axes, X, Y et Z.
De façon générale, un moteur a besoins de plusieurs informations qui vont varier (des Variables) pour fonctionner, mais le choix de base se limite à seulement Trois valeurs variables de données.
- la vitesse moteur (Tr/Min)
- la charge moteur (hPa)
et/ou
- la position de l'axe du papillon d'admission (Alpha-N).
Nous retrouverons ces variables sur les axes X et Y le plus souvent sur les cartographies que nous avons isolées.
L'axe Z quant à lui, délivrant une information de consigne servant à commander un actuateur ou bien à devenir une nouvelle variable pour une autre cartographie (voir les deux).
La valeur des axes sont rarement exploitable tel quel ! La valeur doit souvent ce voir attribuer un facteur de correction pour être plus réaliste et exploitable.
C'est à dire que sur un axe donnant une information de charge, vous pouvez avoir par exemple des Hectopascals (hPa), des millibars (mBar), des centimètres de mercure (Hg), une échelle de 0 à 10, etc... voir des unités de références qui leur sont propres ! Vous pouvez au même titre trouver pour des temps d'avance des millisecondes (ms), des degrés angulaires (°<), ou d'autres valeurs exotique...
Ainsi, il est donc nécessaire de donner un facteur de correction aux valeurs des axes afin de les rendre cohérentes avec les valeurs physiques qu'ils représentent.
J'en veux pour exemple, sur certain Motronic ML1.1/1.2/3.1, il faut appliquer un facteur de 40 à la valeur originale pour avoir la vitesse moteur. Mais toujours sur la gamme de Motronic ML 4.1/2.1 il faut déterminer la fréquence du processeur en hertz (datasheet, quartz interne...), puis lui appliquer un facteur variable à la valeur originale !!
Bien sûr, tous les modèles n'étant pas identiques, chaque recherche pour chaque ECU lui est propre, parfois même au sein d'une même famille d'ECU de même génération.
Vous comprendrez qu'il est extrêmement difficile de s'y retrouver dans une telle jungle et qu' une bonne dose de logique et de réflexion sont de mise lors de l'indexation de ces axes.
Bien que les trois variables précitées (RPM, hPa, Alpha-N) sont omniprésente, il n'en reste pas moins que d'autres variables vont apparaître, tel que les températures du moteur, de l'aire d'admission, de carburant, des quantités injectés, des pressions, capteur de couple, etc …
Une bonne chose est de travailler avec un outil de diagnostic pouvant lire en temps réel les valeurs de commande des différents actionneurs, cela permet de faire un rapprochement avec les valeurs trouvées dans les différentes cartographies.
Cela va donner des cartographies qui serviront à toutes les phases d'utilisation du moteur dans des conditions diverses et variés, tel que le démarrage à froid, démarrage à chaud, avance allumage, injection,... en fonction des divers état du moteur.
Il faut traiter chaque information de façon individuelle afin d’établir avec précision le rôle de la cartographie et la répertorier en la renommant avec un nom qui rappellera facilement sa fonction (exemple: delay inject, pression turbo, demande utilisateur, départ à froid, etc...). Il existe des mnémonique avec les quelles il est bon de ce familiariser (voir la section Damos)
Si vous travaillez seul, ces termes peuvent vous rester propres, si vous travaillez en collectivité (ce que je vous recommande au vus de l'importance de la somme de travail) il est bon d’établir un langage de base afin d’éviter les confusions (d'où l'utilisation des mnémoniques !).
La single value
La traduction de single value est Valeur seule!
C'est une cartographie de une seul valeur, c'est bien souvent des limiteurs, comme par exemple une limite de régime moteur qui limitera le moteur en RPM ou encore une limitation de vitesse qui aura pour effet de limiter la voiture a une vitesse maximum défini par ce limiteur.
Il est plus difficile de les trouver car comme pour les cartographies précédentes, il n'y a pas de succession de courbe pouvant indiquer leur présence. Par contre elles suivent souvent la cartographie qu'elle limite !
Note: Ce document ne donne que les directives et axes de travail, chaque manipulation pour y arriver sera propre au logiciel que vous aurez choisi pour exécuter ce travail. Nous vous recommandons la lecture du manuel du logiciel que vous aurez choisi avant son utilisation. Souvent les manuels fournis pour l'utilisation de ces logiciels d’édition sont aussi importants que le présent ouvrage, ce qui explique l'impossibilité de détailler chacun d'eux.