Utilisation du capteur tactile

Le capteur tactile détecte les pressions sur le bouton situé sur sa face avant. Par exemple, vous pouvez utiliser le capteur tactile pour détecter quand le robot percute un obstacle. Vous pouvez également appuyer sur le bouton du capteur tactile pour déclencher une action.
Le capteur tactile peut indiquer si le bouton est enfoncé ou non. Il ne peut pas mesurer la profondeur à laquelle le bouton est enfoncé ni la force exercée. Le capteur tactile transmet des données logiques (Vrai ou Faux). La position du bouton du capteur tactile est appelée État. Sa valeur est Vrai quand le bouton est enfoncé et Faux qu'il ne l'est pas (relâché).

Le capteur tactile peut aussi identifier quand le bouton a été enfoncé puis relâché. Cet état est appelé Heurté. Il permet notamment de détecter quand vous appuyez avec un doigt. Pour plus d'informations, consultez la section Explication du concept Heurté.
Données du capteur tactile
Le capteur tactile peut fournir les données suivantes :
DonnéesTypeRemarques
État LogiqueVrai si le bouton est enfoncé, Faux s'il ne l'est pas.
Enfoncé LogiqueVrai si enfoncé, Faux dans le cas contraire (identique à l'État).
Relâché LogiqueFaux si enfoncé, Vrai dans le cas contraire (état opposé à l'État).
Heurté LogiqueVrai quand le bouton a été enfoncé puis relâché. Pour que cet état se reproduise, il faut que le bouton soit à nouveau enfoncé puis relâché.
Exemples d'utilisation de l'état Enfoncé
Voici des exemples d'utilisation de l'état Enfoncé du capteur tactile dans un programme.
Exemple 1 : avancer jusqu'à ce que le capteur tactile soit enfoncé
Dans ce programme, le robot avance jusqu'à ce que le capteur tactile soit enfoncé, puis il s'arrête. Le programme utilise le bloc Attendre en mode Capteur tactile – Comparer – État pour tester l'état Enfoncé.
Conseils et astuces
Utilisez le mode Activé du bloc Déplacement et direction si vous voulez faire avancer le robot en attendant la réaction d'un capteur.
Exemple 2 : faire tourner un moteur quand un capteur tactile est maintenu enfoncé (méthode 1)
Dans ce programme, le moteur tourne quand le capteur tactile est maintenu enfoncé et s'arrête quand il est relâché. Le programme utilise le bloc Sélecteur en mode Capteur tactile – Comparer – État pour tester l'état Enfoncé. Le résultat de la comparaison est utilisé pour activer/désactiver le moteur. Le test se répète indéfiniment dans une Boucle.
Exemple 3 : clignotement du témoin d'état de la brique quand un capteur tactile est maintenu enfoncé
Dans ce programme, le témoin d'état de la brique s'allume en orange, et il clignote quand le capteur tactile est maintenu enfoncé. Le programme utilise le bloc Capteur tactile en mode Mesure pour connaître l'état du capteur tactile. Le résultat est transmis par un fil de données à la valeur d'entrée Clignotement du bloc Boutons de la brique.
Exemples d'utilisation de l'état Relâché
Voici des exemples d'utilisation de l'état Relâché du capteur tactile dans un programme.
Exemple 4 : bip à chaque pression sur le capteur tactile
Dans ce programme, une brève tonalité est diffusée chaque fois que le capteur tactile est enfoncé. Une seule tonalité retentit à chaque pression. Le programme utilise un bloc Attendre en mode Capteur tactile – Comparer – État qui attend que le bouton soit Enfoncé et un autre bloc Attendre qui attend que le bouton soit Relâché pour poursuivre la boucle.
Conseils et astuces
Si vous supprimez le second bloc (Attendre – Relâché), la tonalité se répétera tant que le capteur tactile sera maintenu enfoncé. En effet, le bloc Attendre passera directement au bloc suivant si le capteur tactile est déjà enfoncé. Faites le test.
Exemple 5 : faire tourner un moteur quand un capteur tactile est maintenu enfoncé (méthode 2)
Dans ce programme, le moteur tourne quand le capteur tactile est maintenu enfoncé et s'arrête quand il est relâché. Le programme utilise un bloc Attendre en mode Capteur tactile – Comparer – État qui attend que le bouton soit Enfoncé pour activer le moteur et un autre bloc Attendre qui attend que le bouton soit Relâché pour arrêter le moteur. Le test se répète dans une Boucle.
Conseils et astuces
Ce programme fait la même chose que dans l'exemple 2 ci-dessus, mais utilise une autre méthode.
Explication du concept Heurté
En plus d'indiquer si le bouton est actuellement enfoncé ou relâché, le capteur tactile peut se rappeler s'il a été enfoncé, puis relâché. Cet état est appelé Heurté. Vous pouvez ainsi facilement voir si un capteur tactile a été enfoncé comme un bouton poussoir, sans devoir vérifier à chaque fois que le bouton est enfoncé, puis attendre qu'il soit relâché.

Une fois que le capteur tactile a indiqué qu'il a été Heurté, il faut qu'il soit enfoncé puis relâché une seconde fois pour qu'il indique à nouveau qu'il a été Heurté. Vous pouvez ainsi vous assurer que chaque pression correspond à une action qui ne se produit qu'une fois.

Le tableau suivant montre un exemple où le capteur tactile est enfoncé puis relâché deux fois. Le tableau montre le résultat d'un programme testant l'état Enfoncé, Relâché et Heurté après chaque action.
ÉtapeActionEnfoncéRelâchéHeurté
1 Le bouton commence à l'état relâché.FauxVraiFaux
2 Le bouton est enfoncé.VraiFauxFaux
3 Le bouton est relâché.FauxVraiVrai
4 Le bouton est toujours relâché et le programme teste à nouveau le capteur tactile.FauxVraiFaux
5 Le bouton est enfoncé une seconde fois.VraiFauxFaux
6 Le bouton est maintenu enfoncé et le programme teste à nouveau le capteur tactile.VraiFauxFaux
7 Le bouton est relâché.FauxVraiVrai
8 Le bouton est toujours relâché et le programme teste à nouveau le capteur tactile.FauxVraiFaux
Notez que lorsque le bouton est maintenu enfoncé, le capteur tactile continue d'indiquer Enfoncé chaque fois que le programme le teste. Cependant, quand le bouton est relâché, le capteur n'indique l'état Heurté que la première fois que le programme teste cet état. Le capteur n'indique pas à nouveau Heurté tant que le bouton n'a pas à nouveau été enfoncé puis relâché.
Exemples d'utilisation de l'état Heurté
Voici des exemples d'utilisation de l'état Heurté du capteur tactile dans un programme.
Exemple 6 : changer l'affichage lorsque le capteur tactile est enfoncé
Dans ce programme, la brique EV3 affiche "Zero", "One", "Two"... chaque fois que le capteur tactile est heurté (enfoncé puis relâché).
Conseils et astuces
Si vous utilisez les blocs Attendre de ce programme en mode Attendre – Enfoncé plutôt que Attendre – Heurté, l'affichage passera directement de "Zero" à "Two", sans afficher "One". Faites le test. Les blocs Afficher s'exécutent si rapidement qu'au passage au deuxième bloc Attendre – Enfoncé, votre doigt enfonce toujours le bouton du premier bloc Attendre. Le deuxième bloc Attendre prend donc directement fin. Si vous utilisez des blocs Attendre – Heurté, un seul bloc s'exécutera à chaque pression.
Exemple 7 : effectuer un parcours jusqu'à ce que le capteur tactile soit enfoncé
Dans ce programme, le robot avance tout droit, tourne, puis répète ces actions jusqu'à ce que le capteur tactile, qui sert de bouton "Stop" sur le robot, soit enfoncé. Quand le capteur tactile est enfoncé, le robot s'arrête après le virage suivant. Le programme utilise un bloc Boucle en mode Capteur tactile pour répéter les blocs Déplacement jusqu'à ce que le capteur tactile soit heurté (enfoncé puis relâché).
Conseils et astuces
Si vous essayez ce programme avec l'état Enfoncé plutôt que Heurté, le robot ne s'arrêtera probablement pas quand vous appuierez sur le capteur tactile. Faites le test. La boucle ne teste le capteur que très brièvement une fois que les deux blocs Déplacement ont été exécutés. Si vous enfoncez, puis relâchez le capteur pendant l'exécution des blocs Déplacement, l'état Enfoncé ne sera pas détecté. Quand vous utilisez l'état Heurté, le capteur tactile se rappelle qu'il a été enfoncé puis relâché.
Blocs et modes utilisant le capteur tactile
Le tableau suivant répertorie tous les blocs de programmation et modes utilisant le capteur tactile.
BlocModeUtilisation
AttendreCapteur tactile – ComparerAttendre que le capteur tactile soit enfoncé, relâché ou heurté.
AttendreCapteur tactile – ChangementAttendre que le capteur tactile change d'état.
BoucleCapteur tactileRépéter une séquence de blocs jusqu'à ce que le capteur tactile soit enfoncé, relâché ou heurté.
SélecteurCapteur tactileChoisir entre deux séquences de blocs selon que le capteur tactile est enfoncé ou non, relâché ou non, ou heurté ou non.
Capteur tactileMesureTransmettre l'état actuel du capteur (enfoncé ou non) à un fil de données logique.
Capteur tactileComparerTester si le capteur tactile est enfoncé, relâché ou heurté et transmettre le résultat à un fil de données logique.
Journalisation des donnéesVoir Journalisation des données.
Tactile
Liens rapides