Modifications

Sauter à la navigation Sauter à la recherche
148 octets supprimés ,  19 juin 2018 à 21:16
Ligne 21 : Ligne 21 :  
Il peut fonctionner avec un Mega R2 (et version antérieur) si vous souder des fils depuis les broches SDA du shield vers la broche digitale #20 et la broche SCL vers la broche digitale #21 (attention à ne pas placer de pinHeader sur les broches SDA et SCL de votre shield)
 
Il peut fonctionner avec un Mega R2 (et version antérieur) si vous souder des fils depuis les broches SDA du shield vers la broche digitale #20 et la broche SCL vers la broche digitale #21 (attention à ne pas placer de pinHeader sur les broches SDA et SCL de votre shield)
   −
{{traduction}}
+
N'as pas été testé avec succès sur une Arduino DUE pour le moment (La bibliothèque Wire est toujours en cours de conception)
   −
It is not tested working with the Due at this time (the Wire library is still under construction)
+
== Erreur "Adafruit_MotorShield.h: No such file" ==
 +
 
 +
J'ai l'erreur "error: Adafruit_MotorShield.h: No such file or directory...." lorsque j'essaye de compiler un exemple.
 +
 
 +
Assurez vous d'avoir correctement installé la librairie/bibliothèque Adafruit_MotorShield
 +
 
 +
== Comment installer la librairie? ==
 +
 
 +
Voyez notre page [[Adafruit Motor Shield V2-Logiciel|Installer logiciel]] pour savoir comment installer la librairie du Motor Shield
    
== A L'AIDE! Mon moteur ne fonctionne pas! ==
 
== A L'AIDE! Mon moteur ne fonctionne pas! ==
Ligne 37 : Ligne 45 :  
Ne vous embêtez pas modifier votre code ou a modifier le câblage moteur... si la LED ne s'allume alors rien ne fonctionnera.
 
Ne vous embêtez pas modifier votre code ou a modifier le câblage moteur... si la LED ne s'allume alors rien ne fonctionnera.
   −
== A quoi sert la LED? ==
+
Vous devez connecter une alimentation 5-12V continu sur le shield par l'intermédiaire du bornier d'alimentation (''POWER'') ou via la prise d'alimentation de votre Arduino ou via le cavalier VIN.
   −
La LED de 9V indique que l'alimentation n'est pas branchée (active). Si ce n'est pas allumé alors les moteurs pas-à-pas et moteurs continu (DC) ne fonctionnerons pas.
+
== A quoi sert la LED verte? ==
   −
Les connecteurs des servo moteurs utilisent l'alimentation 5V d'Arduino et n'utilisent donc pas l'alimentation des moteurs continu (et moteurs pas-à-pas).
+
La LED indique que l'alimentation des moteurs continu/pas-à-pas est fonctionnelle. Si elle n'est pas éclairée fortement alors les moteurs continu et pas-à-pas ne fonctionneront pas. Les connecteur des servo moteurs sont alimentés en 5V et n'utilisent pas l'alimentation continue réservé aux autres moteurs.
   −
== J'essaye de faire un robot et il ne fonctionne pas avec une pile de 9v... ==
+
== Quels sont les broches utilisées/libres? ==
 +
Le shield utilise les broches du bus I2C SDA et SCL pour contrôler les moteurs continus et les moteurs pas-à-pas. Sur un Arduino Uno il s'agit des broches A4 et A5. Sur un méga, elles sont ddisponibles sur les broches digitales 20 et 21. Sur un Léonardo, elle sont disponible sur les broches digitales 2 et 3.  
   −
