Cours:MindstormStructuresDeControle : Différence entre versions
(Page créée avec « {{Rouge|'''Retour à la liste des Tps'''}} Vous trouverez sur la page listant les énoncés de TP un lien vers l'ensemble des fonctions spécifique... ») |
(→{{Rouge|Affichage de l'état d'un capteur}}) |
||
| Ligne 23 : | Ligne 23 : | ||
* A B C D : ce sont les sorties | * A B C D : ce sont les sorties | ||
| + | =={{Bleu|Principe pour 1 capteur}}== | ||
| + | Les capteurs pouvant être connectés sur la brique EV3 étant tous différents, il est nécessaire d'indiquer sur quelle broche nous avons connecté le/les capteur(s) utilisé(s). | ||
| + | |||
| + | Pour cela vous devez utilisez la fonction : | ||
| + | setAllSensorMode | ||
| + | |||
| + | Le détail de cette fonction sera à consulter dans la documentation. | ||
| + | |||
| + | {{Todo|Voici un exemple d'utilisation à suivre pour tester le capteur de contact ( {{Rouge|touch sensor}} in english !) :}} | ||
| + | |||
| + | <source lang=c> | ||
| + | #include <ev3.h> | ||
| + | int main(void) | ||
| + | { | ||
| + | // on déclare une variable etatTouchSensor pour "enregistrer" l'état du capteur | ||
| + | int etatTouchSensor = 0; | ||
| + | |||
| + | InitEV3(); | ||
| + | // on configure la sortie 1 comme capteur de contact | ||
| + | // et les sorties 2,3,4 sont indiquées sans capteur (NO_SEN) | ||
| + | setAllSensorMode(TOUCH_PRESS, NO_SEN, NO_SEN, NO_SEN); | ||
| + | // on peut alors lire l'état du capteur sur l'entrée 1 | ||
| + | // et mettre sa valeur dans la variable etatTouchSensor | ||
| + | etatTouchSensor = readSensor( IN_1 ); | ||
| + | // on affiche alors sa valeur | ||
| + | LcdPrintf(1, "valeur du capteur : %d \n", etatTouchSensor); | ||
| + | Wait(SEC_5); | ||
| + | |||
| + | FreeEV3(); | ||
| + | return 0; | ||
| + | } | ||
| + | </source> | ||
={{Rouge|}}= | ={{Rouge|}}= | ||
={{Rouge|}}= | ={{Rouge|}}= | ||
Version du 12 septembre 2018 à 09:58
Retour à la liste des Tps
Vous trouverez sur la page listant les énoncés de TP un lien vers l'ensemble des fonctions spécifique à la programmation de la brique lego EV3.
Affichage de l'état d'un capteur
Tout système possède des entrées et des sorties.
Les sorties sont les actionneurs et génèrent donc une action :
- produire un son
- émettre de la lumière
- produire une action mécanique
- ...
Les entrées permettent d’interagir avec l'environnement et l'utilisateur, ils observent/mesurent quelque chose :
- capteur de contact/collision
- microphone
- capteur de couleur
- ...
Sur la brique programmable EV3, le nom des connecteurs donne la fonction :
- 1 2 3 4 : ce sont les entrées
- A B C D : ce sont les sorties
Principe pour 1 capteur
Les capteurs pouvant être connectés sur la brique EV3 étant tous différents, il est nécessaire d'indiquer sur quelle broche nous avons connecté le/les capteur(s) utilisé(s).
Pour cela vous devez utilisez la fonction :
setAllSensorMode
Le détail de cette fonction sera à consulter dans la documentation.
Voici un exemple d'utilisation à suivre pour tester le capteur de contact ( touch sensor in english !) :
#include <ev3.h>
int main(void)
{
// on déclare une variable etatTouchSensor pour "enregistrer" l'état du capteur
int etatTouchSensor = 0;
InitEV3();
// on configure la sortie 1 comme capteur de contact
// et les sorties 2,3,4 sont indiquées sans capteur (NO_SEN)
setAllSensorMode(TOUCH_PRESS, NO_SEN, NO_SEN, NO_SEN);
// on peut alors lire l'état du capteur sur l'entrée 1
// et mettre sa valeur dans la variable etatTouchSensor
etatTouchSensor = readSensor( IN_1 );
// on affiche alors sa valeur
LcdPrintf(1, "valeur du capteur : %d \n", etatTouchSensor);
Wait(SEC_5);
FreeEV3();
return 0;
}