Cours:StartMindstormEV3DEV : Différence entre versions

De troyesGEII
Aller à : navigation, rechercher
Ligne 42 : Ligne 42 :
 
</source>
 
</source>
  
Pour compiler et exécuter votre programme test.c , il suffit de :
+
Pour compiler et exécuter votre programme {{Rouge|test.c}} , il suffit de :
 
<source lang=bash>
 
<source lang=bash>
 
gcc test.c -lev3dev-c -o test
 
gcc test.c -lev3dev-c -o test
 
./test
 
./test
 +
</source>
 +
 +
={{Rouge|Capteurs}}=
 +
 +
http://slideplayer.com/slide/10944320/
 +
 +
=={{Bleu|Capteur de couleur}}==
 +
 +
On trouve 3 modes de mesure principaux :
 +
{|
 +
|-
 +
| COL-COLOR || retourne un nombre entre 0 et 7 tel que :
 +
{|
 +
|-
 +
| 0 ?? || 1 noir || 2 bleu
 +
|-
 +
| 3 vert|| 4 jaune|| 5 rouge
 +
|-
 +
| 6 blanc|| 7 marron||
 +
|}
 +
|-
 +
| COL-REFLECT || intensité de la lumière réfléchie entre 0 et 100
 +
|-
 +
| COL-AMBIENT || intensité de la lumière ambiante entre 0 et 100
 +
|}
 +
 +
Il faudra tout d'abord initialiser le capteur et choisir le mode de mesure :
 +
<source lang=c>
 +
POOL_T capteurCouleur;
 +
 +
const char const *nomCouleur[] = { "?", "BLACK", "BLUE", "GREEN", "YELLOW", "RED", "WHITE", "BROWN" };
 +
#define NB_COULEUR  (( int )( sizeof( nomCouleur ) / sizeof( nomCouleur[ 0 ])))
 +
int couleur;
 +
 +
int initCapteurCouleur()
 +
{
 +
  capteurCouleur = sensor_search( LEGO_EV3_COLOR );
 +
  if (capteurCouleur)
 +
  {
 +
      color_set_mode_col_color(capteurCouleur);
 +
      //color_set_mode_col_reflect(capteurCouleur);
 +
      //color_set_mode_col_ambient(capteurCouleur);
 +
      printf( "capteur couleur connecté\n");
 +
  }
 +
  else
 +
  {
 +
      printf("vérifier le branchement du capteur couleur !\n");
 +
      return (0);
 +
  }
 +
  return 1;
 +
}
 
</source>
 
</source>

Version du 9 octobre 2017 à 09:56

Infos utiles

librairie brick

Pour commencer, nous utiliserons la librairie simplifiée "brick.h" dont nous allons explorer quelques aspects ici.

Programme minimum

Cette base minimum de programme devra être reprise systématiquement :

#include <stdio.h>
#include "brick.h"
#include <unistd.h>
#define Sleep( msec ) usleep(( msec ) * 1000 )

int main( void )
{
   if ( ev3_init() == -1 )
   {
     printf("\erreur d'initialisation\n");
     return ( 1 );
   }
   printf("initialisation des capteurs ... ");
   ev3_sensor_init();
   printf(" ok !\n");
   printf("initialisation des actionneurs ... ");
   while ( ev3_tacho_init() < 1 ) Sleep( 1000 );
   printf(" ok !\n");

   // début du programme


   // fin du programme
   ev3_uninit();
   printf("*** ( EV3 ) Bye! ***\n" );
   return(0);
}

Pour compiler et exécuter votre programme test.c , il suffit de :

gcc test.c -lev3dev-c -o test
./test

Capteurs

http://slideplayer.com/slide/10944320/

Capteur de couleur

On trouve 3 modes de mesure principaux :

COL-COLOR retourne un nombre entre 0 et 7 tel que :
0 ?? 1 noir 2 bleu
3 vert 4 jaune 5 rouge
6 blanc 7 marron
COL-REFLECT intensité de la lumière réfléchie entre 0 et 100
COL-AMBIENT intensité de la lumière ambiante entre 0 et 100

Il faudra tout d'abord initialiser le capteur et choisir le mode de mesure :

POOL_T capteurCouleur;
 
const char const *nomCouleur[] = { "?", "BLACK", "BLUE", "GREEN", "YELLOW", "RED", "WHITE", "BROWN" };
#define NB_COULEUR  (( int )( sizeof( nomCouleur ) / sizeof( nomCouleur[ 0 ])))
int couleur;
 
int initCapteurCouleur()
{
   capteurCouleur = sensor_search( LEGO_EV3_COLOR );
   if (capteurCouleur)
   {
       color_set_mode_col_color(capteurCouleur);
       //color_set_mode_col_reflect(capteurCouleur);
       //color_set_mode_col_ambient(capteurCouleur);
       printf( "capteur couleur connecté\n");
   }
   else
   {
       printf("vérifier le branchement du capteur couleur !\n");
       return (0);
   }
   return 1;
}