Le [[AdaFruit Motor Shield Utiliser|manuel de l'utilisateur]] contient des informations permettant de choisir des alimentations
+
Sur ces Arduinos, n'utilisez pas ces broches pour autre chose que des senseurs/pilotes I2C.
   −
== Ce shield peut-il contrôler des petit moteurs 3V? ==
+
Puisque ce shield utilise I2C pour communiquer, vous pouvez connecter d'autres senseurs I2C ou périphériques I2C sur les broches SDA/SCL pour autant qu'elles n'utilisent pas l'adresse 0x60 (l'adresse par défaut du Shield Moteur)
   −
Pas vraiment, le shield est conçu pour des moteur plus "gros" de 6V et +.  
+
Si vous utiliser les connecteurs servo moteur, ces derniers sont branchés sur les broches #9 et #10. Si vous utilisez les connecteurs servo moteurs, alors ces deux broches ne sont pas libre.
   −
En théorie vous devriez être capable de le faire fonctionner avec un moteur 3V mais nous ne disposons pas des informations nécessaires pour le faire (ni savoir si cela fonctionnerait bien).
+
Toutes les autres broches de votre Arduino sont librement utilisable.
   −
== A quoi set le connecteur d'alimentation sur le shield? Comment alimenter les moteurs? ==
+
== Comment puis-je utiliser les broches libres? ==
 +
Toutes les broches sont reportées (break-out) le long de la bordure du shield (avec un empattement de 2.54mm pour faciliter la pose de stacking Header, Header normal, etc.
   −
Le [[AdaFruit Motor Shield Utiliser|manuel de l'utilisateur]] contient des informations permettant de choisir une alimentation appropriée.
+
== Mon arduino se comporte bizarrement lorsque les moteurs tournent! ==
 +
Mon shield Moteur serait-il défectueux/détruit?
   −
== Mon Arduino fonctionne anormalement quand les moteurs fonctionnent!  ==
+
Les moteurs consomme beaucoup d'énergie et peuvent causer des pertes de tension, ce qui reset votre Arduino. C'est pour cette raison que le shield est conçu de façon à pouvoir séparer les alimentations - une pour l'électronique et l'autre pour les moteurs.
   −
Les moteurs nécessite beaucoup de puissance, et peuvent causer des baises de tension qui "reset" (redémarre) votre Arduino.
+
Utiliser deux sources d'alimentation permet de prévenir les chutes de tension sur l'électronique de commande. Vous pouvez obtenir plus d'information à se sujet en lisant la section du tutoriel dédicacé à la sélection des alimentations.
   −
C'est pour cette raison que le shield à été conçu avec une possibilité d'alimentation différente (circuits d'alimentations séparés). Un circuit d'alimentation pour l'électronique de commande et un circuit d'alimentation pour l'alimentation des moteurs. Utiliser une alimentation externe pour les moteurs évitera les chutes de tensions intempestives sur le circuit de commande. Le [[AdaFruit Motor Shield Utiliser|manuel de l'utilisateur]] contient des informations permettant de choisir une alimentation appropriée.
+
== J'essaye de faire un robot et il ne fonctionne pas avec une pile de 9v... ==
   −
== J'ai une bonne alimentation mais mes moteurs tressautent ou se "coupent" ==
+
Vous ne pouvez pas alimenter des moteurs à partir d'une pile 9V. Vous devez utiliser des piles de type AA ou une batterie plomb/Acide pour alimenter vos moteurs.
   −
Essayez de souder une capacité céramique (ou disque)de 0.1µF entre les pattes du moteur (sur le moteur lui-même!). Cela réduira le bruit électrique qui peut être renvoyé dans le circuit électrique ([http://www.ladyada.net/forums/viewtopic.php?f=31&t=10290 Merci à macegr]!)
+
== Ce shield peut-il contrôler des petits moteurs 3V? ==
   −
== Que faire si j'ai besoin de plus de 600mA par moteur? ==
+
Pas vraiment, le shield est conçu pour des moteur plus "gros" de 5V et +.
   −
[http://www.ladyada.net/make/mshield/use.html Vous pouvez substituer un SN754410 (à vos propres risques) ou souder un autre L293D au dessus du premier] (cette opération s'appelle "''piggyback''" en anglais.
+
Il ne fonctionne pas avec des moteurs 3V à moins de les sur-alimenter en 5V mais, dans ce cas, ils s'useront aussi plus vite.
   −
== Quels sont les broches utilisées sur le shield moteur? ==
+
== A quoi sert le connecteur d'alimentation sur le shield? Comment alimenter les moteurs? ==
   −
'''Les 6 broches analogiques restent disponibles.''' elle peuvent aussi être utilisé comme broches digitales (pins de 14 à 19)
+
Le manuel de l'utilisateur contient des informations permettant de choisir une alimentation appropriée. Veuillez vous reporter à la bonne section de ce tutoriel.
   −
'''Les broches digitales 2 et 13 ne sont pas utilisées.'''
+
== J'ai une bonne alimentation mais mes moteurs tressautent ou se "coupent" ==
 
  −
'''Les broches suivantes sont utilisées par le shield seulement si le moteur continu(DC)/pas-à-pas annoté est utilisé''':<br />
  −
<nowiki>Broche digitale 11: Motor DC #1 / Moteur Pas-à-pas #1 (activation/contrôle de vitesse)
  −
Broche digitale 3: Motor DC #2 / Moteur Pas-à-pas #1 (activation/contrôle de vitesse)
  −
Broche digitale 5: Motor DC #3 / Moteur Pas-à-pas #2 (activation/contrôle de vitesse)
  −
Broche digitale 6: Motor DC #4 / Moteur Pas-à-pas #2 (activation/contrôle de vitesse)</nowiki>
  −
'''
  −
Les broches suivantes sont utilisée sur n'importe quel moteur continu (DC) ou pas-à-pas est utilisé'''<br />
  −
Broches digitales 4, 7, 8 et 12 sont utilisés pour contrôler les moteurs continu (DC)/pas-à-pas via le 74HC595 convertisseur série vers parallèle (serial-to-parallel latch)
  −
 
  −
'''Les broches suivantes sont seulement utilisé si un ou deux servos sont raccordés:'''<br />
  −
Broches digitales 9: Contrôle du Servo Moteur #1
  −
Broches digitales 10: Contrôle du Servo Moteur #2
  −
 
  −
== Quels sont les broches connectées au moteur continu (DC)/pas-à-pas? ==
     −
Les moteurs continu (DC)/pas-à-pas NE SONT PAS connectés directement sur votre Arduino. Ils sont connectés sur le 74HC595 qui est piloté par votre Arduino. Vous ne pouvez pas piloter directement les moteurs, vous devez utiliser la librairies du "motor shield"
+
Essayez de souder une capacité céramique (ou disque) de 0.1µF entre les pattes du moteur (sur le moteur lui-même!). Cela réduira le bruit électrique qui peut être renvoyé dans le circuit électrique ([http://www.ladyada.net/forums/viewtopic.php?f=31&t=10290 Merci à macegr]!)
   −
== Je n'y comprends rien... ==
+
== J'utilise une plateforme 4WD robot et je n'arrive pas à la faire fonctionner ==
 +
Les moteurs utilisé sur les plateformes 4WD robot de certains distributeurs produisent beaucoup de bruit/parasite. Ces parasites sont renvoyés dans la circuiterie Arduino et provoque des exécutions de commande erronée et des instabilités. Ce problèmme peut être résolu en soudant 3 capacités de réduction de bruit. 1 entre les bornes du moteur et une depuis chaque borne vers l'armature du moteur.
   −
[http://docs.google.com/View?docid=dgwf6cmm_2fznx7qgr Michael K à écrit une chouette revue de ce shield] (''en anglais'')
+
{{ADFImage|Adafruit Motor Shield V2-FAQ-01.jpg|250px}}
   −
== Comment puis-je raccorder les broches inutilisées? ==
+
== Mon moteur à déjà une capacité et cela ne fonctionne pas. ==
 +
Ces moteurs génèrent beaucoup de parasites (brush noise) et nécessite généralement l'usage de 3 capacités pour un traitement et suppression adéquate des parasites.
   −
Les broches analogiques 0-5 (aussi connu comme broches digitales 14-19) sont disponibles (broken out) dans le coin inférieur droit du shield.
+
== Pourquoi ne pas placer les capacités sur shield? ==
 +
Parce qu'elles ne seraient pas efficace à cet emplacement. Le bruit/parasite doit être éliminé à la source sinon les fils de raccordement du moteur vont agir comme des antennes et propager les parasites sur le reste du système!
   −
La broche 2 est également disponible mais représente un petit "breakout" car c'est la seule broche qui n'est vraiment pas utilisée.
+
== Pourquoi mes moteurs pas-à-pas ne vont pas plus vite? ==
 +
Puisque le moteur est contrôlé par I2C, le débit maximum des pas est limité par la vitesse du bus I2C. Par défaut, la vitesse du bus est de 100KHz et peut être augmenté à 400KHz en édtant un fichier de la bibliothèque/librairie d'Arduino. Le fichier se trouve à l'emplacement hardware/libraries/wire/utility/twi.h.
   −
Les autres broches ne sont pas "broken out" parce qu'elles peuvent être utilisées par le shield moteur. Si vous êtes certain des broches qui seront utilisés dans votre projet... vous pouvez vous y brancher/connecter en utilisant un [http://mchobby.be/PrestaShop/product.php?id_product=120 stacking header] lorsque vous assemblerez votre kit ou souder des fils sur la pastille du pinHeader, où utiliser un "[http://mchobby.be/PrestaShop/product.php?id_product=100 Wing Shield]"
+
Trouvez la ligne avec: "#define TWI_FREQ 100000L"
   −
== I get the following error trying to run the example code:
+
et modifié la comme suit "#define TWI_FREQ 400000L"
"error: AFMotor.h: No such file or directory...." ==
     −
Make sure you have installed the AFMotor library
+
{{underline|Note MCHobby:}}
   −
== Comment installer une librairie? ==
+
Il est également possible de modifier la vitesse du bus I2C avec
   −
Nous pouvons vous proposer notre article [[Installation d'un librairie Arduino]]<br />
+
Wire.setClock(400000)
[http://www.ladyada.net/library/arduino/libraries.html AdaFruit dispose également d'un tutoriel sur les librairies] (''AdaFruit'' en anglais).
     −
== J'ai deux moteurs pas-à-pas que je veux faire fonctionner en même temps! ==
+
== Limites de setSpeed() à base / haute vitesse ==
J'ai deux moteurs pas-à-pas que je veux faire fonctionner en même temps... mais le code d'exemple n'en fait fonctionner qu'un seul à la fois (l'un puis l'autre). Comment puis-je faire?
+
=== A basse vitesse ===
 +
Le délai entre les pas est réalisé par delayMicroseconds() qui ne fonctionne pas pour un argument >16283.
 +
=== A haute vitesse ===  
 +
A haute vitesse, le calcul du délai entre deux pas ne tient pas compte du délai d'exécution du pas (envoi de la commande par I2C+temps d'établissement du courant dans les bobinages). Or, dans un test de réalisé par Mr Pierre M., Ce délai à été étalonné à 1250µs.  
   −
La fonction step() de la libraire des moteurs pas-à-pas n'a pas la possibilité de faire fonctionner deux moteurs en même temps.  
+
La succession des pas ne peut donc pas dépasser 1/1250µs=800pas/s (donc 4tour/s sur un moteur 200 pas ou encore 240tour/min).
 +
Ce qui est honorable pour une application hobbyiste.  
   −
Vous devrez donc combiner et imbriquer vos appels de fonctions step() pour atteindre ce résultat ('''interleave' the calls'' en anglais).  
+
Cependant, pour cette même vitesse {{fname|setSpeed()}} calcule précisément 1250µs de délai entre deux pas... auquel vient s'ajouter les 1250µs de transfert et activation des bobines... donc la vitesse chute de moitié.
   −
Par exemple, si vous voulez que vos deux moteurs pas-à-pas avances de 100 fois, vous devez juste écrire votre code comme suit:
+
=== Corriger ces limitations ===
 +
Il est nécessaire de corriger la bibliothèque Adafruit. Voici 2 liens utiles
 +
* https://forums.adafruit.com/viewtopic.php?f=31&t=117341&sid=19678adc72726090cdff79e3674beb6c
 +
* https://forums.adafruit.com/viewtopic.php?f=31&t=57041&p=408072
   −
<nowiki>for (i=0; i<100; i++) {
+
== Bibliothèque I2C et Interruption ==
motor1.step(1, FORWARD, SINGLE);
+
Si vous ajoutez un interrupteur de fin de course activant une interruption en vue d'arrêter le moteur (avec myMotor->release() depuis la routine ISR)
motor2.step(1, FORWARD, SINGLE);
  −
}</nowiki>
     −
{{ambox | text = Il n'existe pas de pilotes de moteurs pas-à-pas capable d'imbriquer les pas de façon "intelligente". Vous aurez besoin d'écrire une boucle ou utiliser le contrôle des interruptions pour atteindre un tel niveau de contrôle de vos moteurs. }}
+
Alors SACHEZ QUE CELA NE FONCTIONNERA PAS!
   −
== Quel sont les moteurs suggérés? ==
+
car il n'est pas possible d'envoyer un ordre sur le bus I2C durant le traitement ISR.
Le shield Moteur (MotorShield) d'AdaFruit est capable de faire fonctionner de nombreux moteurs.
     −
Vous pouvez trouver des moteurs:
+
La seule solution est de modifier une variable globale depuis l'ISR... et d'attendre que la routine principale, lisant cette même variable globale, arrête le moteur.
# Dans la section [http://mchobby.be/PrestaShop/category.php?id_category=17 "moteur et Robotique" de MCHobby].<br />
  −
# Beaucoup de magasins d'électronique sont également capable de vous fournir du matériel satisfaisant.
  −
# Vous pouvez également acheter des moteurs de Pololu ([http://www.pololu.com/catalog/category/23 DC Servos], [http://www.pololu.com/catalog/category/51 DC motors]) ou Jameco ([http://www.jameco.com/webapp/wcs/stores/servlet/StoreCatalogDrillDownView?langId=-1&storeId=10001&catalogId=10001&categoryName=cat_35&subCategoryName=Motors&category=3515&refine=1&jameco_page=54 all sorts]!).
  −
# [http://www.ladyada.net/library/procure/hobbyist.html Cette page d'AdaFruit reprend également quelques WebShops].
      
{{Adafruit Motor Shield V2-TRAILER}}
 
{{Adafruit Motor Shield V2-TRAILER}}
29 917

modifications

Menu de navigation