moteur sur shield qui ne veut pas tourner !

Bonjour à tous,
Je suis nouveau et le projet qui me paraissait simple s’avere plus compliqué que prevu …

J’essaye de faire tourner un moteur via un shield

arduino uno semble repondre car l’exemple “basics” “blink” fonctionne

J’ai trouvé un code sur le net que j’ai modifié :

int E1 = 3; //M1 Speed Control
int M1 = 12; //M1 Direction Control
 
int speed = 200;
 
void run_motor()
{
analogWrite (E1, speed);
digitalWrite(M1,HIGH);
}
void setup(void)
{
int i;
for(i=6;i<=9;i++)
pinMode(i, OUTPUT);
 
Serial.begin(19200); //Set Baud Rate
}
void loop(void)
{
run_motor();
}

Rien ne se passe !!!
Je ne comprends pas, les entrées 3 et 12 semblent pourtant correspondrent a la vitesse et au sens de rotation.
Ce qui est un peu obscur pour moi c’est la boucle i 6 à 9 … pourquoi ces 2 valeurs ?

Bref je suis paumé !!!

Bonsoir,

Je ne vois pas à quoi sert cette boucle. Enlève là

la broche 12 devrait être programmée en sortie.

Faudrait indenter correctement le code, c'est pas beau comme ça :frowning:

azard:
Bonjour à tous,
Je suis nouveau et le projet qui me paraissait simple s'avere plus compliqué que prevu ...

J'essaye de faire tourner un moteur via un shield

arduino uno semble repondre car l'exemple "basics" "blink" fonctionne

J'ai trouvé un code sur le net que j'ai modifié :
...

Bonsoir
Des shields "moteurs" il en existe "un certain nombre" :grin:
quelle reference ?

et des moteurs aussi : à courant continu, pas à pas, unipolaire, bipolaire..., tu as branché quoi et comment ?

merci pour votre attention

le shield c’est un Motor Shield Grove SLD80256P
urdino uno

le moteur c’est une recuperation sur joypad PS 2 (ceux avec les contre poids pour le shock)

j’ai essayé un code plus simple mais même resultat :~

#include <AFMotor.h>

AF_DCMotor moteur1(1);

void setup()
{
  moteur1.run(RELEASE);
}

void loop()
{
  moteur1.run(FORWARD);
  moteur1.setSpeed(255);
  delay(1000);
  moteur1.run(RELEASE);
  delay(1000);
  moteur1.run(FORWARD);
  moteur1.setSpeed(200);
  delay(10000);
}

c'est branché comment ?

ben… tout bete !
le shield s’emboite et le moteur et branché sur m+ et m-

apres avoir passé la nuit, une question debile : il faut alimenter le shield avec une pile peut être ???

Et tu as regardé la doc ?
http://www.seeedstudio.com/wiki/Motor_Shield_V1.0

:grin:
merci !!! j'ai honte, mais je n'avais pas vu que cette doc existait !
Effectivement ça fonctionne !

Une dernière question : comment fait on pour arreter les commandes passées à la arduino ? (pour arreter mes moteurs je suis obligé de debrancher l'usb ? )

la boucle void loop() tourne en continu, mais tu peux câbler un interrupteur ou mettre un timer dans ton programme pour arrêter les moteurs.

Bonjour,

azard:
Une dernière question : comment fait on pour arreter les commandes passées à la arduino ? (pour arreter mes moteurs je suis obligé de debrancher l'usb ? )

Si tu regardes la doc tu verras les conditions nécessaires pour arrêter le moteur (INA et INB à 0).
Tu as même un exemple sur la page web : http://www.seeedstudio.com/wiki/images/9/96/Grobe-_Motor_Shield_Demo_Code.zip
@+