Alimentation d'un servomoteur à l'aide d'une batterie

Bonjour,
je voulais utiliser pour l'un de mes projets autonomes un "Boucliers 18650". (rechercher sur le net "18650 battery shield")

Ces boitiers fournissent des broches de sortie en 5V et en 3V ainsi qu'une prise USB.
Ils existent avec 1, 2 ou 4 batteries. Et ils sont équipés d'un chargeur de batterie.
pour ma part j'en ai un avec un seul emplacement de batterie 18650

J'aimerais l'utiliser pour alimenter un servomoteur MG995 en utilisant directement une des sortie 5V de ce shield et donc sans passer par une des broches 5V de l'arduino ce qui la laisse libre pour autre chose que je veux effectuer plus tard.
Mais lorsque que j'essaye de faire fonctionner le servomoteur comme ça rien ne se passe alors que lorsque je repasse sur l'alimentation 5v de l'arduino tout fonctionne parfaitement

Je ne sais pas pourquoi car le shield est censé sortir le bon voltage et debiter une intensité suffisante, j'ai testé avec un multimetre et j'ai bien 5v aux bornes du shield
Pouvez vous m'aider ?

c'est une bonne idée, il ne faut pas utiliser la sortie 5V de votre Arduino comme source de courant pour des moteurs... ça peut tirer beaucoup trop.

là il faudrait voir le montage physique du circuit et le code et la gestion de GNDs etc...

Merci @J-M-L pour le schéma et le code j'ai vraiment fait au plus simple pour tester si ça fonctionnait
C'est a dire 3 fil, un sur le 5v, un sur gnd, et le dernier sur la pin 2

et le code le voici :

#include <Servo.h>
Servo servoMotor; //  Créez un objet servo

void setup() {
  servoMotor.attach(2); // Indiquez la broche à laquelle le servo est connecté (ici : broche 9)
}

void loop() {
  servoMotor.write(0); // Envoyez le servo à la position de 0 degré
  delay(1000); // Attendez 1 seconde
  servoMotor.write(90); // Envoyez le servo à la position de 90 degrés
  delay(1000); // Attendez 1 seconde
  servoMotor.write(180); // Envoyez le servo à la position de 180 degrés
  delay(1000); // Attendez 1 seconde
}

vous pouvez poster une photo du montage réel avec les alims (+ et - ) visibles ?

1er cas ça fonctionne

2e cas ça ne fonctionne pas

Comme il est question d'une carte Arduino + un bloc batterie et que sur les 2 il y a des points GND et +5V il serait judicieux d'être un peu plus précis.
Un petit croquis de l'interconnexion éviterait de faire des suppositions.

Edit: les photos n'aident pas beaucoup. Le câblage de l'arduino sur les 2 photos est différent et on ne voit pas comment le servo est alimenté.

Désolé je pensais que c'était assez compréhensible l'Arduino est alimenté via usb par le pc dans tous les cas la seule chose qui change c'est l'alimentation de mon servo moteur
dans le cas de la photo 1 ou tout fonctionne bien il est alimenté pour la broche 5v et gnd de l'Arduino
et dans le cas 2 il est alimenté par la broche 5v et gnd du Shield de 18650 que j'ai mentionné plus haut

il faut relier le GND de la carte Arduino aussi au servo, là je ne vois qu'un seul fil qui part de la pin 2 pour la commande sans doute

image

une règle simpliste des circuits c'est que vous devez toujours avoir un chemin pour que les électrons qui ont quitté une alim, reviennent à cette alim.

avec le + et le - allant sur le moteur vous avez le chemin pour la mécanique du mouvement
mais si vous n'avez que le fil orange de commande, les électrons qui "partent" vers le moteur proviennent du port USB et n'ont pas de moyen d'y revenir ➜ en rajoutant le lien GNDarduino <--->GNDservo vous créez ce chemin de retour

1 Like

Merci pour cette explication très claire @J-M-L c'était effectivement ça le problème.
J'essaye de me former au mieux et d'en apprendre plus chaque jour.

c'est comme cela que l'on progresse. On est tous passé par là.
bonne continuation

Bonjour,

Je reviens et rouvre ce sujet car un nouveau problème est survenu que je ne parviens pas à régler.
Maintenant le servomoteur reçoit bien les informations et réagit comme je le veux.
Mais le problème est que de temps en temps lorsque le servo commence à bouger au démarrage ça éteint l'arduino et il faut que je débranche/rebranche l'alimentation pour qu'elle refonctionne et si cela ne se produit pas au démarrage ça arrive forcément après quelques seconde d'utilisation du servomoteur lorsque je lui donne une nouvelle commande.
Je ne comprends pas trop pourquoi d'instinct je pense que cela est dû à un pic d'intensité qu'envoie le servo à son démarrage et qui se répercute sur l'arduino qui doit se mettre en sécurité ou quelque chose dans le genre ?
Mais je ne comprends pas pourquoi car normalement le shield pour les 18650 que j'ai présenté plus haut devrait empêcher ce genre de chose.*
Si quelqu'un peut m'éclairer la dessus ?

un pic de demande de courant peut faire écrouler la tension

Et comment je peux résoudre ce problème ?
Car mon Shield 18250 fournit 4A pour 5v ce qui est bien assez pour un servo moteur, je ne devrais pas être embêter par ce genre de problèmes normalement je me trompe ?

le shield ne fournit rien, ça dépend des batteries que vous mettez dedans...

ma batterie est une 18650 3A donc pareil elle fournit largement ce dont j'ai besoin pour un seul servo

3A ça ne veut rien dire. Vous voulez dire 3000mAh ?

Vous avez la spec exacte ? combien de C ?

Vous avez 1 2 ou 4 batteries dans votre module?

oui 3000mAh désolé
Voila ce que j'ai trouve pour les spec

  • Format : 18650
  • Capacité (autonomie) : 3000mAh
  • Tension nominale : 3,7V
  • Tension max chargé : 4,2V
  • Chimie : Li-Ion Mn (IMR)
  • Courant de décharge continu (CDC) : 20A
  • Résistance mini (CDC) : 0,21ohm
  • Courant de décharge maximal (CDM) : 30A
  • Résistance mini (CDM) : 0,14ohm
  • Courant de charge standard : 2A
  • Pôle positif : Plat
  • Poids : 48g

j'ai une seule batterie dans mon module

il se peut que ce ne soit pas le problème mais ça y ressemble - un appel fort de courant fait tomber la tension et l'arduino reboot

on trouve de tout en 18650, y compris des spec très mensongères, il faudrait vérifier

sinon essayez de rajouter un condensateur en plus sur l'alim de l'arduino pour absorber les coups de mou...

Oui est non, sur le shield il y a un convertisseur 3.7 --> 5V. Il peut ne pas fournir ce qu'il promet ou avoir une piètre réponse aux pics de courant.

je voulais dire que ce n'est pas lui la source d'énergie

effectivement la qualité du convertisseur joue