Probleme L298 et moteur DC trop puissant

Bonjour a tous.

Je suis novice en Arduino et je dois faire face à un problème avec un L298 et deux moteurs CC.

Le but est de pouvoir contrôler des moteurs avec ma carte arduino.

J'ai tout d'abord réalisé des essais avec un petit moteur 12V de récup. J'arrive sans problème à le faire tourner dans chaque sens et à faire varier la vitesse via une télécommande IR avec un shield L298.

Fort de ce succès, je décide de passer à l'étape supérieure avec deux moteurs un peu puissants dans le but de réaliser un lanceur de balles de tennis. :-)

Lorsque je branche ces moteurs sur le L298 avec exactement la même config qu'avec mes petits moteurs j’entends un petit bourdonnement au niveau du moteur mais rien ne se passe. J'arrive a faire tourner le moteur en lui donnant un peu d'élan sur son axe mais il tourne a une vitesse trés faible avec quasiment 0 de couple. De plus le L298 chauffe....

Je n'y connais pas grand chose en électronique c'est pour cela que j'aurais besoin de votre aide. On dirait un manque de puissance de la part du L298 d'autant que si je branche le moteur en direct sur mon alim 12V il tourne sans problème.

Merci d'avance.

Le moteur: Moteur Le shiled L298 : Shield l298

Salut,

Pas de code, pas de branchement ... et malheureusement pas devin

Salut Batto.

Merci pour votre réponse.

A l'origine je pensais que le problème ne venait pas ni du code ni des branchements puisqu'en branchant le petit moteur de récup à la place cela fonctionne !

Le code:

//--------Moteur HAUT-----------
const int PWM_Moteur1 = 3; //EnA
const int Moteur1_in1 = 2;
const int Moteur1_in2 = 4;

//--------Moteur BAS -----------
const int PWM_Moteur2 = 6; //EnB
const int Moteur2_in1 = 5;
const int Moteur2_in2 = 7;


void setup()
{
    pinMode(PWM_Moteur1, OUTPUT); //configuration en sortie de la broche PWM_Moteur1
    pinMode(PWM_Moteur2, OUTPUT); //configuration en sortie de la broche PWM_Moteur2
    pinMode(Moteur1_in1, OUTPUT);
    pinMode(Moteur1_in2, OUTPUT);
    pinMode(Moteur2_in1, OUTPUT);
    pinMode(Moteur2_in2, OUTPUT);
    
        //on démarre les moteurs en avant et en roue libre
    analogWrite(PWM_Moteur1, 0);
    digitalWrite(Moteur1_in1, LOW);
    digitalWrite(Moteur1_in2, HIGH);
    
    analogWrite(PWM_Moteur2, 0);
    digitalWrite(Moteur2_in1, HIGH);
    digitalWrite(Moteur2_in2, LOW);
    
}

void loop()
{

    int vitesse = 255;

    //envoie la nouvelle vitesse sur le moteur
    analogWrite(PWM_Moteur1, vitesse);
    analogWrite(PWM_Moteur2, vitesse);

    delay(50);
}

Le montage est bon (enfin je suppose) car il fonctionne bien avec un petit moteur. Le 5V et le GND du Shield sont reliés avec celui de l'arduino pour avoir un référentiel commun.

Quelle est le moteur utilisé ? ampérage maximum? Le L298 ne peut pas délivrer un ampérage illimité, c'est sans doute à ce niveau que ça coince.

Bonsoir Christian et merci pour ta réponse.

Le moteur:Moteur Le Shield :Shield

Courant d'arrêt: 115A !

On est très loin au dessus de ce que passe le L298, "output current , 2A" http://au.element14.com/stmicroelectronics/l298n/motor-type-full-bridge/dp/403295?CMP=GRHB-ICNARA

C’était bien ce que je pensais mais je ne comprend pas bien la notion de “courant d’arrêt”.

Existe il une carte/shield pilotable par Arduino ou une astuce quelconque pour pouvoir utiliser ces moteurs?

Le lien ci-dessous montre un gars qui a réalisé ce lanceur de balles avec les mêmes moteurs, et deux shields pont en H !

lien vidéo

Disons qu’avec Arduino je pensais pouvoir faire varier la vitesse des deux moteurs indépendamment pour donner plus de lift ou d’effet retro à la balle.

J’espère ne pas les avoir acheté pour rien…

Le terme de ‘courant d’arrêt’ est assez nébuleux… traduction foireuse ? (ces “moteurs à brosse” sont des moteurs à collecteur à balais).
Il existe des modules de contrôle de moteur DC pour Arduino supportant 30A.

Tu peux mesurer à l’ampèremètre ce qui passe dedans ?

Oui, j'ai vu aussi que certains controleur peuvent supporter 30A, mais est ce que cela sera suffisant ? Etant donné leur cout, je prefere etre sur avant de ma lancer.

J'ai un multimetre, mais ou dois-je effectuer les mesures?

cdlt

smazaudi: Oui, j'ai vu aussi que certains controleur peuvent supporter 30A, mais est ce que cela sera suffisant ? Etant donné leur cout, je prefere etre sur avant de ma lancer.

