Jump to content
En Direct de PGR
PGR lieu de partage et d’échanges animé par des passionnés bénévoles ! Notre Compte Premium un espace indispensable pour tout mécano en herbe ou professionnel pour tout type d'intervention sur votre Patrol.

Y61 Construire pas à pas un boitier de suppression du mode sécurité ECU


Recommended Posts

et enfin, il faudra aussi installer un environnement de développement C/JAVA qui s'appelle "Processing" si vous voulez tracer de beaux graphiques sur le PC avec les données qui se trouvent dans l'Arduino.

L'atelier Arduino est vraiment très très pauvre sur ce plan, même si au début, ça dépanne.

On fera beaucoup de copier-coller, depuis les différents tutos, donc pas besoin d'apprendre, ni le C++ ni le java.

Je vous invite d'ores et déjà à regarder comment allumer et éteindre une simple LED. Ce sera utile, car c'est bien d'avoir une loupiotte qui clignote sur une carte électronique, ne serait-ce que pour nous dire

"tout va bien, tout va bien, tout va bien...".  Et on pourra la faire clignoter différemment pour dire 'MAF pas connecté' ou 'pas de signal tr/mn' par exemple ( ou mettre des LEDs de différentes couleurs.... ).

  • Thanks 1
Link to post
Share on other sites
  • Replies 216
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Pour pas cher.   Leçon 1   Acheter de quoi faire un prototype et apprendre à l'utiliser. I vous faut - une carte Arduino Uno R3, ou un clone chinois, AVEC SON CABLE USB h

la bonne nouvelle, c’est que tu as un cerveau.  il faut travailler sous interruption. et dans cette routine, faire le minimum d’instructions. Si tu cherches bien, je l’avais donnée dans un post i

Je rajoute un petit commentaire sur le mode 'contrôle technique'. D'abord, je n'en ai pas besoin, car je n'ai pas de fumées opaques. (mesures <0.1 pour 3 autorisés). MAIS, juste pour le mentio

Posted Images

Lectures et Recherches pour cette semaine :

Comment récupérer l'information tr/mn à partir du signal PMH, qui est un signal impulsionnel  qui varie entre  +- 4V et +- 14V à a une fréquence de 4 fois la vitesse de rotation moteur ?

Le voilà au ralenti. ( 750 tr/mn est un signal à 12,5Hz  - 750/60 - fois 4 donne 50 Hz ).

image.thumb.png.16e4acd2aa99f208aa379d52fc6911d1.png

 

Il faut, sans perturber ni le fonctionnement du capteur, ni le fonctionnement de l'ECU, qui l'utilise lui aussi, le convertir en un signal "carré" propre entre 0 et 5V pour pouvoir le présenter sur une entrée numérique Arduino.

 

Link to post
Share on other sites

Tu postes tes idées et les explications ici. Ainsi, tout le monde en profite.

Sur le net, tu peux trouver plusieurs solutions, dont l'une avec un timer 555 que je trouve un peu trop compliquée.

La mienne n'est pas forcément la meilleure, loin de là, et j'en suis sûr ( car j'ai fait avec ce que j'avais sous la main). Mais elle marche.

Le but c'est d'échanger et d'avancer, comme sur les forums spécialisés. Sauf qu'ici, le but principal, c'est nos Patrols.

Edited by phdv61
  • Like 1
Link to post
Share on other sites

Bon, attention les yeux, c'est ultra basique :2 (15):

J'ai pas retouché à l'électronique depuis la terminale y'a 15 ans donc y'a un paquet de trucs qui se sont évaporées de ma mémoire. Faudra être patient avec moi :batton:

 

Solution simple N°1 :

Piquer le signal de sortie du capteur PMH, et l'envoyer sur la base d'un transistor adapté (tension nécessaire sur la base à 3V ou moins), en rajoutant une diode (la partie -4V je pense qu'on s'en tape) et une résistance assez conséquente pour ne pas risquer d'abaisser la tension du signal qui part à l'ECU. Le collecteur du transistor vient pomper directement sur l'alim 5V qui fournit l'Arduino. 

 

datapmh.png

Edited by nono des montagnes
Link to post
Share on other sites

la diode de redressement et l'utilisation d’un transistor de conditionnement sont une bonne idée de départ mais pour moi, pas  branché comme cela le transistor. le courant est limité comment ?

Link to post
Share on other sites

Via R1, je pensais qu'avec une valeur dans les 200k Omh on arriverait à limiter le courant de base à une cinquantaine de micro ampères, ce qui me paraissait raisonnable. Je ne connais pas du tout les tolérances du capteur PMH au niveau du courant qu'il peut fournir sans que la tension s'effondre.

Link to post
Share on other sites

C'est un des problèmes. On (je) ne connait(ais) rien du capteur, sauf qu'il nous sort entre 4V et 14V.

