Vous êtes sur la page 1sur 50

UNIVERSITE SIDI MOHAMED BEN ABDELLAH

ECOLE SUPERIEURE DE TECHNOLOGIE


FES

MEMOIRE D’UN MINI-PROJET


Capteurs & Actionneurs

Réalisé par : - Bouhafss Ghita - Berrada Ikram

Sous le thème :

Commande vocale via Bluetooth à base


d’Arduino-UNO

*- Encadré par : Mr. Otman Jai

*- Soutenue le 30 Mai 2022 , devant le jury composé de :

- Mr . Redouane Chaibi

- Mr . Taoussi Mohammed
Année Universitaire : 2021-2022
Mes remerciement à tous ceux qui, de près ou de loin ont
contribué à l’accomplissement de ce mini projet.

A ceux qui ont été par leur disponibilité et leur


collaboration d’un grand soutien , notre encadrant M. Otman
Jai , qui au-delà de sa fonctions et ses occupations, était
présent à nos côtés pour nous aider et nous soutenir tout en
nous garantissant les conditions favorables de travail.

Nous garderons dans le cœur la présence et la disponibilité


du Mr. Redouane membre du jury assistant à ce mini projet.
A nos chers parents, pour tous leurs sacrifices, leur amour,
leur tendresse, leur soutien et leurs prières tout au long de mes
études,

A nos chères sœurs ……… pour leurs encouragements


permanents, et leur soutien moral,

A nos chers frères, …….., pour leur appui et leur


encouragement,

A toutes nos familles pour leur soutien tout au long de mon


parcours ,

Que ce travail soit l’accomplissement de vos vœux tant


allégués, et le fuit de votre soutien infaillible,

Merci d’être toujours là pour moi.


Table des matières :

Liste des Figures

Liste des Annexes

Introduction
générale…………………………………………………………………………………………………………………….8

Chapitre I : Généralités sur la


robotique…………………………………………………………………………………

I.2 La
Robotique………………………………………………………………………………………………………………………
….10

I.2.1
Définition………………………………………………………………………………………………………………………
10

I.2.3 Les types des


robots………………………………………………………………………………………………10

I.2.4 Domaines d'utilisation des


robots…………………………………………………………………….11

I.3
Conclusion……………………………………………………………………………………………………………………
…………11

Chapitre II : Généralité sur la Carte


Arduino…………………………………………………………………..

II.1
Introduction……………………………………………………………………………………………………………………
………12
II.2
Arduino…………………………………………………………………………………………………………………………
………..13

II.2.1 Présentation
Arduino………………………………………………………………………………………….13

II.2.2 Types des cartes


Arduino………………………………………………………………………………..13

II.2.3 . les principales caractéristiques de la carte Arduino…………………………15

II.2.4. Programmation
Arduino………………………………………………………………………………….15

II.2.4.2 Les langages de


programmation………………………………………………………………16

Chapitre III : Définitions et


structures……………………………………………………………………………….

I.1.La commande
vocale…………………………………………………………………………………………………………18

I.2.Définition et Structure d’un


capteur……………………………………………………………………………18

I.2.1.Définition d’un
capteur…………………………………………………………………………………………18

I.2.2.Structure d’un
capteur……………………………………………………………………………………….18

I.2.3.Définition d’un capteur HC-


06…………………………………………………………………………..19

I.2.3.1. Caractéristiques et caractéristiques électriques du HC-06…..19

I.2.3.2.Comment utiliser le module Bluetooth HC-


06………………………………19

Conclusion………………………………………………………………………………………………………….20
Chapitre IV : Etapes à suivre pour la
réalisation……………………………………………………………..

I : Matériels
utilisés……………………………………………………………………………………………………………21

I.1 : L’application : MIT


INVENTOR :…………………………………………………………………………………………………21

I.2 : Code Arduino ………………………………………………………………………………………………24

I.3 : Réalisation Classique …………………………………………………………………………………….24

I.4 : Etapes à suivre pour la


réalisation …………………………………………………………………25

Conclusion
générale……………………………………………………………………………………………………………….28
Table des Annexes

Figure II.2.1.1: Intéragir de la Carte Arduino avec le monde réel

