Mon Arduino est effectivement alimenté par USB. Dans l'étape finale du projet, l'Arduino sera alimenté par une source externe de type batterie. Comme le reste des composants.
Mon Arduino est effectivement alimenté par USB. Dans l'étape finale du projet, l'Arduino sera alimenté par une source externe de type batterie. Comme le reste des composants.
C'est bizarre car le schéma me semble bon sauf que j'ai un peu de mal a interpréter les noeuds sur ton schéma (les ronds noirs)
J'attends tes mesures. (tu n'as pas un oscilloscope sous la main a tout hasard ?)
A toute à l'heure.
La science ne nous apprend rien : c'est l'expérience qui nous apprend quelque chose.
Richard Feynman
Non malheureusement je ne dispose pas d'un oscilloscope :s
J'exposerai mes résultats cette après midi vers 15h.
Bonjour,
Je viens de faire les mesures avec le programme suivant:
Pour les tensions mesurées:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 //Motor 1 int pinAIN1 = 9; //Direction int pinAIN2 = 8; //Direction int pinPWMA = 3; //Speed //Motor 2 int pinBIN1 = 11; //Direction int pinBIN2 = 12; //Direction int pinPWMB = 5; //Speed //Standby int pinSTBY = 10; void setup() { //Set the PIN Modes pinMode(pinPWMA, OUTPUT); pinMode(pinAIN1, OUTPUT); pinMode(pinAIN2, OUTPUT); pinMode(pinPWMB, OUTPUT); pinMode(pinBIN1, OUTPUT); pinMode(pinBIN2, OUTPUT); pinMode(pinSTBY, OUTPUT); } void loop() { digitalWrite(pinAIN1,LOW); digitalWrite(pinAIN2,HIGH); digitalWrite(pinBIN1, LOW); digitalWrite(pinBIN2, HIGH); digitalWrite(pinSTBY, LOW); analogWrite(pinPWMA,127); analogWrite(pinPWMB,255); }
pin PWMA: 2,97V
pin PWMB: 5,15V
pin AIN1: 5,15V
pin AIN2: 0V
pin BIN1: 5,15V
pin BIN2: 0V
PIN STDBY: 0V (si je mets le pin STDBY en état HAUT, la tension passe à 5,15V)
J'ai aussi mesuré la tensions directement aux bornes des moteurs. Il se trouve que j'ai 0V aux bornes de mes deux moteurs. De plus, après vérification de mon montage, j'ai bien la même chose que mon schéma publié ce matin.
Finalement la question que je me pose est la suivante:
Lorsque je branche un moteur directement aux bornes du générateur qui délivre 6V et 1A, il ronronne comme un petit chat (donc il marche). N'est-il pas possible que je ne mette pas assez de courant dans mon circuit pour faire fonctionner mes moteurs? De plus, à quoi sert le lien entre VMOT et le pin 5V de la carte Arduino?
Merci pour votre aide.
Les tensions que tu obtiens sont cohérentes avec ton code.
D'après la datasheet le composant doit être alimenté en 5V. C'est pour cette raison que tu l'as connecté sur le +5V de l'Arduino.
VMot, lui, permet d'alimenter en courant et tension tes moteurs. Le composant peut supporter 1,2A sous 13V.
D'après la datasheet du composant STBY doit être à l'état haut pour que les moteurs tournent.
Par contre, une fois les commandes envoyées, j'aurais mis une pause : delay(2000) par exemple.
Bonsoir,
Je ferai de nouveau test demain et je vous tiens ensuite au courant. Mais je pense de plus en plus que cela provient de l'alimentation que j'utilise.
Encore merci pour votre aide.
Si c'est une alimentation de laboratoire, elle peut débiter le courant nécessaire. As-tu une référence ?
Sinon je me demande plus simplement si ton composant n'a pas grillé
Auteur à raison tout est cohérent entre le code et les valeurs mesurées. Par contre ce n'est pas normal que tu ais 0V aux bornes du moteur.
pwmA = 2,9V (théoriquement tu devrais avoir la tension d'alimentation de Arduino divisé par 2) et aux bornes du moteur correspondant à ce PwmA tu devrais avoir la tension du générateur divisé par 2 et non 0V. J'ai oublié de préciser que le voltmètre doit être en DC pour qu'il mesure la valeur moyenne du PWM mais au vu de tes mesures c'est ce que tu as du faire.
Tu dis que le moteur ne tourne pas en le reliant directement au générateur ? Ce n'est pas normal pour un moteur DC, il devrait tourner. J'ai un doute mais j'espère que ce n'est pas un moteur pas à pas que tu utilises ?
Comme le dit Auteur la pin STBY doit être à l'état haut pour que ça fonctionne.
Demain je regarderai la datasheet de ton moteur.
Fait le même test (avec le même programme) en mettant STBY à l'état haut mais en déconnectant les moteurs quelques fois qu'ils ferait écrouler ton générateur. Peux tu refaire les mêmes mesures en ajoutant la tension aux bornes du module mais surtout sans les moteurs (en gros tu mets ton multimètre à la place du moteur)
Tu devrais retrouver 3V et 6V sur les sorties respectives qui correspondent à PwmA et PwmB.
A demain
La science ne nous apprend rien : c'est l'expérience qui nous apprend quelque chose.
Richard Feynman
Bonjour,
@Auteur:
Non je n'ai malheureusement pas de référence sur mon générateur...
@Vincent PETIT:
Je suis sur à 100% que c'est un moteur DC.
De plus, je crois que j'ai du mal m'exprimer. Quand je branche directement un moteur au générateur, il marche correctement.
Je vais faire les tests dés que possible et vous tiens au courant dans la journée (je ne peux vous dire encore vers quelle heure :s)
Merci.
Bonjour,
alors j'ai fais quelques mesures supplémentaires. En remplacant les moteurs par des multimètres, il s'avère que la tension mesurée vaut 0V...
Autrement dit, aux bornes des pins AO1 et AO2 il n'y a pas de tension. De même pour les bornes BO1 et BO2.
Autre chose surprenante, lorsque je mesure la tension aux bornes des pins GND et VCC, la tension vaut 18,6V.
Ceci m'amène à expliquer un peu plus le générateur dont je dispose. C'est un générateur réglable en tension et en courant. Je choisis donc de fixer la tension à 6V et le courant à 1A. Or, lorsqu'il n'y a pas de composants actif avec le générateur, celui-ci délivre directement 18,6V.
En d'autres mots, si je branche le multimètre directement aux bornes du générateur, celui-ci mesurera 18,6V. En revanche, si je branche un moteur directement aux bornes du générateur et que j'utilise mon voltmètre en parallèle pour mesurer la tension, là il mesure 6V.
Par conséquent, je me pose des questions concernant l'état du driver. Si le problème ne vient pas du driver alors il est fort probable que cela vienne de l'alim.
Qu'en pensez vous?
Je pense que tu veux dire entre GND et VMOT ?
j'ai bien peur de comprendre... ton générateur est en source de courant constant 1A (les alimentations keithley font ça très bien.) Pour faire simple, le générateur fourni la tension de 6V sous 1A et si le courant n'est pas suffisant (donc la tension s'écroule) alors l'alimentation monte en tension afin de fournir les 1A demandé par l'utilisateur au moment du réglage.
Au vu de la datasheet, je dirai que le module a cramé.
Page 3 de la datasheet https://www.pololu.com/file/download...f?file_id=0J86, voir Absolute Maximum Ratings, VM (VMOT) 15V max après ça casse !
Mais avant d'en être sur, as tu une autre alimentation ?
La science ne nous apprend rien : c'est l'expérience qui nous apprend quelque chose.
Richard Feynman
Bonjour,
Je vais voir avec mon tuteur de stage si c'est possible d'avoir une autre type d'alimentation. Mais pour l'instant non je n'ai pas d'autre alimentation...
Et non, je confirme que j'ai mesuré aux bornes de VCC et GND. Mais je viens de me rendre compte que ça ne servait à rien ^^. Je peux mesurer aux bornes de VMOT si vous voulez.
Au cas où j'aurai détruit mon driver, heureusement, j'en ais un de rechange.
Merci pour vos réponses.
Comme le dit Vincent tu as un générateur de courant. Peux-tu le basculer en générateur de tensions ?
Tu n'as vraiment aucune référence pour ce genre d'alimentation ? Pas de marque, ni numéro de série ?
Si tu as 18V entre VCC et GND ça craint car normalement tu y a branché le +5V de ton Arduino
Si le module a effectivement cramé (en espérant que l'Arduino n'a pas cramé également) je t'encourage prendre les modules que j'ai évoqué ici pour plusieurs raisons :
- ils sont bien documentés ;
- ils sont parfaitement adaptés aux Arduino.
Maintenant, un autre point m'intrigue : tes moteurs consomment 70mA chacun or tu as réglé ton alim pour débiter 1A ! J'espère qu'il n'ont pas trop souffert. Si tu n'as pas d'alimentation, remplace la par des piles (4x1.5V=6V)
Je vais voir s'il est possible de basculer en générateur de tension et de trouver une référence exacte.
Je ne suis pas sûr de tout bien comprendre. Dans le schéma que je vous ais donné, VCC est directement branché au générateur. Donc au mieux on doit y trouver les 6V et au pire les 18,6V non? Je ne comprends pas pourquoi on est censé trouvé les 5V de l'Arduino. En effet, l'Arduino est branché sur VMOT et non VCC.
Je vais voir avec mon tuteur si c'est possible de commandé les modules que vous me conseillez.
Enfin, je ne comprends pas pourquoi vous dites que les moteurs doivent recevoir un courant de 70mA. En effet, 70mA c'est sans charge non? Et 1,3A c'est avec la charge maximale? Donc, techniquement mes moteurs peuvent accepter mes 1A non?
Je les ais testé ce matin, ils fonctionnent encore très bien a priori.
EDIT: Sur mon générateur, il y a marqué S.A Sistel 6709. Est-ce que ça peut aider?
EDIT2: J'ai trouvé le lien de l'entreprise mais impossible de trouver la datasheet du générateur : http://www.sasistel.com/
Non, non pas du tout !!
VMot = tension d'alimentation de tes moteurs : 6V
Vcc = +5V provenant de l'Arduino
C'est ce que tu as fait sur ton schéma d'ailleurs, non ? L'alimentation (ce que tu as appelé générateur de tension) est sur VMot (+) et GND (-). L'arduino sur +Vcc (+5V) et GND. Ou alors Vincent et moi n'avons pas compris ton schéma.
ah oui au temps pour moi 70mA à vide.
Hooo merde!! Je vais devoir refaire mes mesures....En voulant mettre le voltmètre à la place des moteurs, j'ai inter-changé les câblage de VCC et VMOT...............
Si la carte Arduino s'allume toujours, cela signifie qu'elle fonctionne toujours ou pas?
Attention Auteur, j'ai fais deux EDIT sur mon dernier message.
Merci de ta réponse.
EDIT: En faite, je n'ai pas besoin de refaire les mesures en remplacant les moteurs par des multimètres. En effet, le driver peut supporter 6V et 1A en entrée. Donc même si j'ai inversé VCC et VMOT, mes multimètres auraient du mesurer 5V aux bornes de AO1/AO2 et BO1/BO2. Dites moi si je me trompe.
Si je ne me trompes pas, alors on en revient au point de départ à savoir que c'est très probablement l'alimentation qui fait défaut dans mon montage. Cependant, à moins que je ne me trompe, en imaginant que j'ai 18,6V qui sort de mon alimentation au lieu des 6V voulu, je devrais tout de même avoir 18,6V aux bornes de AO1/AO2 et BO1/BO2.
Ce qui m'amène à dire qu'il n'est pas impossible que ce soit le driver qui soit cramé. Pour le vérifier, j'aimerais savoir s'il est possible de brancher l'Arduino à VMOT ET VCC. De cette manière, en remplacant les moteurs par des multimètres, je devrais mesurer ainsi 6V aux bornes de AO1/AO2 et BO1/BO2 non?
EDIT2: Je viens de remarquer autre chose d'intéressant. le pins VMOT peut, a priori, accepter une tension comprise entre 2,5 et 13,5V (https://www.pololu.com/file/download...f?file_id=0J86 page 2). Donc à moins que je ne me trompe, si le générateur délivre malheureusement 18V au lieu des 6V voulu, cela serait tout à fait normal de mesurer 0V sur les pins AO1/AO2 et BO1/BO2. En revanche, cela n'explique pas pourquoi je mesure toujours 0V lorsque j'avais interchangé VCC et VMOT.
Dites moi si vous me comprenez. Je reste à votre entière disponibilité.
Je n'ai rien trouvé sur ton alimentation. Je ne connais pas cette marque.
Normalement, mais tu peux avoir cramé le microcontrôleur.
Oui tu peux essayer comme ça. MAIS ne branche surtout pas tes moteurs , le courant demandé risque d'être trop important et la pour le coup tu peux cramer le port USB
Procède de cette manière :
- teste d'abord ton arduino : avec l'IDE tu peux charger des exemples. Exécute l'un deux (par exemple le script de fadding ou de blink pour les LED) Fais ce test avec la carte seule : déconnecte complètement ton module.
- branche Vmot et Vcc sur +5V de ton Arduino. D'après la datashet tu ne consommeras que 2,2mA. Relance ton programme. Comme je l'ai dit : fais le à vide sans les moteurs. Et mesure tes tensions.
Si tu n'as pas d'autres alimentations, utilise des piles : 4 piles de 1.5V achetées à l'épicerie du coin ça fait l'affaire
Bien je teste tout ça demain et je vous tiens au courant.
De nouveau merci pour votre aide.
Bonjour,
Veuillez m'excuser pour le retard mais en Espagne c'était férié ce lundi ^^. Du coup je n'avais pas accès au laboratoire.
Pour ce qui est des résultats:
- J'ai testé la carte Arduino en téléversant le programme dans le dossier exemple de l'IDE Arduino à savoir "Blink". La LED (celle à coté du pin 13) clignotait toute les secondes. Donc la carte fonctionne correctement.
- J'ai ensuite testé d'alimenter mon driver avec la carte Arduino. Autrement dit, j'ai branché le pin 5V de la carte Arduino sur VCC mais aussi VMOT. Je n'ai mesuré aucune tension aux bornes de AIN1 et AIN2 tout comme sur BIN1/BIN2. Je précise que j'avais évidemment enlevé les moteurs.
- Pensant que mon driver était HS, je l'ai remplacé par un nouveau (qui n'avait jamais été utilisé auparavant). De nouveau, je ne mesurais aucune tension aux bornes des pins AIN1/AIN2, BIN1/BIN2.
Je me retrouve donc complètement bloqué sans savoir où se situe le problème...Auriez-vous une idée svp?
Par avance merci.
Salut,
C'est entre AO1 et AO2 qu'il faut mesurer (les sorties moteurs) les AIN sont des entrées logiques de configuration pour le mode de fonctionnement.
Mesure aussi entre AO1 et GND, sans moteur évidemment.
La science ne nous apprend rien : c'est l'expérience qui nous apprend quelque chose.
Richard Feynman
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager