IGBT Story ! - Version imprimable +- Tech Masters (https://tech-masters.fr) +-- Forum : Tech (https://tech-masters.fr/forumdisplay.php?fid=3) +--- Forum : Electronique (https://tech-masters.fr/forumdisplay.php?fid=9) +--- Sujet : IGBT Story ! (/showthread.php?tid=49) |
RE: IGBT Story ! - OrOoX - 2020-05-06 Oui je suis d'accord mais si ça "temporise" le démarrage c'est plus 50A que l'IGBT va se prendre pendant 1 seconde mais peut être 40 voir moins et mine de rien ça change le résultat. J'ai continué l'autopsie du schneider cette aprème, bah y'a du taff pour espérer le remettre en route, y'a de la casse autour du mosfet qui a pété, résistances HS, driver mosfet HS, transistor HS, c'est remonté mine de rien ... Mais pas impossible RE: IGBT Story ! - BiduleOhm - 2020-05-06 Ben vu qu'en général le failure mode c'est le court-circuit y'a beaucoup d'autres trucs qui partent avec au passage... sauf si le design est prévu pour avec des fusibles, TVS, etc... RE: IGBT Story ! - OrOoX - 2020-05-06 J'espère juste que ça c'est arrêté au driver sinon c'est moche si le cpu à bouffé ... Après c'est poubelle x) ( une patte a carrément fondu sur le driver ) RE: IGBT Story ! - Sk_rmouche - 2020-05-07 Oui j'ai déjà vu ces modules mais ils ne sont pas strictement nécessaires. Si tu démarres le compresseur en partant de 0 de toute façon il y aura une pointe de courant à fréquence réduite, c'est normal ce sont les caractéristiques des enroulements et c'est pris en compte dans tout les " bons " variateurs. RE: IGBT Story ! - OrOoX - 2020-05-10 Bon bon bon ... L'arduino m'embête et j'arrive pas à trouver pourquoi ... J'ai fais un tableau avec les temps pré-enregistré pour une fréquence fixe, dans le doute j'ai même rajouté les valeurs LOW et HIGH et ça me fait de la merde sur les signaux ... Avec un code simple et des delaymicroseconds() j'ai bien des signaux carrés mais là ... 20200510_135325.jpg (Taille : 481.43 Ko / Téléchargements : 2) Avec en code : ( c'est le complet donc des trucs désactivés temporairement ) Surement un truc con mais je vois pas là ... RE: IGBT Story ! - Kissagogo27 - 2020-05-10 un PWM c'est le rapport entre état haut et état bas là on dirait que le rapport cyclique est fixé en fréquence variable ... surement du au temps de descente H>L de ton étage .. hyper long .. RE: IGBT Story ! - OrOoX - 2020-05-10 Bah c'est fixé par le tableau oui, 1ère valeur = OFF, 2ème = ON, etc ... Pour un temps précis, donc à chaque période il allume ou éteint la sortie pendant le temps indiqué, du coup ça devrait pas faire ça ... La monté est bonne mais pas la descente :/ Compliqué de faire autrement que en faisant du maintien nan ? RE: IGBT Story ! - Kissagogo27 - 2020-05-10 tu devrais observer a F plus faible des front bien raides ... câblage volant, transistors mal polarisés voir en saturation .. RE: IGBT Story ! - OrOoX - 2020-05-10 C'est en effet le cas mais avant j'étais en fils volants aussi et ça fonctionnait sans problème, je pouvais monter à 12Khz et avoir des signaux carrés mais là 200Hz le truc est déjà en panique. Genre là : TCCR0B = TCCR0B & 0b11111000 | 0x01; //Timer 0 (PWM pins 5 & 6) + coef_frequence = 50 Bah le résultat est dégoulasse et pourtant je suis que à 747hz ... 20200510_162848.jpg (Taille : 468.64 Ko / Téléchargements : 3) Edit : Hum, surement une piste ... https://forum.arduino.cc/index.php?topic=76213.0 ( Post #3 ) Ca expliquerait pourquoi le PWM fonctionne à haute fréquence mais pas la méthode manuelle. Edit 2 : Effectivement ça marche beaucoup mieux avec PORTD ^= _BV(PIND3); Edit 3 : Et hop avec un ptit : Code : if (switch_pola_ph1 == 0) 20200510_175850.jpg (Taille : 503.65 Ko / Téléchargements : 3) Du coup merci Kissa pour les pistes RE: IGBT Story ! - BiduleOhm - 2020-05-10 Spa comme si j'avais recommandé de manipuler directement le port une page plus haut... NB: ton if/else est bizarre, intuitivement je dirais qu'un truc cloche et qu'il peut être grandement optimisé mais c'est juste une intuition, je peux me tromper. RE: IGBT Story ! - OrOoX - 2020-05-11 (2020-05-04 18:34:16)BiduleOhm a écrit : Perso je manipulerais directement le port vu que c'est plus rapide mais des digitalWrite() marchent aussi, oui. Oui oui, mais ou pas dans ce cas précis ... Toutes les méthodes étaient utilisées dans les différents exemples donc moi je préfère tester par moi même pour voir le résultat final et éliminer le reste pour pas y revenir ( et accessoirement essayer le plus simple avant de jouer avec ce genre de code ) Tu parle de quel if/else ? celui des ports ou des timers ? Celui des timers est pas fini et encore bugué. RE: IGBT Story ! - Kissagogo27 - 2020-05-11 Boole kwa tjrs Boole met un et en utilisant les "complémentaires" A A etc etc PortD( switch_pola_ph1 << (PD3.etat_ph1 + PD4.etat_ph1) ) ça doit donner un truc équivalent sans if then .. mais comme je pige keud a ce langage là c hot de t'expliquer RE: IGBT Story ! - OrOoX - 2020-05-11 Ca peut pas marcher ton truc Kissa, le switch_pola c'est quand on passe de l'alternance positive à négative donc avec ce code ça ne ferait pas le tour du tableau ( la valeur change quand le compteur arrive à 23 ) RE: IGBT Story ! - BiduleOhm - 2020-05-11 (2020-05-11 08:23:38)OrOoX a écrit : Tu parle de quel if/else ? celui des ports ou des timers ? Celui des timers est pas fini et encore bugué. Le dernier que t'as posté. Si switch pola était un mask et que tu manipules le port direct avec du binaire il doit y avoir moyen d'opti la logique à mort... RE: IGBT Story ! - OrOoX - 2020-05-11 Justement je comprend pas ce que tu veux optimiser, l'alternance ON/OFF du port est gérer par : Code : PORTD = (etat_ph1 << PD3); Le code suivant fonctionne aussi et permet de supprimer la ligne etat_ph1 mais soit le port resté allumé ou éteint en fonction de l'alternance de switch_pola, d'où le rajout de la ligne pour contrer le problème. Le problème vient du fait que le port est normalement à l'état LOW, du coup quand j'arrive dessus il le passe à HIGH et me bouffe donc la première période, faudrait que je colle un if juste pour ça ... Elle fait également office de sécurité entre le positif et négatif vu qu'ils utilisent tous les deux la même variable. Code : PORTD ^= _BV(PIND3); J'ai l'impression que vous vous dites que switch_pola sert à passer la sortie de l'état BAS à HAUT et vis versa mais nan, il sert à passer du Pin 3 à 4 en gardant le même code et les mêmes timing. RE: IGBT Story ! - BiduleOhm - 2020-05-11 Non non, je sais bien que switch_pola sert à changer de pin, c'est pour ça que je parlais d'un mask. Et en passant tu devrais avoir une sécu hardware qui empêche d'avoir les 2 ON en même temps, parce qu'une sécu software c'est bien mais ça peut planter et dans ce cas les sorties sont à un étant indéfini. RE: IGBT Story ! - OrOoX - 2020-05-11 Jouer avec des masques et autres ça dépasse mes connaissances après, c'est le dark side de l'arduino haha Comment tu veux faire une sécu hardware la dessus ? A part couper l'alim en cas de problème je vois pas car si effectivement il y a un problème avec l'arduino, ça veut dire que tu peux pas du tout te baser sur elle pour la sécu. RE: IGBT Story ! - BiduleOhm - 2020-05-11 T'as juste à utiliser quelques portes logiques, j'ai pas cherché mais c'est pas bien compliqué. Maintenant que j'y pense tu devrais avoir une sortie qui sort les demi alternances et une autre qui sort la polarité, ça simplifie le code et la logique hardware de sécurité est inhérente au design (la sortie de polarité ne peut pas être high et low en même temps) et est très simple (un inverseur et 2 portes AND par phase). RE: IGBT Story ! - OrOoX - 2020-05-11 Ca protègera effectivement d'une activation des deux pins en même temps mais c'est ça n'empêche en rien au programme de planter et de laisser le pin à ON et d'engendrer les dégats qui vont avec derrière ... Les fabricants ne mettent pas ce type de sécurité sur leurs cartes c'est qu'il doit y avoir une raison. A mon sens si tu veux vraiment jouer la sécurité, faut coller 2 arduino en parallèle, une qui injecte et régule et une autre qui lit les signaux comme un encodeur et si le programme voit une dérive il coupe l'alimentation DC mais même comme ça il peut y avoir des dégâts avec les condos. RE: IGBT Story ! - Kissagogo27 - 2020-05-11 ou un watchdog |