Roulez à l'E85 la conception d'un boitier
Comme expliqué dans l'article précédent, le moyen le plus sûr pour rouler à l'E85 c'est de réaliser un boitier électronique à insérer entre le calculateur d'injection et les injecteurs chargé d'augmenter le temps d'ouverture des injecteurs de 30%. Un boitier de ce type a été réalisé ici et mon boitier s'en inspire beaucoup, merci à Cyril pour son excellent travail.
Comme on le constate sur le schéma ci-dessus le boitier augmente proportionnellement la durée des impulsion de commande des injecteurs pour assurer une combustion optimum de l'E85. Comme je n'aime pas copier bêtement, j'ai décidé d'apporter quelques petites améliorations au boitier de Cyril. Tous d'abord, au niveau de l'interface utilisateur, la sélection du pourcentage d'E85 dans le réservoir se fera à l'aide d'un potentiomètre. On pourra ainsi choisir de rouler au SP95, à 25%, 50%, 75% ou 100% d'E85. Ensuite une mesure de la sonde de température d'eau permettra de réaliser un starter automatique, plus il fait froid plus on enrichis, puis de moins en moins quand le moteur chauffe de façon à optimiser la consommation de carburant. Voici le synoptique de fonctionnement pour un moteur quatre cylindre à injection multipoint :
Le circuit imprimé peut-être imprimé en 300 dpi pour conserver l'échelle. Sinon vous pouvez télécharger le fichier PDF ici.
Le schéma de câblage de la carte est le suivant :
Pour le programme j'ai modifié celui de Cyril pour qu'il fonctionne sur ma carte, le programme est disponible ici et peut-être compilé avec l'outil MPLAB IDE de Microchip et le compilateur C HI-TECH-C, le tout téléchargeable ici. Sinon le fichier HEX est disponible ici
SONDE DE TEMPERATURE D'EAU
Elle informe le calculateur de la température du liquide de refroidissement moteur. Elle lui permet d'apporter des corrections au niveau de l'injection et de l'allumage. C'est une thermistance de type CTN résistance à coefficient de température négatif), ce qui signifie que lorsque la température de l'air admis diminue, la valeur de résistance augmente, et inversement.
Le circuit de la sonde est alimenté sous cinq volts continu. Le calculateur mesure la tension aux bornes de la sonde, qui varie en fonction de la résistance de celle-ci.
Pour déterminer la valeur de la résistance R, j'ai placé une résistance de 510 Ohms à la place de la CTN, j'ai mesuré 2.7V. La résistance R se calcul :
Ce tableau me permet d'ajuster les paramètres d'injection en fonction de la température. Ci-dessous un extrait du programme :
Comme on le constate sur le schéma ci-dessus le boitier augmente proportionnellement la durée des impulsion de commande des injecteurs pour assurer une combustion optimum de l'E85. Comme je n'aime pas copier bêtement, j'ai décidé d'apporter quelques petites améliorations au boitier de Cyril. Tous d'abord, au niveau de l'interface utilisateur, la sélection du pourcentage d'E85 dans le réservoir se fera à l'aide d'un potentiomètre. On pourra ainsi choisir de rouler au SP95, à 25%, 50%, 75% ou 100% d'E85. Ensuite une mesure de la sonde de température d'eau permettra de réaliser un starter automatique, plus il fait froid plus on enrichis, puis de moins en moins quand le moteur chauffe de façon à optimiser la consommation de carburant. Voici le synoptique de fonctionnement pour un moteur quatre cylindre à injection multipoint :
- Les quatre entrées "Commande Injecteur" venant du calculateur d'injection sont du type numérique 0 ou 1 (0V ou +12V)
- Les quatre sorties "Injecteur" reliées au injecteurs sont du type numérique 0 ou 1 (commande des injecteur via un transistor de puissance)
- Les entrées "Capteur de température" et "Potentiomètre de réglage" sont du type Analogique (CAN)
- La sortie LED est du type numérique 0 ou 1
Le schéma électronique est le suivant :
Rôle des connecteurs :
- J1 se connecte aux sorties du calculateur
- J2 se connecte aux injecteurs
- J3 on connecte le capteur de température en 1, le potentiomètre de réglage sur 2-3-4
- J4 est le connecteur d'alimentation le +12V sur 1 et la masse sur 2
- J5 permet de connecter une LED, 1 anode et 2 Cathode
Le circuit imprimé peut-être imprimé en 300 dpi pour conserver l'échelle. Sinon vous pouvez télécharger le fichier PDF ici.
Pour le programme j'ai modifié celui de Cyril pour qu'il fonctionne sur ma carte, le programme est disponible ici et peut-être compilé avec l'outil MPLAB IDE de Microchip et le compilateur C HI-TECH-C, le tout téléchargeable ici. Sinon le fichier HEX est disponible ici
SONDE DE TEMPERATURE D'EAU
Elle informe le calculateur de la température du liquide de refroidissement moteur. Elle lui permet d'apporter des corrections au niveau de l'injection et de l'allumage. C'est une thermistance de type CTN résistance à coefficient de température négatif), ce qui signifie que lorsque la température de l'air admis diminue, la valeur de résistance augmente, et inversement.
Le circuit de la sonde est alimenté sous cinq volts continu. Le calculateur mesure la tension aux bornes de la sonde, qui varie en fonction de la résistance de celle-ci.
Pour déterminer la valeur de la résistance R, j'ai placé une résistance de 510 Ohms à la place de la CTN, j'ai mesuré 2.7V. La résistance R se calcul :
R = (5 / 2.7 ) * 510 - 510 = 434 Ohms
Pour étalonner mon capteur de température, j'ai réalisé plusieurs mesure à différentes températures, comme les mesures correspondaient à la courbe ci-dessus, je m'en suis servis comme référence.
Soit le tableau suivant :
Température | Résistance | Tension | Valeur CAN |
-40,0 | 50000,0 | 5,0 | 254 |
-30,0 | 29000,0 | 4,9 | 252 |
-20,0 | 17000,0 | 4,9 | 250 |
-10,0 | 9000,0 | 4,8 | 244 |
0,0 | 5000,0 | 4,6 | 236 |
20,0 | 2500,0 | 4,3 | 218 |
40,0 | 1100,0 | 3,6 | 184 |
60,0 | 520,0 | 2,7 | 139 |
80,0 | 310,0 | 2,1 | 107 |
100,0 | 180,0 | 1,5 | 75 |
120,0 | 100,0 | 0,9 | 48 |
Ce tableau me permet d'ajuster les paramètres d'injection en fonction de la température. Ci-dessous un extrait du programme :
if ( Nbmsec ) Nbmsec--; // si 1s est écoulée
else if (seconde <= 600) // mais si moins de dix minutes depuis le départ
{
Nbmsec = 1000;
seconde++;
if ( Moyenne ) TempTmp += ReadTempMotor();
else {
//Fonction starter automatique par temps froid
TempTmp = TempTmp >> 6; // On mesure la température du moteur et on corrige l'injection
if ( TempTmp < 180 ) CorrectionTemp = 0; //Température > 40°C moteur chaud donc plus de correction
else if ( TempTmp < 218 ) CorrectionTemp = 2; // Moteur entre 20° et 40° correction faible
else if ( TempTmp < 236 ) CorrectionTemp = 4; // Temps froid entre 0° et 20° correction un peu plus forte
else if ( TempTmp < 244 ) CorrectionTemp = 6; // Temps froid en dessous de 0° correction plus forte
else if ( TempTmp < 250 ) CorrectionTemp = 8; // Temps très froid -10° correction forte
else CorrectionTemp = 12; // Temps froid extrème -30° correction maximum
TempTmp = 0;
}
}
else CorrectionTemp = 0; // En dix minute le moteur doit être chaud, donc plus de correction
else if (seconde <= 600) // mais si moins de dix minutes depuis le départ
{
Nbmsec = 1000;
seconde++;
if ( Moyenne ) TempTmp += ReadTempMotor();
else {
//Fonction starter automatique par temps froid
TempTmp = TempTmp >> 6; // On mesure la température du moteur et on corrige l'injection
if ( TempTmp < 180 ) CorrectionTemp = 0; //Température > 40°C moteur chaud donc plus de correction
else if ( TempTmp < 218 ) CorrectionTemp = 2; // Moteur entre 20° et 40° correction faible
else if ( TempTmp < 236 ) CorrectionTemp = 4; // Temps froid entre 0° et 20° correction un peu plus forte
else if ( TempTmp < 244 ) CorrectionTemp = 6; // Temps froid en dessous de 0° correction plus forte
else if ( TempTmp < 250 ) CorrectionTemp = 8; // Temps très froid -10° correction forte
else CorrectionTemp = 12; // Temps froid extrème -30° correction maximum
TempTmp = 0;
}
}
else CorrectionTemp = 0; // En dix minute le moteur doit être chaud, donc plus de correction
bonjour, merci pour votre site, c'est super !
RépondreSupprimerje suis en train de faire le boitier, et j'ai juste une question : quelle est la valeur du potentiomètre de réglage ?
Je vous ferais un retour dès que je l'aurai installé.
merci
Bonjour,
RépondreSupprimerje pense qu'un potentiomètre de 10k fera l'affaire.
Testant aussi ce montage, pour moi il y a un souci au niveau du fichier hex fourni car ça ne fonctionne pas, les alim sont OK, le PIC n'est pas commandé.
Avez vous aussi constaté ce souci.
Merci
bonjour, j'ai le même soucis!
RépondreSupprimerimpossible de compiler, et en injectant directement le fichier hex le boitier ne fonctionne pas. Et j'avais mis un pot de 50K.
du coup, j'ai fait le montage "original" (celui de Cyril), et il fonctionne (presque) : mes injecteurs ont une résistance interne de 8ohm, ce qui n'est pas suffisant.
le PIC est bien commandé, et le bp ainsi que la LED répondent correctement.
à essayer sur un autre véhicule, mais je n'en ai qu'un ;)
C'est ce que je craignais, c'est impossible à faire fonctionner car le programme source est incomplet.
RépondreSupprimerDe mon coté, j'ai déjà installé celui de Cyril sur un V6 PSA et il fonctionne correctement même si le code n'est pas super propre.
Je voulais monter celui-ci sur un 4 cylindres et voir pour adapter un capteur de carburant afin d'avoir un ajustement automatique, la base paraissait bonne.
Il faut tester le montage de Cyril avec des résistances de 10k sur les sorties, si ça marche bien c'est que le montage est Ok, juste le souci d'impédance des injecteurs
Perso, j'ai modifié celui de Cyril sur l'entrée, j'ai viré les résistances de 2kohm car mon calculateur considérait que le circuit était ouvert et donc allumait le voyat MIL, j'y ai mis des 750 ohm 1w, RAS après 2500 km, pas de chauffe.
Il serait bon de tester le montage avec vos injecteurs après avoir modifié les résistances de simulation des injecteurs en entrée.
bonjour,
RépondreSupprimerj'ai testé le montage avec des résistances de 10K avant montage, et tout était ok, sur les 6 sorties.
j'ai shunté les 2 sorties non-utilisées avec des 10K au +5V.
Quant aux résistances de 15 ohm qui chauffent, j'avais mis des 39 ohm ( j'avais pas de 15 ohm ;) )
Je vais essayer avec des 750 ohm comme vous. Si ça marche tant mieux, sinon faudra que je teste sur un autre véhicule.
En même temps, Cyril précise bien que les injecteurs doivent avoir une résistance > 10 ohm...
Merci, et je vous tiens au courant !
Bonjour,
RépondreSupprimerdans le cas qui vous concerne, les injecteurs ayant une faible impédance, il faut ajouter une résistance en série dans le circuit afin de dépasser les 15 ohms nécessaires au bon fonctionnement.
Il faut des 10ohms 20 w ou alors plus fort et moins puissant, à tester avec les 750 ohm pour voir .
JM