Il faut donc que le transistor travaille en saturation, de 4V à 14V.  J'ai mis un pont diviseur par 3 avec 50k et 100k. et ni le capteur ni l'ECU n'ont bronché.

J'ai aussi fait ceinture-bretelles : j'ai ajouté un filtre passe-bas en me disant que s'il y avait de vilains transitoires à un moment ou à un autre, cela ne ferait pas de mal d'avoir une capa dans la chaine,  et comme j'avais utilisé un ampli-op dans ma chaine de restitution du signal MAF pwm en analogique ( l'Arduino n'a pas de DAC, et ne sait sortir que des signaux analogiques) je suis repassé par le 2e, disponible, pour récupérer de beaux fronts de montée et de descente bien droits (car on fera travailler l'Arduino en mode interruption sur front pour calculer les tr/mn).

Autre chose. le 5V vient de l'USB lorsque l'Arduino est connectée au PC. Mais en solo, il faudra l'alimenter à partir d'un 12V, et donc prévoir sur le shield, un fusible une diode, un régulateur 5V et deux capa de filtrage.

Edited by phdv61
Link to post
Share on other sites

Le second sujet à traiter, c'est comment restituer un signal MAF analogique à l'ECU depuis une sortie pwm 0-5V de notre microcontrôleur.

J'ai déjà presque répondu...

Link to post
Share on other sites
il y a 7 minutes, phdv61 a dit :

C'est un des problèmes. On (je) ne connait(ais) rien du capteur, sauf qu'il nous sort entre 4V et 14V.

J'ai fait ceinture-bretelles : j'ai ajouté un filtre passe-bas en me disant que s'il y avait de vilains transitoires à un moment ou à un autre, cela ne ferait pas de mal d'avoir une capa dans la chaine,  et comme j'avais utilisé un ampli-op dans ma chaine de restitution du signal MAF pwm en analogique ( l'Arduino n'a pas de DAC, et ne sait sortir que des signaux analogiques) je suis repassé par le 2e, disponible, pour récupérer de beaux fronts de montée et de descente bien droits (car on fera travailler l'Arduino en mode interruption sur front pour calculer les tr/mn).

Je serais pas contre la dénomination complète des deux acronymes en rouge, qui ne veulent pas dire grand chose pour moi 😅 

En attendant vais aller bouquiner un peu sur l'ampli-op, j'avais oublié l'existence même de ce type de composant. (Tu pars de loin avec moi :mdr_:)

Link to post
Share on other sites

MAF, c'est le débitmètre en Anglais ( MASS AIR FLOW).

DAC : digital to analog converter.

PWM = pulse width modulation.

Je suis parti de plus loin que toi... n'aies crainte. Ma formation c'était à la base plutôt le logiciel. et c'était ... il y a longtemps.

Il faut emmener aussi @jacktrol avec nous et ne pas l'oublier.

Edited by phdv61
  • Thanks 2
Link to post
Share on other sites

@nono des montagnes, je te suggère d'aller sur le site easyeda chinois.

tu as en ligne de quoi faire des schémas, et même les simuler avec spice. Tu peux aussi router, faire des CI, et les faire fabriquer. C'est tout simplement génial.

En quelques secondes, tu peux saisir ça :

652862174_Capturedecran2020-11-01a18_24_08.png.313f21db3df7489d8a2fb0546dafcb50.png