J'ai un multimetre, mais ou dois-je effectuer les mesures?

cdlt

bonjour

-Le stall current (traduit là par courant d'arret) est le courant consommé par le moteur en situation de blocage. je n'ai pas vu la notion de free current , courant consommé par lke moteur sans charge.

faire un test avec simplement une alim 12V et un ampèremètre et regarder la consommation en "freinant" le moteur, ça donnera déjà une pas trop mauvaise idée pour dimensionnerles driver.

en ce qui concerne les drivers pour l'application , si j'ai bien compris chaque roue doit pouvoir tourner à une vitesse differente mais toujours dans le meme sens ? si oui pas besoin de pont en H , un simple bon mosfet par moteur et ça fait la rue Michel pour peanuts.

Bonjour.

Merci Artouste.

Le principe de fonctionnement est le suivant: Chaque roue tournera toujours dans le même sens, il me suffit simplement de pouvoir éventuellement faire varier la vitesse sur chaque roue. La roue du dessus tourne dans le sens inverse de celle du dessous. La balle est "happéé" entre les deux roues et est éjectée de l'autre côté. Par la suite je vais intégrer deux autre moteurs moins puissants pour gérer le droite-gauche et le haut-bas. Je pourrai donc réutiliser mon L298 :-).

Je connaissais pas les MOFSET mais effectivement cela conviendrait pour mon projet est a priori c'est pas très cher. Je commence à me documenter sur la question et sur son interfaçage avec Arduino.

Je viens d'effectuer plusieurs tests de ma machine avec deux alimentations 12V différentes:

La première est une alim de PC que j'ai transformé en alim d'atelier. Je n'ai plus les caractéristiques exactes mais je pense qu'elle doit raisonnablement délivrer du 10A. Dans ce cas, les deux moteurs se mettent à tourner assez rapidement et j'arrive à envoyer des balles à environ 6-7 mètres, même si la balle ne part pas vraiment vite.

Ce n'est pas suffisant, il me faudrait environ le double. Couple pas suffisant, en tout cas je ne pense pas qu'il corresponde à celui indiqué de 345 oz-in. Je précise que j'ai fait le test en alimentant les deux moteurs à la fois avec la même alim.

Deuxième essai avec une alim 12V mais de type adaptateur secteur du commerce qui délivre de 1.5-2A avec le vent dans le dos :-). Si je la branche sur les deux moteurs à la fois -> rien / un léger soubresaut mais pas plus ! Sur un seul moteur il démarre timidement, tourne lentement et une mouche suffit pour le stopper lol.

Je vais tester ce soir en utilisant le multimètre pour mesurer mieux l'ampérage.

Ceci confirme bien que je vais avoir besoin d'un Amperage conséquent pour réaliser mon projet. (P=U x I......).

La question est donc de connaitre cette valeur, je ne pense pas que 115A soit forcément nécessaire....

Aprés recherche plus approfondie, j'ai trouvé Cette réference qui paraît être le même moteur que les miens (en tout cas on s'en rapproche). Puis-je me baser sur cette valeur ? : Current - Peak Eff: 19.8A

Autre question: je commence à m'intéresser aux batteries 12V pour pouvoir l'utiliser librement sur n'importe quel terrain. J'imagine que je vais devoir les dimensionner correctement pour qu'elle dur plus de 10mn , j'espère ne pas devoir acheter une 240Ah qui va me côuter les yeux de la tête !

Merci pour vos réponses.

smazaudi: ...

Je connaissais pas les MOFSET mais effectivement cela conviendrait pour mon projet est a priori c'est pas très cher. Je commence à me documenter sur la question et sur son interfaçage avec Arduino.

...

Dans ce cas, les deux moteurs se mettent à tourner assez rapidement et j'arrive à envoyer des balles à environ 6-7 mètres, même si la balle ne part pas vraiment vite.

Ce n'est pas suffisant, il me faudrait environ le double. Couple pas suffisant, en tout cas je ne pense pas qu'il corresponde à celui indiqué de 345 oz-in. Je précise que j'ai fait le test en alimentant les deux moteurs à la fois avec la même alim.

Je vais tester ce soir en utilisant le multimètre pour mesurer mieux l'ampérage.

La question est donc de connaitre cette valeur, je ne pense pas que 115A soit forcément nécessaire....

Aprés recherche plus approfondie, j'ai trouvé Cette réference qui paraît être le même moteur que les miens (en tout cas on s'en rapproche). Puis-je me baser sur cette valeur ? : Current - Peak Eff: 19.8A

Autre question: je commence à m'intéresser aux batteries 12V pour pouvoir l'utiliser librement sur n'importe quel terrain. J'imagine que je vais devoir les dimensionner correctement pour qu'elle dur plus de 10mn , j'espère ne pas devoir acheter une 240Ah qui va me côuter les yeux de la tête !

reponses en vrac :

Ok pour les caracteristiques du moteur , il faut dimensionner les mosfet pour une dissipation de mini 25A en prenant ceinture et bretelle il faut taper mini dans du 50A et P.dissipée 300W. Il y a des candidats assez facile à sourcer.

