Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème CEM (mosfet) et liaison RS-232

    29 avril 2021 à 13:49:14

    Bonjour,

    Pour le projet que je suis en train de réaliser, j'ai un PIC18F2520 qui communique via une liaison RS-232. 

    La carte sur laquelle se trouve ce pic comporte 16 mosfets IRL1004 utilisés pour piloter des électrovannes. (~1A max par transistor et 8 transistors actifs simultanément max)

    Mon problème est qu'à certains moments ma trame n'est jamais envoyée. 

    Je pense après recherche que cela vient des parasites dus aux mosfets.
    Car sur mon Tx en TTL aucun soucis. Par contre mon Rx TTL est complétement parasité. 

    J'aurais aimé avoir votre si cela vient effectivement des parasites et comment les réduire.
    J'ai vu des solutions avec 1 inductance sur la grille et 2 capa mais je ne sais pas si cela conviens.

    Le plan

    https://imgur.com/a/uI1706R

    Le routage

    https://imgur.com/a/FIpDPVU

    Les signaux ttl

    https://imgur.com/a/fp4GBR9

    Merci d'avance

    -
    Edité par BARTOLINI-FILLEURNathan 29 avril 2021 à 13:57:53

    • Partager sur Facebook
    • Partager sur Twitter
      30 avril 2021 à 8:02:54

      Première chose qui choque énormément, c'est l'absence de diode de roue libre sur tes mosfet, tu vas les cramer en un rien de temps sans cette diode.

      Pour ce qui est des parasites, cela vient très certainement des pics de courant qu'il y a lors de l'ouverture et la fermeture des mosfet.

      En plus d'ajouter la diode de roue libre et si tu n'utilises pas de PWM sur tes mosfet, je te conseille d'ajouter une grosse résistance série (10k par exemple) sur la grille de tes mosfet, cela aura pour effet de ralentir très fortement les temps de commutation, et donc réduire les pics de courant.

      En revanche, cela va aussi augmenter la chauffe du mosfet pendant la commutation, mais comme je suppose que tu ne t'amuses pas à faire 36 commutations par secondes, ça restera très négligeable, sauf si tu utilises du PWM.

      Ensuite, je ne vois aucun condensateur chimique de grosse valeur sur les alimentations, ce n'est clairement pas une bonne chose car il n'y a aucune réserve d'énergie pour encaisser les changements brutaux de courant (ce n'est pas tes petits 100nF qui vont encaisser ça).

      Généralement, on met toujours un bon gros condensateur du genre 470uF LOW ESR en entrée, en plus de tous les autres condensateurs de découplage 100nF.

      J'insiste sur le LOW ESR car si c'est un condensateur classique, ça ne servira pas à grand chose.

      -
      Edité par lorrio 30 avril 2021 à 8:04:32

      • Partager sur Facebook
      • Partager sur Twitter
        30 avril 2021 à 8:55:16

        Bonjour et merci pour ta réponse.

        Evidement qu'il y a une diode de roue libre, sinon la carte aurait déjà pris feu 😊, elle est au plus proche de l'électrovanne donc pas sur la carte.

        Pour ce qui est des parasites, cela vient très certainement des pics de courant qu'il y a lors de l'ouverture et la fermeture des mosfet.

        Oui c'est clairement vu qu'ils sont en phases avec la états transitoires des mosfet.

        Pour la résistance sur la grille as tu une formule ? car je commute à 500 Hz et je souhaite garder +/- cette vitesse de commutation. (Les électrovannes sont proportionnelles et donc commandées en PWM).

        La chauffe est à calculer mais ma carte est plongée dans un grand volume d'huile (diélectrique bien sûr) donc potentiellement la chauffe ne se sentira pas trop ? bien que l'on soit à 500Hz.

        Je vais prévoir de rajouter le condo LOW ESR, mais quand je regarde mon +5V ce dernier est stable sans parasites.

        • Partager sur Facebook
        • Partager sur Twitter
          30 avril 2021 à 13:46:54

          Une résistance de 10k en série sur la grille avec un signal PWM, ça risque de faire beaucoup.

          La chauffe va dépendra de la capacité de grille de ton Mosfet (Qg), il faudrait se lancer dans des calculs, ou bien tout simplement simuler ça sous LTspice avec un Mosfet qui ressemble au tient.

          Dans un premier temps, tu pourrais faire l’essaie avec une 220 ohm en série pour voir si ça aide ou pas.

          -----

          Pour ce qui est de la stabilité de ton alimentation 5V, le fait de ne rien voir va dépendre de la qualité de ton oscilloscope.

          Tout ce qui est parasite est généralement très haut en fréquence, donc il faut un bon oscilloscope pour les voir.

          -----

          Un bon test à faire serait aussi de mettre un mode echo dans le programme de ton PIC en faisant en sorte qu'il renvoie systématiquement sur le TX tous les caractères qu'il reçoit sur le RX.

          Ensuite, il ne reste plus qu'à regarder ce qu'il se passe depuis un PC, cela permettra de voir si c'est carrément un octet entier qui a été zappé ou bien juste un bit qui a été mal reçu.

          -----

          Je ne vois pas non plus de quartz sur ton montage donc je suppose que tu utilises l'oscillateur internet, il faut faire attention !

          La précision de l'oscillateur est donné pour +/-5% ce qui signifie que ta vitesse du port série est elle aussi à +/-5% par rapport à la vitesse que tu as configuré.

          Hors, la spécification d'un port série indique que la dérive doit être de maxi 3% pour fonctionner, donc tu peux avoir des soucis si la vitesse n'est pas bonne.

          Je te propose donc de prendre ton oscilocope et vérifier la durée d'un bit sur la pin TX de façon à vérifier si ton PIC est à la bonne vitesse.

          • Partager sur Facebook
          • Partager sur Twitter
            30 avril 2021 à 18:23:49

            Tout ceci et déjà dédouané et je t'invite à regarder les screen.
            • Partager sur Facebook
            • Partager sur Twitter
              30 avril 2021 à 19:23:07

              Ce n'est pas avec un screen aussi large que l'on va pouvoir mesurer précisément le temps d'un bit et savoir si tu es bien à 9600 bits/s ou en 9984 bits/s suite à une dérive sur l'horloge interne.

              Du coup, je t'invite à poster un screen zoomé sur un bit, puis tester le mode ECHO en nous donnant le log du résultat (ce que tu auras envoyé et ce que le processeur t'aura renvoyé en ECHO en plus de ses réponses).

              • Partager sur Facebook
              • Partager sur Twitter
                1 mai 2021 à 11:16:32

                @lorrio, d'après la doc du PIC:

                Enhanced Addressable USART: This serial communication module is capable of standard RS-232 operation and provides support for the LIN bus protocol. Other enhancements include automatic baud rate detection and a 16-bit Baud Rate Generator for improved resolution. When the microcontroller is using the internal oscillator block, the EUSART provides stable operation for applications that talk to the outside world without using an external crystal (or its accompanying power requirement).

                Par contre, comme RX vient de la puce RS232, ADM3202, et TX du PIC, le fait que TX ne soit pas affecté par les parasites indique peut-être que c'est la puce RS232 qui a un problème. Il faudrait voir si les signaux RXin et TXout sont aussi affectés, et/ou si c'est la puce ADM3202 qui génèrerait ce bruit.

                • Partager sur Facebook
                • Partager sur Twitter
                  6 mai 2021 à 12:07:36

                  Salut j'ai changé pour un MAX232 le problème est le même mais comme j'ai déjà pu le tester en éloignant le mosfet qui commute de la carte le problème disparait. De même qu'une fois les cartes missent dans mon rack le problème n'existe plus c'est vraiment très spécifique.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    6 mai 2021 à 18:56:20

                    Peut-être une mauvaise liaison GND quelque part, ou des câbles trop sensibles, à voir si cela améliore d'utiliser du cable blindé pour la 232.
                    • Partager sur Facebook
                    • Partager sur Twitter
                      6 mai 2021 à 22:04:42

                      Le câble que j'utilisé avec la carte en dehors du boiter était blindé (j'ai tester à la masse et à la terre le problème n'était jamais résolu), par contre le câble rs-232 du boitier n'est pas blindé :D mais la section est plus grosse. (le boitier est à aucun potentiel électrique)
                      • Partager sur Facebook
                      • Partager sur Twitter
                        20 mai 2021 à 12:09:57

                        Salut,

                        Je pense que ton problème vient du fait que tu as mal connecté le rx sur la carte.

                        Ton signal R2in (pin 9 de l'adm3202) doit être connecté à J1-2 et R2out à la pin RX du pic. Sur ton montage c'est l'inverse qui est fait. Du coup tu ne récupères que les parasites liés à la commutation du CMOS via le GND (ce que tu vois sur le scope).

                        Il faut inverser les deux signaux, changer les drivers rs232 aussi (ils ont peut être étaient endommagés car tu as peut être injecté une tension sur la sortie faible impédance du driver en inversant le montage).

                        Il faut également respecter certaines règles techniques comme celles annoncés par lorrio (capas de réserve, diode de roue libre et résistance sur la grille du mos pour limiter le courant d'appel).

                        Est-il possible de voir la partie convertisseur d'alim 24V->5V ?

                        • Partager sur Facebook
                        • Partager sur Twitter

                        Problème CEM (mosfet) et liaison RS-232

                        × 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