arduino + servo sg-90 = surchauffe , problème de masse?

Bonjour

Je vous écris aujourd'hui pour essayer d'éclaircir mon problème.

Le week end dernier, j'ai enfin trouvé du temps pour réaliser mon premier circuit imprimé
J'ai décidé de faire un arduino (original non?) à base d'atemga 328p (avec le bootloader du uno)
Mon uploader les programmes, j'utilise un cable FTDI maison a base de cable NOKIA.
Je suis assez content du résultat, tout fonctionne plutot bien. J'ai testé 3 ou 4 montages avec succès.

Je pensais que tout était parfait jusqu'a ce que j'essais le montage "sweep" (http://arduino.cc/en/Tutorial/Sweep) avec mon petit servo sg-90

Lorsque j'essais ce montage, le servo ne bouge pas du tout.
J'ai attendu quelques secondes, puis je l'ai pris dans mes mains et je me suis appercu qu'il était très très chaud... Je l'ai vite debranché.
J'ai vérifié les connexions, et tout était correct (il n'y a que 3 fils...)

J'ai retesté juste 2 secondes, mais le servo ne bougeait pas. Je n'ai pas testé plus longtemps car j'ai peur de le "tuer".

J'ai essayé le même servo sur un vrai Arduino, et la, le même montage et même code: Cela fonctionne.

J'en déduit donc qu'il y a un problème dans mon arduino maison mais je ne sais pas trop ce que cela pourrait être sachant que j'utilise la pin digital 9 pour le montage sweep et que j'ai testé la meme pin avec d'autre montages qui fonctionnent très bien.

En fouillant sur le net, j'ai vu quelque part que le servo qui chauffe et qui ne bouge pas pourrait venir d'un problème de masse.
Pourtant, la masse du servo est bien relié à la masse GND de mon cable ftdi maison....

Est ce que vous pourriez me suggerez des pistes de résolution de problèmes?
Merci beaucoup

Voici des photos de mon circuit imprimé

Tu as fait un schéma avant de réaliser ton cuivre ?
Je suis un peu fainéant, j'ai pas envi de recréer le schéma à partir du typon :grin:

Comment as tu branché ton servo par rapport à ta carte ?

A part ca l'ATmega328 est content et marche bien ?

Tu as oublié une connexion de masse entre la masse de l'alim qui arrive sur la broche 22 et les autres masses reliées à la broch 8

Houlala...

Merci beaucoup. J'étais partis du principe que la patte 8 et 22 etait "relié" ensemble directement dans l'atmega... Je ne sais pas pourquoi...

Je vais apporter un petit correctif et tester de nouveau.

Mais par curiosité: Pourquoi est ce que cela fonctionnait avec certain montage et ceux avec le servo ne fonctionnaient pas?

Peut être mais ce n'est pas à l'ATmega de supporté tout le courant de ton montage.

D'ailleurs ca aurait du être a l'ATmega de chauffer.
je chercherais la raison du chauffage du sevo ailleurs.

Mais comme je l'ai dis plus haut, ce n'est pas facile de raisonner sur un typon.

Yep!

Tu peux détailler ton régulateur.
Pour ma part, je pense que le régulateur devrait être chaud bouillant bien avant l'arduino.

@+

Zoroastre.

Je viens d'essayer de relier la patte 8 et 22 ensemble mais malheuresement cela n'a pas réglé le problème, le servo ne bouge absolument pas. Par contre je n'ai pas laissé plus de 3 secondes car je ne veux pas que cela rechauffe comme hier...

J'ai remarqué quelque chose:
Ces tests ont été effectué avec l'alimentation provenant de mon cable ftdi nokia maison.
Si je test avec une pile de 9v à la place de mon cable ftdi, cela ne fonctionne toujours pas MAIS j'ai remarqué que si je branche tous les fils du servo, la led de "power", s'eteind (surrement comme si elle etait courcircuité ??). Cela ne fait pas ca avec mon cable FTDI.

Le servo est branché comme ceci:
Fil rouge sur VCC, Fil marron sur GND et fil orange sur pin 9.

J'ai "essayé" de mettre au propre mon schéma dans fritzing. Je ne suis pas doué pour placer les composants et faire le routage à la main mais j'ai fais ce que j'ai pu :slight_smile:
Voici à quoi cela ressemble:

Je ne comprend vraiment pas d'où peut venir le problème...

En tout cas, merci pour votre aide. C'est très apprécié.

