J'ai vérifier la feuille d'information du LMD18200, et aussi vérifier le schéma.
SVP lire la feuille d'information et voir Figure 7.
Le contrôle logic est :
pin 3 est la DIrection du motor ( tourner à gauche - left - CCW ou tourner à droite - right - CW )
pin 4 est le frein - Brake ( 0 - pas de frein - 1 - arrêter - le frein )
pin 5 est le PWM.
Pour essayer, déconnecter la pin 8 et 9 du LMD18200, connecter pin 4 au GND, connecter pin 3 au GND ou + 5 V ( ton choix ) et le pin 5 , connecter au pin PWM de l' Arduino. ( pin 9 est OK ) Et essaye ça, c'est possible que marche.
Mon opinion.
PS: Mon français est très rouillé. Rester plus de 20 ans a Toronto ( en anglais ici )
Edit de Jean-François : Ton français est très bien, j'ai juste fait quelques corrections pour l'orthographe
Ma première langue est le français. Je suis d'origine de Saint-Quentin, NB Canada. Canadien Francophone ( Je ne suis pas Québecois ).
Pour rester au Canada, il faut connaitre l'anglais. Mes termes techniques sont plus anglais.
Merci de me corriger, Je n'ai pas d'accent sur mon clavier (un système anglais ).
Edit de Jean-François : pas de soucis, mon premier Mac portable avait un clavier américain.... une vrai gymnastique pour les accents
bonsoir
au cas où le probleme ne serait pas réglé
rapide test en utilisant les pin mini sur le LMD18200
un potentiometre (Courbe lin)
potard à 0 vitesse moteur rotation gauche, au centre moteur stop, au maxi vitesse maxi à droite
utilisable sans potard en connectant A0 à +3.3, + 5, GND http://cjoint.com/11sp/AIqsorYGgqr_uno18200.jpg
// demonstration for use with LMD18200 and potentiometer
// Vmax CCW <--->stop<---->Vmax CW
int pwm = 9; // connect arduino uno pin 9 to pin 5 LMD18200
int sensorPin = A0; // select the input pin for the potentiometer
int ledPin = 13; // select arduino uno pin 13 for the LED and direction connect on pin 3 lmd18200
// connect LMD18200 BRAKE pin 4 to GND (no brake)
// Connect DC motor between pin 2 , 10 LMD18200
// + external POWER motor on pin 6 LMD18200
// GND on TAB and/or pin 7 LMD18200, remember to connect GND LMD18200 and GND arduino
// For this test other LMD18200 pin "leave on air"
word vpm=0;
word sensorValue = 0; // variable to store the value coming from the sensor
void setup()
{
pinMode(pwm, OUTPUT);
pinMode(ledPin, OUTPUT);
}
void loop()
{
sensorValue = analogRead(sensorPin);
vpm=sensorValue/2; //reduce resolution to 9 bits
if (vpm > 255)
{
digitalWrite(ledPin, HIGH); // CW
vpm=vpm-256;
}
else
{
digitalWrite(ledPin, LOW); //CCW
vpm=255-vpm;
}
analogWrite(pwm, vpm);
}
J'ai réalisé le montage sur une plaque de labo mais ça ne marchais pas. Et d'un coup, je ne sais pas trop pourquoi le moteur tournait
J'ai un peu jouer avec mon moteur en modifiant le PWM pour voir ce que ça faisait, puis d'un coup plus rien
Je ne sais pas si c'est le LMD18200 qui a grillé ou un problème hardware. Du coups je suis en train de réaliser un véro (bientôt fini je n'avais plus de fils pour les ponts :*) Et je verrai bien.
Sinon ton montage marche bien? Car chez moi lorsque le montage a fonctionner le moteur ne tournait pas à fond Et (si ce n'est pas trop demandé :)) Est-il possible d'avoir le schéma que tu as réalisé?
J'ai réalisé le montage sur une plaque de labo mais ça ne marchais pas. Et d'un coup, je ne sais pas trop pourquoi le moteur tournait
J'ai un peu jouer avec mon moteur en modifiant le PWM pour voir ce que ça faisait, puis d'un coup plus rien
Je ne sais pas si c'est le LMD18200 qui a grillé ou un problème hardware. Du coups je suis en train de réaliser un véro (bientôt fini je n'avais plus de fils pour les ponts :*) Et je verrai bien.
Sinon ton montage marche bien? Car chez moi lorsque le montage a fonctionner le moteur ne tournait pas à fond Et (si ce n'est pas trop demandé :)) Est-il possible d'avoir le schéma que tu as réalisé?
J'ai vérifié ton schéma, et il est correct. Le problème dépend du code et la méthode de construction (un court circuit, un circuit ouvert ).
As tu essayé de construire le circuit sur un breadboard pour voir si le code marche ?
Autrement teste le code sans le contrôleur du moteur IC ?
Edit de Jean-François : J'ai refait un peu l'orthographe
Techone:
As tu essayé de construire le circuit sur un breadboard pour voir si le code marche ?
Oui oui, ça a marché un moment puis après plus rien. Je suis en train de faire le montage sur une plaque veroboard histoire que ça soit beaucoup plus propre, je vous tiendrai au courant.
Techone:
As tu essayé de construire le circuit sur un breadboard pour voir si le code marche ?
Oui oui, ça a marché un moment puis après plus rien. Je suis en train de faire le montage sur une plaque veroboard histoire que ça soit beaucoup plus propre, je vous tiendrai au courant.
bonjour
C'est difficile de "cuire" un lmd18200 sauf a injecter un VS > 60V et/ou > a 12V sur les commandes logiques.
De plus il y a une protection thermale embarquée.
retour aux test fondamentaux :
Le moteur est toujours verifié OK ? (ce n'est pas lui qui est cuit ?)
c'est quoi comme moteur ?
L'alim de puissance est OK ?
c'est quoi comme alim de puissance ? quelle tension de service
les GND (alim puissance, arduino ) sont bien connectés ensemble ? (oubli courant)
Même si mon montage présenté plus haut n'est pas beau , il est néanmoins bien fonctionnel avec le code.
Compte tenu de la fréquence max PWM généré par le code arduino , les condensateurs de bootstrap (C2,C3 sur ton schéma) ne sont pas absolument nécessaires.
J'ai toujours eu de la peine avec les breadboards passer un certains nombre de connexions, j'ai toujours préféré faire un petit prototype sur un vero
Je vais amélioré le tout en rajoutant un système de roues codeuse pour pouvoir déplacer précisément le robot 8). Merci encore pour votre aide c'est vraiment sympa.
RandomAnonymous:
J'ai toujours eu de la peine avec les breadboards passer un certains nombre de connexions, j'ai toujours préféré faire un petit prototype sur un vero
Je vais amélioré le tout en rajoutant un système de roues codeuse pour pouvoir déplacer précisément le robot 8). Merci encore pour votre aide c'est vraiment sympa.
Pour faire de l'asservissement de position en quasi boucle fermée c'est une bonne solution.
Attention à ne pas être trop gourmand dans la résolution.
Entre l'encodeur en quadrature cheap déjà intéressant et le luxueux, il y a des choix à faire.
dans mes manip de positionnement et pour tester j'utilise souvent ces 3 là.
Ma solution ressemblera à celle "cheap" que tu présente
Sinon, pour entraîner une roue, est-ce que tu fixe directement la roue à la sortie du moteur ou bien il est préférable de l'entraîner avec une courroie? Je pensais la mettre directement à la sortie du moteur, mais en regardant un peu autour de moi j'ai l'impression que c'est toujours entraîner avec une courroie, du coup je me demande bien pourquoi un te système?
Tres interessant. J'aimerais savoir a quel place ( au Canada ) que je peux acheter cette encodeur ( le model qu'il est moin cher que j'appelle le model "non-fril" ) ou le disque encodeur ?
@Jean-Francois
Ca pas de ma faute que mon clavier d'ordinateur qui a pas d'accent. ( va si, courige moi )
Pour ma pars j'ai fais la roue codeuse dans une plaque qui me sert à faire les print avec une graveuse (à l'époque où je pouvais utilisé celle de mon école). Juste à faire un rond avec des coches dedans
J'ai fais comme ça, mais avec une plaque en epoxy couverte de deux feuilles de cuivre (Ce qu'on utilise pour faire des doubles face classique !) Une plaque en quelque matière qu'il soit suffit largement (alu, plastique, cuivre,...)
édit : J'ai rajouté une photo prise sur le moment de ma roue codeuse