Modifications

Sauter à la navigation Sauter à la recherche
aucun résumé de modification
Ligne 1 : Ligne 1 :  
{{Adafruit Motor Shield V2-NAV}}
 
{{Adafruit Motor Shield V2-NAV}}
 +
 +
== Brancher un moteur continu ==
 +
 +
[[Fichier:Motor Shield V2-Logiciel-01.jpg|480px]]
 +
 +
Les moteurs continus sont utilisés pour toutes sortes de projets robotiques.
 +
 +
Le "motor shield" est capable de piloter jusqu'à 4 moteurs continu dans les deux sens. Cela signifie qu'ils peuvent fonctionner en marche avant et en marche arrière. Le vitesse peut également varier par incrément de 0.5% grâce à l'utilisation d'un signal PWM de haute qualité. Cela signifie que la vitesse est régulière et ne variera pas!
 +
 +
Notez que le circuit-intégré pont-H n'est pas destiné a piloter une charge continue de 1.2A ou des pic de courant au dessus de 3A... cette carte est destinée aux petits moteurs. Voyez la fiche technique de vos moteurs pour plus d'information a leur propos et vous assurer que cela sera OK!
 +
 +
== Connecter les moteurs ==
 +
Pour connecter un moteur:
 +
* Souder simplement des fils sur les bornes du moteur
 +
* Raccorder les fils sur l'un des borniers M1, M2, M3 ou M4.
 +
* Suivez ensuite les étapes suivantes dans votre croquis/sketch
 +
 +
== Programmation ==
 +
 +
=== Inclure les bibliothèques ===
 +
Assurez vous d'avoir inclus les bibliothèques nécessaire avec l'instruction #include
 +
 +
<nowiki>#include <Wire.h>
 +
#include <Adafruit_MotorShield.h>
 +
#include "utility/Adafruit_PWMServoDriver.h"</nowiki>
 +
 +
=== Créer un objet Adafruit_MotorShield ===
 +
 +
Adafruit_MotorShield AFMS = Adafruit_MotorShield();
 +
 +
=== Un objet Moteur Continu ===
 +
En anglais, un moteur à courant continu se dit "DC motor", d'où le nom des objects et méthodes.
 +
 +
Demander donc la création d'un objet "moteur" depuis la classe Adafruit_MotorShield:
 +
 +
Adafruit_DCMotor *myMotor = AFMS.getMotor(1);
 +
 +
avec l'appel à '''getMotor(numéro_de_port)'''.
 +
 +
numéro_de_port est le port/bornier surlequel est connecté le moteur.
 +
 +
Si vous utilisez M1 il faut saisir la valeur '''1''', pour M2 utiliser '''2''', pour M3 utiliser '''3''' et pour M4 utiliser '''4'''
 +
 +
=== Connecter le moteur au controleur ===
 +
Appeler la fonction "begin()" sur Adafruit_MotorShield dans la fonction "setup()":
 +
 +
AFMS.begin();
 +
 +
=== Initialiser la vitesse ===
 +
En anglais, la vitesse se dit "''Speed''" d'où le nom de la fonction.
 +
 +
La fonction setSpeed() permet d'initialiser la vitesse par défaut du moteur (celle qui sera utilisée lorsque vous lui demanderez de tourner).
 +
 +
Fixer la vitesse à l'aide de l'appel '''setSpeed(la_vitesse)''' où la_vitesse est une valeur variant de 0 (arrêt) à 255 (pleine vitesse). Vous pouvez modifier la vitesse à n'importe quel moment.
 +
 +
myMotor->setSpeed(100);
 +
 +
=== Faire fonctionner le moteur ===
 +
En anglais "''run''" signifie courir mais convient à toute opération à exécuter (à ''faire avancer''). D'où le
 +
 +
Pour faire tourner le moteur, appeler la fonction '''run(la_direction)''' où la_direction est soit '''FORWARD''' (avant), '''BACKWARD''' (arrière) ou '''RELEASE''' (relaché, inactif).
 +
 +
Bien entendu, Arduino ne sait pas à quoi correspond le sens avant/arrière du moteur. Si le moteur ne fonctionne pas dans le sens attendu lorsque vous envoyez l'instruction ''run(FORWARD)'' alors inversez simplement les deux fils de connexion du moteur.
 +
 +
myMotor->run(FORWARD);
    
{{Adafruit Motor Shield V2-TRAILER}}
 
{{Adafruit Motor Shield V2-TRAILER}}
29 917

modifications

Menu de navigation