Partage
  • Partager sur Facebook
  • Partager sur Twitter

Airsoft semi commandé par Arduino.

Batterie Life 9,9v (airsoft) + powerbank 5v (Arduino)?

    21 mars 2019 à 19:04:48

    Bonjour à toutes et à tous!


    J’ai fait un copier coller du sujet que j'avais fait sur france-airsoft.fr, malheureusement ça n’a pas intéressé grand monde, du coup je viens voir si des spécialistes peuvent m'aider.


    (Désolé si je suis un peu long dans mes explications, j'ai préféré faire le tour de la question^^)


    J'ai acheté un airsoft, mais j'ai été pas mal déçu par la tringlerie et le chariot.

    Évidemment j'aurais pu acheter une carte JeffTron ou ASCU et fin de la question... Mais bon… autant le fabriquer moi même, je me coucherai moins con^^.

    Du coup, j'ai cherché sur internet un montage Arduino Semi avec l'utilisation du Cut Off pour un cycle complet.
    (J'ai vu beaucoup de montage basé sur des Timer mais perso je trouve ça un peu hasardeux)

    Le site qui se rapprochait le plus de ma recherche et le plus complet était airsofttech.dk, d'ailleurs je dis un gros bravo au créateur du tuto j'ai appris pas mal de choses ^^.
    En particulier sur cette page: http://airsofttech.dk/Guides.cshtml?Page=B...fet_Improvement

    Ça ne correspondait pas exactement à se que je recherchais, mais en bidouillant le code j'ai converti le sélecteur de tir en CutOff, après j'y connais pas grand chose en programmation j'ai bricolé le code avec se qui trainait sur internet.



    // AirsoftTech.dk

    //////// WIRE PIN AN COMPONENT LAYOUT /////////
    int MOSFET_PIN = 5;         // The Digital pin that attaches to the MOSFET gate, to turn it on and off.
    int TRIGGER_PIN = A0;       // The analog pin that attaches to the trigger pin
    int SWITCH_PIN = 4;         // The Digital pin that attaches to the SWITCH, to switch between Full auto and burst mode.

    float R1 = 100; // 100Kohm  // The Voltage devider resistor R1
    float R2 = 10;  // 100Kohm // The Voltage devider resistor R2

    //////// CONFIG VALUES /////////
    int Max_ON_Time = 200;      // The time in MS for a full burst cycle...

    //////// INTERNAL VALUES /////////
    int TrigerStatus = LOW;     // The state of the trigger LOW => Not pressed, HIGH => Pressed
    int TriggerReadValue = 0;   // The value read from the analog trigger pin. => 0-1024
    int CurrentSleepTime = 0;   // The ammount of time the mosfet has been on.

    // The setup routine runs once when you press reset.
    void setup() {
     // Initialize the digital pin as an output.
     pinMode(13, OUTPUT);              // LED pin
     pinMode(MOSFET_PIN, OUTPUT);      // Set the Mosfet pin as an output so that we can send power to the mosfet.
     pinMode(SWITCH_PIN, INPUT);     // The pin with the full auto switch is a digital read switch
     digitalWrite(MOSFET_PIN, LOW);    // Make sure we start with power OFF!
     digitalWrite(13, LOW);    // Make sure we start with power OFF!
    }

    // The loop routine runs over and over again forever.
    void loop() {
     ReadTrigger();                                   // Update the trigger state
     if (TrigerStatus == HIGH)                        // If the trigger is pushed.
     {
       SetMosfet(HIGH);                               // First turn the Mosfet On
       while (TrigerStatus == HIGH)
       {
         int isBurstMode = digitalRead(SWITCH_PIN);
         if (isBurstMode == HIGH)                       // If the switch has power on it it's in burst mode.
         {
           SetMosfet(HIGH);                            // If a full cycle has gone, turn the Monfet On.
           delay(20);                                    // Sleep for 20 milisecond
           SetMosfet(LOW);                            // If a full cycle has gone, turn the Monfet Off.
           delay(1);                                    // Sleep for one milisecond
         }
         ReadTrigger();                               // Update the trigger status (We stay in the loop untill the trigger is released)
       }
       SetMosfet(LOW);                                // Make sure the Mosfet is off when the trigger is released
       CurrentSleepTime = 0;                          // Reset time counter when the trigger is released.
     }
    }

    // This function updates the trigger status when it's called.
    void ReadTrigger()
    {
     int TriggerReadValue = analogRead(TRIGGER_PIN);

     TrigerStatus = LOW;
     if (TriggerReadValue > 20) {
       TrigerStatus = HIGH;
     }
    }

    // This function set the Mosfet state
    void SetMosfet(int val)
    {
     digitalWrite(13, val);            // turn the LED on / off to indicate what the mosfet should be dooing
     digitalWrite(MOSFET_PIN, val);    // turn the Monfet on / off
    }



    Ça marche nickel pendant 10minutes et après plus rien.
    Alors j'ai rechargé le programme dans le Arduino parse que je voyais pas quoi faire d'autre et là c'est reparti pour 10minutes puis plus rien.
    Ça sentais un peu le chaud, alors je vérifie les tentions et là je me rends compte que le +5v de Arduino me sortait du 8v-9v.
    Du coup je me demandais, si je pouvais pas alimenté mon nouveau Arduino avec un petit Powerbank se qui m'évitera les pique de tension et augmentera légèrement l'autonomie de ma batterie principal.

    À la base j'utilisais ce schéma:



    Et je voudrais le modifier comme ça:



    (j'ai laissé le pont diviseur de tension par méconnaissance)


    J'ai mis une masse commune entre le powerbank et la batterie Life 9,9v en passant par le Gnd de l'arduino , mais je suis pas sur de moi j'y connais pas grand chose en électronique et j'aimerais pas que ça me pète à la gueule ^^.

    Si vous avez un avis ça m'intéresse, merci d'avance ;)

    • Partager sur Facebook
    • Partager sur Twitter
      22 mars 2019 à 15:05:09

      yes alors tu peux (a mon avis coupler le on/off et la détente, de même le pont diviseur de tension n'est plus utile je pense pour le reste ça semble correcte.

      PS avec ce système tu peux même faire des trucs a déclenchement automatiques :).

      • Partager sur Facebook
      • Partager sur Twitter

      la connaissance est une chose qui ne nous appauvrit pas quand on la partage.

      Mon GitHub

        23 mars 2019 à 1:42:04

        Es tu sûr de n'avoir pas inversé R1 et R2, sur le 1er schéma parce qu'avec une batterie à 14V le pont diviseur mettrait 12,7V sur A0 au lieu de 1,27V si elles étaient dans l'autre sens (R1 = 100KOhms et R2 = 10KOhms comme ce qui est indiqué dans le code). Ca pourrait expliquer les 8V sur le 5V.

        De plus, rien n'indique qu'il y ait une diode de roue libre en parallèle avec le moteur, elle n'est pas nécessaire avec un interrupteur, mais avec le mosfet, il y a un risque de le griller et d'endommager ensuite l'arduino.

        • Partager sur Facebook
        • Partager sur Twitter
          23 mars 2019 à 20:39:49

          Salut, Merci Ox et Merci Alex ;)

          J'ai remplacé le pont diviseur par une seul résidence 10k, j'ai maté aussi les résistances de mon ancien montage, effectivement j'ai complétement déconné^^ sur le montage et le schéma^^ bien vue ;)

          Pour la diode j'ai vu ça aussi sur le schéma de Lorrio

          (D'ailleurs merci à Lorrio aussi ;) )

          J'ai pas mis de diode, car si j'ai bien compris le principe du mosfet active breaking c'est qu'il inverse le courant à la fin du signal pour stopper le moteur.

          (Je croise quand même les doigts pour pas que ça grille^^, mais j'ai pas vu de diode sur les autres mosfet AB d'airsoft)

          Du coup j'ai fais ça :

          Encore merci, j'essaie ça demain!

          Ps^^ je rajouterai le mode auto ;)

          -
          Edité par TonyMx 23 mars 2019 à 20:52:48

          • Partager sur Facebook
          • Partager sur Twitter
            23 mars 2019 à 23:09:31

            Je suis dégoûté je viens de voir ça :

            Il faut vraiment que je rajoute un BS170?

            (Pour ceux qui se pose la question Oui je passe mes samedi soir à reluquer des schémas électronique! Et j'adore ça!... Non je déconne Aidée moi!...HeLP mE!!!)

            -
            Edité par TonyMx 23 mars 2019 à 23:11:34

            • Partager sur Facebook
            • Partager sur Twitter
              24 mars 2019 à 16:18:00

              Tu n'as pas forcément besoin d'un mosfet, mais au moins d'un transistor NPN, l'IRF4905 a une tension Vgs(th) maxi de -2V pour être totalement ouvert/inactif (le -4V c'est dans la tension à laquelle on est sûr qu'il commence à se fermer et le -10V celle à laquelle il est garanti d'être en saturation), donc avec une batterie de 9,9V et en connectant directement une broche de l'arduino à la grille, tu ne peux pas aller à plus de -4.9V (Vgs  = -9.9V + 5V), ce qui fait que le MOSFET P sera en permanence conduction, ce qui réduit le courant disponible pour le moteur et l'autonomie de la batterie.

              Mais de toutes façons, il n'y a pas grand intérêt à mettre un MOSFET P pour "inverser le courant" à la place d'une diode de roue libre. Le courant ne s'inverse pas, c'est la tension qui est écrêtée autour de 0V, mais dans le pire des cas, le MOSFET P va juste ramener la tension du moteur à Imoteurmax * Rds(on) = 20A * 0.02Ω = 400mV dans le pire des cas, or une diode Schottky fait également entre 450 et 600mV.

              De plus, avec ou sans transistor intermédiaire, si les 2 MOSFETs N et P sont contrôlés par la même broche, pendant la transition d'un état à l'autre, dans les 2 sens, ils risquent de conduire en même temps (un MOSFET mets plus de temps à s'ouvrir qu'à se fermer), ce qui peut mettre en léger court-circuit la batterie à chaque transition. Si tu contrôlais le MOSFET P par une autre broche de l'arduino, la diode intrinsèque du MOSFET P (celle qui fait partie de la représentation du MOSFET dans le dernier schéma) protégerait le MOSFET N le temps qu'ils soit complètement ouvert.

              • Partager sur Facebook
              • Partager sur Twitter
                26 mars 2019 à 11:58:52

                Tu n'as pas besoin d'un transistor intermédiaire avec un IRL, L=logic level, donc il peut être contrôlé en 5V (et dans la fiche technique, quand la référence ne commençait pas par IRL, il faut vérifier que Rds(on) est spécifié pour Vgs = 4.5V ou moins). Surtout que ton transistor est un PNP et pas un NPN, et que tu devrais avoir une tension VBE > -0.6 pour l'ouvrir, donc sortir une tension sur la broche D5 de plus de 9.3V, puisque E est connecté au rail 9.9V.

                Quand tu les utilises en tant qu’interrupteurs commandés, l'émetteur du NPN / la source du MOSFET N sont généralement connectés à la masse et inversement l'émetteur du PNP / la source du MOSFET P sont connectés à une tension positive. La résistance sur la grille du mosfet N doit être en pull-down (connectée entre la masse et la grille), si tu veux que le mosfet soit inactif tant que le microcontrôleur n'a pas démarré.

                Pour les fiches techniques, les premiers liens de google pour "how to read mosfet datasheet" ou "comment lire fiche technique mosfet" semblent plutôt pertinents avec le bon niveau de détails (je ne sais pas si c'est le cas pour tous les types de composants).

                • Partager sur Facebook
                • Partager sur Twitter
                  26 mars 2019 à 16:35:47

                  (Désolé pour le désordre, le forum a supprimé messages en me parlant de Spam.)

                  Devant tant de savoir et de mots savants, je m'incline^^.

                  (D'ailleurs il n'y a pas un site sur les caractéristiques des composants électroniques simplement expliqué? J'ai regardé la fiche technique du IRF4905, j'ai cru comprendre 2-3 truc, mais c'est clairement pas a la portée du commun des mortels^^)

                  C'est marrant, je me demandais pourquoi le montage d'airsoftech avait pas intégré le mosfet AB, maintenant je le sais^^ merci ;)

                  Du coup j'ai recyclé l'irl1404 avec un pnp, plus la diode de Schottky. 

                  Nouvelle réponse du 26mars

                  J'avoue qu'hier, j'ai un peu paniqué ^^.

                  J'avais vu aussi cette histoire IRL IRF sur Google, mais en comparant les fiches techniques de l'irl1404 et de l'irfb4110, je me suis rendu compte que le Vgs, ainsi que le Vgs (th) était assez proche, du coup j'ai cherché la mention low-level ou logic level (qui était bien visible sur les autres fiches techniques d'Irl), j'ai rien trouvé se qui m'a mis un sacré doute toute la journée^^ (je viens juste de me rendre compte qu'elle était tout en bas caché sous un diagramme^^).

                  Je connaissais pas cette histoire de Rds(on), je comprends mieux.

                  En tout cas je te tire mon chapeau! ;) Je sais pas se que tu fais dans la vie, mais tu fais preuve d'une remarquable pédagogie dans tes explications, Bravo!

                  Bon par contre concernant le montage du pnp, je préférerais qu'on oublie^^, j'ai un peu honte^^, en pleine panique j'ai pris le premier schéma qui passait par là^^ et c'est un peu comme les boîtes de nuit tu reviens pas forcément avec Angelina Jolie^^.

                  (Pas mal le site sur les mosfet ;) ).

                  Du coup retour au schéma de dimanche^^:

                  • Partager sur Facebook
                  • Partager sur Twitter
                    30 mars 2019 à 12:23:25

                    J'ai testé avec une 1n5819 (1A) récupéré sur un chargeur d'aspirateur et ça fonctionne du feu de Dieu!!!

                    Encore merci Alexisdm et merci aussi à Openclassrooms, je suis venu voir des PRO et j'ai pas été déçu ;) A+

                    • Partager sur Facebook
                    • Partager sur Twitter
                      23 août 2019 à 10:01:15

                      Bonjour

                       moi aussi joueur d'airsoft et ayant la même idée.......

                       Chimiste à la base, je commence à être pas mauvais coté programmation ( Pacsal Basic Arduino...), par contre coté Electronique.....

                       Je voudrais essayer le montage par contre j'ai du mal à comprendre le fonctionnement de la diode de SCHOTTKY ? Et du coup quel modèle choisir il en existe de plusieurs ampairages ( 1n5819 (1A) ( ci dessus) , 1N 5822 (3A),....)

                      Sachant que dans mes 1ers essai j'ai commencé à faire "fumer" un IRF520 ( ce que j'avais sous la main) , du coup je suis sur le point de commander comme sur le schema un IRL 1404....


                      Merci de votre aide


                      • Partager sur Facebook
                      • Partager sur Twitter
                        23 août 2019 à 14:31:27

                        SophieRequiem a écrit:

                        Je voudrais essayer le montage par contre j'ai du mal à comprendre le fonctionnement de la diode de SCHOTTKY ? Et du coup quel modèle choisir il en existe de plusieurs ampairages ( 1n5819 (1A) ( ci dessus) , 1N 5822 (3A),....)

                        C'est une diode de roue libre, qui sert à protéger le transistor: après l'ouverture du transistor, la bobine s'oppose à la variation du courant qui la traverse en générant une tension inverse à ses bornes qui peut atteindre plusieurs fois la tension d'alimentation initiale et sans la diode cette tension se retrouve aux bornes du transistor, avec la diode, la tension aux bornes du moteur va être limitée à la tension de la diode et le courant de la bobine va continuer de circuler jusqu'à disparaître par effet résistif et par les frottements du moteur.

                        Les chiffres à regarder dans la datasheet de la diode sont "Repetitive peak reverse voltage" pour la tension et "Surge non repetitive forward current" pour le courant. Ce qui semble être de l'ordre de 15V 40A pour les moteurs d'airsoft d'après les chiffres indiqués sur les forums, les 1N582x supportent un pic de courant de 80A, alors que les 1N581x ne montent qu'à 25A, donc il vaut mieux prendre une 1N5822.

                        • Partager sur Facebook
                        • Partager sur Twitter
                          23 août 2019 à 16:30:15

                          Super, plus qu'à faire....

                          Merci

                          • Partager sur Facebook
                          • Partager sur Twitter
                            28 août 2019 à 14:28:14

                            Bonjour

                              j'ai reçu quelques pièces et du coup j'ai commencé le montage.

                              Quelques problèmes de format de connectique que je gérerais plus tard, c'est du détail.

                             Du coup j'aurais 2-3 questions, encore une fois je n'y connais rien en Electronique et mes questions sont surement naïves :

                                - Coté sécurité sur ce montage, il y à un truc qui me choque, j'ai tendance à penser que dans un circuit on fait passer l'ensemble du courant que quand on en a besoin et que du coup on cherche à couper au plus prés du pole (+). Hors sur ce montage on laisse le courant sur tout le circuit et on neutralise le retour à la batterie.         Logique ?       N'y a t'il pas un risque si une masse venait à arriver ?

                                - Sur ce genre de montage, est ce que le transistor risque de monter à de fortes températures ? Est il nécessaire de mettre comme sur certains appareils un petit radiateur ? Si oui auriez vous une référence ?

                                - Enfin auriez vous un conseil pour faire le montage propre sur une plaque pas Electronique genre breadboard blanche arduino mais ou je puisse souder les composants)  qui me permettrait de faire quelque chose de propre, parce que là mon 1er proto....on dirait un épouvantail de composants électroniques qui vient de passer sous un cyclone et j'ai pas très envie de balancer 40A la dedans !!!!!

                            Merci Sam

                            • Partager sur Facebook
                            • Partager sur Twitter
                              2 septembre 2019 à 15:54:42

                              Bonjour,

                              - Le MOSFET joue le rôle d'interrupteur et la résistance de pull-down entre la grille et la source qui est aussi la masse l'empêche de se fermer tant que le microcontrôleur ou la gâchette n'est pas pressée. Qu'on interrompe le pôle négatif ou positif n'a pas d'importance (à part que pour un MOSFET à canal N, c'est plus simple qu'il soit au niveau de la masse), tout ce qui compte c'est que le circuit soit interrompu.

                              Il y a des cas où l'ordre d'établissement et/ou d'interruption des contacts a une importance (bâtiment, véhicule, USB, Sata), mais là ce n'est pas le cas.

                              - Sans connaître le temps moyen de fonctionnement du moteur et le courant moyen, c'est difficile à dire. Les 40A représentent juste un pic de courant à chaque démarrage du moteur, puisque celui-ci ne démarre pas à vide. Tu peux peut-être estimer le courant moyen maximum avec une grosse marge en utilisant la section des fils d'origine utilisés dans ton airsoft, une recherche rapide indique qu'ils sont en AWG 16 ou 18, et d'après ce tableau, ça représente un courant moyen maxi de 3.7A, ce qui fait une dissipation, uniquement pour la conduction, de P = Rds(on) * I² = 0.0059 * 3.7² = 80mW.

                              Les boîtiers TO-220 comme l'IRL1404 peuvent dissiper un peu moins de 1W sans radiateur, mais j'imagine qu'il sera enfermé dans un boîtier hermétique, donc ça peut éventuellement aider d'avoir un petit radiateur pour ralentir un peu l'échauffement. Les montages commerciaux ne semblent pas utiliser de radiateur, mais le PCB lui-même peut servir de radiateur.

                              - Vu le faible nombre de composants, ce serait plus compliqué de le faire en utilisant une platine d'essai à souder à trous ou à bandes et ça n'apporterait pas grand chose au niveau de l'isolation, et il faudrait renforcer les pistes pour qu'elles supportent le courant (seulement les 3.7A, ça ne sert à rien de prévoir 40A). Il y a pleins de tutos sur youtube pour faire de jolis montages sans PCB, avec de la gaine thermorétractable pour isoler le tout, par exemple: https://www.youtube.com/watch?v=owWjpQ6Klik

                              • Partager sur Facebook
                              • Partager sur Twitter
                                5 septembre 2019 à 14:09:36

                                Bonjour

                                  bon j'ai eu du mal avec les soudures ( quand on n'est pas doué...).

                                 Du coup je suis super content : ça marche ! Merci beaucoup pour votre aide

                                J'aurais juste 1 petite question supplémentaire : serait il possible de rajouter sur ce circuit un fusible Electronique ? Si oui une idée d'une référence ?

                                Encore Merci pour tous les supers conseils.

                                • Partager sur Facebook
                                • Partager sur Twitter
                                  11 septembre 2019 à 12:36:05

                                  Sam-R a écrit:

                                  J'aurais juste 1 petite question supplémentaire : serait il possible de rajouter sur ce circuit un fusible Electronique ? Si oui une idée d'une référence ?

                                  Je ne suis pas sûr que tu puisses trouver une référence pour un fusible en un seul composant, les fusibles PPTC réarmables, par exemple, dépendent de beaucoup trop de paramètres pour être utiles pour cette application (le temps de déclenchement dépend de la température environnante et de la différence entre courant qui les traverse par rapport à leur courant de maintien. Le temps de refroidissement donc de réinitialisation ne semble pas souvent spécifié).

                                  Peut-être que tu peux ajouter un circuit de limitation de courant ajustable (voir exemples sur sonelec), ou un convertisseur DC-DC boost ou buck avec limiteur de courant, en amont du mosfet, ou encore un contrôleur de moteur avec limitation de courant (exemples chez pololu juste parce qu'ils ont des jolis tableaux avec tous les paramètres).

                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    24 septembre 2019 à 15:59:25

                                    Bonjour

                                     Bon du coup j'ai opté pour ne pas mettre de fusible Electronique, et j'ai laissé le fusible moteur initial d'origine ( toutes les répliques n'en sont pas équipés.

                                     Mes 1er essai avec la batterie en partie déchargé sont concluants : entre la gestion de mon arduino et le mosfet tout fonctionne.

                                    Par contre petit problème, depuis que j'ai rechargé la batterie, le fusible part en vrille de manière systématique, alors qu'il ne le faisait pas avant....

                                    Du ocup je suis partagé entre :

                                      - abandonner vu le risque qu'il peut y avoir avec la stabilité des batteries LIPO

                                    ou

                                    - essaye de rajouter une diode 1N 5822, sur le circuit d'arrivée du pole + de manière à ce que le courant, ne revienne pas vers la batterie mais reste "bloqué et disparraissent dans le frein moteur" 

                                    Votre avis ?


                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      25 septembre 2019 à 15:29:43

                                      Sam-R a écrit:

                                      Par contre petit problème, depuis que j'ai rechargé la batterie, le fusible part en vrille de manière systématique, alors qu'il ne le faisait pas avant....

                                      C'est un fusible thermique ?

                                      Normalement le circuit sert uniquement à éviter les arcs électriques au niveau de la gâchette. Le courant dans le moteur reste quasiment le même (légèrement plus faible à cause du mosfet). Il ne devrait pas avoir d'effet sur le fonctionnement du moteur, à part peut-être le temps qu'il met pour s'arrêter. Mais l'énergie de freinage est dissipée en partie dans la diode de roue libre déjà présente. 

                                      - essayer de rajouter une diode 1N 5822, sur le circuit d'arrivée du pole + de manière à ce que le courant, ne revienne pas vers la batterie mais reste "bloqué et disparaissent dans le frein moteur" 

                                      Quand le mosfet est ouvert/inactif, le moteur est uniquement en circuit avec la diode. Il faudrait que le moteur et la batterie soient dans une même boucle, et n'aient pas juste un seul contact avec un de ses pôles, pour que le courant repasse à travers celle-ci.

                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        25 septembre 2019 à 15:59:42

                                        Par contre petit problème, depuis que j'ai rechargé la batterie, le fusible part en vrille de manière systématique, alors qu'il ne le faisait pas avant....

                                        C'est un fusible thermique ?

                                                => C'est un fusible en verre  d'origne : F20AL250V

                                        - essayer de rajouter une diode 1N 5822, sur le circuit d'arrivée du pole + de manière à ce que le courant, ne revienne pas vers la batterie mais reste "bloqué et disparaissent dans le frein moteur" 

                                        Quand le mosfet est ouvert/inactif, le moteur est uniquement en circuit avec la diode. Il faudrait que le moteur et la batterie soient dans une même boucle, et n'aient pas juste un seul contact avec un de ses pôles, pour que le courant repasse à travers celle-ci.

                                            => :(  

                                          Pas tout à fait vu le manque de place... je suis obligé de prendre la même batterie pour la carte électronique du mosfet....

                                         Du coup en même temps que je réponds, je comprends que le retour du moteur revient dans la batterie, et le Ground potentiellement par la carte Arduino pour rejoindre le ( - ) de l'alim....

                                         Le problème c'est que :

                                         1) j ai besoin d'une source d alim pour l'arduino et je n'ai pas de place....

                                         2) je suis obligé de connecter l arduino à la batterie pour 

                                                             a) Surveiller l évolution de la puissance de la batterie, pour tout arrêter si trop faible.

                                                             b) analyser la consommation de la batterie en instantané lors du cycle pour définir la fin de cycle du moteur.

                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                          25 septembre 2019 à 17:26:40

                                          Sam-R a écrit:

                                          Pas tout à fait vu le manque de place... je suis obligé de prendre la même batterie pour la carte électronique du mosfet....

                                          Ca ne change rien, en temps normal, il n'y a pas de courant qui circule entre la grille du mosfet et la source ou le drain, donc tu peux considérer que le circuit de commande est séparé du circuit du moteur (seulement si le mosfet n'est pas grillé d'une certaine façon qui ferait que la grille et la source ou le drain soient en court-circuit).

                                          La mesure du courant et de la tension de la batterie ne changent pas non plus cette séparation (sauf si tu as mis les points de mesure directement aux bornes du moteur, ce qui n'aurait pas beaucoup de sens).

                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                            25 septembre 2019 à 17:40:11

                                            Je crois surtout que j'atteins mes limites d'un domaine que je maîtrise mal...Et du coup des choses évidentes m'échappent au moment ou je les fait.

                                            Je fais un schéma de ce que j'ai fais ce sera + simple.

                                            Du coup le courant repasse par mon système de pont de diode et je crame le point faible : le fusible ?

                                            Merci pour l'aide !

                                            -
                                            Edité par Sam-R 26 septembre 2019 à 8:38:30

                                            • Partager sur Facebook
                                            • Partager sur Twitter
                                              26 septembre 2019 à 12:56:12

                                              D'après ton "schéma", tu as ça (fait sur easyeda.com):

                                              Le pont diviseur (pas de diode), semble connecté directement à la batterie sans passer par le fusible. Il ne devrait pas l'être puisque l'arduino est connecté derrière le fusible et donc si le fusible grille l'arduino ne sera plus alimenté, mais le pont diviseur le sera toujours. A cet emplacement, il n'affecte pas le fusible, et pour R1+R2 au dessus de quelques kΩ, le courant consommé, de quelques milliampères, est négligeable par rapport aux 20 A du fusible même si le pont était placé après celui-ci. De même, la consommation de l'arduino (~45mA) ne devrait pas non plus avoir trop d'impact sur le fusible. Tout ça, tant qu'il n'y a pas de court-circuit entre les composants et un élément métallique du boîtier. 

                                              Et comme je l'ai écrit, quand le mosfet est ouvert, le lien, marqué B sur le schéma ne laisse plus passer de courant, et comme il n'y a plus de boucle avec la batterie, le courant n'y retourne pas par le lien marqué A. Une diode sur le lien A n'est pas nécessaire et réduirait inutilement la tension d'alimentation du moteur (en plus de chauffer).

                                              • Partager sur Facebook
                                              • Partager sur Twitter
                                                26 septembre 2019 à 14:25:19

                                                Suite à ton retour, j ai revérifier mon montage par rapport au schéma :

                                                 1) -> en effet le fusible est entre R1 et la batterie et non pas après comme  sur le dessin que je t'avais envoyé.

                                                2) -> Ma soudure sur les cosses de la prise du moteur  (mal faite oh my good mes soudures...) et la protection  que j avais faite a bougé sur la base

                                                Du coup elle a du chauffer à un moment et un filament s est formé entre le + et le -  .....heureusement qu il y avait le fusible!

                                                Donc je suppose  que le filament ne formait pas de contact au début de mes essais et cela marchait bien, le filament crée maintenant un court circuit :  quand le mosfet ferme le circuit sur l'ordre de l'arduino, le moteur se déclenche et comme la mesure de l'arduino sur l'effort du moteur (proportionnelle à la consommation instantané de la batterie) est faussé , mon circuit reste fermé et le fusible claque.

                                                Suis je dans le vrai ?

                                                Il faut que le refasse plus propre et que je réessaye...

                                                Je te tiens au courant....

                                                • Partager sur Facebook
                                                • Partager sur Twitter
                                                  2 octobre 2019 à 15:40:08

                                                  Sam-R a écrit:

                                                  Suis je dans le vrai ?

                                                  Sans voir où se trouve le court-circuit, c'est difficile à dire.

                                                  Par contre, ton circuit n'a rien pour mesurer le courant / la consommation instantanée du moteur, pour ça tu devrais avoir une résistance de faible valeur ou un shunt en série avec le moteur aux bornes de laquelle tu mesures la tension qui sera proportionnelle au courant ( U = R*I ) et par exemple si tu veux mesurer jusqu'à 5A et limiter la chute de tension dans la résistance à 100mV, tu dois mettre une résistance de moins de 20mΩ et de plus de 0.5W, ensuite il faut amplifier la tension entre 0 et 5V pour une entrée analogique de l'arduino avec une puce dédiée (ex: INA219) ou un ampli op (mais il faut qu'il soit rail-to-rail et à alimentation simple).

                                                  Mais à force d'ajouter des fonctions, ça devient plus avantageux de partir d'un pont en H à base de Mosfet quitte à n'utiliser qu'une partie de ce que celui-ci peut offrir. Par exemple un module VNH2SP30, peut fournir 30A en pointe, il y a des protections contre les surintensités lors du freinage, contre la surchauffe (je ne sais pas si ce ne serait pas ce qu'ils appellent un fusible électronique sur les modules d'airsoft) et une sortie analogique avec une tension proportionnelle au courant. Il y a aussi un régulateur et une sortie 5V que tu peux utiliser pour alimenter l'arduino.

                                                  • Partager sur Facebook
                                                  • Partager sur Twitter
                                                    8 octobre 2019 à 19:19:30

                                                    Bonjour

                                                     du coup je bricolais et j'ai changé beaucoup de choses...., et j'ai pas fait attention si tu m'avais répondu.

                                                    1) mon court circuit qui me grillait le fusible à tous les coups => j'ai refait les soudures et repris l'isolation complète ce coup ci avec de la gaine thermo et rebelote le fusible HS à tous les coups. Après démontage, une vis dans le système pneumatique s'est dévissé au fur et à mesure du temps, et du coup cela bloquait le fonctionnement du moteur d'ou le fusible.

                                                     2) C/ la mesure, je la fait au borne de la batterie, avec un pont de diode pour baisser à environ 3.3v max en fonction du type de lipo, et j'obtiens de très bon résultat, cela me permet en même temps de checker l'évolution de la valeur de la  batterie pour ne pas qu'elle passe un seuil critique.

                                                      Du coup ça fonctionne mais mon principe de contrôler la conso instantané de la batterie me posait 2 problèmes :

                                                       - je trouvais que l’arrêt n'était pas parfait : le cycle se fait très bien mais l’arrêt n'est pas franc et à tous les coups un nouveau cycle s'engage et du coup peut poser souci sur un appel d'air lors du retrait de la partie pneumatique qui pousse l'air, et du coup perturbe les performances.

                                                       - et cela posait des soucis : changement de batterie ou de moteur, les valeurs seuils devaient être redéfinis à chaque fois, plutôt que de réfléchir à un algorithme, j'ai en 1er lieu essayé en fixant un temps spécifique mais pareil qui varie en fonction du matériel et de la batterie ( exemple lipo 7.4V = 83ms, lipo 11.1 = 62ms) .

                                                        - j'ai essayé d'optimiser la vitesse de l'arduino au niveau code en attaquant directement la puce, mais pas mieux.

                                                       - du coup j'ai intégré un capteur optique qui détecte la fin de cycle, j' y gagne en régularité mais j'ai toujours le début de démarrage d'un nouveau cycle avec appel d'air.

                                                     Du coup ne voyant pas de solutions je m’interrogeais sur les fait de remettre en lieu et place ou en complément un 2eme transistor inversé, mais tu parlais de court circuit.

                                                      Donc j'étais sur le point de te donner des nouvelles et je vois ton message qu parle des pont en H, j'avais lu ce que c'était mais je me disais que cela risquait d’être compliqué, mais à la lecture de ton message cela serait peut être au contraire plus simple et plus efficace.

                                                    Je regarde cela tout de suite.....par contre 30 A ?

                                                    J'ai jeté un coup d'oeil, après mon problème reste toujours la place....Mais du coup j'ai un peu de mal à comprendre un truc sur la théorie du pont en H :

                                                    Quelle est la différence entre le frein électromagnétique et la diode de roue libre ? Je comprends que la moteur va continuer à tourner en roue libre jusqu'à épuisement du courant induit, mais je ne vois pas comment il peut y avoir une différence avec le frein électromagnétique sur le schéma de fonctionnement....

                                                    -
                                                    Edité par Sam-R 9 octobre 2019 à 12:20:11

                                                    • Partager sur Facebook
                                                    • Partager sur Twitter
                                                      11 octobre 2019 à 17:36:05

                                                      Sam-R a écrit:

                                                      Je regarde cela tout de suite.....par contre 30 A ?

                                                      Tu peux utiliser la sortie CurrentSense de la puce pour limiter le courant à une valeur plus faible, soit programmatiquement dans le code de l'arduino, soit électroniquement avec un comparateur et un potentiomètre en connectant la sortie du comparateur sur l'entrée EnA.

                                                      Le plus important est que ce module est capable de supporter jusqu'à 16V, ce qui laisse de la marge par rapport aux 11.1 ou 14.8V d'alimentation, la plupart des autres modules facilement trouvables avec d'autres puces mais toujours à mosfets sont limités à 10-12V ou 2-3A.

                                                      Quelle est la différence entre le frein électromagnétique et la diode de roue libre ? Je comprends que la moteur va continuer à tourner en roue libre jusqu'à épuisement du courant induit, mais je ne vois pas comment il peut y avoir une différence avec le frein électromagnétique sur le schéma de fonctionnement....

                                                      La diode ne fait qu'écrêter la tension à 0.6V, le courant n'est pas limité, il diminue par dissipation thermique dans la diode et la résistance des fils du moteur. Quand la tension aux bornes du moteur passe en dessous du seuil de la diode, la diode ne fait plus rien, le moteur est littéralement en roue libre, alors qu'avec le frein, les mosfets fermés se comportent comme de faibles résistances et donc court-circuitent le moteur et s'opposent à sa rotation jusqu'à ce qu'il s'arrête et l'empêchent éventuellement de repartir dans l'autre sens.

                                                      Avec le pont en H, tu peux aussi essayer d'envoyer une impulsion de courte durée dans le sens contraire, avant d'arrêter le moteur, dans ce cas, le courant est renvoyé dans la batterie tant que l'impulsion n'est pas assez longue pour inverser le courant ou la rotation.

                                                      Mais il faut tester pour vérifier s'il y a vraiment une différence entre ces 3 méthodes.

                                                      • Partager sur Facebook
                                                      • Partager sur Twitter

                                                      Airsoft semi commandé par Arduino.

                                                      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                                      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                                      • Editeur
                                                      • Markdown