Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
projets:bateau_rc [14/03/2018 19:24] Mathieu Hery |
projets:bateau_rc [05/04/2018 20:55] (Version actuelle) Mathieu Hery |
||
---|---|---|---|
Ligne 3: | Ligne 3: | ||
==== Résumé ==== | ==== Résumé ==== | ||
- | c'est un projet instructif | + | Créer un bateau radiocommandé avec des éléments récupérés au Pop [lab] et en utilisant soit des modules RF 433MHz si on arrive à les faire fonctionner, soit en hackant une ancienne manette de voiture radiocommandé qui traîne au Pop [lab]. |
---- | ---- | ||
Ligne 32: | Ligne 32: | ||
==== Visuels ==== | ==== Visuels ==== | ||
- | Les photos viendront au fur et à mesure que le projet avancera. | ||
- | |||
- | Le bloc de polystyrène découpé : | ||
{{projets:bateau-rc-polystyrene.jpg?400}} | {{projets:bateau-rc-polystyrene.jpg?400}} | ||
+ | {{projets:principe-bateau-rc.jpg?400}} | ||
---- | ---- | ||
Ligne 42: | Ligne 40: | ||
Ce boût de code est à adapter pour controller un servo-moteur SG90 avec un potentiomètre : | Ce boût de code est à adapter pour controller un servo-moteur SG90 avec un potentiomètre : | ||
- | <code> | + | ++++ Code : | |
+ | <code c> | ||
/* | /* | ||
- | Into Robotics | + | Code en cours pour projet de bateau RC de Maxime au Pop [lab] |
+ | Etape du 21/03/18 | ||
+ | |||
+ | Code couleur du servo-moteur : | ||
+ | Orange : Data | ||
+ | Rouge : +5V | ||
+ | Marron : GND | ||
+ | |||
+ | Contrôle d'un servo tournant de 0° à 180° avec un potentiomètre. | ||
*/ | */ | ||
Ligne 50: | Ligne 57: | ||
int servoPin = 9; | int servoPin = 9; | ||
- | + | ||
Servo servo; | Servo servo; | ||
- | int servoAngle = 0; // servo position in degrees | + | int servoAngle = 0; // Position du servo-moteur en degrés |
- | + | ||
- | void setup() | + | void setup() { |
- | { | + | |
- | Serial.begin(9600); | + | |
servo.attach(servoPin); | servo.attach(servoPin); | ||
+ | servo.write(0); // Reset servo | ||
} | } | ||
- | |||
- | |||
- | void loop() | ||
- | { | ||
- | //control the servo's direction and the position of the motor | ||
- | servo.write(45); // Turn SG90 servo Left to 45 degrees | + | void loop() { |
- | delay(1000); // Wait 1 second | + | // Lire la valeur sur le pin Analog 0 |
- | servo.write(90); // Turn SG90 servo back to 90 degrees (center position) | + | int sensorValue = analogRead(A0); |
- | delay(1000); // Wait 1 second | + | // Mapper la valeur du potentiomètre à la rotation qu'on veut sur le servo |
- | servo.write(135); // Turn SG90 servo Right to 135 degrees | + | int mappedValue = map(sensorValue, 0, 1023, 0, 180); |
- | delay(1000); // Wait 1 second | + | // Envoyer la valeur de rotation voulue au servo |
- | servo.write(90); // Turn SG90 servo back to 90 degrees (center position) | + | servo.write(mappedValue); |
- | delay(1000); | + | // mini délai pour stabilité de lecture sur le pin A0 |
- | + | delay(1); | |
- | //end control the servo's direction and the position of the motor | + | |
- | + | ||
- | + | ||
- | //control the servo's speed | + | |
- | + | ||
- | //if you change the delay value (from example change 50 to 10), the speed of the servo changes | + | |
- | for(servoAngle = 0; servoAngle < 180; servoAngle++) //move the micro servo from 0 degrees to 180 degrees | + | |
- | { | + | |
- | servo.write(servoAngle); | + | |
- | delay(50); | + | |
- | } | + | |
- | + | ||
- | for(servoAngle = 180; servoAngle > 0; servoAngle--) //now move back the micro servo from 0 degrees to 180 degrees | + | |
- | { | + | |
- | servo.write(servoAngle); | + | |
- | delay(10); | + | |
- | } | + | |
- | //end control the servo's speed | + | |
} | } | ||
</code> | </code> | ||
+ | ++++ | ||
+ | |||
+ | ==== Sessions ==== | ||
+ | * Février : découpe de la coque dans une plaque de polystyrène et découverte des machines et outils du Pop [lab] | ||
+ | * 07/03 : pause sur le projet, gravure d'un Mew (pokemon) sur plaque de bois. | ||
+ | * 14/03 : Découverte de l'arduino et des servos-moteurs SG90 | ||
+ | * 21/03 : Programmation d'un arduino pour qu'un potentiomètre contrôle le mouvement d'un SG90 | ||
+ | * 27/03 : transformer le même programme arduino pour que ça passe à travers avec les modules RF 433MHz > Fail avec les modules RF à prendre en main | ||
+ | * 04/04 : Construction et collage de deux flotteurs de part & d'autre de la coque | ||
==== Ressources ==== | ==== Ressources ==== | ||
Ligne 103: | Ligne 95: | ||
---- | ---- | ||
+ | |||
+ | |||
//Projet réalisé par Maxime// | //Projet réalisé par Maxime// |