Figure II.2.2.1 : La carte Arduino UNO

Figure II.2.2.2 : Carte Arduino ZERO

Figure II.2.2.3 : Carte Freduino

Figure II.2.4.1.1 : Capture d’écran d’un programme sur Arduino

Figure II.2.4.2.1 : langages de programmation

Figure II.2.4.2.1 : programmation en mode graphique sur scratch


Figure I.2.1.1 : Définition d’un capteur
Figure I.2.1.2 : Structure d’un capteur

FigureI.2.3.1 : Branchement du capteur HC-06


FigureI.2.3.2 : Code Arduino du capteur HC-06
Figure I.1.3 : Code sur l’outil de blocs
Figure I.3.1 : Réalisation et branchement du projet

Figure I.4.1 : Allumage de tout les Leds


Figure I.4.2 : Eteindre tout les Leds

Figure I.4.3 : Allumage de la Led Rouge

Figure I.4.4 : Allumage de la Led principale

Figure I.4.5: Vérification du déroulement du projet


Introduction générale

La robotique permet d'aider l'homme dans les tâches difficiles, répétitives ou


pénibles. De plus elle constitue le rêve de substituer la machine à l'homme dans ces
tâches.

Les facultés de perception et de raisonnement des robots progressent chaque


jour actuellement et plus encore dans l'avenir, ils sont appelés à jouer un rôle de plus
en plus important dans notre vie.

La robotique comporte deux grands pôles d'intérêt, la robotique de


manipulation (robotique industrielle) et la robotique mobile. Un des problèmes
majeurs de la robotique mobile est la planification de mouvement. Autour de ce
problème de planification de mouvement de nombreuses études ont été réalisées
dans le but de développer des méthodes générales pour guider les robots.

C’est dans ce cadre que se situe notre projet intitulé « commande vocale via
Bluetooth à base d’Arduino-UNO ». Notre but principal est de commander des
taches , on utilise la voix via Bluetooth par l ’intermédiaire d’un Smartphone Android.
Pour réaliser notre objectif on a utilisé une carte Arduino ATmega2560, ainsi que
d’autres équipements tels que un module Bluetooth , des LEDs pour contrôler, n le
fonctionnement
8

Notre projet s’articule autour de deux parties :

• La partie réalisation : c’est une réalisation de la carte Arduino avec le module


HC-06
• La partie commande : c’est une utilisation application Android qui permet au
client de commander en utilisant la voix à l’aide une liaison Bluetooth.

Ces deux parties sont reliés par un module Bluetooth qui permet d’assurer la
communication. Ainsi que notre travail est divisé en trois chapitres :

 La première chapitre consiste à introduire une description sur la robotique.

 La deuxième chapitre est consacré à l’Arduino .

 La troisième chapitre illustre la conception optée pour la réalisation de


notre projet.

 La troisième chapitre comprend la phase de la réalisation du système

Enfin on achève cette réalisation par une conclusion générale récapitulant tout
notre travail ainsi que ses perspectives.
9
Chapitre i : Généralité SUr la robotiqUe :
I.1 Introduction :
Ces dernières années, les robots manipulateurs ont un impact considérable sur de
nombreux aspects de la vie moderne, de la fabrication industrielle aux soins de santé,
le transport et l'exploration de l'espace et les profondeurs de la mer.

Ceci s’explique par le fait que de plus en plus, les processus industriels sont
automatisés, afin de répondre à des problématiques de maîtrise de la qualité
produite, de la productivité et des coûts. Une des méthodes d’automatisation repose
sur la robotisation. Dans les prochaines années, des robots seront aussi omniprésents
dans des processus industriels comme les ordinateurs personnels.
En outre, ces robots utilisent des capteurs pour bien mener les déférentes tâches
et accomplir leurs missions.

Dans le but d’expliquer l’utilité des robots, ce chapitre sera consacré à la


présentation des généralités sur la robotique.

