schéma CIRC-03 problème moteur

Bonjour,
Je débute sur Arduino avec un coffret inventors kit.
J'ai un problème avec ce montage.
http://www.oomlout.com/a/products/ardx/circ-03
La première fois que je l'ai testé, le moteur a accéléré très fort et le transistor a chauffé et a dégagé de la fumée... Je n'ai pas compris quelle erreur j'ai faite.

J'ai pris le 2me transistor du coffret et j'ai fait une nouvelle fois testé ce montage, en vérifiant de nombreuses fois que je me sois pas trompé.
Cette fois rien ne chauffe mais le moteur ne s’arrête pas et ne redémarre pas comme écrit dans le programme.

En faisant des tests je me suis aperçu que je pouvais déconnecter le pin 9 sans que le moteur ne cesse de fonctionner...
Quel est le problème?

J'ai pas bien compris l'utilité de la diode en parallèle du moteur. A quoi sert elle?
Comment savoir si mon 1er transistor est fichu? J'ai testé avec un voltmètre en position diode et j'ai bien quelque chose entre la base/collecteur et la base/émetteur.

Merci pour votre aide.

quand on voit l'image du montage sur ton premier lien, j'imagine que ça ne doit pas être facile à câbler sans faire d'erreur. Je crois que tu as du inverser quelque chose, mais n'ayant pas vu ton montage...

Ils auraient pu mettre le schéma dans le bon sens, c'est un peu du n'importe quoi, mettre le +5 en bas, l'entrée en haut, beurk. La diode est censée protéger le transistor des parasites du moteur.

Si ton moteur tourne tout le temps, même pin9 débranchée, c'est qu'il y a une erreur...

transistor bouillu, transistor foutu! il est à considérer comme mort, n'essaie pas de le récupérer.

Merci pour ta réponse. Il y avait surement une erreur de mon cote lorsque le moteur marchait même sans Pin 9...
Par contre il m'a fallu changer la résistance de 10k Kohm contre une 333 ohm pour que le moteur veuille tourner...

Salut goodsayan,

Comme le dit Super_Cinci, si le transistor à fummer il y a de grandes chances qu'il soit mort.

Concernant la diode aux bornes du moteur; il s'agir d'une diode de roue libre qui sert à protéger le transistor dans ton cas de la tension inverse produite par le moteur. Cela n'empêchera que très modérément la production de parasites produits par le moteur, mais c'est important pour le transistor que tu utilises (certains transistors en ont une intégré mais pas le tien).

Ensuite à propos du moteur qui tourne tout le temps, c'est que le transistor utilisé dans le montage comme un interrupteur en schématisant est en permanence "sur ON".
Normalement, si la pin 9 est à "0", le transistor doit aussi être sur "OFF".
Si tu veux vérifier que cela fonctionne coté commande du moteur et que tu as peur de griller quelque chose, tu peux le faire sans l'Arduino :
Tu prends le câble qui doit aller à la pin 9 et tu le mets à la masse (0V) -> le moteur ne doit pas tourner.
Et si tu mets le câble qui doit aller à la pin 9 sur du 5V -> le moteur doit tourner.
=> En fait on simule la commande faite par l'Arduino. Si cela ne fonctionne pas comme ça, cela ne fonctionnera pas plus avec l'Arduino.

A coté de cela, bien qu'il soit stipulé que tu puisses piloter des moteurs jusqu'à 600mA, je trouve que le transistor utilisé est "léger". Surtout en commande linéaire. D'expérience, demander plus de 100~200mA à un boitier TO92 c'est risqué (certains diront peut-être suicidaire).
Il faudrait voir la demande énergétique du moteur (1A en crête ?), mais à vue de pif' j'aurai plutôt conseillé d'utiliser un transistor un peu plus costaud, voir un Darlington du genre TIPxxx. Surtout si c'est destiné à un kit de découverte car on a vite fait de faire une boulette. Avec un TIP120 par exemple, avant de le faire fumer il faut "insister".
Bon, en même temps, des petits transistors comme le 2Nxxx ce n'est pas onéreux, donc rien de grave.

Ok merci a vous. J'ai maintenant bien compris le rôle de la diode aux bornes du moteur.
Par contre, j'ai encore du mal à cerner le rôle du transistor.
Dans le carnet du coffret, ils expliquent (si j'ai bien compris c'est en anglais...) qu'un transistor permet de modifier le courant par rapport à celui reçu à sa borne d'entrée. Ils ne donnent aucune explication pour les calculs de ce nouveau courant. Je n'ai aucune idée de sa valeur... Je dois approfondir cela.
Durant mes tests, J'ai branché le moteur en direct sur la borne 3,3V (pas sur le 5V, j'avais un peu peur de faire une connerie) et la masse et il fonctionne. J'en ai conclu qu'ils montraient simplement un moyen de faire fonctionner d'autres moteurs qui demandent plus d'ampères mais que le moteur fourni dans le kit n'avait pas forcément besoin de ca.
Maintenant tu me parles du transistor utilisé comme interrupteur et la je vois pas le lien... A la limite que le pin 9 (avec le programme qui va avec ce schéma) soit en schématisant un interrupteur, pourquoi pas, mais le transistor???

