| Ligne 20 : | Ligne 20 : | ||
{{Tuto Step | {{Tuto Step | ||
|Step_Title=<translate>Branchement du dispositif Arduino Nano</translate> | |Step_Title=<translate>Branchement du dispositif Arduino Nano</translate> | ||
| − | |Step_Content=<translate> | + | |Step_Content=<translate># Brancher une extrémité d'un câble au port D5 de la carte Arduino et l'autre côté au port IN d'un des moteurs puis prendre un autre câble et le brancher au port GND de la carte Arduino et l'autre bout au port GND du même moteur |
| − | + | # Brancher une extrémité d'un câble au port D3 de la carte Arduino et l'autre côté au port IN d'un des moteurs puis prendre un autre câble et le brancher au port GND de la carte Arduino et l'autre bout au port GND du même moteur. | |
| − | + | # Utiliser un câble en Y et brancher le VCC de chacun des 2 moteurs avec le port 5V sur la carte Arduino Nano | |
| − | |||
| − | |||
| − | |||
| − | |||
Auteur
Annabelle | Dernière modification 2/04/2026 par Annabelle
Pas encore d'image
Couture, Arduino, Porte-Clé Creation
(Voir image)
Nous avons utilisé le logiciel Arduino IDE. Voici le programme qui sera versé dans la carte Arduino :
const int MOTEUR_PIN1 = 3; // Broche du premier moteur
const int MOTEUR_PIN2 = 5; // Broche du deuxieme moteur
const int VAL_MIN = 115; // Intensité minimale de vibration
const int VAL_MAX = 225; // Intensité maximale de vibration
const int INC = 5; // Valeur ajoutée ou retirée à chaque étape
const int DELAI_CHANGEMENT = 130; // Délai entre chaque changement (en millisecondes)
int incrementActuel = 0;
int incrementMax = VAL_MAX - VAL_MIN;
bool augmentation = true; // Cette variable sert de sens de direction
void setup() { // Démarre les moteurs
pinMode(MOTEUR_PIN1, OUTPUT);
pinMode(MOTEUR_PIN2, OUTPUT);
}
void loop() { // Se répète en boucle pour faire vibrer les moteurs en continue
vibrerMoteurs(incrementActuel);
if (augmentation) { // Si on augmente
incrementActuel += INC; // Augmente la puissance progressivement de INC donc de 5 (On peut l'écrire : incrementActuel + INC = incrementActuel)
if (incrementActuel >= incrementMax) {
augmentation = false; // Arrivé au maximum, on change de sens
incrementActuel = incrementMax;
}
} else { // Sinon on diminue
incrementActuel -= INC; // On diminue donc progressivement la puissance
if (incrementActuel <= 0) {
augmentation = true;
incrementActuel = 0;
}
}
}
// Les moteurs changent de sens
void vibrerMoteurs(int increment) {
analogWrite(MOTEUR_PIN1, VAL_MIN + increment); // Le moteur 1 devient plus puissant progressivement
analogWrite(MOTEUR_PIN2, VAL_MAX - increment); // Le moteur 2 devient moins puissant progressivement
delay(DELAI_CHANGEMENT); // Pause avant le prochain changement
}
fr none 0 Draft
Vous avez entré un nom de page invalide, avec un ou plusieurs caractères suivants :
< > @ ~ : * € £ ` + = / \ | [ ] { } ; ? #