et obtenir ça : ( je n'ai pas mis un signal impulsionnel, mais une sinusoïde sur le générateur )

1749664405_Capturedecran2020-11-01a19_02_09.thumb.png.67d0b1668d547c87ee215241d7ac46fc.png

 

ou, ce que tu proposais :

13296068_Capturedecran2020-11-01a19_00_24.thumb.png.f4384339184bcc695c2a7baf9036b79e.png

 

et ce que tu obtiens ( cherche l'erreur )

 

862277317_Capturedecran2020-11-01a19_00_50.thumb.png.5d111a4f1a6be74c3b169e565dd917f1.png

Link to post
Share on other sites

et bien sûr, sur de beaux signaux carrés en entrée entre 0 et de 4 à 14V, c'est très beau en sortie en 0-5V avec le schéma 1

532641545_Capturedecran2020-11-01a19_11_35.thumb.png.db9e01b78eafce259379f14a45aec0db.png

Link to post
Share on other sites
Il y a 2 heures, phdv61 a dit :

Il faut emmener aussi @jacktrol avec nous et ne pas l'oublier.

Merci merci ... je pense que ça va être  un peu la galère pour moi et je ne veux pas etre le :elubouletdujour:  car moi je pars du niveau  double ZÉRO  ,  j'ai commencé la lecture  "comment débuter avec l'Arduino"  ... bon j'ai encore un mois avant de recevoir le matériel  mais ça ne vous empêche pas d'avancer, j' essaierai de rattraper    

Link to post
Share on other sites

tu verras, ce n'est pas si compliqué.

Une résistance, ça résiste à l'avancement des électrons, et ça fait chuter la tension ( U = R x I )

Une capa (condensateur) se charge et se décharge. Associée à une résistance, elle permet de filtrer des fréquences indésirables

Une diode, empêche le courant de passer dans un sens, et pas dans l'autre.

et enfin le transistor s'utilisera ici comme un interrupteur ON/OFF, qu'on fera fonctionner en lui mettant, ou pas, une tension sur la base, qui laissera passer (ou pas) un courant depuis le collecteur jusqu'à l'émetteur.

On pourra ainsi, avec un signal 5V ou 0V, faire passer, ou non, du 12V par exemple.

On verra l'ampli op plus tard.... mais on l'utilisera en mode, "suiveur".

 

Link to post
Share on other sites

Ben voila ! nulle part c'est expliqué comme ça , merci beaucoup ,  demain je vais commencer par prendre des notes  de ce genre ainsi que de la représentation schématique des composants , diode , résistance  etc etc 

Link to post
Share on other sites

y'a pas de souci.

Tu peux aussi te créer un compte sur le site chinois EASYEDA. Tous les composants classiques y sont répertoriés. Tu peux y faire des schémas une fois que tu as compris comment marche l'outil, et même faire des simulations et voir comment évoluent les signaux dans le temps.

Ci-joint le fichier projet EasyEDA de l'acquisition RPM. En mode simulation, on peut faire varier les valeurs de résistance et de capa, ainsi que la tension du générateur uilisé pour cette simulation ( sachant que ce qui sort du capteur n'est pas un beau signal carré !).

Une diode de redressement, pour supprimer l'alternance négative, un pont de résistance pour faire en sorte de diminuer la tension d'1/3, avec des valeurs de résistance assez élevée pour ne pas pertuber ni le capteur en tirant trop de courant, ni l'ECU. La tension sera ensuite toujours inférieure à 5V, et on l'utilise pour commander un transistor. J'en ai pris ici un très classique pour faire de la 'commutation' ou 'switching', en le faisant travailler en mode "saturé" ( interrupteur ). Pour ce faire il faut le "polariser", c'est à dire faire en sorte de respecter ses spécifications pour le mettre en condition de faire ce qu'on attend de lui.

Pour qu'il soit en mode "saturation", il faut que le courant sur la base soit au moins de deux fois le courant sur le collecteur multiplié par le gain ( ici 65 min d'après la notiice technique disponible sur le net ). J'ai fixé Ic en mettant une résistance de 5K entre le collecteur et le +5V, donc le courant Ic est de 1mA ( pas besoin de plus ...). Du coup il faut au moins 30 micro-ampères sur la base.

En mode "saturé" la tension VBE ( base émetteur) est pour ce transistor de 0.6V. La tension mini après la diode et le pont de résistance est de 4V ( sortie capteur ) - 0.5V diode donne  3.5V divisé par 3 (pont de résistances) soit environ 1,2V.  et pour la faire chuter un peu encore j'ajoute une résistance de 1K (car il faut garder en mémoire que pour plus haut dans les tr/mn ,la tension montera à plus de 12V ).

Du coup, la plage de fonctionnement de ce montage est d'environ 3.5V à au delà de 14,5V, en tirant le minimum de courant sur l'alim.

Enfin, j'ai ajouté une petite capa pour filtrer le bruit. ( et dans mon cas, je suis également repassé par un ampli OP en mode suiveur pour présenter une impédance la plus faible possible à l'entrée Arduino, pas présenté ici ).

1296604578_Capturedecran2020-11-02a10_26_29.thumb.png.9b69d7715d540091e0cd5d51f24f0c93.png

Les puristes remarqueront que nous sommes passés en "logique inversée", mais comme ce ne sont que les fronts qui nous intéressent et vont nous permettre de compter et de mesurer le temps écoulé dans l'Arduino, on s'en moque. Et les capas et résistances coûtent quelques centimes, donc...

Avec une entrée à 14,5V :

510730995_Capturedecran2020-11-02a10_30_14.thumb.png.baf83d33bdb47809f5fdae8897047db6.png

 

et une entrée à 3.5V - limite basse. En dessous ça ne marchera pas - ( on s'attend à un minimum de 4V ) :

2104273869_Capturedecran2020-11-02a10_39_25.thumb.png.38807f95a13c759c28bbfd3a060ca088.png

La simulation marche, mon montage aussi, mais c'est peut-être un hasard...

RPM simulation_2020-11-02_09-51-44.json

Edited by phdv61
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

Ce site web utilise les cookies pour améliorer votre expérience de navigation.