You dont have javascript enabled! Please enable it!

Fonctionnement d'un calculateur

Thèmes:

  • Préface
  • Bus système
  • Processeur (CPU)
  • Mémoire RAM
  • Mémoire ROM

Préface:
Un ECU reçoit ou données de mesure des capteurs, traite les informations et effectue des calculs pour contrôler les actionneurs. La figure ci-dessous montre un schéma fonctionnel d'un système de contrôle.

Les capteurs sont des capteurs qui répondent à une grandeur physique. L'électronique du capteur convertit cela en un signal électrique. L'ECU reçoit ce signal électrique comme « entrée » et compare ce signal avec la valeur préprogrammée. En fonction de l'utilité du signal, la commande s'effectue en ajustant la commande de l'actionneur en conséquence.

La figure suivante montre un calculateur avec trois connexions enfichables. De gauche à droite : alimentation et réseau, capteurs, actionneurs.

Dans un système de gestion de moteur essence on retrouve, entre autres, les capteurs suivants :

  • capteur de position du vilebrequin pour mesurer la vitesse du vilebrequin ;
  • capteur de température du liquide de refroidissement pour mesurer l'échauffement du liquide de refroidissement ;
  • des capteurs de position du papillon pour mesurer la position du papillon des gaz et donc la charge du moteur ;
  • MAP ou débitmètre d'air pour mesurer la pression négative ou le débit d'air ;
  • sonde lambda pour mesurer la teneur en oxygène des gaz d'échappement ;
  • le capteur barométrique et les capteurs de température d'air d'admission ;
  • capteur de cognement pour avancer l'allumage le plus loin possible.

Les capteurs ci-dessus servent d'entrée pour contrôler les injecteurs et la ou les bobines d'allumage. A cet effet, toutes les valeurs des capteurs sont recherchées dans un champ caractéristique préprogrammé.

Prenons comme exemple la commande des injecteurs. Au régime moteur au ralenti, les injecteurs injectent un nombre x de degrés après le PMH.

  • A basse température du liquide de refroidissement, le temps d'injection est allongé (enrichissement) ;
  • Lors d'une accélération douce, le temps d'injection est également allongé. Une mesure a également lieu qui permet de suivre la rapidité avec laquelle la pédale d'accélérateur est enfoncée : lorsque l'accélérateur est brusquement plein, un enrichissement supplémentaire a lieu ;
  • La pression négative dans le collecteur d'admission influence le moment et la durée de l'injection ;
  • La sonde lambda (par exemple la sonde de saut) mesure si le mélange est trop riche ou trop pauvre. Si le mélange est trop pauvre pour un certain nombre de tours de vilebrequin, le temps d'injection est prolongé à l'aide des trims de carburant jusqu'à ce que le mélange redevienne stoechiométrique ;
  • Le capteur barométrique et le capteur de température de l'air d'admission mesurent la pression et la température de l'air pour déterminer le niveau d'oxygène dans l'air aspiré.

La durée de l'injection dépend donc des valeurs de cinq capteurs maximum. Dans les moteurs modernes, encore plus de capteurs jouent un rôle à cet égard.

Pendant et après le contrôle d'un actionneur, les capteurs renvoient des informations à l'ECU. La valeur mesurée est comparée à la valeur souhaitée dans le logiciel. Cela peut être utilisé pour déterminer si une commande d'actionneur peut rester constante, doit être raccourcie ou étendue. L'ECU agit donc comme un contrôleur, créant une boucle de contrôle.

La figure suivante montre un diagramme dans lequel le temps d'injection de base est déterminé à partir du régime du vilebrequin par rapport à la dépression dans le collecteur d'admission, qui est une mesure de la charge du moteur. Les températures et la sonde lambda forment un facteur de correction et possèdent chacune leur propre champ caractéristique.

Bus système :
Le bus système établit des connexions entre les composants de l'ECU (voir l'image ci-dessous). Au sommet de l'ECU se trouve l'horloge. Cet oscillateur produit une tension carrée avec une fréquence généralement de 16 MHz. La fréquence d'horloge détermine la vitesse de l'unité de commande. Les composants d'une boucle de contrôle sont coordonnés par ce temporisateur.

Le CPU, la mémoire et l'interface E/S (I/O signifie : entrée/sortie) sont interconnectés par un bus système composé de plusieurs connexions sur le circuit imprimé. Nous pouvons les diviser en :

  • bus d'adresses : ce bus assure le transfert des données du microprocesseur vers certains emplacements mémoire ;
  • bus de données : les données entre la mémoire, le CPU et les interfaces sont transportées via le bus de données ;
  • bus de contrôle : sert de contrôleur en effectuant des sélections de lecture et d'écriture, des requêtes et des réinitialisations en fonction de la synchronisation de l'horloge système.

Processeur (CPU):
Le processeur (Central Processing Unit) est le cœur de l'ordinateur. Les circuits combinatoires, constitués d'un très grand nombre de portes ET, OU et NON, sont construits dans l'ECU au moyen d'un logiciel. Un certain nombre d'instructions (le logiciel) sont intégrées lors de la fabrication du processeur. Ces instructions effectuent des actions et les mettent dans le bon ordre. Exemple:

  1. les lettres de l'alphabet sont stockées numériquement dans le processeur. En réalité, il ne s’agira pas de lettres, mais d’instructions numériques qui représentent des actions simples ;
  2. en mettant les lettres dans le bon ordre, nous pouvons former des mots ;
  3. en mettant les mots dans le bon ordre, nous pouvons faire des phrases ;
  4. les phrases font l'histoire : en réalité le programme informatique.

