ENIB 2020 : Pêche automatique : Différence entre versions
(→Liste des composants) |
(→Code) |
||
Ligne 18 : | Ligne 18 : | ||
==Code== | ==Code== | ||
<pre> | <pre> | ||
− | + | // Remonter un filet de pêche lorsqu'un poisson est détecté avec led de signalement. | |
+ | |||
+ | #include <Servo.h> | ||
+ | |||
+ | Servo monservo; // crée l’objet pour contrôler le servomoteur | ||
+ | const int Broche_Servo = 9; // Le capteur est attaché à la broche 9 | ||
+ | const int Broche_Capteur = 3; // Le capteur est attaché à la broche 3 | ||
+ | const int Broche_Led = 2; // Broche 2 connecté à la Led | ||
+ | |||
+ | void setup() | ||
+ | { | ||
+ | monservo.attach(Broche_Servo); // Attache le servo à la broche spécifiée | ||
+ | monservo.write(1); // positionne le servomoteur à 0° | ||
+ | pinMode(Broche_Capteur, INPUT); // Met Broche_Capteur en INPUT | ||
+ | pinMode(Broche_Led, OUTPUT); // Met Broche_led en OUTPUT | ||
+ | |||
+ | } | ||
+ | |||
+ | |||
+ | void loop() | ||
+ | { | ||
+ | boolean valeur = digitalRead(Broche_Capteur); // On lit la valeur du capteur | ||
+ | if(valeur == LOW) // Si la valeur est HIGH | ||
+ | { | ||
+ | monservo.write(1); // Ré-initialisation | ||
+ | digitalWrite(Broche_Led, HIGH); // Allumer la Led | ||
+ | monservo.write(150); // Le Servo réalise un angle de 180°, le filet monte | ||
+ | delay(5000); // Délais avant que le filet re-descende | ||
+ | monservo.write(1); // Retour à la position initiale | ||
+ | } | ||
+ | else // Sinon | ||
+ | { | ||
+ | digitalWrite(Broche_Led, LOW); // Eteindre la Led | ||
+ | } | ||
+ | } | ||
+ | |||
+ | // Ajouter un switch ON/OFF ? | ||
+ | // Ajouter un bouton de réinitialisation du filet ? | ||
+ | // Envoyer un message sur une application quand le poisson est pêché ? | ||
+ | |||
</pre> | </pre> | ||
Version du 19 janvier 2020 à 16:55
photo de l'équipe
Que fait ce projet ?
Liste des composants
- 1 carte microcontrôleur Arduino nano
- 1 Servo moteur SG92R
- 4 Capteurs infrarouges TCRT50000
- 1 led rouge
- 2 Planche de bois 3mm
Code
// Remonter un filet de pêche lorsqu'un poisson est détecté avec led de signalement. #include <Servo.h> Servo monservo; // crée l’objet pour contrôler le servomoteur const int Broche_Servo = 9; // Le capteur est attaché à la broche 9 const int Broche_Capteur = 3; // Le capteur est attaché à la broche 3 const int Broche_Led = 2; // Broche 2 connecté à la Led void setup() { monservo.attach(Broche_Servo); // Attache le servo à la broche spécifiée monservo.write(1); // positionne le servomoteur à 0° pinMode(Broche_Capteur, INPUT); // Met Broche_Capteur en INPUT pinMode(Broche_Led, OUTPUT); // Met Broche_led en OUTPUT } void loop() { boolean valeur = digitalRead(Broche_Capteur); // On lit la valeur du capteur if(valeur == LOW) // Si la valeur est HIGH { monservo.write(1); // Ré-initialisation digitalWrite(Broche_Led, HIGH); // Allumer la Led monservo.write(150); // Le Servo réalise un angle de 180°, le filet monte delay(5000); // Délais avant que le filet re-descende monservo.write(1); // Retour à la position initiale } else // Sinon { digitalWrite(Broche_Led, LOW); // Eteindre la Led } } // Ajouter un switch ON/OFF ? // Ajouter un bouton de réinitialisation du filet ? // Envoyer un message sur une application quand le poisson est pêché ?