pour la commande vitesse , c'est simplement du PWM (2 canaux)

pour la vitesse d’éjection des balles, en dehors du couple il faut aussi tenir compte des vitesses circonférentielles et donc aussi du diamètre des roues.

Pour l'alimentation par batterie c'est surement une bonne solution en sachant que la conso I max est de courte durée.

D'ailleurs dans la video (à 1'58" ) on dirait bien qu'il s'agisse de 2 batteries (genre moto) de 6V en série

Si tu envoies des balles de tennis, 10Ah 12V = 120Wh c'est déjà très puissant, de quoi tirer 60W pendant heures.

OK pour le dimensionnement du MOSFET.

Aprés recherche, je pense que ces trois là pourraient convenir: Lien 1 Lien 2 Lien 3

J'ai volontairement prévu large, qui peut le plus peut le moins. Qu'en pensez-vous ?

Parc contre j'ai lu sur un site que :

En particulier, il faut que la valeur Vgs (Gate Threshold voltage) soit en gros autour de 2 ou 4V. Il existe des Mosfet dits logiques avec des valeurs de Vgs basses (entre 1 et 2V) comme le IRL540N qui fonctionne ausi très bien.

D’autres Mosfet, enfin, ont des valeurs Vgs trop élevées que ne pourrait pas atteindre directement en sortie d’une broche Arduino (Maxi 5V).

J'ai donc choisi en conséquence.

Pour la vitesse d'éjection des balles, j'ai des roues de 15cm de diamètre, ce qui me donne une vitesse angulaire relativement confortable.

Dans la vidéo, je me demande bien quelles cartes il utilise, dans les commentaires il parle de L298 dont je sais qu'il n'est pas viable.

Pour les batteries, je pense qu'il en utilise une par moteur.

Je viens de balayer tous les commentaires de la video.

APparemment il utilise un BTS7960B 43A Stepper Motor Pilote H-Drive Bridge

smazaudi: Je viens de balayer tous les commentaires de la video.

APparemment il utilise un BTS7960B 43A Stepper Motor Pilote H-Drive Bridge

bonjour ça donne une idée du dimensionnement

pour "tes" mosfets à par peut etre le 1 , c'est OK regarde aussi vers les mosfets N logic et il ne faut pas oublier que la //lisation de mosfet est simple et à l'avantage de faire baisser le Rds On .

Voilà , j'ai commandé ces fameuses cartes IBT-2. J'ai fait quelques essais avec mon petit moteur. Je me suis basé sur Le montage suivant. Ca marchait impec.

Le problème c'est que cela ne fonctionne pas avec mes moteurs FIRST CIM, un leger soubresaut mais pas plus, même combat qu'avec un L298.

J'avoue que j'en perd mon latin, d'autant que le gars utilise ces mêmes cartes.

Si vous avez des idées.....

smazaudi: Voilà , j'ai commandé ces fameuses cartes IBT-2. J'ai fait quelques essais avec mon petit moteur. Je me suis basé sur Le montage suivant. Ca marchait impec.

Le problème c'est que cela ne fonctionne pas avec mes moteurs FIRST CIM, un leger soubresaut mais pas plus, même combat qu'avec un L298.

J'avoue que j'en perd mon latin, d'autant que le gars utilise ces mêmes cartes.

Si vous avez des idées.....

bonjour ton "gros" moteur alimenté en direct sur ton alim fonctionne bien ? l'alim ne s'ecroule pas au demarrage ?

Un 1/2 pont en H est nécessaire s'il faut pouvoir freiner les moteurs, si non un mosfet N logique suffit. Un mosfet N approprié doit aussi exister tout fait sous forme de "shield"

bonjour ton "gros" moteur alimenté en direct sur ton alim fonctionne bien ? l'alim ne s'ecroule pas au demarrage ?

Oui, il fonctionne bien. Si je branche les deux en même temps les deux démarrent aussi correctement.

Je pensais peut être à un problème d'ampérage important nécessaire un démarrage du moteur, dans ce cas, peut être qu'un PID pourrait aider ???

J'ai fait d'autres recherches sur les spécifs de mes moteurs : Specifs

Le fichier indique des notions un peu floues pour moi, notamment le STALL CURRENT qui, si j'en crois mon beau frère est le courant nécessaire au démarrage du moteur..... soit 133A, donc avec 43A je suis un peu léger.

Mon alim PC serait donc capable de fournir cet amperage pendant un court laps de temps alors que le Shield ne me permettrait même pas de monter au delà de 43A, est ce que mon raisonnement est bon?

A priori le gars utilise un PID mais je pensais que cela servait uniquement à calculer et faire tourner le moteur à une RPM précise. D'apres ce que je comprend un algo PID permettrait de démarrer le moteur plus lentement mais sans utiliser 130A ?

Sinon effectivement un mosfet avec un montage de ce genre pourrait convenir ?

Dans ce cas j'imagine que je dois le dimensionner pour 130A minimum ?