I.2 La Robotique :
I.2.1 Définition:
Le terme (Robot) prend son origine du mot slave -(Paboma) (se prononce
robota) - qui veut dire en Russe travail ou en tchèque corvée ou travail forcé. II
désigne aussi une machine à l'aspect humain, capable de se mouvoir et d'agir grâce à
un mécanisme automatique pouvant effectuer certaines opérations, et capable par
fois de modifier de lui-même son cycle de fonctionnement et d'exercer un certain
choix

I.2.3 Les types des robots :


Il existe deux grandes familles de robots :
• Les robots manipulateurs (fixe).

Un robot manipulateur se présente sous forme d'un bras doté d'un certain
nombre de segments articulés. Il est conçu pour manipuler ou déplacer des
matériaux, outils et pièces sans contact humain direct. En parallèle, les robots sont
des dispositifs qui permettent aux humains d'interagir avec des objets dans un
environnement en toute sécurité. En effets, les robots manipulateurs sont utilisés
dans des applications industrielles pour effectuer efficacement des tâches telles que
l'assemblage, soudage, traitement de surface, et le forage.

10

• Les robots mobiles.

Un robot mobile est celui qui peut se déplacer dans son environnement de façon
autonome. Pour ce faire, le robot doit pouvoir naviguer. Par conséquent, la portée et
la précision de navigation requise varie en fonction de la taille du robot et du type de
la tâche à réaliser.

I.2.4 Domaines d'utilisation des robots :

 Les robots industriels : sont des robots utilisés dans un environnement de


fabrication industrielle. Ils sont utilisés dans la fabrication des automobiles, des
composants et des pièces électroniques, des médicaments et de nombreux produits.

 Robots domestiques ou ménagers : Robots utilisés à la maison. Ce type de


robots
comprend de nombreux appareils très différents, tel que les aspirateurs robotiques,
robots nettoyeurs de piscines, balayeuses, nettoyeurs gouttières et autres robots qui
peuvent faire différentes tâches.

 Robots en médecine et chirurgie : Les robots semblent avoir de l'avenir à


l'hôpital. Par exemple le Robodoc aide à réaliser certaines opérations de chirurgie. Le
robot infirmier est encore en projet. Le cyber squelette HAL aide les personnes à se
déplacer. Ainsi, le robot patient permet aux futurs chirurgiens-dentistes d'apprendre à
soigner sans faire des dégâts.
I.3 Conclusion :

A travers ce chapitre nous avons présenté une introduction aux deux catégories
principales des robots. Nous avons ensuite abordé le domaine d’utilisation des
robots. Nous avons pu Constater l’évolution actuelle des robots proposés

Le chapitre suivant s’intéresse ainsi à la présentation des cartes Arduino .

11

Chapitre ii : Généralité sur la Carte arduino :


II.1 Introduction

Aujourd’hui, l'électronique est de plus en plus remplacée par de l'électronique


