Hemisson


a)
Algorigramme

Définition des variables de l’algorigramme

AV : capteur de lumière avant
AVG : capteur de lumière avant gauche
AVD : capteur de lumière avant droit
D : capteur de lumière droit
G : capteur de lumière gauche
AR : capteur de lumière arrière



Numériser0002



b)
Photos du robot suiveur :


IMAG0239


IMAG0238


IMAG0237



c) Programme du robot suiveur :


//-------------------------------------------------------------------------------//
//- ( Hemisson PPE ) -//
//- -//

//-------------------------------------------------------------------------------//
// Fichiers d'en-tÍte (header) incluant les initilaisation et les fonctions //
// de haut niveau qui sont appelÈes //
#include
#include "fonctions_en_francais.h"


// Vitesse rapide de rotation d'une roue
#define VITESSE_RAPIDE 6

// Vitesse lente de rotation d'une roue
#define VITESSE_LENTE 2

// Vitesse arriere de rotation d'une roue
#define VITESSE_ARRIERE -6

// Vitesse arriere de rotation d'une roue
#define VITESSE_STOP 0


// Seuil de luminositÈ avant
#define SEUIL_LUMIERE_AVANT 220

// Seuil de luminositÈ avantbas
#define SEUILBAS_LUMIERE_AVANT
20

// Seuil de luminositÈ avantdroit
#define SEUIL_LUMIERE_AVANTDROITE 220

// Seuil de luminositÈ avantgauche
#define SEUIL_LUMIERE_AVANTGAUCHE 220

// Seuil de luminositÈ droit
#define SEUIL_LUMIERE_DROITE 220

// Seuil de luminositÈ gauche
#define SEUIL_LUMIERE_GAUCHE 220

// Seuil de luminositÈ arriËre
#define SEUIL_LUMIERE_ARRIERE 220


int Luminosite_avant,Luminosite_avantdroite,Luminosite_avantgauche,Luminosite_droite,Luminosite_gauche,Luminosite_arriere;
//-------------------------------------------------------------------------------//

// dÈbut du programme //
void main()
{

// Initialisation du Hemisson, autorise l'utilisation de la laison SÈrie et de la tÈlÈcommande TV
// Lance la lecture automatique des capteur IR et du rÈcepteur TV
hemisson_init();


// ...... commentaire ‡ complÈter ........ //
while(1)
{

//********* ‡ complÈter ************
//Mesurer la luminositÈ des capteurs avant gauches et droits
Luminosite_avant=MESURER_LUMINOSITE(Avant);
Luminosite_avantgauche=MESURER_LUMINOSITE(AvantGauche);
Luminosite_avantdroite=MESURER_LUMINOSITE(AvantDroit);
Luminosite_gauche=MESURER_LUMINOSITE(Gauche);
Luminosite_droite=MESURER_LUMINOSITE(Droit);
Luminosite_arriere=MESURER_LUMINOSITE(Arriere);
//Luminosite_avant=MESURER_LUMINOSITE(Avant);

//situation 1
if (Luminosite_avant //action 1
IMPOSER_VITESSE(VITESSE_RAPIDE,VITESSE_RAPIDE);

//situation 2
else if (Luminosite_avantgauche //action 2
IMPOSER_VITESSE(VITESSE_ARRIERE,VITESSE_RAPIDE);

//situation 3
else if (Luminosite_avantdroite //action 3
IMPOSER_VITESSE(VITESSE_RAPIDE,VITESSE_ARRIERE);

//situation 4
else if (Luminosite_gauche //action 4
IMPOSER_VITESSE(VITESSE_ARRIERE,VITESSE_RAPIDE);

//situation 5
else if (Luminosite_droite //action 5
IMPOSER_VITESSE(VITESSE_RAPIDE,VITESSE_ARRIERE);

//situation 6
else if (Luminosite_arriere //action 6
IMPOSER_VITESSE(VITESSE_RAPIDE,VITESSE_ARRIERE);

//situation 7
else if ((Luminosite_avant //action 7
IMPOSER_VITESSE(VITESSE_STOP,VITESSE_STOP);

//situation 7
else if ((Luminosite_avant>SEUIL_LUMIERE_AVANT))
//action 7
IMPOSER_VITESSE(VITESSE_STOP,VITESSE_STOP);




}

}


Téléchargez le main.c