Bonjour Jogia
d’après ces symptômes, je suspecte ton capteur d’étincelle d’être mal blindé.
Amicalement
Bonjour,
J’ai refait des test ce week-end. J’ai soudé les broches D0, D1, D2 et D3 de l’écran à la masse, ça n’a rien changé. J’ai aussi essayé d’alimenter le circuit avec une pile 9V, la il y à du mieux !
L’affichage des degrés demandé reste stable, (le codeur fonctionne) mais l’écran est toujours parasité quand je met le capteur autour du fil de bougie. D’ailleurs j’ai remarqué qu’en mettant le capteur sur le fil qui sort de la bobine il n’y a plus de parasite, chose que je ne comprend pas vraiment... La vitesse affichée n’est que 2 fois plus grande au lieux de 4, j’imagine que l’arduino n’a le temps de capter qu’un signal sur 2.
Je me disait qu’en faisant passer le signal en sortie du thyristor par un optocoupleur ça pourrait supprimer les parasites, qu’en pensez-vous ? J’imagine qu’il faudrait une alimentation supplémentaire pour la partie qui le thignal, ce qui compliquerais les choses mais pourquoi pas si ça peut résoudre mon problème...
Amitiés.
Bonjour Philippe
J’ai déja essayé de modifier la durée du flash dans le programme, j’ai pas encore essayé sur la voiture mais à 200 µs la lumière semble suffisamment forte pour bien voir le volant moteur, à condition qu’il n’y ai pas de soleil... Mais je me demande si ça fait pas trop long...
J’ai calculé que en 200µs et à 1000tr/min, le moteur parcourt 1.2° ! Ça dé-jas 1degrés d’imprécision pour régler au ralentit, et 6° à 5000tr/min... Ça fait beaucoup non ?
La lampe torche c’est une une bonne idée, mais je trouve ca dommage d’en acheter une exprès, et ça couterais aussi cher que le reste ! A voir si j’ai l’occasion d’en récupérer une !
Je pensait aussi à rajouter un module LED, ça serait peut être un peu moins pratique à manier mais la lumière serait plus forte et vu le prix du module (1€) ça peut être une solution... Je peu aussi essayer de fabriquer un petit réflecteur directionnel !
Je ferais des essais ce week-end, je vous tient au courant !
Bonjour Jogia
bravo tout d’abord pour ta perseverance, tu vas y arriver c’est sur...
Pendant la période de chasse aux parasites il est utile d’alimenter le module par une pile de 9V (ou autre) en évitant le +12 de l’auto.
On peut augmenter la durée du flash, c’est un compromis entre luminosité et precision du spot.
De tous mes essais je retiens la petite lampe torche Energizer comme la plus brillante.
Amitiés
Bonjour, ça faisait un petit moment que je n’avais pas eu le temps de m’occuper de mon stroboduino, mais j’ai bien l’intension d’en arriver à bout !
J’ai modifié les connections du codeur, la sortie A est maintenant connectée à la broche d3 de l’arduino et la sortie B à la broche d5. J’ai changé le premier paramètre de la fonction attachInterrupt en remplacent le 0 par un 1 pour que l’interruption se fasse sur la broche 3 au lieu de la broche 2. L’ encodeur semble fonctionner mais le chiffre affiché augmente tout seul, en tournant le codeur on peut quand même changer le chiffre mais il change tout seul dans la seconde qui suit...
Grouch4 : J’ai vérifié le brochage de mon codeur la masse est bien au milieu. je ferrait le test en reliant le chassis du codeur à la masse, merci du conseil !
J’ai reçus le module LED 3W que j’avais commandé, mais la encore c’est pas parfait. Le module éclaire très fort quand je connecte "manuellement" au 5 V mais quand je le branche à l’arduino, la lumière qu’il dégage est très faible même en augmentant D_Flash, trop faible à mon avis pour voir quelque chose sur le moteur...
J’ai essayé de faire clignoter le module avec un autre arduino et je me suis aperçu qu’en l’allumant pendant 10 microsecondes la lumière dégagé est très faible alors qu’en l’allumant 1 milliseconde par exemple celle_ci est beaucoup plus forte ! Serais-ce possible que mon module (1€ sur ebay) ait un "temps d’allumage" trop long ?
En plus j’ai à nouveau des petits problèmes de parasitage, par moment la ligne du bas du LCD affiche des caractères aléatoire et je suis obligé de ré-allumer l’arduino. Es que le fait de mettre les entrés d0 à d3 de l’écran lcd à la masse pourrait au moins atténuer ce problème ? Ou peut être mettre le circuit dans un boité blindé ?
Je suis pas encore au bout de mes peines, je vais essayé de connecter le châssis du codeur à la masse et sinon essayer le programme de grouch. Pour le flash je vous avoue que j’ai pas trop d’idée...
Merci encore pour votre aide et votre soutient ainsi que pour les ressources que vous partagez, tout seul j’aurais abandonné depuis un moment...
Bon week_end à vous !
Bonjour Christophe
bonne idée d’avoir repensé ce montage, logiciel et materiel, un peu comme modifier un couteau en en changeant le manche et la lame....
Sérieusement, ton site est très intéressant et je le recommande pour la variété des sujets entr’autres.
Bonjour, J’ai moi-même construit un Stoboduino et j’en suis très satisfait. Encore une fois merci pour votre travail et la mise à disposition de toutes ces ressources. J’ai néanmoins fini par refaire entièrement le programme avec l’utilisation d’une interruption matérielle pour la détection de l’étincelle. Il me reste à peaufiner quelques cas particuliers de fonctionnement, mais il marche très bien dans un cas simple où on demande une avance (quelques fonctionnements erratiques lorsqu’on demande un retard de faible valeur, et cela s’explique très bien, je corrigerai sous peu).
J’ai préféré ne pas chercher ou fabriquer une pince inductive, aussi j’ai adapté l’étage d’entrée pour une connexion directement sur la bobine. Le schéma de l’entrée est le même que sur celui du StroboLogger.
Dès lors, il faut connaitre le nombre de cylindres, cela se fait en appuyant le bouton au démarrage du stroboduino. On entre alors dans un mode config où on peut choisir le nombre de cylindres avec le codeur. Ce paramètre est sauvegardé dans l’EEPROM pour les utilisations ultérieures.
@jogia :J’ai rencontré les mêmes problèmes que vous lors de la mise au point. Pour vos problèmes de codeur, de degrés qui augmentent tous seuls, etc, vérifiez les points suivants :
- D’après mes recherches, certains codeurs ont un brochage différent de celui du schéma. La "masse" (commun) n’est pas au milieu mais sur le coté. Il faut vérifier ce point car ce ne peut fonctionner si le commun est inversé avec A ou B.
- Vérifiez que non seulement le commun est à la masse, mais aussi le "châssis" du codeur (les deux pattes qui servent à le souder solidement sur le PCB). C’est depuis que j’ai soudé le châssis à la masse que mon codeur fonctionne.
- Malgré la précaution précédente, j’avais un fonctionnement imparfait. J’utilise maintenant une bibliothèque tierce qui gère le codeur avec un anti-rebond. Voir mon code via le lien que je donne ci-joint. Attention, je n’utilise pas les broches 2 et 3 mais 3 et 4, mon code y est adapté. La broche 3 est également sous interruption matérielle.
Dans les jours à venir, j’inclurai plus de photos et je documenterai mieux le fonctionnement de ma version de ce Stoboduino.
Cdt, Christophe
Si je comprend bien au repos la sortie A de l’encodeur est tout le temps égale à 5 alors que la sortie B est a cheval entre 0 et 5 volts.
Je me suis trompé, c’est la sortie B que j’ai connectée au pin D3 et non la sortie A, du coup forcément l’arduino ne sait pas sur que pied danser...
Je vais inverser le branchement des sortie A et B de l’encodeur.
Rectification : C’est l’interrupteur et non la sortie codeur_A qui est branché a la sortie D2 sur mon schéma.
J’ai branché la sortie codeur_A est branché au pin D3, si j’ai bien compris la fonction attachinterrupt fonctionne avec le pin D2 et 3, selon si on met 0 ou 1 en premier paramètre dans la parenthèse. J’ai donc essayé de mettre 1 pour que la fonction se fasse par rapport au pin D3, mais sans résultats...
Bonjour, je vous ai envoyé le schéma par mail.
Pour les degrés qui augmentent tout seul, j’ai peut être une piste quand à la source du problème. Au début du void init, il y a cette ligne : attachInterrupt(0, isr_Rotation_Codeur, FALLING) ;
Dans mon schéma c’est la sortie codeur_B et non la A qui est relié au pin 3 auquel la fonction attach interrupt fait allusion.
Es ce que le problème ne viendrait pas de la ?
Bonjour parfait, ça progresse !
Passe moi le schema sur philippe.loutrel@laposte.net
Amitiés
Bonjour.
J’ai mis le circuit sur plaque de prototypage à bande, le capteur inductif fonctionne et l’écran m’affiche la vitesse du moteur sans planter.
Il me reste deux petit soucis à régler :
Le flash n’est pas encore au point, j’ai commandé un module led 3W. En attendant j’ai essayé d’en faire un avec une ampoule led de 12V 1W (donc branchée sur le +batterie) commandé par un bc109 que j’avais sous la main avec une résistance de 1K sur la base. La lampe s’allume quand je relie la base du transistor sur le +5V mais pas quand je la branche sur la sortie flash (12 dans mon cas) de l’arduino.
Et le nombre de degrés demandé augmente tout seul et je n’arrive pas à le régler avec l’encodeur. Pourtant le signal de l’encodeur arrive bien à l’arduino sans mauvais contact...
Dite moi si vous êtes toujours intéressé par le schéma et comment je pourrais vous l’envoyer.
Bonjour
bravo, bonne idée d’essayer un autre schema ! et il est intéressant ton site http://www.sportdevices.com/rpm_readings/index.htm.
Après tes essais tu me passeras le schema retenu, je l’ajouterai à cet article.
Bonjour,
J’ai enfin réusis réussi à capter les impulsions de la bougie avec la tore sans que l’écran beuge !
J’ai utilisé le schéma inductif de ce site : http://www.sportdevices.com/rpm_readings/index.htm
J’ai branché la sortie du thyristor directement à l’arduino sans utiliser de ne555.
Dès que mes connecteurs femelle pour l’écran et l’arduino arrivent je soude tout ça sur circuit imprimé. Il me resteras plus qu’a m’occuper du flash.
Précision : le flash c’est 4 fois par 2 tours de vilo, et non 1 fois tous les 2 tours comme pour une lampe à capteur sur fil de bougie.
Une autre façon de voir les choses : mettre la pince sur le fil de bobine et on est ramené au cas de la connexion type compte-tours, sur la sortie du primaire de la bobine.
Tout va être multiplié par 4 effectivement, et sans garantie car je n’ai pas essayé ce montage...
Dans loop(), inverse les 3 digitalRead(Etin==1)ou 0 par l’inverse, 0 ou 1 car le front d’étincelle à la bobine passe de 0 à 1, alors que le thyristor descend lui de 1 à 0.
Le flash se produit 4 fois par tour, un seul est utile bien sur.
Quand la fumée sera dissipée, tiens nous au courant...
Bonjour,
Je vais mettre tout ça sur circuit imprimé, j’ai commandé des barrettes femelle pour brancher l’arduino et l’écran.
J’avais pas prévu d’utiliser une pince tout faite, elle sont pas facile à trouver dans le commerce et chère...
Si j’y arrive pas avec la tore j’essayerais de me brancher sur la bobine comme avec le strobo logger !
Si je comprend bien il n’y a pas pas besoins de modifier le programme pour capter le signal sur le primaire bobine, juste de remplacer les composants qui récupèrent le signal de la pince inductive par le pont résistif, la diode Zener et le condensateur comme sur le schéma du strobo logger, c’est bien ça ?
Il y a un truc que je comprend pas : Comment le flash se fait au point mort haut du cylindre n°1 et pas des autres ?
Bonjour
d’abord un correctif : c’est le "Strobo Logger Afficheur Compte-Tours" qui sait gérer une connexion à la bobine de type compte-tours.
Pour en revenir à te soucis, ce sont effectivement des parasites dues à ce capteur improvisé qui brouillent le LCD.
Essaie d’alimenter le montage avec une pile de 9V, cela peut aider, mais il vaudrait mieux te procurer une pince inductive du commerce.
bonjour,
J’ai trouvé une tore que j’ai coupée comme sur la page du stropopic, sur laquelle enroulé 13 spires de fil de cuivre émaillé
Je viens de faire un essais sur ma voiture, mais le résultat n’es pas celui espéré... Dès que j’approche la tore du fil de bougie l’arduino beuge, et l’écran affiche une rangée de carrés sur la première ligne. Pour le remettre en marche il me faut enlever la tore du fil de bougie et appuyer sur le bouton reset du nano.
J’ai du mal à comprendre d’où peut venir le problème. (mon circuit correspond bien au schéma)
J’ai fait le test avec une breadbord, es ce-que que les fils qui relient tout les composants (en particulier celui qui va de l’arduino au thyristor) pourraient capter des interférence qui causerait le plantage de l’arduino ?
Je ferais le test avec un fil, sinon j’essayerais de faire l’enroulement sur une tore, je doit pouvoir en trouver qui traine dans mes tiroirs
J’ai aussi pensé à la solution de prendre le signal sur le primaire bobine en regardant votre page du strobopic, mais j’ai peur de "parasiter" le fonctionnement de l’allumage, en plus il va falloir que je modifie le programme pour pouvoir trouver le bon cylindre en appuyant sur un bouton... Es-ce ce serait compliqué à programmer ?
Je me pose une autre question : Si j’ai bien compris, en branchant la sortie du régulateur de tension directement sur le pin 5V de l’arduino, on ne peut plus le brancher à un ordinateur, sinon l’alimentation fourni par l’ordinateur se retrouve en parallèle avec le régulateur de tension.
L’ennui c’est que javais prévu de souder l’arduino directement au circuit imprimé, du coup je ne pourrait plus l’enlever de son socle pour modifier le programme.
Es ce que cela pose problème même si le régulateur n’es pas alimenté ? Sinon es-ce qu’un simple interrupteur en sortie du régulateur pourrait résoudre le problème ?
Bien, ça avance positivement !!
Un fil enroulé autour d’un fil de bougie capte les étincelles des autres cylindres de façon anarchique, d’où la nécessité de la ferrite et son enroulement qui "se concentre" sur le fil la traversant.
Cela dit rien ne vaut en fiabilité et precision une simple connexion au primaire de la bobine, comme un compte tours (voir le Strobo-duino).
J’ai simulé le signal du capteur inductif avec un autre arduino, tout marche bien ! Les trs/minutes varient en fonction de la fréquence envoyée et le codeur fait enfin défiler les degrés demandé.
J’ai fini le montage sur plaque d’essais, il me reste plus qu’a faire des tests sur ma voiture avant de faire le montage final. Je n’ai pas de pince inductive, je vais voir si un fil enroulé autour du fil de bougie suffit ou sinon fabriquer une pince avec une tore)
Je vous tient au courrant.
Tu m’en diras tant !!
Bien sur il faut que le moteur tourne car si la rotation du codeur génère bien une interruption, l’isr qui la traite (comme c’est de bonne pratique) est très courte et ne fait qu’indexer un compteur.
Donc pour l’affichage au Lcd, on doit avoir détecté les fronts d’étincelle.
Tu peux les simuler avec tout oscillateur ( Ne555 ou autre) rectangulaire sur l’entrée D8.
Reviens nous dire quand ça marchera stp...
J’ai essayé avec un arduino uno, sans aucun changement. J’ai aussi testé la continuité du codeur sur les broches de l’arduino, et de brancher le codeur sur d’autres entrées logique mais sans plus de résultats...
Je n’ai pas encore testé le circuit sur ma voiture, donc rien n’es branché sur le pin D8. Es qu’une des boucles while etin en attente d’un signal qui ne vient pas pourrait mettre le progamme en pause le programme et empêcher la fonction isr_rotation_codeur de s’effectuer ?
Merci pour votre aide !
Bonjour jogia
dans un cas comme ça, je te conseil de
1..essayer un autre Nano, et si ça ne suffit pas
2..repasser sur toutes les soudures.
Cordialement
Bonjour,
Je débute dans le monde de l’arduino et de l’électronique, et comme premier projet sérieux je voulais fabriquer une lampe stroboscopique et en cherchant sur internet je suis tombé sur la page du stroboduino.
J’ai réalisé le circuit une sur breadboard sans pince inductive, l’affichage fonctionne, mais je n’arrive pas à faire défiler les degrés affiché à l’écran avec le codeur (celui-ci fonctionne et il n’y a pas de mauvais contacts). J’ai essayé pendant de longues heure de trouver le problème dans le logiciel mais sans succès... Es-ce que vous auriez une idée d’où ça peut venir ?
Merci pour votre projet !
Fredd
J’ai bien peur que ce gadget ne convienne pas car c’est un transfo de courant prévu pour des ampères, or le courant d’un fil de bougie est de l’ordre des mA....
Skyzo Boy
a signalé http://www.sealey.co.uk/PLPageBuilder.asp ?id=20&method=mViewProduct&productid=8488 (ou équivalent) : c’est l’ensemble pince + prise (à 20€ environ) d’une lampe strobo classique de Sealey(60€ pour la lampe complète environ).
Pas donné mais ça fonctionnera, en virant la prise spécifique.
Sympa Fredd ces adresses !
Merci d’avance à ceux qui les essaieront de poster leurs commentaires.
Bonjour si vous cherchez des pinces inductives, j’ai vraiment ramé pour en trouver :(
j’ai trouvé un fabricant chinois YHDC qui en fabrique plusieurs http://www.yhdc.com/en/product/category/Spilt-core-current-transformer/
j’ai choisi la sct027 à 10€ sur eBay http://www.ebay.fr/sch/i.html ?_from=R40&_trksid=p2050601.m570.l1313.TR0.TRC0.H0.Xsct027.TRS0&_nkw=sct027&_sacat=0
J’ai commandé tout le reste pour faire le StroboDuino, il me tarde de tester tout ça :)
merci à vous pour votre travail
Super le montage c’est justement ce que je recherchais
Par contre j’ai 2 questions :
Quel est le régime Maxi ?
Quel est le déphasage maxi en degré ?
Merci encore.