programmée. L’Arduino est une carte basée sur un microcontrôleur (mini-ordinateur)
Atmel ATMEGA8 ou ATMEGA168. Elle dispose dans sa version de base de 1 Ko de
mémoire vive, et 8Ko de mémoire flash pour stocker ses programmes. Elle peut être
connectée à 13 entrées ou sorties numériques, dont 3 PWM (pouvant donner 3
sorties analogiques et 6 entrées analogiques convertissant en 10 bit .Dans la version
la plus courante, la communication avec l’ordinateur se fait par un port USB.

Il existe plusieurs versions de l’Arduino, dont une version miniaturisée, et


d’autres projets sont également en gestation. La carte dispose d’un logiciel système
interne (modifiable) et des programmes utilisateur.

II.2 Arduino :

II.2.1 Présentation Arduino :


Arduino est une plate-forme de prototypage d'objets interactifs à usage créatif
constituée d'une carte électronique et d'un environnement de programmation. Sans
tout ne connaître ni tout comprendre de l'électronique, cet environnement matériel
et logiciel permet à l'utilisateur de formuler ses projets par l'expérimentation directe
avec l'aide de nombreuses ressources disponibles en ligne.

Pont tendu entre le monde réel et le monde numérique, Arduino permet


d'étendre les capacités de relations humain/machine ou environnement/machine

12
Figure II.2.1.1: Interagir de la Carte Arduino avec le monde réel

II.2.2 Types des cartes Arduino :


C’est un circuit intégré à base d’un microcontrôleur programmable qui peut
analyser des signaux électriques de façon à effectuer des tâches précises

Il existe trois types des cartes :


a. Les « officielles » qui sont fabriquées en Italie par le fabricant officiel (Smart
Projects).

Figure

II.2.2.1 : La carte Arduino UNO


13
b. Les « compatibles » qui n’est pas fabriqués par (Smart Projects), mais qui sont
totalement compatibles avec les Arduino officielles.

Figure II.2.2.2 : Carte Arduino ZERO

c. Les « autres » fabriquées par diverse entreprise et commercialisées sous un nom


différent (Freeduino, Seeduino, Femtoduino, ...).

Figure II.2.2.3 : Carte Freduino


14
II.2.3 . les principales caractéristiques de la carte Arduino :

 Microcontrôleur ATmega
 Tension de service 5 V
 14 entrées et sorties numériques (6 sorties commutables en MLI)
 6 entrées analogiques (résolution 10 bits)
 32 Ko de mémoire flash (0,5 Ko occupé par le chargeur d'amorçage ou bootlader)
 2 Ko de SRAM
 1 Ko d'EEPROM
 Fréquence d'horloge 16 MHz
 Interface USB

II.2.4. Programmation Arduino :

L'environnement de programmation Arduino (IDE en anglais) est une application écrite


en Java inspirée du langage Processing. L'IDE permet d'écrire, de modifier un programme et
de le convertir en une série d'instructions compréhensibles pour la carte.
II.2.4.1 Structure d’un programme :

Le programme est lu par le microcontrôleur de haut vers le bas. Une variable doit être
déclarée avant d'être utilisée par une fonction. La structure minimale est constituée :

 en tête : déclaration des variables, des constantes, indication de l'utilisation de


bibliothèques etc...

 un setup : (= initialisation) cette partie n'est lue qu'une seule fois, elle comprend les
fonctions devant être réalisées au démarrage (utilisation des broches en entrées ou en
sortie, port série de l'I2C etc.…)

 une loop (boucle) : cette partie est lue en boucle, C'est ici que les fonctions sont
réalisées.

15
Figure II.2.4.1.1 : Capture d’écran d’un programme sur Arduino

II.2.4.2 Les langages de programmation :


Pour que la communication avec la carte Arduino se déroule sans problème, les
développeurs doivent convenir d'une base de langage, afin qu'ils puissent se comprendre entre
eux et exploiter un flux d’informations. C'est la même chose que lorsque vous allez à
l'étranger et que vous ne maîtrisez pas la langue. Dans ce cas, vous devez vous adapter d'une
façon ou d'une autre, peu importe la manière (gestes...).
Le microcontrôleur ne connaît à son niveau d'interprétation que le langage machine,
appelé aussi code natif, composé exclusivement de valeurs numériques. Il est très difficile à
comprendre, car nous avons appris tout petit à échanger à l'aide de mots et de phrases, et non
de valeurs numériques. Nous devons donc trouver un moyen de pouvoir communiquer de
manière compréhensible avec le microcontrôleur.
C'est pourquoi un environnement de développement traduisant les commandes dans
un langage dit évolué autrement dit, se présentant sous une forme semblable à notre langage a
été créé. Pour autant, nous ne sommes pas plus avancés puisque le microcontrôleur ne
comprend pas ce langage. En effet, il manque une sorte de traducteur servant de lien entre lui
et l'environnement de développement.
16
C'est le rôle du compilateur qui convertit un programme écrit en langage évolué en un
langage cible compréhensible par le destinataire (ici, le CPU, ou Central Processing Unit, de
notre microcontrôleur). Presque tous les langages de programmation font appel au vocabulaire
anglais ; nous n'avons donc pas d'autre choix que de nous y mettre. Une autre étape de
traduction sera donc nécessaire, mais je pense que l'anglais scolaire suffira ici dans la plupart
des cas. Les instructions autrement dit, les ordres que l'environnement de développement
comprend sont concis et semblables à celles du langage militaire, et représentent ce qu'il faut
faire.

Figure II.2.4.2.1 : langages de programmation

Il existe d’autres outils facilitant la programmation – c’est exactement


l’outil utilisé dans ce projet - :
Ardublock (programmation en mode graphique) :

C'est un outil qui se greffe au logiciel Arduino. Il suffit de créer des blocs et de les
paramétrer. Ce logiciel est vraiment un outil de qualité pour démarrer facilement sur
Arduino, sans connaissances en programmation.

Figure II.2.4.2.1 : programmation en mode graphique sur scratch


17
CHAPITRE III : Définition et structure du
capteur HC-06:
I.1.La commande vocale :
Une commande vocale est une interface d’entrée d'un système informatique permettant
de passer des ordres à l'aide de messages vocaux .
L'utilisateur parle dans un microphone , et un ordinateur , couplé à un logiciel
de reconnaissance vocale , analyse ses paroles, et détermine la commande à exécuter.

I.2.Définition et Structure d’un capteur :


I.2.1.Définition d’un capteur :

Un capteur est un organe de prélèvement d’information qui élabore à partir


d’une grandeur physique, une autre grandeur physique de nature différente (très
souvent électrique).

Cette grandeur représentative de la grandeur prélevée est utilisable à des fins


de mesure ou de commande.

Figure I.2.1.1 : Définition d’un capteur

I.2.2.Structure d’un capteur :


Figure I.2.1.2 : Structure d’un capteur
18
I.2.3.Définition d’un capteur HC-06 :
HC-06 est un module Bluetooth conçu pour établir une communication de
données sans fil à courte portée entre deux microcontrôleurs ou systèmes.

HC-06 permet d'établir une liaison Bluetooth (liaison série) entre une carte
Arduino et un autre équipement possédant une connexion Bluetooth (Smartphone,
tablette, seconde carte Arduino, etc...). Le module HC-06 est un module "esclave"
contrairement au module HC-05 qui est "maître". Un module "maître" peut
demander à un autre élément Bluetooth de s'appairer avec lui alors qu'un module
"esclave" ne peut recevoir que des demandes d'appairage.

I.2.3.1. Caractéristiques et caractéristiques électriques du HC-06 :

 Protocole Bluetooth : norme de protocole Bluetooth V2.0


 Niveau de puissance : Classe 2 (+6dBm)
 Bande : 2,40 GHz à 2,48 GHz, bande ISM
 Sensibilité du récepteur : -85dBm
 Protocole USB : USB v1.1/2.0
 Mode de modulation : modulation par déplacement de fréquence de
Gauss
 Fonction de sécurité : Authentification et cryptage
 Plage de tension de fonctionnement : + 3,3 V à + 6 V
 Plage de température de fonctionnement : -20 ºC à +55 ºC
 Courant de fonctionnement : 40 mA

I.2.3.2.Comment utiliser le module Bluetooth HC-06 :


La communication
avec ce module HC-
06 se fait via l'
interface UART . Les
données sont
envoyées au module
ou reçues du
module via cette
interface. Nous
pouvons donc
connecter le module à n'importe quel microcontrôleur ou directement à un PC doté
d'un port RS232 (interface UART). Un circuit d'interface typique du module à un
arduino est illustré ci-dessous :

FigureI.2.3.1 : Branchement du capteur HC-06


19

Code :

FigureI.2.3.2 : Code Arduino du capteur HC-06

Branchement du HC-06 :
Le module Bluetooth HC-06 présente 4 broches pour permettre d’établir la
connexion série.
•VCC broche d’alimentation. Typiquement connectée à la broche 5V de l’Arduino.

•GND masse. Typiquement connectée à la broche GND de l’Arduino

•RX broche de réception. Typiquement connecté à la broche de transmission (TX) de


l’Arduino

•TX broche de transmission. Typiquement connecté à la broche de réception (RX) de


l’Arduino

Conclusion : Nous avons consacré ce chapitre à définir le capteur utilisé et sa


structure , ses caractéristiques et son branchement avec l’Arduino

20

IV . réalisation du projet :
I. Matériels utilisés :
I.1 : L’application : MIT INVENTOR :

App Inventor pour Android est un logiciel de


développement d'applications créé par GOOGLE, pour pallier la difficulté d'utilisation de
Android Studio par des débutants. Il est actuellement entretenu par le Massachusetts
Institute of technology (MIT).
Il simplifie le développement des applications sous Android et le rend accessible même pour
les novices et ceux qui ne sont pas familiers avec les langages de programmation. Il est basé
sur une interface graphique similaire à Scratch
// http://appinventor.mit.edu //

Il s’agit d’un software basé sur un système de construction par blocs, ce qui réduit
significativement le temps dans le développement d’une appli si nous la comparons
avec les environnements de programmation, et spécialement les plus jeunes, soit
capable d’appliquer les idées valides dans le champ de la technologie.

Cet éditeur d’application se base en deux outils :


 Designer : il sert à construire l’interface d’utilisateur, en choisissant et
en plaçant les éléments qui permettront interagir et les composants de
l’appli.

 Blocks Editor : définit le comportement de chaque composant de l’appli.

Cette application va nous servir dans la création d’une interface graphique pour le
pilotage de notre système via la communication sans fil Bluetooth .

21

Figure I.1.1 : Outils de désigne Figure I.1.2 : Bloc des composants


22
Figure I.1.3 : Code sur l’outil de blocs

23
I.2 : Code Arduino :
#include <SoftwareSerial.h>

int ledPrincipale=8;//led vert //allumer la lumière rouge


int led2=10;//led rouge else if(state=='3'){
int state=1; digitalWrite(led2,HIGH);
}
void setup(){ //éteins la lumière rouge
pinMode(ledPrincipale,OUTPUT); else if(state=='4'){
pinMode(led2,OUTPUT); digitalWrite(led2,LOW);
}
Serial.begin(9600); //allume tout
} else if(state=='7'){
void loop(){ digitalWrite(ledPrincipale,HIGH);
if(Serial.available()>0){ digitalWrite(led2,HIGH);
state=Serial.read(); }
}

//allumer la lumiere principale //éteins tout


if(state=='1'){ else if(state=='8'){
digitalWrite(ledPrincipale,HIGH); digitalWrite(ledPrincipale,LOW);
} digitalWrite(led2,LOW);

//éteins la lumiere principale }


else if(state=='2'){ }
digitalWrite(ledPrincipale,LOW);
}

I.3 : Réalisation Classique :

Figure I.3.1 : Réalisation et branchement du projet


24
I.4 : Etapes à suivre pour la réalisation :
 1ère étape :
Installons l’application MIT Inventor disponible sur Play Store
 2ème étape :
Connectons l’application avec le module branché à l’Arduino
jusqu’à qu’un bouton arrête de clignoter en bas du module HC-06
 3ème étape :
Téléversons le programme sur le logiciel Arduino , après que nous avons
choisis le port et le COM choisis .
 4ème étape :
Cliquant sur le microphone sur l’écran du téléphone , puis donnons une
commande selon les commandes programmées , telles que :

Figure I.4.1 : Allumage de tout les Leds

25
Figure I.4.2 : Eteindre tout les Leds

Figure I.4.3 : Allumage de la Led Rouge


26
Figure I.4.4 : Allumage de la Led principale

Figure I.4.5: Vérification du déroulement du projet

27
Conclusion Générale

Ces dernières années l’automatique a fait l’objet d’une partie


intégrante de notre vie et tend à se généraliser à tous les domaines où la
miniaturisation, la mobilité, la puissance de calcul et informatique sont
nécessaires.

Dans ce cadre, nous avons développé un système, qui permet de


commander l’allumage des Leds à distance en utilisant un Smartphone.

La mise en œuvre de notre travail a exigé des connaissances très


approfondies en programmation, ainsi que la maitrise de
l’environnement d’Android.

En arrivant au terme de notre travail, on peut dire que nous avons


atteint un double objectif, dont le premier est la réalisation de notre
système, et le second est enrichissement de nos connaissances en la
matière grâce à plusieurs essais expérimentaux effectués.

Ce travail ne constitue qu’un début dans le domaine de la robotique


mobile et des fonctionnalités importantes .
28
Dans un monde contrôlé par la technologie, se maintenir à la hauteur est
un devoir

Vous aimerez peut-être aussi