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é ?
