Modifications

Sauter à la navigation Sauter à la recherche
4 969 octets ajoutés ,  2 mars 2013 à 23:25
Ligne 1 : Ligne 1 :  
{{Plateforme-PAPM-NAV}}
 
{{Plateforme-PAPM-NAV}}
   −
== Marche avant/arrière ==
+
== Principe marche avant/arrière ==
    
{{bloc-etroit | text = Ce servo tourne constamment dans un sens ou dans l'autre à la place de se placer à un angle donné. Il est utilisé pour réaliser vos propres plateformes mobiles et petits robots "simple".
 
{{bloc-etroit | text = Ce servo tourne constamment dans un sens ou dans l'autre à la place de se placer à un angle donné. Il est utilisé pour réaliser vos propres plateformes mobiles et petits robots "simple".
Ligne 18 : Ligne 18 :  
Envoyez l'instruction d'arrêt au servo et ajustez ensuite le potentiomètre (accessible dans le petit trou sur le côté) à l'aide d'un tournevis jusqu'au moment ou le servo moteur arrête de tourner et que la roue reste immobile
 
Envoyez l'instruction d'arrêt au servo et ajustez ensuite le potentiomètre (accessible dans le petit trou sur le côté) à l'aide d'un tournevis jusqu'au moment ou le servo moteur arrête de tourner et que la roue reste immobile
   −
  <nowiki>
+
  <nowiki>// --- Ma planche a pain mobile --------------------------------
 +
//
 +
// Un servo normal se positionne sur un angle donné en fonction.
 +
// Un servo a rotation continue est modifié pour tourner plus ou moins vite
 +
//  en fonction de l'instruction envoyée.
 +
// Un servo à rotation continue permet de créer facilement de petits robot mobiles
 +
//
 +
// Un projet www.mchobby.be (vente de kit et composant)
 +
// Meurisse D. - Licence CC-SA-BY
 +
//
 +
// http://mchobby.be/wiki/index.php?title=Plateforme-PAPM
 +
//
 +
#include <Servo.h>
 +
 +
// creer des objets Servo pour le controle de Servo à Rotation
 +
// continue
 +
Servo servoGauche; // sur broche 9
 +
Servo servoDroit;  // sur broche 10
 +
 
 +
void setup()
 +
{
 +
  servoGauche.attach(9);  // attacher le servo gauche sur la pin 9
 +
  servoDroit.attach(10);  // attacher le servo droit sur la pin 10
 +
  // arret
 +
  servoGauche.write(90);
 +
  servoDroit.write(90);
 +
}
 +
 +
void loop()
 +
{
 +
  // Calibrez vos servos moteurs pour qu'ils restent à l'arret
 +
}
 
</nowiki>
 
</nowiki>
 +
 +
== Marche Avant ==
 +
Les servos sont placez tête-bêche. Cela signifie que pour effectuer une marche avant, l'un des moteur doit fonctionner dans le sens avant... et l'autre dans le sens opposer.
 +
 +
* Le servo droit reçoit la commande -90° par l'instruction '''servoDroit.write( 0 )'''
 +
* Le servo gauche reçoit la commande +90° par l'instruction '''servoGauche.write( 180 )'''
 +
 +
Voici un exemple pratique de mise en oeuvre
 +
 +
<nowiki>// --- Ma planche a pain mobile --------------------------------
 +
//
 +
// Un servo normal se positionne sur un angle donné en fonction.
 +
// Un servo a rotation continue est modifié pour tourner plus ou moins vite
 +
//  en fonction de l'instruction envoyée.
 +
// Un servo à rotation continue permet de créer facilement de petits robot mobiles
 +
//
 +
// Un projet www.mchobby.be (vente de kit et composant)
 +
// Meurisse D. - Licence CC-SA-BY
 +
//
 +
// http://mchobby.be/wiki/index.php?title=Plateforme-PAPM
 +
//
 +
 +
#include <Servo.h>
 +
 +
// creer des objets Servo pour le controle de Servo à Rotation
 +
// continue
 +
Servo servoGauche; // sur broche 9
 +
Servo servoDroit;  // sur broche 10
 +
 
 +
void setup()
 +
{
 +
  servoGauche.attach(9);  // attacher le servo gauche sur la pin 9
 +
  servoDroit.attach(10);  // attacher le servo droit sur la pin 10
 +
  // arret
 +
  servoGauche.write(90);
 +
  servoDroit.write(90);
 +
}
 +
 +
void loop()
 +
{
 +
  // SI VOS MOTEUR ONT ETE CALIBRES A L ARRET...
 +
 
 +
  // --- Test de la "Marche avant" ---
 +
  // Si le mobile recule.... c'est que les deux servo sont montés
 +
  // dans le "mauvais sens". Le plus simple c'est encore d'inverser
 +
  // les raccordements des servos sur les broches 9 et 10.
 +
  servoDroit.write( 0 );
 +
  servoGauche.write( 180 );
 +
 
 +
  // attendre 5 secondes
 +
  delay( 5000 );
 +
 
 +
  // Arret
 +
  servoDroit.write( 90 );
 +
  servoGauche.write( 90 );
 +
 
 +
  // arreter le programme
 +
  while( true );
 +
}
 +
</nowiki>
 +
 +
== Exemple plus complet ==
 +
 +
Avancer tourner, reculer, ... voici un exemple un peu plus étendu.
 +
 +
<nowiki>// --- Ma planche a pain mobile --------------------------------
 +
//
 +
// Un servo normal se positionne sur un angle donné en fonction.
 +
// Un servo a rotation continue est modifié pour tourner plus ou moins vite
 +
//  en fonction de l'instruction envoyée.
 +
// Un servo à rotation continue permet de créer facilement de petits robot mobiles
 +
//
 +
// Un projet www.mchobby.be (vente de kit et composant)
 +
// Meurisse D. - Licence CC-SA-BY
 +
//
 +
// http://mchobby.be/wiki/index.php?title=Plateforme-PAPM
 +
//
 +
 +
#include <Servo.h>
 +
 +
// creer des objets Servo pour le controle de Servo à Rotation
 +
// continue
 +
Servo servoGauche; // sur broche 9
 +
Servo servoDroit;  // sur broche 10
 +
 
 +
void setup()
 +
{
 +
  servoGauche.attach(9);  // attacher le servo gauche sur la pin 9
 +
  servoDroit.attach(10);  // attacher le servo droit sur la pin 10
 +
  // arret
 +
  servoGauche.write(90);
 +
  servoDroit.write(90);
 +
}
 +
 +
void loop()
 +
{
 +
  // SI VOS MOTEUR ONT ETE CALIBRES A L ARRET...
 +
 
 +
  // --- Test de la "Marche avant" ---
 +
  // Si le mobile recule.... c'est que les deux servo sont montés
 +
  // dans le "mauvais sens". Le plus simple c'est encore d'inverser
 +
  // les raccordements des servos sur les broches 9 et 10.
 +
  servoDroit.write( 0 );  // avant
 +
  servoGauche.write( 180 );// avant
 +
 
 +
  // attendre 5 secondes
 +
  delay( 5000 );
 +
 
 +
  // Tourner à gauche
 +
  servoDroit.write( 0 );  // avant
 +
  servoGauche.write( 0 ); // arriere
 +
  delay( 2000 );
 +
 
 +
  // Marche Avant
 +
  servoDroit.write( 0 );
 +
  servoGauche.write( 180 );
 +
 
 +
  // attendre 5 secondes
 +
  delay( 5000 );
 +
 
 +
  // Tourner à droite
 +
  servoDroit.write( 180 ); // arriere
 +
  servoGauche.write( 180 );// avant
 +
  delay( 3000 );
 +
 
 +
  // Marche Arrière
 +
  servoDroit.write( 180 ); // arriere
 +
  servoGauche.write( 0 );  // arriere
 +
 
 +
  delay( 5000 );
 +
 
 +
  // Arret
 +
  servoDroit.write( 90 );
 +
  servoGauche.write( 90 );
 +
 
 +
  // arreter le programme
 +
  while( true );
 +
}
 +
</nowiki>
 +
 +
== Exemple en Vidéo ==
 +
 +
{{#Widget:Iframe
 +
|url=http://www.youtube.com/embed/3liKe_dBTI8
 +
|width=420
 +
|height=315
 +
|border=0
 +
}}
    
{{Plateforme-PAPM-TRAILER}}
 
{{Plateforme-PAPM-TRAILER}}
29 917

modifications

Menu de navigation