Répondre à la discussion
Affichage des résultats 1 à 15 sur 15

Impossible de faire fonctionner un pont en H à base de transistors

  1. #1
    dedenast

    Question Impossible de faire fonctionner un pont en H à base de transistors

    Bonjour,
    J'aimerais savoir si mon schéma et mon code vous paraissent sencés, car je n'arrive pas à trouver pourquoi mon pont en H ne fonctionne pas... Je joins le schéma en pièce jointe.

    Code:
    Q1-Q3-Q4-Q2     FX
      1  - 0 - 1 -  0      FWD
      0  - 1 - 0 -  1      REV
      0  - 0 - 1 -  1      BRK
    Quelques infos:
    Diodes 1n4001
    Transisors 8550-8050 pilotés par un Arduino (5V)
    VCC=5.9V (Moteurs de lecteur DVD)

    Code:
    const int M1_CTRL_Q1 =  3; //1
    const int M1_CTRL_Q2 =  5; //2
    const int M1_CTRL_Q3 =  6; //3
    const int M1_CTRL_Q4 =  9; //4
    const long MX_CTRL_DELAY = 1000; // Delai 1 sec.
    
    void setup() {
      /* Définit les sorties */
      pinMode(M1_CTRL_Q1, OUTPUT);
      pinMode(M1_CTRL_Q2, OUTPUT);
      pinMode(M1_CTRL_Q3, OUTPUT);
      pinMode(M1_CTRL_Q4, OUTPUT);
      //Pause Moteurs
      M1_CTRL_BRK();
    }
    
    void M1_CTRL_FWD() {
      digitalWrite(M1_CTRL_Q1, HIGH);
      digitalWrite(M1_CTRL_Q2, LOW);
      digitalWrite(M1_CTRL_Q3, LOW);
      digitalWrite(M1_CTRL_Q4, HIGH);
    }
    void M1_CTRL_REV() {
      digitalWrite(M1_CTRL_Q1, LOW);
      digitalWrite(M1_CTRL_Q2, HIGH);
      digitalWrite(M1_CTRL_Q3, HIGH);
      digitalWrite(M1_CTRL_Q4, LOW);
    }
    void M1_CTRL_BRK() {
      digitalWrite(M1_CTRL_Q1, LOW);
      digitalWrite(M1_CTRL_Q2, HIGH);
      digitalWrite(M1_CTRL_Q3, LOW);
      digitalWrite(M1_CTRL_Q4, HIGH);
    }
    
    void loop() {
      M1_CTRL_FWD();
      delay(MX_CTRL_DELAY);
      M1_CTRL_RWD();
      delay(MX_CTRL_DELAY);
      M1_CTRL_BRK();
      delay(MX_CTRL_DELAY);
    }

    Merci par avance

    Pièce jointe supprimée

    -----

    Dernière modification par JPL ; 28/01/2018 à 15h21.

  2. Publicité
  3. #2
    JPL

    Re : Impossible de faire fonctionner un pont en H à base de transistors

    Les schémas et autres illustrations doivent être postés dans un format graphique (gif, png, jpg). Merci.
    Rien ne sert de penser, il faut réfléchir avant - Pierre Dac

  4. #3
    dedenast

    Re : Impossible de faire fonctionner un pont en H à base de transistors

    Voici le schéma au format .JPG , désolé...

    sortie.jpg

  5. #4
    Jack

    Re : Impossible de faire fonctionner un pont en H à base de transistors

    la tension de sortie de l'arduino (5V) n'est peut-être pas suffisante pour bloquer les PNP (Q1 par exemple) puisque leur émetteur est à 5,9V

  6. #5
    Antoane

    Re : Impossible de faire fonctionner un pont en H à base de transistors

    Bonjour,

    Une solution pourra alors d'ajouter une résistance de 1kOhm entre l'émetteur et le base des PNP, de manière à légèrement décaler la tension de commande des PNP, et ainsi assurer qu'ils sont bloqués lorsque la sortie du µC est à 1.

    Détails :
    - Il faut être sûr que tes ordres de commande sont bien gérés, sans quoi tu risques de court-circuiter l'alimentation du montage ;
    - Tu as mis un symbole de prise jack en entrée d'alimentation, les jacks de type audio court-circuitent transitoirement leurs contacts lors du branchement. C'est ok pour un signal audio mais pas pour une alimentation.
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

  7. #6
    freepicbasic

    Re : Impossible de faire fonctionner un pont en H à base de transistors

    Ce genre de montage est une des façons les plus sure de faire du transistor au barbecue ... LOL

    Les signaux doivent être "rail to rail" et parfaitement inversés soit Vcc soit Gnd
    (tolérance , un seuil, soit moins de 0.6V en silicone) , entre les 2 ça fume !

    Il est préférable d'avoir un inverseur logique ou mieux un transistor plus rapide.

    Sur le net ce genre de montages foisonnent pour un CI intégré tout est calculé pour.
    il existe le CI L298 sur ce principe. Mais il chauffe tout de même un max.
    Les nouveaux CI Chinois ont des MosFet bien plus performants.
    Ils les utilisent pour des amplis audio en class D , ils sortent 3Watts sur 5V sans problème tout en CMS...
    PAM8403 2x3W sur 5V



    Pour un amateur c'est hyper risqué...

    Alors que si on mettait les transistor émetteur vers le moteur, donc en suiveur quasiment pas de risque.
    Bien sur on perd 2 seuils de transistors soit 1.2V qui vont chauffer les totors.
    Mais si on met en commande un transistor inverseur monté sur une tension de 12V par exemple le pont fonctionnera sur 12V et le moteur sur 12V-1.2V.
    Il faudra aussi une commande inhibit pour que le moteur ne soit pas alimenter du tout .
    Encore 2 totors, ou alors des diodes si on joue avec les seuils de commande.
    A+, pat

  8. #7
    bobflux

    Re : Impossible de faire fonctionner un pont en H à base de transistors

    Il y a des quantités de petits circuits intégrés pas chers pour faire ça. Un exemple. C'est ce qu'on trouve dans les imprimantes, scanners, etc, donc gros marché, donc offre généreuse !

  9. #8
    dedenast

    Re : Impossible de faire fonctionner un pont en H à base de transistors

    Merci à tous pour vos réponses.
    Alors j'ai essayé avec les résistances de 1k mais toujours rien, j'avais moins de 2v aux broches du moteur... Je me demande si je n'ai pas fait cramer un des 4 transistors (qui avaient chauffé lors de précédents tests...)
    Pour les CI avec des ponts en H intégrés, c'est clair que ce serait plus simple mais je n'ai ni l'argent (oui je sais j'ai lair ridicule) ni l'envie d'en commander...
    Cependant je possède plusieurs types de transistors de types NPN & PNP , ainsi que quelques UDN2916B, serait-il possible de faire qujlquechose avec ce dernier? Ou devrais-je changer de transistors?
    Cordialement,

  10. #9
    Antoane

    Re : Impossible de faire fonctionner un pont en H à base de transistors

    Bonjour,

    Combien consomme le moteur ?

    Ton code n'est pas des plus aisé à interpréter car le lien entre l'arduino et les ponts ne sont pas indiqués, mais tu as pris en compte le fait que pour rendre passant un PNP, il faut envoyer un 0 alors qu'il faut un 1 pour rendre passant un NPN ?

    Il faut investiguer par étapes : tu peux commencer par vérifier que, lorsque le moteur n'est pas branché, les tensions de sorties de l'arduino sont conformes aux attentes, de même que les tensions sur les bases des transistors, et que les tensions en sortie des demi-ponts. Tu peux ensuite ajouter une charge (e.g. une résistance de 1 kOhm) en sortie de chaque demi-pont. Vérifier que lorsque cette charge est entre la sortie et la masse, ou entre la sortie et le Vcc, les tension de sortie des demi-ponts sont conformes aux attentes. Tu peux ensuite câbler la charge entre les sorties des ponts complets et vérifier que tout va bien. Tu peux ensuite diminuer la valeur de la résistance de charge. Etc.
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

  11. #10
    dedenast

    Re : Impossible de faire fonctionner un pont en H à base de transistors

    Merci encore pour vos réponses. Alors j'ai opté pour la facilité et j'ai commandé deux L293D, je réessayerais avec ça dès que j'ai le temps!

  12. #11
    mag1

    Re : Impossible de faire fonctionner un pont en H à base de transistors

    Citation Envoyé par dedenast Voir le message
    Merci encore pour vos réponses. Alors j'ai opté pour la facilité et j'ai commandé deux L293D, je réessayerais avec ça dès que j'ai le temps!
    Bonjour,

    Si au moins on savait de quel moteur il s'agit....

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  13. #12
    Jack

    Re : Impossible de faire fonctionner un pont en H à base de transistors

    Citation Envoyé par mag1 Voir le message
    Bonjour,

    Si au moins on savait de quel moteur il s'agit....

    MM
    Moteur de lecteur de DVD. Çà ne va donc pas chercher très haut en courant. Les L293D devraient convenir.

  14. #13
    antek

    Re : Impossible de faire fonctionner un pont en H à base de transistors

    Citation Envoyé par Jack Voir le message
    Moteur de lecteur de DVD. Çà ne va donc pas chercher très haut en courant. Les L293D devraient convenir.
    Sur ceux que j'ai démonté ce sont des moteurs synchrones.

  15. #14
    Jack

    Re : Impossible de faire fonctionner un pont en H à base de transistors

    Ok, du coup ça expliquerait pourquoi son pont en H ne permet pas au moteur de fonctionner. Il va falloir revoir la commande.

  16. #15
    bobflux

    Re : Impossible de faire fonctionner un pont en H à base de transistors

    Il y a 3 moteurs dans un lecteur DVD : rotation du disque, déplacement du pickup, et éjection... Reste à savoir duquel on parle !

    Si c'est un lecteur DVD de salon, il est possible que ce soient tous des Brushed DC, par contre pour un lecteur de PC, vu la vitesse de rotation (VVVRRRRAAAAAAAAAAAA) l'idée de relier le moteur à l'axe par une courroie ou toute autre bidule mécanique me semble saugrenue, c'est la prise directe obligatoire ! Ça doit donc bien être un brushless comme dans les disques durs...

Discussions similaires

  1. Pont en H - saturation des transistors
    Par davOnFutura dans le forum Électronique
    Réponses: 22
    Dernier message: 12/07/2013, 05h24
  2. Pont en H à transistors MOS
    Par Pilou81 dans le forum Électronique
    Réponses: 4
    Dernier message: 21/05/2011, 10h55
  3. Réponses: 14
    Dernier message: 24/06/2009, 12h03
  4. Impossible de faire fonctionner un PIC12F629
    Par FoxDeltaSierra dans le forum Électronique
    Réponses: 2
    Dernier message: 08/04/2009, 19h20
  5. Transistors dans un pont en H
    Par Tix dans le forum Électronique
    Réponses: 42
    Dernier message: 07/02/2009, 16h21