Partage
  • Partager sur Facebook
  • Partager sur Twitter

Arduino - Gestion de moteurs

Sujet résolu
    4 novembre 2012 à 12:34:13

    Salut à tous,

    il y a un petit moment, j'ai acheté un châssis qui possède deux moteurs. J'aimerai à présent m'en servir. Cependant, j'ai lu qu'il fallait utiliser des transistors. (Il y a aussi des histoires avec des ponts en H de 4 transistors pour gérer la marche avant et arrière de chaque moteur).
    Cependant, je ne possède pas de transistor.
    Mais avant d'en commander si il en faut, j'aimerai avoir quelques informations supplémentaires :
    -A quoi sert un transistor exactement? (Ce que j'ai pu lire sur wikipédia et ailleurs m'ont un peu effrayé :lol: )
    -Peut-on se servir d'un moteur avec l'arduino sans transistor et sans risque?
    -J'ai vu qu'il existait un shield moteur, as-t-il la même utilité que les transistors?

    Merci de votre aide toujours merveilleuse, ShiiFu.
    • Partager sur Facebook
    • Partager sur Twitter
      4 novembre 2012 à 17:29:30

      Bonjour,

      • Le transistor, pour faire simple, un est interrupteur commandé par l'electricité :

        Image utilisateur
        Image utilisateur

        Sinon regarde cet partie sur le tuto sur Arduino.
      • Il ne vaut mieux pas utiliser des moteurs directements sur l'Arduino, préférer le pont H.
      • Je crois que les motors shields sont des ponts H mais en shield pour l'Arduino.


      Bonne soirée

      Toufik37
      • Partager sur Facebook
      • Partager sur Twitter
        5 novembre 2012 à 11:04:03

        Tout d'abord, merci pour ta lumière qui m'a beaucoup servi Toufik37.

        Après presque une heure de recherche sur les transistors, j'ai lu que l'ampérage de sortie nous était égal.
        Comme mes moteur CC tourne avec 3V, je suis partie à la recherche d'un transistor avec une commande de 3,3V ou de 5V pour allez avec l'arduino. Cependant, tous les transistors sont plutôt fait pour fonctionner à l'inverse (tension d'entré plus faible que la tension de sorti). Du coup, je ne sais pas ou donner de la tête. Ai-je vraiment besoin d'un transistor pour me servir de deux moteurs CC 3V avec l'arduino?

        EDIT : est-ce qu'un relais peut faire l'affaire?
        • Partager sur Facebook
        • Partager sur Twitter
          5 novembre 2012 à 11:42:21

          Avant toute chose, oui tu as besoin de transistors.

          Des moteurs (même des petits), ça représente une puissance, tout plein de parasites, des retours de courant, autant de chose que ta carte seule n'appréciera pas.

          Ensuite, les transistors peuvent être déroutant parce qu'il peuvent servir à énormément de choses.

          Ici, tu veux t'en servir comme interrupteur commandé en tension (qui peut au passage permettre d'alimenter tes moteurs sous une autre tension que ta commande, mais même si tu est tout en 3V3, ça ne change rien).

          Après, si tu veux commander deux moteurs, je te conseil vivement de prendre un shield moteur, ce qui t'évitera pas mal de soucis de réalisation dont tu n'as pas forcément besoin.

          Ceci étant dis, je ne saurais que très fortement te conseiller de comprendre comment il marche avant de l'utiliser.
          Bon, dans ce cas, le schéma ne t'aidera pas trop, le fonctionnement étant assuré par un CI qui fait le boulot, mais en gros, ce CI est juste deux ponts en H (un pour chaque moteur).

          Donc commence à regarder comment marche un pont en H, comment ça peut te permettre de faire tourner un moteur plus ou moins vite et dans les deux sens.

          Si tu as d'autres questions, n'hésites pas :)
          • Partager sur Facebook
          • Partager sur Twitter
            5 novembre 2012 à 11:57:55

            Merci beaucoup pour ton aide.
            En recherchant le principe de fonctionnement d'un pont en H sur internet, je me suis demander si avec 8 transistor je pouvais faire 2 pont en H.
            • Partager sur Facebook
            • Partager sur Twitter
              5 novembre 2012 à 13:06:45

              oui, pour la puissance, mais il faut aussi penser à la partie commande du pont.
              • Partager sur Facebook
              • Partager sur Twitter
                5 novembre 2012 à 18:44:52

                Cela ne me prendra que deux sorties par pont en H sur l'arduino non?
                • Partager sur Facebook
                • Partager sur Twitter
                  5 novembre 2012 à 20:03:04

                  D'aprés l'exemple dans Fritzing, le pont H prend 3 sorties de l'Arduino.

                  https://dl.dropbox.com/u/70196565/Site [...] rol_schem.png
                  • Partager sur Facebook
                  • Partager sur Twitter
                    6 novembre 2012 à 0:53:47

                    Oui, mais deux suffisent, là ils ont cablé le pin enable.
                    • Partager sur Facebook
                    • Partager sur Twitter
                    64kB de mémoire, c'est tout ce dont j'ai besoin
                      6 novembre 2012 à 13:48:40

                      J'étais justement en train d'essayer faire un schéma sur fritzing. Comme c'est la première fois que je l'utilise, ce n'est pas forcement très propre. Mais si je ne me trompe pas, un pont en H pourrais ressembler à ceci : Image utilisateur
                      Ou est-ce que je me trompe quelque part?
                      • Partager sur Facebook
                      • Partager sur Twitter
                        6 novembre 2012 à 13:53:55

                        la déjà tel quel, sans essayer de comprendre, ton moteur est directement branché entre l'alim et la masse, donc ça ne doit pas être bon ;)

                        edit: ah non, même encore pire, tu va cramer ta carte la, la masse étant relié à l'alim directement :p

                        Pour faire simple, toutes les pattes des transistors qui sont branchées au moteur ne doivent l'être ni à l'alim ni à la masse.

                        Sinon, si je comprend bien, tu utilise deux PWM par moteur? ok ça a l'avantage de s'affranchir de de logique de commande, pour un début c'est bien, mais si tu veux commander deux moteurs, il te faut alors quatre PWM. Pas très rentable.
                        De plus, il va falloir faire TRES attention en programmant que tes deux PWM ne soient pas actives en même temps, sinon je ne donne pas cher de tes transistors (et en option de ton arduino :p)

                        Encore un soucis, quand on utilise des moteurs et des transistors, il faut doubler tous les transistors de diodes de roue libre, sinon encore une fois tes transistors vont pas faire long feu.
                        • Partager sur Facebook
                        • Partager sur Twitter
                          6 novembre 2012 à 14:11:59

                          Fie toi plutôt à ce schéma :
                          Image utilisateur

                          Il n'y a pas les diodes de roue libre que mentionne epso, mais, par construction, un MOSFET contient une diode, qui peut faire office de roue libre. Pour des petits moteurs, ça marche, pour des gros, une vraie diode Schottky est nécessaire. Mais de toutes façons, ce schéma n'est pas valable avec des moteurs plus gros. si tu utilises du 5V en logique (les entrées 1A et 1B), utilise du 5V en puissance (au lieu du 12V mentionné sur ce schéma). Et met plutôt 10k ou 100k pour R1 et R2.
                          • Partager sur Facebook
                          • Partager sur Twitter
                          64kB de mémoire, c'est tout ce dont j'ai besoin
                            6 novembre 2012 à 14:56:17

                            Ah oui j'ai oublié de précisé, je sais pas pourquoi j'avais en tête qu'il utilisait des NPN.
                            Autant pour moi :p
                            • Partager sur Facebook
                            • Partager sur Twitter
                              6 novembre 2012 à 14:59:29

                              Je ne sais pas ce qu'il utilise, vu son montage, je me suis dit que ça devait être des transistors commandés en tension, mais comme le montage est faux, ne pas limiter le courant dans les bases de bipolaires ne serait qu'une erreur de plus.
                              • Partager sur Facebook
                              • Partager sur Twitter
                              64kB de mémoire, c'est tout ce dont j'ai besoin
                                6 novembre 2012 à 21:41:51

                                Merci beaucoup pour votre aide. Je commence à y voir plus clair. :D
                                Je n'ai encore aucun transistor, j'attends justement de savoir lesquels utilisé avant de les acheter. Cependant, j'ai encore quelque question sur ce dernier schéma, ainsi que si les transistor en général :

                                Les entrées 1A et 1B correspondraient donc à mes pin 2 et 3 sur mon arduino. Le 12V serait remplacé par la puissance de l'alimentation qui est ajusté en fonction du moteur. J'aurait donc une alimentation propre à l'arduino de 9V, et une alimentation propre aux moteurs de 3V. Jusque là je ne me trompe pas?

                                Maintenant si je m'intéresse aux transistors en général, chaque patte a un nom, mais lesquels correspondent à quoi?
                                D'après le schéma si je comprend bien c'est ceci : Le Gate pour la commande, la source avec la masse ou le positif en fonction de son utilité, le drain serait lui la "sortie". Je ne me trompe pas?

                                Maintenant que je sais comment cela fonctionne, je peut me lancer à la recherche de mes transistor, si j'ai bien compris, il m'en faut 2 avec une source pour allez à la masse, et 2 pour allez sur le + de l'alimentation, et ceci pour chaque moteur. Ma seul contrainte et donc de trouver des transistor MOSFET avec un gate de 5V. Je ne me trompe pas non plus sur ce point? Cependant, c'est difficile d'en trouver en recherchant comme cela sur google :(
                                • Partager sur Facebook
                                • Partager sur Twitter
                                  7 novembre 2012 à 10:12:25

                                  Il manque un peu de "dead time" ton schéma Nathalya...

                                  On trouve des ponts en H tout faits pour pas cher (voir sur les sites de robotique)...
                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    7 novembre 2012 à 11:06:50

                                    Si il ne lui manquait que ça.... j'ai fait pas cher avec le moins de composants possible. Dans le cas général, il faut un un driver pour saturer et blocker les transistors rapidement, des dead time bien pensés, des diodes de roue libre, du découplage sur l'alim, ...

                                    A titre personnel, j'utilise aussi des ponts en H intégrés.
                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                    64kB de mémoire, c'est tout ce dont j'ai besoin
                                      7 novembre 2012 à 12:16:57

                                      En faite, l'idée de base était d'aller chercher les composants nécessaire chez le petit magasin d'électronique pas trop loin de chez moi pour éviter les frais de port. Le problème c'est que je ne sais pas si il a des pont en H déjà fait.
                                      Cela m'embête d'acheter sur internet des pont en H pour payer des frais de port pour ce seul objet.
                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        7 novembre 2012 à 21:47:06

                                        http://www.robotshop.com/eu/controleurs-moteur-pwm.html
                                        http://www.robotshop.com/eu/controleur [...] olu-2130.html

                                        > Cela m'embête d'acheter sur internet des pont en H pour payer des frais de port pour ce seul objet.

                                        Cela t'embêtera encore plus quand tes MOS vont exploser à cause d'une mise en oeuvre douteuse...
                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                          14 novembre 2012 à 19:27:23

                                          Merci à tous pour votre aide.
                                          Pour mon robot perso, j'achèterai ce qu'il me faut plus tard.
                                          Pour mon TPE, le prof a déjà acheter des shield du même genre.
                                          • Partager sur Facebook
                                          • Partager sur Twitter

                                          Arduino - Gestion de moteurs

                                          × 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