Le programme permettant de mettre les instructions connues par le processeur dans le bon ordre a été intégré au logiciel par le programmeur. Ce programme est chargé dans la mémoire flash de l'ECU.

Au démarrage du calculateur, les instructions sont récupérées de la mémoire flash et exécutées une par une par le processeur, conformément à l'horloge. Une fois le programme exécuté et terminé, le cycle recommence.

Les données nécessaires au chargement des données telles que les timings d'allumage sont chargées à partir de la mémoire ROM. Le processeur démarre à partir de la mémoire ROM et copie les données de la ROM vers la RAM. Après le démarrage, le CPU récupère toutes les données et commandes de la mémoire RAM rapide. Une mémoire RAN relativement petite est nécessaire pour stocker temporairement les données et les valeurs intermédiaires calculées.

Le CPU est connecté à la mémoire via un bus d'adresses et un bus de données.

  • Set : les bits sont stockés dans la RAM
  • Activer : les bits sont récupérés de la RAM

Les bits et octets de données dans la RAM peuvent inclure :

  • nombres : données des capteurs / données des actionneurs / calculs
  • adresses des capteurs (entrée) et des actionneurs (sortie)

Les données en RAM peuvent être :

  • lettres : codes ASCII, chiffres, lettres, symboles
  • instructions : jeu d'instructions du processeur

Le processeur fonctionne selon ce que l'on appelle ISA (Instruction Set Architecture) ou un jeu d'instructions. L'ISA est une liste d'instructions programmées par le fabricant et utilisées par le processeur. L'ISA diffère selon le processeur et dépend fortement de l'application pour laquelle le processeur est utilisé. Voici quelques exemples :

  • LOAD le processeur récupère une valeur de la mémoire RAM
  • STORE le processeur stocke une valeur dans la mémoire RAM
  • ADD le processeur additionne deux nombres ensemble
  • CLR le processeur efface une valeur dans la mémoire RAM
  • COMPARER le processeur compare deux nombres entre eux
  • JUMP SI le processeur saute vers une adresse mémoire spécifique dans la RAM (condition de comparaison)
  • OUT le processeur envoie des informations à une sortie
  • DANS le processeur demande des informations à une entrée

Pour qu'un processeur fonctionne à pleine vitesse d'horloge, il utilise la mémoire RAM interne. C'est ce qu'on appelle des « registres ». Les registres sont des blocs fonctionnels particulièrement importants dans de nombreux systèmes numériques. Ils consistent en un ensemble de circuits bistables qui peuvent temporairement contenir (et ainsi se souvenir) un nombre binaire. Les différents types de registres sont :

  • Un registre : s'inscrire pour une entrée dans ALU
  • Registre B : registre pour l'entrée B vers ALU
  • Registre de travail : usage général, pour stocker les résultats (intérimaires)
  • Registre d'instructions : l'instruction actuelle à exécuter pour le processeur est stockée ici
  • Registre d'adresses (compteur de programme) : contient l'adresse de la prochaine instruction à exécuter
  • Registre des drapeaux : le nombre (après un calcul) est : zéro, négatif, positif, trop grand, pair ou impair
  • Registre à virgule flottante : nombre avec des chiffres après la virgule décimale
  • Registre à décalage : mémoire dans laquelle les données se décalent d'un bit à chaque impulsion d'horloge
  • Registre de données mémoire : tampon entre le CPU et la RAM pour les données mémoire
  • Registre d'adresse mémoire : tampon entre le CPU et la RAM pour l'adresse mémoire

L'ALU (Arithmetic Logic Unit) effectue toutes les opérations arithmétiques et logiques (AND, OR, NOT, etc.).

  • 2 entrées vers ALU : A et B
  • 1 entrée : quelle opération l'ALU doit-elle effectuer
  • 1 sortie : R (Résultat) va dans un registre
  • 1 sortie : registre des drapeaux

L'image ci-dessous montre l'ALU simplifiée (à gauche) et l'ALU avec représentation schématique des portes logiques (à droite).

1. L'ALU veut envoyer le 01010101

2. L'unité de contrôle doit d'abord créer le jeu « 1 ».

3. Le registre est complété

4. Après cela, l'activation « 1 » est effectuée.

5. Les données de l'ALU sont mises sur un bus

Le CPU veut récupérer les données de la RAM :

1. Le CPU envoie une adresse à la RAM (01001001)

2. Le CPU veut recevoir des informations ; "activer" = 1

3. La RAM envoie les données de l'adresse 01001001 au CPU

4. Le processeur traite les informations

Le CPU souhaite stocker les données dans la RAM :

1. Le CPU envoie une adresse à la RAM (01001011)

2. Le processeur souhaite stocker des informations ; "ensemble" = 1

3. Le CPU envoie des données (00111100) à l'adresse 01001011 dans la RAM.
Les données dans la RAM sont désormais écrasées de : 11111001 à : 00111100

Mémoire ROM :
ROM est l’abréviation de : Read Only Memory. Cette mémoire a été programmée par le constructeur. Le circuit mémoire est agencé avec des connexions fixes. L'ECU démarre le programme logiciel (démarrage) à partir de la mémoire ROM. La mémoire ROM est une mémoire lente. Lors du démarrage, les données sont copiées de la ROM vers la RAM.

Vous trouverez ci-dessous quatre exemples de lecture de la ROM.