Il ne faut pas utiliser 2 alims en même temps
C'est pas très bon d'injecter du courant depuis le FTDI vers la carte et surtout vers la sortie du régulateur 7805

Perso je couperais la connexion VCC sur le connecteur FTDI et j'alimenterais systématiquement la carte via le 9V.
Le plus simple est de dessouder et enlever la pin VCC de la barrette sans toucher aux autres
Ou alors de te faire un petit adaptateur male-femelle avec la pin VCC en moins pour quand tu veux avoir a la fois le FTDI et l'alim 9V

Quelle pin 9 ? pas celle du ATMega puisque la 9 est une des broche de l'oscillateur. Tu dois vouloir dire D9 = pin 15.

Ces tests ont été effectué avec l'alimentation provenant de mon cable ftdi nokia maison.

Quelle valeur prend VCC quand tu essayes de faire ton essai avec le servo branché ?

j'ai remarqué que si je branche tous les fils du servo

Parce que tu essaye sans tous les brancher ????

j'ai remarqué que si je branche tous les fils du servo, la led de "power", s'eteind

Dans quel ordre branches tu le fils ?
A partir duquel est-ce que ca s'éteind ?

Est-ce que ton servo marche toujours sur ton Arduino original ?
Est-ce le même ATmega328 que tu transporte de l'Arduino orginal sur ta propre plaquette ou un ATmega différent ?
Si différent, peux tu tester ton ATmega328 de ta plaquette en le plaçant sur la vrai Arduino

Bonjour

Non non, j'ai bien compris qu'il ne fallait JAMAIS alimenter l'arduino avec deux sources différentes en même temps. Je l'alimente soit par le cable FTDI, soit par la pile, mais jamais les deux en même temps.
Mais si je comprend bien, j'abime mon régulateur lorsqu'il n'y a pas de pile de branché mais que mon cable FTDI est branché car j'injecte du courant sur sa sortie? L'ideal serait d'avoir un jumper pour choisir ma source d'alim?

Oui je voulais dire la pin D9 et non 9.

Quelle valeur prend VCC quand tu essayes de faire ton essai avec le servo branché ?

Je vais tester ce soir

Parce que tu essaye sans tous les brancher ????

Vu qu'il devenait super chaud, j'ai vite debranché le fil rouge du servo mais j'avais laissé les deux autres branché.

Dans quel ordre branches tu le fils ?
A partir duquel est-ce que ca s'éteind ?

Voici le cas de figure:
Fil marron du servo est relié à la masse
Fil orange du servo est relié sur la pin D9
Fil rouge NON branché
Je relis la pin 8 à la pin 22 (pour relié les masses ensembles)

Si j'essaye ca en alimentant par le FTDI, la led power s'allume
Si j'essaye la même chose en alimentant par la pile 9v à la place du cable FTDI, la led power ne s'allume plus

Est-ce que ton servo marche toujours sur ton Arduino original ?
Est-ce le même ATmega328 que tu transporte de l'Arduino orginal sur ta propre plaquette ou un ATmega différent ?
Si différent, peux tu tester ton ATmega328 de ta plaquette en le plaçant sur la vrai Arduino

Oui, j'ai restesté le servo et l'atmega lui même sur mon vrai arduino uno et cela fonctionne.

Merci

Sur le circuit imprimé, les marquages au feutres sont faux
VCC en haut et GND en bas (coté ocsillateur 16MHz)

atlas2003:
Mais si je comprend bien, j'abime mon régulateur lorsqu'il n'y a pas de pile de branché mais que mon cable FTDI est branché car j'injecte du courant sur sa sortie? L'ideal serait d'avoir un jumper pour choisir ma source d'alim?

Et avec une simple diode en sortie du régulateur à la place de ton jumper ?

J'ai inversé le label VCC et GND :fearful: :blush:
Comment j'ai pu faire ca...
Dans la vie, c'est en faisant des erreurs qu'on avance.

Je vais retester ca ce soir, mais ca risque de fonctionner.... Désolé de vous avoir pris du temps pour cela.

Sinon effectivement, la simple diode a l'air d'etre une bonne idée. Est ce que je devrais la rajouter?

atlas2003:
Sinon effectivement, la simple diode a l'air d'etre une bonne idée. Est ce que je devrais la rajouter?

Si tu veux pouvoir debogguer avec Serial en même temps que tu fait quelque chose qui réclame une alim costaud, mieux vaut
C'est valable pour les 2 alims, donc je dirais une diode en série dans chaque alim.