Je ne vois pas très bien où est le progrès dans le choix de ce composant.
Avec un Ron compris entre 125 et 240Ω je vois plutôt une dégradation potentielle des performances.
Le commutateur dont je parle servirai seulement de switch entre les pins digitaux et les pins du multiplexeur pour passer de tests d'intégrité (courts-circuits) à caractéristiques courant-tension.
Effectivement la Ron est élevée mais je ne vois pas trop de solution. Et puis je peux toujours en tenir compte dans mon calcul au moment du plot non ? Lorsque je convertis ma tension aux bornes de la résistance en courant je n'ai qu'à diviser par 270+Ron
Non, la 270Ω et elle seule mesure le courant.
Le courant c'est (VA1 - VA0)/ 270
Ron doit être prise en compte dans la tension appliquée au composant en test.
Le Ron crée une chute de tension qui est soustraite de la tension appliquée au composant en test.
Il faut soustraire Ron * I de la tension mesurée par A0 pour avoir la tension aux bornes de ta carte SD.
Je pense que tu viens de débloquer un gros problème de compréhension que j'avais dans mon circuit, merci beauuucoup!
C'est donc pour ça que les valeurs de tension me semblaient surestimées complètement. Par exemple au lieu des 1V de tension de seuil que je trouve lors du tracé manuel, je trouvais plus de 2V souvent avec le tracé automatique.
En considérant qu'on a environ 350 ohms de résistance et un courant ne dépassant jamais les 4mA, on a une erreur d'environ 1.4V au maximum (lorsque le courant est le plus élevé).
Il faut donc que je remanie mon code python s'occupant de convertir les valeurs brutes pour tenir compte de ce V-Ri. je n'en tenais pas compte : voici ma fonction conversion qui réadaptait la tension de 1024=-3.3V à 0 = 3.3V
def Conversion(A0, A1):
Ur = [(-0.0064453125 * (A0[i] - A1[i])) for i in range(len(A0))]
courant = [Ur[i] * 1000 / 270 for i in range(len(Ur))]
tension = [A1[i] * (-0.0064453125) + 3.3 for i in range(len(A1))]
return courant, tension
Il faut donc que je soustrais à la ligne "tension" - (270+Ron)*courant
Tu récupères 2 tensions (les labels sur ton schéma sont illisibles) on va les appeler VA0 et VA1 en fonction de l'entrée analogique où elles sont mesurées.
On appelle la tension à la borne en cours de test sur carte SD Vsd
VA0 = Vsd + Ron * I
VA1 = Vsd + Ron * I + 270 * I
==> I = (VA1 - VA0) / 270
==> Vsd = VA0 - Ron * I
Il vaut mieux calculer Vsd à partir de VA0 car tu n'as que l'erreur sur Ron qui va intervenir alors que si tu calcules Vsd à partir de VA1 tu vas cumuler l'erreur sur Ron plus celle sur la 270Ω
Je vois c'est vrai que c'est bien plus malin. Si l'erreur était fixe ça ne serait pas un problème on aurait pu en tenir compte mais puisque le courant varie c'est plus simple comme tu suggères.
Et avec un Vdd/Vss de +/-9V j'ai un peu plus de 50Ω selon la datasheet pour Ron. A cela se rajouteront plus tard les 1.5 ohms du ADG1411 donc disons 55Ω.
Je vais faire le test avec ce code Conversion :
def Conversion(A0, A1):
Ur = [(-0.0064453125 * (A1[i] - A0[i])) for i in range(len(A0))]
courant = [Ur[i] * 1000 / 270 for i in range(len(Ur))]
tension = [A0[i] * (-0.0064453125) + 3.3 - (courant[i]*Ron)/1000 for i in range(len(A1))]
return courant, tension
Si quelqu'un passe encore par là :
J'aimerais commander 4 commutateurs ADG1411 (https://www.digikey.fr/fr/products/detail/analog-devices-inc/ADG1411YRUZ/1873698) pour piloter mes 9 pins mais je suis très étranger à ce format TSSOP (qui est pourtant la norme et très courant).
J'ai plutôt l'habitude d'utiliser des composants qui s'adaptent facilement sur breadboard pour commencer par un prototype, puis souder sur un PCB lorsque le prototype est validé. Ici, j'ai bien l'impression que je ne pourrais absolument pas connecter ce genre de format à ma breadboard, et que la soudure risque d'être très complexe au vue de la taille des pattes...
Quelqu'un pour m'éclaircir ? J'avais entendu parler de breakout boards ou d'adaptateurs DIP mais l'idéal serait de trouver le même composant dans un format qui se branche facilement sur breadboard mais je n'arrive pas à trouver.
Merci ! Effectivement ça solutionnerait le problème mais ça serait dommage que j'en achète 4 pour mon prototype puisqu'ils sont au même prix que les commutateurs ADG1411 c'est pas donné comme tu dis
En plus j'ai bien l'impression qu'il faut souder le commutateur dessus pour les utiliser donc je devrais m'amuser à souder puis dé souder sans rien abîmer...
Mais bon s'il n'y a pas d'autre solution je vais devoir partir là-dessus
Lorsqu'on n'a pas l'habitude, on utilise pas trop le fer à souder sur des composants au pas de 0.65 mais plutôt de la pâte à braser et une soufflette à air chaud.
Ces dernières années, le nombre de fabricants a fortement diminué suite à des regroupements/rachats successifs le choix suit la même tendance.
En faible Ron peu de choix!
Il y aurait peut-être chez Vishay le DG408 qui existe en SOIC16 c'est du pas de 1.27 on peut le souder à la main sur une breakout board. Il est un peu moins bon que l'ADG1411 avec un Ron de 17Ω typique seulement. Je n'ai pas vérifié toutes ses caractéristiques.
Lorsqu'on n'a pas l'habitude, on utilise pas trop le fer à souder sur des composants au pas de 0.65 mais plutôt de la pâte à braser et une soufflette à air chaud.
Super alors je vais me renseigner je crois que j'ai accès à ce matériel.
En faible Ron peu de choix!
Il y aurait peut-être chez Vishay le DG408 qui existe en SOIC16 c'est du pas de 1.27 on peut le souder à la main sur une breakout board. Il est un peu moins bon que l'ADG1411 avec un Ron de 17Ω typique seulement. Je n'ai pas vérifié toutes ses caractéristiques.
17Ω ça reste encore plutôt négligeable mais quand je vois que l'ADG1411 propose du 1.8Ω je vais certainement finir par partir là-dessus quitte à payer le prix fort et les galères qui vont avec.
J'ai fais un tour sur ton lien et effectivement il y a un autre choix qui semble correspondre à mes critères (faible Ron et facile d'utilisation) : c'est le MAX4661CPE+ (ou le 4601 mais j'ai cru comprendre que ce sont les mêmes). Cependant son functional diagram ne m'est pas facile à comprendre : on met le 0 ou le 1 de commande à VL et on récupère le pin SD connecté à COM1 soit dans NC1 soit dans IN1 ? Il pourrait également gérer 4 pins SD vers 8 sorties différentes donc pareil que le ADG1411 il m'en faudrait 4 pour rediriger les 9 pins SD. Si c'est bien ça alors il correspond bien à mon utilisation et serait une bonne alternative. Deux soucis subsistent cependant :
Celui-ci est encore plus cher qu'un combo ADG1411 + breakout module.
Entre mon montage analogique pour le tracé des caractéristiques courant tension, le slot SD, et le multiplexeur analogique ADG406BNZ, je pense que je vais commencer à manquer de place sur ce projet qui, in fine, doit être un shield SD de format standard Arduino Due.
Je pense partir sur le ADG451BNZ. Avec 5Ω de Ron, un format DIP pour prototyper sur breadboard facilement et seulement 7 euros ça me semble être le meilleur choix. Juste une petite question sur le functional block diagram fourni par la datasheet:
C'est une question bête puisque c'est évident mais je préfère être certain avant d'acheter : le schéma semble montrer un interrupteur qui renvoie l'entrée "IN" (qui sera connecté à un pin SD soit vers S1, soit vers S1 et D1...
On est d'accord que selon si l'on applique un HIGH ou un LOW en commande, le pin SD est redirigé soit vers S1 soit vers D1 et jamais les deux en même temps ? J'aimerais une séparation claire entre mes deux circuits (continuité et caractéristiques).
C'est un commutateur donc j'imagine que non mais c'est pas donné donc je veux pas commander n'importe quoi
où chaque pin de la carte SD est soit renvoyé vers un premier circuit Dx, soit vers un second circuit Mx, ce n'est pas du tout bon c'est ça ?!
Merci pour la réponse en tout cas
En utilisant un ADG451 et un ADG452 tu dois pouvoir réaliser un tel circuit.
Est ce que tu as envisagé l'utilisation de petits relais REED SPDT? Là tu aurais une résistance voisine de zéro.