J'essaie de réaliser le programme de commande d'un carte perso pour simuler une charge fictive.
L'UC que j'utilise est celui du minima, avec DAC et ADC résolutions sur 12bits
J'essaie donc de piloter le gate du transistor à l'aide du retour d'info ADC, donc ADC situé entre 0 et 5V max, donc 5A maximum que je souhaiterai simuler.
Le problème initial que je n'arrive pas à résoudre, c'est que même en ayant une tension de Vgs=4.7V, le courant Source-Drain plafonne autour de 2A, impossible d'aller au delà, sauf si je shunt la résistance de 1ohm
(J'ai une alimentation 5V/5Amax qui alimente le transistor)
Hors, d'après la datasheet du transistor utilisé, il n'y aucune raison de plafonner à 2A avec un Vgs de 4.7V.
De plus, le transistor chauffe énormément dans ces conditions, je ne peux pas appliquer les 4.7V sur le Vgs pendant plus de 5s.
Besoin d'aide pour comprendre celà svp.
Est-ce la résistance couplé à l'entrée ADC de l'Uc qui crée celà ?
Où ai-je donc fait une erreur qui ne permet pas de dépasser les 2A ?
Pourquoi le transistor chauffe t'il autant alors que je plafonne à 2A avec un gate ouvert à 4.7V (suffisant d'après la datasheet pour avoir un Rdson acceptable)
J'espère que mes explications sont assez compréhensibles ^^
as tu essayé en mettant la résistance R côté Drain du Mosfet N et non côté Source
actuellement la tension aux bornes de cette résistance R vient réduire le VGS effectif appliqué au Mosfet dès que le courant qui la traverse devient significatif...
VGS = VDAC - R.I ....... d'où le 'bridage' constaté en raison de cette tension R*I , proportionnelle au courant Source , qui est à retrancher à VDAC
Le transistor fonctionne en régime linéaire, il développe une tension à ses bornes et comme il circule du courant dans celui-ci il y a obligatoirement dissipation de chaleur. C'est tout à fait normal.
Il faut monter le transistor sur un dissipateur et prévoir un ventilateur pour créer une convection forcée.
5V et 2A cela fait 10W, il faut bien que ces 10W passent quelque part.
La résistance de 1Ω développe 2V à ses bornes lorsqu'il passe 2A. Les 3V restants sont aux bornes du transistor. Donc tu dissipes 4W dans la résistance et 6W dans le transistor.
Un mosFET se commande en tension pas en courant. Il ne circule pas de courant dans la gate sauf lors des transitions. La jonction Gate-Source se comporte comme un condensateur.
À dire vrai, cela va compliquer la mesure. Il vaudrait mieux utiliser un circuit dédié pour cela style INA226 ou un de ses copains dans la même série.
Ha oui ! Merci! J'oubliais que 2V sur la resistance donne donc un Vgs de 2,7V et pas 4,7V ! J'avais fais l'erreur de faire ma mesure de Vgs entre gate et masse! Demain j'essai du coup avec la resistance côté Drain.
merci @fdufnews pour les explications.
Si on imagine 4W de dissipation dans le transistor, avec la résistance thermique de 2,3°C/W(datasheet), on devrait donc avoir une hausse de température de pas plus de 10°C si je ne me trompe pas ?
Pourtant, au doigt, le transistor devient même brulant, certainement au delà des 60°C...
Est-ce que mon raisonnement est bon ?
J'avais vu ce circuit, je voulais faire simple dans un 1er temps avec un juste la minima et une resistance. si cela ne marche toujours pas avec la resistance côté drain, je me pencherai sur les circuits dédiés.
Ça fonctionnera mieux mais la mesure du courant va être plus compliquée car, comme la résistance "flotte", il va falloir mesurer la tension sur les 2 bornes de la résistance pour déterminer le courant. De plus, cela interdit d'avoir une tension supérieure à 5V aux bornes de la charge sauf à rajouter des ponts diviseurs pour mesurer les tensions.
Ils y a des avantages à choisir un circuit dédié.
le shunt a une valeur très faible < à 100mΩ
le shunt peut être placé de n'importe quel coté du transistor
tu auras une résolution supérieure à celle que tu vas avoir avec l'ADC de l'ATmega.
Essais réalisés du coup, avec la résistance côté Drain et de l'ADC des 2 côtés de la résistance, résultat :
Plus de bridage en courant, je peux monter jusqu'à 5A, l'erreur venait bien de l'emplacement de la résistance.
Mais comme vu par @fdufnews , je ne peux de toute façon pas depasser les 5V en charge, de plus, la régulation de courant est trop imprécise pour mon besoin, oscillations à +/-500mA
Je vais donc me pencher sur l'iNA226 pour mes prochaines bidouilles.
EDIT: je trouve cela quand même dommage qu'il y ai aussi besoin d'une resistance de puissance avec ce circuit dédié
Tout est relatif. Si tu fais passer 5A dans 100mΩ cela ne fait jamais que ½W. Et je n'ai plus les chiffres en tête mais il me semble que pour 8A la valeur du shunt doit plutôt se situer dans les 10mΩ.
Edit: je viens de retrouver la doc. La tension aux bornes du shunt doit être de ±80mV donc pour un calibre 8A la résistance doit dissiper moins de 1W.
Tes oscillations de ±500mA me paraissent énormes. Tu n'aurais pas un problème dans ton code?
Tu peux aussi entrer dans un régime d'oscillation si le circuit qui débite dans la charge réagit mal aux variations de ta charge. Là, ce pourrait être un problème de filtrage de la commande du mosFET.
Dans le premier cas, c'est la tension nécessaire pour faire une mesure de courant pleine échelle.
Dans le second cas c'est une limite à ne jamais dépasser sous peine de destruction (ou à minima de dommage permanent) du composant.
Il faut bien voir qu'on mesure le courant à l'aide du shunt qui doit être de résistance la plus faible possible pour ne pas perturber le circuit en test donc on doit être capable de faire des mesures sur quelques dizaines de millivolts. Mais en cas de problème, il n'est pas impossible que le shunt soit détruit auquel cas Vin+ se trouve alors au potentiel de l'alimentation (36V max en l’occurrence) d'où le fait que le circuit soit capable de supporter plusieurs dizaines de volts sur toutes ses entrées de mesure.
Super, merci beaucoup. C'est clair !
Pour 16A, avec un résistance de 5mohms, on sera à 80mV, donc proche de la pleine échelle !
Je comprends encore plus l'intérêt de ce composant alors, merci !