Bonjour chers amis ! Bienvenue dans ce tuto pour découvrir comment câbler et programmer un tilt switch ! Vous avez la possibilité de suivre ce tuto par écrit ci-dessous ou en vidéo.
Avant de commencer je souhaiterai rappeler quel est le principe du
tilt switch. L’idée est d’avoir une « cage » métallique contenant une
petite bille. Quand cette bille vient toucher un côté ou l’autre du
capteur, on peut ainsi déterminer son inclinaison par exemple si on
l’a placé dans une configuration qui le permet.
--------------------------------
Pour
commencer voici ce dont nous aurons besoin :
--------------------------------
Maintenant que vous avez ça, vous êtes enfin parés pour commencer le
câblage !
Voici le schéma :
On relie la broche 8 à la data du capteur (pin à gauche du capteur),
le 5V au 5V (pin au milieu du capteur) et pour finir, le GND (ou -) au
GND, à droite du capteur
--------------------------------
Le schéma terminé, nous pouvons
passer sur notre éditeur de texte Arduino IDE et nous lancer dans la
programmation.
L’idée dans un premier temps est d’envoyer un message à l’ordinateur
pour lui dire dans quel état est le capteur (si la bille touche un
côté ou l’autre).
Voici le code, vous pouvez lire les commentaires situés à l’intérieur
pour bien le comprendre :
const int tiltSwitchPin = 8; // On définie où est branché la data du tiltswitch, dans notre cas, la broche 8
int previousTiltSwitchState = LOW; // On stocke l'état précédent du capteur, cela va nous être très utile par la suite, vous allez voir
void setup() {
Serial.begin(9600); // On initialise la communication série (celle qui nous permettra d'envoyer les données de notre capteur à l'ordinateur)
pinMode(tiltSwitchPin, INPUT); // On configure la broche du capteur tilt switch en entrée
}
void loop() {
int tiltSwitchState = digitalRead(tiltSwitchPin); // On lit l'état de notre capteur et le stocke dans une variable
if (tiltSwitchState != previousTiltSwitchState) { // On commence une boucle, elle dit que si l'état du capteur tilt switch a changé,
previousTiltSwitchState = tiltSwitchState; // on stocke le nouvel état du capteur tilt switch
if (tiltSwitchState == HIGH) { // et si le capteur tilt switch est activé, c'est-à-dire, si la bille touche une des deux parois,
Serial.println("Désactivé"); // on envoye un message "Activé" à la console
} else { // sinon, si le capteur est désactivé,
Serial.println("Activé"); // on envoye un message "Désactivé" à la console.
}
}
delay(100); // On attends un court instant avant de vérifier à nouveau l'état du capteur
}
Maintenant on peut connecter la carte et aller dans select board, ici j’ai déjà indiqué que c’était un Arduino Uno.
Vous allez arriver sur cette page où vous pourrez rechercher le modèle de votre carte et le port où elle est. Si vous ne la voyez pas, cochez « Show all ports » qui vous permettra d’afficher tous les ports.
Maintenant que la configuration est faîtes nous pouvons téléverser notre code en cliquant sur le bouton avec la flèche (Upload)
Félicitations ! Votre code est téléversé !
Maintenant nous
pouvons ouvrir le moniteur série :
A l’intérieur vous pouvez observer que quand vous changer la position
du capteur, vous avez bien un message activé ou désactivé.
Si vous n’arrivez pas à ce résultat, n’hésitez pas à rejoindre le
serveur Discord du Club Scientifique International où nous seurons
heureux de vous aider :
Serveur Discord CSI
Si vous souhaitez découvrir le projet bonus, je vous invite à aller voir la vidéo tout en haut de la page, vous avez le chapitrage qui est disponible pour avancer directement jusqu’à celui-ci