Modifications

Sauter à la navigation Sauter à la recherche
3 288 octets ajoutés ,  20 septembre 2015 à 10:55
aucun résumé de modification
Ligne 1 : Ligne 1 :  
{{ARDX-NAV}}
 
{{ARDX-NAV}}
   −
{{traduction}}
+
== Ce que nous faisons ==
 
  −
== Ce que faisons nous ==
   
{{bloc-etroit|text=Les moteurs rotatifs sont excellents pour l'amusement mais ils nous laissent sur notre faim quand viennent les projets où le contrôle du mouvement est essentiel.  
 
{{bloc-etroit|text=Les moteurs rotatifs sont excellents pour l'amusement mais ils nous laissent sur notre faim quand viennent les projets où le contrôle du mouvement est essentiel.  
   Ligne 55 : Ligne 53 :     
{{ARDX-composant-end}}
 
{{ARDX-composant-end}}
 
+
Tous ces éléments sont disponibles dans [http://shop.mchobby.be/product.php?id_product=11 le Kit Ardx proposé sur shop.mchobby.be].
 
=== Schéma ===
 
=== Schéma ===
 
[[Fichier:circ04-schema.png|250px]]
 
[[Fichier:circ04-schema.png|250px]]
Ligne 63 : Ligne 61 :     
== Le code ==
 
== Le code ==
xxx
+
Pas besoin de taper tout le code, vous pouvez utiliser l'exemple suivant (''provenant du fantastique site Arduino.cc''):
   −
  <nowiki>/* code */</nowiki>
+
'''Fichier > Exemples > Servo > Sweep'''
 +
 
 +
  <nowiki>// Sweep
 +
// par BARRAGAN <http://barraganstudio.com>
 +
 
 +
#include <Servo.h>
 +
 
 +
Servo myservo; // Créer un objet servo pour contrôler le servo moteur
 +
int pos = 0;  // variable pour stocker la position du servo
 +
 
 +
void setup() {
 +
  myservo.attach(9);  //attacher le servo moteur de la pin 9 à l'objet servo
 +
}
 +
 
 +
void loop() {
 +
  for(pos = 0; pos < 180; pos += 1) // Aller de 0 à 180 degrés par pas de 1 degré
 +
  {
 +
      myservo.write(pos);            // dire au servo d'aller à la position de la variable 'pos'
 +
      delay(15);                    // attendre 15ms que le servo atteigne la position
 +
  }
 +
 
 +
  for(pos = 180; pos>=1; pos-=1)    // Aller de 180 degrés à 0 degré
 +
  {
 +
      myservo.write(pos); // dire au servo d'aller à la position de la variable 'pos'
 +
      delay(15);          // attendre 15ms que le servo atteigne la position
 +
  }
 +
}</nowiki>
    
== Cela ne fonctionne pas? ==
 
== Cela ne fonctionne pas? ==
 
Voici 3 choses à essayer.
 
Voici 3 choses à essayer.
=== xxx 1 ===
+
=== Le servo ne bouge pas? ===
yyyy
+
Même avec des fils colorés, il est affreusement facile de brancher le servo à l'envers. Cela pourrait être le cas.
 +
 
 +
=== Cela ne fonctionne toujours pas? ===
 +
Une erreur que nous avons fait une fois ou deux est simplement d'oublier de raccorder l'alimentation (rouge et brun à +5 volts et masse).
   −
=== xxx 2 ===
+
=== Des à-coups? ===
yyyy
+
Si le servo commence à bouger pour ensuite avoir des à-coups, qu'une led clignote sur la carte, alors l'alimentation n'est pas suffisante pour relever le défit.
   −
=== xxx 3 ===
+
Utiliser une nouvelle pile au lieu du câble USB devrait résoudre le problème.
yyyy
      
== Faire encore mieux ==
 
== Faire encore mieux ==
=== zzz 1 ===
+
=== Contrôle à l'aide d'un potentiomètre ===
zzzz
+
Nous devons encore expérimenter les broches d'entrées mais si vous voulez prendre un peu d'avance, il y a le programme d'exemple '''Fichier > Exemples > Servo > Knob''' .
 +
 
 +
Il utilise un potentiomètre (CIRC08) pour contrôler le servo moteur.
 +
 
 +
Vous pouvez trouver les instructions en ligne ici [http://ardx.org/KNOB ardx.org/KNOB] (''anglais'')
 +
 
 +
=== Contrôler les impulsions soi-même ===
 +
Tandis qu'il est facile de contrôler un servo à l'aide des librairies d'Arduino, il est aussi intéressant de comprendre comment programmer quelque chose soi-même.
 +
 
 +
Voyez ci-dessous : nous contrôlons directement les impulsions. Ainsi, vous pouvez utiliser cette méthode pour contrôler un servo moteur depuis n'importe laquelle des 20 broches d'un Arduino (mais pour cela vous devez optimiser précautionneusement votre programme).
 +
 
 +
<nowiki>int servoPin = 9;
 +
void setup(){
 +
  pinMode(servoPin,OUTPUT);
 +
}
 +
 
 +
void loop() {
 +
  int pulseTime = 2100; // microsecondes de pause
 +
  //1500=90 degrés ,900=0 degrés,2100=180 degrés
 +
  digitalWrite(servoPin, HIGH);
 +
  delayMicroseconds(pulseTime);
 +
  digitalWrite(servoPin, LOW);
 +
  delay(25);
 +
}</nowiki>
 +
 
 +
=== Des grandes idées ===
 +
Les servos peuvent servir à faire toutes sortes de choses géniales, en voici quelques-unes parmi nos favorites.
 +
 
 +
* '''« Hit Counter » façon Noel''' sur [http://ardx.org/XMAS ardx.org/XMAS]
 +
* '''Un bras robotique Open Source''' sur [http://ardx.org/RARM ardx.org/RARM]<br />(Utilisant aussi bien un servo contrôleur qu'un Arduino)
 +
* '''Servo Walker''' [http://ardx.org/SEWA ardx.org/SEWA]
    
== Plus, plus et encore plus ==
 
== Plus, plus et encore plus ==
Plus d'information, où poser vos autres questions:
+
Plus d'information, où poser vos autres questions: [http://ardx.org/CIRC04 ardx.org/CIRC04] (''anglais'')
 
  −
[http://ardx.org/CIRC13 ardx.org/CIRC13] (''anglais'')
      
== Internet ==
 
== Internet ==
 
=== .:téléchargement:. ===  
 
=== .:téléchargement:. ===  
LA fiche de montage est disponible sur ....
+
LA fiche de montage est disponible sur [http://ardx.org/BBLS04 ardx.org/BBLS04]
    
=== .: Vidéo :. ===
 
=== .: Vidéo :. ===
La vidéo du montage est disponible sur [http://ardx.org/VIDE13 ardx.org/VIDE13] (''anglais'')
+
La vidéo du montage est disponible sur [http://ardx.org/VIDE04 ardx.org/VIDE04] (''anglais'')
    
{{ARDX-TRAILER}}
 
{{ARDX-TRAILER}}
29 836

modifications

Menu de navigation