Par contre, j'ai encore du mal à cerner le rôle du transistor.

Il existe plusieurs types de transistors : les bipolaires et les Mos, fet etc.
Un 2N2222 est un transistor bipolaire (BJT en anglais).

Le transistor bipolaire est un amplificateur de courant :
La commande se fait sur la "base", l'utilisation se fait sur le "collecteur", la 3eme patte l' "émetteur" est reliée au 0V.

On a la relation fondamentale Ic= beta fois Ib "beta" est le gain du transistor (on dit aussi hfe en anglais" ).
Autre point important entre les pattes base et émetteur on a l'équivalent d'une diode en direct donc la tension VBE sera toujours voisine de 0,7V--> ne jamais appliquer directement une sortie arduino (5V) sur la patte de "base" toujours mettre une résistance en série.
Calcul de R :
Ton besoin par exemple Ic = 100mA
Ton transistor, par exemple beta = 100
Calcul de Ib : Ib = Ic/beta --> Ib = 1mA mais comme on travaille en tout ou rien (on dit en commutation) on veut être sur que le transistor sera bien saturé(1) on choisi Ib = 10 fois Ib théorique
Calcul de R : U=RI (loi d'Ohms) U= Vcc- 0,7V = 4,3V --> R= 4.3/0,01 = 430 ohms --> on choisi la valeur normalisée la plus proche.

(1) Quand un transistor est saturé la tension Vce est proche de 0V(entre 0.1 et 0.3V) --> on parle de "Vce sat". C'est une utilisation courante en commutation.

PUISSANCE DES TRANSISTORS :
Bien distinguer la puissance dissipée dans le transistor, transistor off -> P voisine de 0W; transistor conducteur P=Vcesat*Ic,
du courant maximal que le transistor supporte et se méfier en particulier des appels de courant qui sont souvant très bref mais intenses.
Règle de base --> ça dépend du boîtier: un petit boîtier plastique (TO92) ne pourra pas dissiper beaucoup, il faut passer en boîtier TO220 ou TO3 et éventuellement utiliser des radiateurs.

Attention : les transistors de puissance ont généralement des beta faibles : 20 est une valeur courante c'est pourquoi on t'a parlé de Darlington qui en fait est montage à 2 transistors intégré dans un boîtier (de l'extérieur on ne voit pas de différence) et qui allie les avantages des petit transistors et des gros. Attention dans ce cas le Vbe apparent est égal au minimum à 2*Vbe -> bien lire la datasheet.

Conseils généraux :
Google ou Wikipédia seront très souvent tes amis.
Taper le mot "transistor" dans Wikipédia te donneras un bon aperçu de ce qu'est un transistor.
Une recherche google "Référence_du_composant datasheet" te donneras accès à un pdf des spécifications techniques du composant. Tu ne manqueras pas de faire la différence entre les valeurs à ne jamais dépasser (Maximum Ratings) des valeurs de service garanties par le constructeur ni de vérifier les valeurs min et max qui sont souvent très dispersées.
Par exemple il n'est pas rare de trouver pour "beta" une valeur typique de 100, une valeur min de 80 et une max de 400. Dans ce cas pour faire les calculs on se place toujours dans le cas le plus défavorable.

D'expérience, demander plus de 100~200mA à un boitier TO92 c'est risqué (certains diront peut-être suicidaire)

Risqué Suicidaire

Quant au transistor qui continue à conduire même sans commande il est peut être simplement en court-circuit emetteur-collecteur a la suite du passage d'un courant trop important (appel de courant ?).
Pour le voir c'est simple : le transistor étant retiré de son montage il suffit de tester avec un ohmètre entre l'émetteur et le collecteur (peu importe le sens de branchement): s'il est bon on a une résistance quasi infinie, s'il est en CC on n'a que quelques ohms.

Waouh merci pour toutes ces explications!
Je commence à mieux comprendre mais il manque en fait pas mal d'info dans le carnet pour bien comprendre ce montage. En effet pour l'instant je suis "bêtement" ce qu'il y a d'écrit car le choix des valeurs de résistance ou de transistor ne sont pas détaillé. Je ne connais même pas les besoins en alimentation de mon moteur et avec seulement "toy motor" comme référence, je trouve rien sur Google...

  • Comment puis je les obtenir? Est ce un modèle si courant qu'ils ne donnent pas ces infos?

J'ai trouvé la datasheet du transistor http://ardx.org/datasheet/IC-2222A.pdf ou les maximums ratings sont indiqués. Mais je ne trouve pas le gain. Il y a bien une colonne hfe mais il y a plusieurs valeurs...

  • Ou faut il regarder dans le datasheet?
    C'est quand même bizarre que ce paramètre ne soit pas plus mis en avant dans la doc...
    En tout cas, ton calcul de la résistance sur la base 430 Ohms confirme mes tests. Dans le schéma du livret, ils disent d'utiliser une résistance de 10 KOhm mais le moteur ne tourne pas. En mettant une de 330 Ohm (pas loin de tes 430 Ohm) la cela fonctionne parfaitement
    .

entre les pattes base et émetteur on a l'équivalent d'une diode en direct donc la tension VBE sera toujours voisine de 0,7V

  • Comment trouves t'on cette valeur?

Merci d'avance et désolé pour mon niveau en électronique...

goodsayan:
(...) Je ne connais même pas les besoins en alimentation de mon moteur et avec seulement "toy motor" comme référence, je trouve rien sur Google...

  • Comment puis je les obtenir? Est ce un modèle si courant qu'ils ne donnent pas ces infos?
    (...)

En mesurant la résistance du bobinage du moteur (avec un Ohmmètre) et la relation U=RI tu peux déterminer grosso-modo se qu'il va demander en courant -.^

Valeur Vbe ~0.7V à 0,8V :
C'est la valeur "classique" de la chute de tension au bord d'une diode. Avant quand le 2n2222 était utilisé en amplification linéaire (le 2n2222 existait déjà en 1969 quand j'ai fini mes études !) on pouvait le vérifier sur les nombreuses courbes fournies.
Maintenant les courbes liées à l'amplification ont disparu et .... tu nous crois sur parole non mais ! :grin:.
D'autant que la valeur n'est pas critique et dépend de la valeur du courant ib.

En mesurant la résistance du bobinage du moteur (avec un Ohmmètre) et la relation U=RI tu peux déterminer grosso-modo se qu'il va demander en courant -.^

Sans être un spécialiste des moteurs à courant continu (connaissances scolaires uniquement, vieilles de ouh là là) je pense que le calcul d'Ekaki te donnes la valeur max du courant au démarrage, c'est la plus importante c'est celle qui te permettra de dimensionner le transistor.
Ce ne sera certainement pas celle indiquée par le constructeur qui généralement sera celle du moteur quand il tourne à vide.
Un moteur qui tourne ne se comporte pas comme un bobinage de relais, il créé une force contre électromotrice (fcem) qui s'oppose à la source d'alimention appelée force électromotrice (fem). La conséquence est que la valeur du courant diminue.
Imoteur_qui_tourne = (fem-fcem)/R.
La valeur de la fcem dépend du moteur et de la charge du moteur, d'où l'emploi de réducteur pour que le moteur tourne le plus possible à vide.
A l'extrême pour diminuer le courant de démarrage on fait démarrer les gros moteurs avec des résistances en séries qui sont court-circuitées les unes après les autres au fur et à mesure que la vitesse de rotation du moteur augmente, les "jeunes parisiens de mon âge" se rappellent peut-être des clacs des relais de court-circuitage au démarrage des métro parisiens.

Merci pour vos réponses.
Vais essayer de me trouver des exos simples d’électricité/électronique car j'ai vraiment des lacunes...

Bonne démarche mais n'hésites pas a revenir sur le forum car tout n'est pas dans la théorie, l'expérience pratique des autres est aussi utile.

Edit je continue ma réponse.
J'ai trouvé la référence de ton kit (tu n'avais pas indiqué le lien, j'ai du le rechercher --> tu viens d'utiliser ton jocker attention la prochaine fois :grin:).
En cliquant sur le moteur puis sur la datasheet j'ai trouvé des informations intéressantes :
Identification exacte du moteur : ce n'est pas indiqué :0 mais vu la photo et l'indication de 12800 tour/mn je déduit qu'il s'agit du 201A.
La gamme de tension d'utilisation est 1,5 V à 4,5V avec un typique à 3V.
Première réaction : ils sont gonflés chez Sparkfun de livrer un moteur 3V typique et 4,5V max pour être utilisé à 5V :0
Ensuite si on fait une règle de 3 (on devrait en avoir le droit) @ 5V le courant de service (pas celui de démarrage) n'est plus de 320mA mais 533 mA.
Deuxième réaction : ils sont gonflé chez Sparkfun de ne livrer qu'un transistor en boîtier TO92 ! Un transistor en boîtier TO220 aurait été préférable surtout que la différence de prix est minime.

Tu pourras noter la variation de courant quand le moteur est chargé :
@3V
moteur à vide : vitesse = 12.800 tours/mn I = 0,320 A
moteur chargé : vitesse = 10.000 tours/mn I = 1,3 A

Conseil : il existe d'excellents distributeurs en France pour compléter ta base de composant.
Sparkfun a sans doute d'excellent produits évolués à des prix compétitifs (carte arduino, shields , etc) mais ils m'ont l'air de se rattraper goulûment sur les pièces détachées.

Conseil 2 : toujours rechercher les datasheets et ne pas se contenter des informations commerciales. En cas d'incohérence c'est la datasheet qui doit faire référence.