ENIB 2022 - groupe D : Tourne Bières : Différence entre versions
(Page créée avec « ==photo de l'équipe== 600px ==Que fait ce projet ? == C'est un manège à tasse mais avec des bières qui tournent avec des engrenages entr... ») |
(→Code) |
||
Ligne 16 : | Ligne 16 : | ||
==Code== | ==Code== | ||
<pre> | <pre> | ||
− | + | // Pont en H L298N | |
+ | //Ports de commande du moteur B | ||
+ | int inter = 4; | ||
+ | int motorPin1 = 8; | ||
+ | int motorPin2 = 9; | ||
+ | int enablePin = 5; | ||
+ | |||
+ | // Vitesse du moteur | ||
+ | int state = 0; | ||
+ | void setup() { | ||
+ | // Configuration des ports en mode "sortie" | ||
+ | pinMode(motorPin1, OUTPUT); | ||
+ | pinMode(motorPin2, OUTPUT); | ||
+ | pinMode(enablePin, OUTPUT); | ||
+ | pinMode(inter, INPUT); | ||
+ | |||
+ | // Initialisation du port série | ||
+ | Serial.begin(9600); | ||
+ | } | ||
+ | |||
+ | void loop() { | ||
+ | |||
+ | if (digitalRead(inter)==LOW){ | ||
+ | state = 255; | ||
+ | } | ||
+ | else | ||
+ | { | ||
+ | state = 0; | ||
+ | } | ||
+ | |||
+ | |||
+ | |||
+ | if (state > 0) // avant | ||
+ | { | ||
+ | digitalWrite(motorPin1, HIGH); | ||
+ | digitalWrite(motorPin2, LOW); | ||
+ | Serial.print("Avant "); | ||
+ | Serial.println(state); | ||
+ | } | ||
+ | else // Stop (freinage) | ||
+ | { | ||
+ | digitalWrite(motorPin1, HIGH); | ||
+ | digitalWrite(motorPin2, HIGH); | ||
+ | Serial.println("Stop"); | ||
+ | } | ||
+ | // | ||
+ | // Vitesse du mouvement | ||
+ | // | ||
+ | analogWrite(enablePin, abs(state)); | ||
+ | |||
+ | delay(100); | ||
+ | } | ||
</pre> | </pre> | ||
Version du 17 janvier 2022 à 16:25
photo de l'équipe
Que fait ce projet ?
C'est un manège à tasse mais avec des bières qui tournent avec des engrenages entrainés par un moteur.
Liste des composants
- 1 moteur 5V
- 1 carte arduino nano
- 2 plaques de bois 3mm 300*600mm
- 1 shield
- 1 interrupteur
- cables mâles/femelles
Code
// Pont en H L298N //Ports de commande du moteur B int inter = 4; int motorPin1 = 8; int motorPin2 = 9; int enablePin = 5; // Vitesse du moteur int state = 0; void setup() { // Configuration des ports en mode "sortie" pinMode(motorPin1, OUTPUT); pinMode(motorPin2, OUTPUT); pinMode(enablePin, OUTPUT); pinMode(inter, INPUT); // Initialisation du port série Serial.begin(9600); } void loop() { if (digitalRead(inter)==LOW){ state = 255; } else { state = 0; } if (state > 0) // avant { digitalWrite(motorPin1, HIGH); digitalWrite(motorPin2, LOW); Serial.print("Avant "); Serial.println(state); } else // Stop (freinage) { digitalWrite(motorPin1, HIGH); digitalWrite(motorPin2, HIGH); Serial.println("Stop"); } // // Vitesse du mouvement // analogWrite(enablePin, abs(state)); delay(100); }