Vous êtes sur la page 1sur 77

UNIVERSITE KASDI MERBAH OUARGLA

Facult des Sciences Appliques


Dpartement de Gnie Electrique

Mmoire
MASTER ACADEMIQUE
Domaine : Sciences et technologies
Filire : Gnie lectrique
Spcialit : Electrotechnique Industrielle
Prsent par :
KRAMA Abdelbasset
GOUGUI Abdelmoumen
Thme:

Etude et ralisation dune carte de


contrle par Arduino via le systme
Androde
Soutenu publiquement
Le :08/06/2015
Devant le jury :
MA (A)

Prsident

UKM Ouargla

Mr REZOUG Mohamed Redha

MA (A)

Encadreur/rapporteur

UKM Ouargla

Mr BOUAKAZ Ouahid

MA (A)

Examinateur

UKM Ouargla

Mlle ZIDANI

Ghania

Anne universitaire 2014/2015

Ma Mre, Mon Pre


Affable, honorable, aimable : vous reprsentes pour moi

Le symbole de la bont par excellence, la source de tendresse


et lexemple du
dvouement qui na pas cess de mencourager et de prier
pour moi.
Soyez srs que je continuerai mon chemin.
Je vous ddie ce travail en tmoignage de mon profond amour.
Puisse Dieu, le tout puissant, vous prserver et vous accorder sant,
longue vie et bonheur.

A mes surs
A mes frre

En tmoignage de lattachement, de lamour et de


Laffection que je porte pour vous.
A tous les membres de ma famille, petits et grands
A tous mes amis de proches :

Veuillez trouver dans ce modeste travail lexpression de mon


Affection

ABDELBASSET
ABDELMOUMEN

En prambule ce mmoire
Nous remerciant ALLAH qui nous aide et nous donne la patience et le courage
durant

ces langues annes dtude.


Nous souhaitons adresser nos remerciements les plus sincres aux personnes qui
nous

ont apport leur aide et qui ont contribu llaboration de ce mmoire


ainsi qu la
russite de cette formidable anne universitaire.
Nous tenant remercier sincrement Mr REZOUG MOHAMED REDHA,
en tant que Encadreur, qui

toujours montr lcoute et trs disponible tout au long de la ralisation de ce


mmoire,

ainsi pour linspiration, ainsi Mlle ZIDANI GHANIA et Mr Bouakaze


OUAHID
Aux membres de jury
Enfin, nous adressons nos plus sincres remerciements tous nos proches et amis,
qui nous ont toujours soutenue et encourage
au cours de la ralisation de ce mmoire.
Merci tous

Liste des figures

Liste des figures


Numro
de page
05

Figure

Nom de figure

Figure (I.1)

La carte Arduino UNO

Figure (I.2)

Microcontrleur ATMega328

Figure (I.3)

Constitution de la carte Arduino UNO

10

Figure (I.4)

Interface IDE Arduino

11

Figure (I.5)

Paramtrage de la carte

12

Figure (I.6)

Les tapes de tlchargement du code

13

Figure (I.7)

Type de modules Bluetooth

15

Figure (I.8)

Module shield wifi

16

Figure (I.9)

Module XBee

16

Figure (I.10)

Capteur Arduino

16

Figure (I.11)

Moteurs lectriques

17

Figure (I.12)

Afficheurs LCD

17

Figure (I.13)

Relais

18

Figure( II.1)

Schma synoptique du dispositif

20

Figure (II.2)

Schma synoptique de l'alimentation

21

Figure (II.3)

Schma lectrique de l'alimentation

22

Figure (II.4)

Schma simplificateur de la configuration BT

23

Figure (II.5)

L298HN (H=Modle Horizontal)

26

Figure (II.6)

Schma de brochage L298

28

Figure (II.7)

Schma de principe

28

Figure (II.8)

La carte ralise sous ISIS-PORTEUS

29

Figure (II.9)

Le chemin du fichier de code HEX de notre programme

30

Figure (II.10)

Typon et circuit imprim

31

Figure (II.11)

Schma final du Epoxy

32

Figure (III.1)

Organigramme Screene 1

36

Figure (III.2)

Organigramme Screene 2

36

Figure (III.3)

Prsentation graphique du programme

37

Figure (III.4)

Cration de nouveau projet sur App Inventor

43

Figure (III.5)

Premire interface de la cration App Inventor

44

Liste des figures

Figure (III.6)

Les composants graphiques

44

Figure (III.7)

Les proprits et les classes sous App Inventor

45

Figure (III. 8)

Ajustement dun bouton sous App Inventor

46

Figure (III. 9)

Schma global du Screene 1

46

Figure (III. 10)

Schma global du Screene 2

47

Figure (III. 11)

En-tte dditeur de blocks App Inventor

48

Figure (III. 12)

Editeurs de blocks App Inventor

49

Figure (III. 13)

Echantillon dun composant sous App Inventor

50

Figure (III. 14)

Schma global du Scratch 1

51

Figure (III.15)

Schma global du Scratch 2

51

Figure (III. 16)

Photo relle de notre application BT contrle

52

II

Sommaire
Experimental

Liste des figures

Sommaire

III
Introduction gnrale

1 Gnralits

01

2 Position du problme

01

3Objectif du projet

01

4 Prsentation du mmoire

02
CHAPITRE I

Le dispositif programmable Arduino


I.1 Introduction

03

I.2 Dfinition du module Arduino

03

I.3 Les gammes de la carte Arduino

03

I.4 Pourquoi Arduino UNO

05

I. 5 La constitution de la carte Arduino UNO

06

I.5.1 Partie matrielle

07

I.5.1.1 Le MicrocontrleurATMega328

07

I.5.1.2 Les sources de lAlimentation de la carte

08

I.5.1.3 Les entres & sorties

08

I.5.1.4 Les ports de communications

10

I.5.2 Partie programme

11

I.5.2.1 lenvironnement de la programmation

11

I.5.2.2 Structure gnrale du programme (IDE Arduino)

11

I.5.2.3 Injection du programme

12

I.5.2.4 Description du programme

12

I.5.2.5 Les tapes de tlchargement du programme

14

I.6 Les Accessoires de la carte Arduino

15

I.6.1 Communication

15

I.6.1.1 Le module Arduino Bluetooth

15

I.6.1.2 Le module shield Arduino Wifi

15

I.6.1.3 Le Module XBee

16

I.6.2 Les capteurs

16

I.6.3 Les drivers

17

III

Sommaire
Experimental

I.7 Conclusion

18

CHAITRE II
Ralisation dun dispositif exprimental
II.1 Introduction

19

II.2 Les diffrentes tapes de la ralisation

19

II.3 Schma synoptique gnral

20

II.3.1 Bloc d'alimentation

20

II.3.2 Bloc de traitement et contrle

22

II.3.3 Bloc de commande

22

II.3.4 Bloc de puissance

25

II.3.4.1 Etage 1

26

II.3.4.2 Etage 2

26

II.4 La ralisation virtuelle PORTEUS

28

II.5 La ralisation PCB

30

II.6 Composants utiliss

32

II.7 Conclusion

33
CHAPITRE III
Dveloppement dune application Androde

III.1 Introduction

34

III.2 Les types de programmation

35

III.2.1Prsentationdelorganigramme IDE

35

III.2.1.1 Organigramme Arduino UNO

35

III.2.1.2 Prsentation du programme IDE

38

III.2.1.3 Explication du programme

40

III.2.2 le systme Androde

40

III.2.2.1 Loutil App Inventor

41

III.2.2.2 Historique de logiciel App Inventor

41

III.2.2.3 Langage JAVA

41

III.2.2.4 Un commencement avec App Inventor

41

III.2.2.5 Structure dune application App Inventor

42

III.3 Explication et dmarche

51

III.4 Conclusion

51

IV

Sommaire
Experimental

Conclusion gnrale

1 Gnralits

52

2 Problmes rencontrs

52

3 Perspectives du projet

52
Annexes

Annexe A

53

Annexe B

55

Annexe C

56

Annexe D

60

Annexe E

61
Bibliographie

Introduction Gnrale

Introduction Gnrale
Experimental

1 Gnralits
La forte augmentation des ventes de smart phone et de tablettes lectronique se fait en
mme temps quune adoption rapide par le grand public des technologies de la domotique ainsi
que lautopilotage. Au fond, le smart phone, avec sa connectivit Bluetooth intgre, devient une
tlcommande universelle pour toute la maison et les quipements lectriques. Les utilisateurs
pourront terme contrler distance un trs grand nombre de fonctions sans avoir tenir compte
de la marque ou de l'origine du produit quils pilotent. Pour rpondre cette volution majeure,
nous avons cr une carte qui permet de contrler nimporte quel appareil, vhicule, machine
travers un smart phone ou une tablette. Cette carte lectronique ralise rend la commande et le
contrle facile et souple lors du pilotage distance.[06]
2 Position du problme
Dans la vie moderne, on utilise pas mal doutils et daccessoires de commande distance
afin de simplifier notre contrle, donc nous chercherons toujours se concentrer sur la souplesse
de la commande et de contrler sur une zone bien dfinie (notre contour) le plus grand nombre
possible daccessoires.
Le smart phone occupe la premier place dobjets qui ne nous quittent pas donc notre travail
se concentre sur lutilisation de ce dernier avec bien sur sa liaison avec un systme ou une carte
de commande (carte dinterface ) tell que lArduino.
3 Objectif du projet
Dans ce projet trois objectifs ont t viss :

Le premier est de regrouper suffisamment dinformations sur une grand catgorie de


cartes dinterfaage (Arduino) : son langage de programmation, sa construction, son
principe de fonctionnement.

Le deuxime consiste raliser une carte lectrique capable dexcuter une action entre
un smarte phone et une carte dinterfaage (Arduino) en expliquant les diffrents bloques
de sa construction.

Le troisime est de raliser une application sous smart phone et de le programmer sous
lenvironnement JAVA afin de simplifier la commande et de montrer lintrt de la
programmation oriente objet.
-1-

Introduction Gnrale
Experimental

4 Prsentation du mmoire
Le premier chapitre sera consacr une tude approfondie sur les carte dinterface tel que
lArduino, puis, on mettra la lumire sur un modle de base qui est (Arduino UNO) sa
construction son environnement de programmation et son principe de fonctionnement afin de
simplifier son utilisation.
Le deuxime chapitre sera consacr ltude et la ralisation du dispositif exprimental
ainsi que la description de chaque bloc du circuit.
Dans le troisime chapitre, on prsentera un algorithme; on expliquera le fonctionnement
de notre programme, son dclenchement laction distance et cela sur deux modes de
commande (domotique et lautoguidage) aprs le chargement du code simul dans la carte
Arduino et de raliser une application capable de grer une telle commande sous smarte phone.
Enfin, on terminera avec une conclusion gnrale qui rsumera lintrt de notre tude : les
diffrents rsultats obtenus exprimentalement seront donns sur annexe (A) et (B) sous forme de
photos, donnant ainsi un aperu sur les performances des carte dinterfaage, et une ide sur les
problmes rsoudre ultrieurement.

-2-

Chapitre I
Le dispositif programmable
Arduino

Chapitre I

Le dispositif programmable Arduino

I.1 Introduction
Aujourdhui, l'lectronique est de plus en plus remplace par de l'lectronique
programme. On parle aussi de systme embarque ou d'informatique embarque. Son but est
de simplifier les schmas lectroniques et par consquent rduire lutilisation de composants
lectroniques, rduisant ainsi le cot de fabrication dun produit. Il en rsulte des systmes
plus complexes et performants pour un espace rduit.
Depuis que llectronique existe, sa croissance est fulgurante et continue encore
aujourdhui. Llectronique est devenue accessible toutes personnes en ayant lenvie : ce
que nous allons apprendre dans ce travail est un mlange d'lectronique et de programmation.
On va en effet parler d'lectronique embarque qui est un sous-domaine de l'lectronique et
qui a l'habilet d'unir la puissance de la programmation la puissance de l'lectronique.
I.2 Dfinition du module Arduino
Le module Arduino est un circuit imprim en matriel libre (plateforme de contrle)
dont les plans de la carte elle-mme sont publis en licence libre dont certains composants de
la carte : comme le microcontrleur et les composants complmentaires qui ne sont pas en
licence libre. Un microcontrleur programm peut analyser et produire des signaux
lectriques de manire effectuer des tches trs diverses. Arduino est utilis dans beaucoup
d'applications comme l'lectrotechnique industrielle et embarque ; le modlisme, la
domotique mais aussi dans des domaines diffrents comme l'art contemporain et le pilotage
d'un robot, commande des moteurs et faire des jeux de lumires, communiquer avec
l'ordinateur, commander

des appareils mobiles (modlisme). Chaque module dArduino

possde un rgulateur de tension +5 V et un oscillateur quartez 16 MHz (ou un rsonateur


cramique dans certains modles). Pour programmer cette carte, on utilise llogiciel IDE
Arduino. [3]
I.3 Les gammes de la carte Arduino
Actuellement, il existe plus de 20 versions de module Arduino, nous citons quelques
un afin dclaircir lvaluation de ce produit scientifique et acadmique:

Le NG d'Arduino, avec une interface d'USB pour programmer et usage d'un


ATmega8.

L'extrmit d'Arduino, avec une interface d'USB pour programmer et usage d'un
Microcontrleur ATmega8.

-3-

Chapitre I

Le dispositif programmable Arduino

L'Arduino Mini, une version miniature de l'Arduino en utilisant un microcontrleur


ATmega168.

L'Arduino Nano, une petite carte programme laide porte USB cette
utilisant un

microcontrleur ATmega168

version

(ATmega328 pour une plus nouvelle

version).

Le LilyPad Arduino, une conception de minimaliste pour l'application wearable en


utilisant un microcontrleur ATmega168.

Le NG d'Arduino plus, avec une interface d' USB pour programmer et usage d'un
ATmega168.

L'Arduino Bluetooth, avec une interface de Bluetooth pour programmer en utilisant


un microcontrleur ATmega168.

L'Arduino Diecimila, avec une interface d'USB et utilise un microcontrleur


ATmega168.

LArduino Duemilanove ("2009"), en utilisant un microcontrleur l'ATmega168


(ATmega328 pour une plus nouvelle version) et actionn par l'intermdiaire de la
puissance d'USB/DC.

L'Arduino Mega, en utilisant un microcontrleur ATmega1280 pour I/O additionnel


et mmoire.

L'Arduino UNO, utilisations microcontrleur ATmega328.

L'Arduino Mega2560, utilisations un microcontrleur ATmega2560, et possde toute


la mmoire 256 KBS. Elle incorpore galement le nouvel ATmega8U2
(ATmega16U2 dans le jeu de puces d'USB de rvision 3).

L'Arduino Leonardo, avec un morceau ATmega34 qui limine le besoin de


raccordement d'USB et peut tre employ comme clavier.

L'Arduino Esplora : ressemblant un contrleur visuel de jeu, avec un manche et des


sondes intgres pour le bruit, la lumire, la temprature, et l'acclration. [4]
Parmi ces types, nous avons choisi une carte Arduino UNO (carte Basique). L'intrt

principal de cette carte est de faciliter la mise en uvre dune telle commande qui sera
dtaille par la suite.
LArduino fournit un environnement de dveloppement s'appuyant sur des outils open
source comme interface de programmation. Linjection du programme dj converti par
lenvironnement sous forme dun code HEX dans la mmoire du microcontrleur se fait

-4-

Chapitre I

Le dispositif programmable Arduino

d'une faon trs simple par la liaison USB. En outre, des bibliothques de fonctions "cl en
main" sont galement fournies pour l'exploitation d'entres-sorties. Cette carte est base sur
un microcontrleur ATmega 328 et des composants complmentaires. La carte Arduino
contient une mmoire morte de 1 kilo. Elle est dote de 14 entres/sorties digitales (dont 6
peuvent tre utilises en tant que sortie PWM), 6 entres analogiques et un cristal a 16 MHz,
une connexion USB et Possde un bouton de remise zro et une prise jack d'alimentation.
La carte est illustre dans la figure si dessous. [1]

Figure I.1 La carte Arduino UNO


I.4 Pourquoi Arduino UNO
Il y a de nombreuses cartes lectroniques qui possdent des plateformes bases sur des
microcontrleurs disponibles pour l'lectronique programme. Tous ces outils prennent en
charge les dtails compliqus de la programmation et les intgrent dans une prsentation
facile utiliser. De la mme faon, le systme Arduino simplifie la faon de travailler avec les
microcontrleurs tout en offrant personnes intresses plusieurs avantages cits comme suit:

Le prix (rduits) : les cartes Arduino sont relativement peu coteuses


comparativement aux autres plates-formes. La moins chre des versions du module
Arduino peut tre assemble la main, (les cartes Arduino pr-assembles cotent
moins de 2500 Dinars).

-5-

Chapitre I

Le dispositif programmable Arduino

Multi plateforme : le logiciel Arduino, crit en JAVA, tourne sous les systmes
d'exploitation Windows, Macintosh et Linux. La plupart des systmes
microcontrleurs sont limits Windows.

Un environnement de programmation clair et simple : l'environnement de


programmation Arduino (le logiciel Arduino IDE) est facile utiliser pour les
dbutants, tout en tant assez flexible pour que les utilisateurs avancs puissent en tirer
profit galement.

Logiciel Open Source et extensible : le logiciel Arduino et le langage Arduino sont


publis sous licence open source, disponible pour tre complt par des
programmateurs expriments. Le logiciel de programmation des modules Arduino est
une

application

JAVA

multi

plateformes

(fonctionnant

sur

tout

systme

d'exploitation), servant d'diteur de code et de compilateur, et qui peut transfrer le


programme au travers de la liaison srie (RS232, Bluetooth ou USB selon le module).

Matriel Open source et extensible : les cartes Arduino sont bases sur les
Microcontrleurs Atmel ATMEGA8, ATMEGA168, ATMEGA 328, les schmas des
modules sont publis sous une licence crative Commons, et les concepteurs des
circuits expriments peuvent raliser leur propre version des cartes Arduino, en les
compltant et en les amliorant. Mme les utilisateurs relativement inexpriments
peuvent fabriquer la version sur plaque d'essai de la carte Arduino, dont le but est de
comprendre comment elle fonctionne pour conomiser le cot.[20]

I. 5 La constitution de la carte Arduino UNO


Un module Arduino est gnralement construit autour dun microcontrleur ATMEL
AVR, et de composants complmentaires qui facilitent la programmation et linterfaage avec
dautres circuits. Chaque module possde au moins un rgulateur linaire 5V et un oscillateur
quartz 16 MHz (ou un rsonateur cramique dans certains modles). Le microcontrleur est
prprogramm avec un bootloader de faon ce quun programmateur ddi ne soit pas
ncessaire.

I.5.1 Partie matrielle


Gnralement tout module lectronique qui possde une interface de programmation est
bas toujours dans sa construction sur un circuit programmable ou plus.

-6-

Chapitre I

Le dispositif programmable Arduino

I.5.1.1 Le Microcontrleur ATMega328


Un microcontrleur ATMega328 est un circuit intgr qui rassemble sur une puce
plusieurs lments complexes dans un espace rduit au temps des pionniers de llectronique.
Aujourdhui, en soudant un grand nombre de composants encombrants ; tels que les
transistors; les rsistances et les condensateurs tout peut tre log dans un petit botier en
plastique noir muni dun certain nombre de broches dont la programmation peut tre ralise
en langage C. la figure I.2 montre un microcontrleur ATmega 328, quon trouve sur la carte
Arduino.[1]

Le composant CMS
Le composant classique

Figure I.2 Microcontrleur ATMega328


Le microcontrleur ATMega328 est constitu par un ensemble dlments qui ont
chacun une fonction bien dtermine. Il est en fait constitu des mmes lments que sur la
carte mre dun ordinateur. Globalement, larchitecture interne de ce circuit programmable se
compose essentiellement sur :

La mmoire Flash: C'est celle qui contiendra le programme excuter. Cette


mmoire est effaable et rinscriptible mmoire programme de 32Ko (dont bootloader
de 0.5 ko).

RAM : c'est la mmoire dite "vive", elle va contenir les variables du programme. Elle
est dite "volatile" car elle s'efface si on coupe l'alimentation du microcontrleur. Sa
capacit est 2 ko.

EEPROM : C'est le disque dur du microcontrleur. On y enregistre des infos qui ont
besoin de survivre dans le temps, mme si la carte doit tre arrte. Cette mmoire ne
s'efface pas lorsque l'on teint le microcontrleur ou lorsqu'on le reprogramme. [2]

-7-

Chapitre I

Le dispositif programmable Arduino

I.5.1.2 Les sources de l'alimentation de la carte


On peut distinguer deux genres de sources dalimentation (Entre Sortie) et cela comme
suit :

VIN. La tension d'entre positive lorsque la carte Arduino est utilise avec une source
de tension externe ( distinguer du 5V de la connexion USB ou autre source 5V
rgule). On peut alimenter la carte l'aide de cette broche, ou, si l'alimentation est
fournie par le jack d'alimentation, accder la tension d'alimentation sur cette broche.

5V. La tension rgule utilise pour faire fonctionner le microcontrleur et les autres
composants de la carte (pour info : les circuits lectroniques numriques ncessitent
une tension d'alimentation parfaitement stable dite "tension rgule" obtenue l'aide
d'un composant appel un rgulateur et qui est intgr la carte Arduino). Le 5V
rgul fourni par cette broche peut donc provenir soit de la tension d'alimentation VIN
via le rgulateur de la carte, ou bien de la connexion USB (qui fournit du 5V rgul)
ou de tout autre source d'alimentation rgule.

3V3. Une alimentation de 3.3V fournie par le circuit intgr FTDI (circuit intgr
faisant l'adaptation du signal entre le port USB de votre ordinateur et le port srie de
l'ATmega) de la carte est disponible : ceci est intressant pour certains circuits
externes ncessitant cette tension au lieu du 5V. L'intensit maximale disponible sur
cette broche est de 50mA. [4]
I.5.1.3 Les entres & sorties
Cette carte possde 14 broches numriques (numrote de 0 13) peut tre utilise soit
comme une entre numrique, soit comme une sortie numrique, en utilisant les instructions
pinMode( ), digitalWrite( ) et digitalRead( ) du langage Arduino. Ces broches fonctionnent
en 5V. Chaque broche peut fournir ou recevoir un maximum de 40mA d'intensit et dispose
d'une rsistance interne de "rappel au plus" (pull-up) (dconnecte par dfaut) de 20-50
KOhms. Cette rsistance interne s'active sur une broche en entre l'aide de l'instruction
digital Write (broche, HIGH).
En plus, certaines broches ont des fonctions spcialises :

Interruptions Externes: Broches 2 et 3. Ces broches peuvent tre configures pour


dclencher une interruption sur une valeur basse, sur un front montant ou descendant,
ou sur un changement de valeur. -Impulsion PWM (largeur d'impulsion module):

-8-

Chapitre I

Le dispositif programmable Arduino

Broches 3, 5, 6, 9, 10, et 11. Fournissent une impulsion PWM 8-bits l'aide de


l'instruction analog Write ( ).

SPI (Interface Srie Priphrique): Broches 10 (SS), 11 (MOSI), 12 (MISO), 13


(SCK). Ces broches supportent la communication SPI (Interface Srie Priphrique)
disponible avec la librairie pour communication SPI. Les broches SPI sont galement
connectes sur le connecteur ICSP qui est mcaniquement compatible avec les cartes
Mega.

I2C: Broches 4 (SDA) et 5 (SCL). Supportent les communications de protocole I2C


(ou interface TWI (Two Wire Interface - Interface "2 fils"), disponible en utilisant la
librairie Wire/I2C (ou TWI - Two-Wire interface - interface "2 fils").

LED: Broche 13. Il y a une LED incluse dans la carte connecte la broche 13.
Lorsque la broche est au niveau HAUT, la LED est allume, lorsque la broche est au
niveau BAS, la LED est teinte.
La carte UNO dispose 6 entres analogiques (numrotes de 0 5), chacune pouvant

fournir une mesure d'une rsolution de 10 bits (cd sur 1024 niveaux soit de 0 1023) l'aide
de la trs utile fonction analogRead( ) du langage Arduino. Par dfaut, ces broches mesurent
entre le 0V (valeur 0) et le 5V (valeur 1023), mais il est possible de modifier la rfrence
suprieure de la plage de mesure en utilisant la broche AREF et l'instruction analog
Reference( ) du langage Arduino.
La carte Arduino UNO intgre un fusible qui protge le port USB de lordinateur
contre les surcharges en intensit (le port USB est gnralement limit 500mA en intensit).
Bien que la plupart des ordinateurs aient leur propre protection interne, le fusible de la carte
fournit une couche supplmentaire de protection. Si plus de 500mA sont appliqus au port
USB, le fusible de la carte coupera automatiquement la connexion jusqu' ce que le courtcircuit ou la surcharge soit stopp. [3]
I.5.1.4 Les ports de communications
La carte Arduino UNO a de nombreuses possibilits de communications avec
lextrieur. LAtmega328 possde une communication srie UART TTL (5V), grce aux
broches numriques 0 (RX) et 1 (TX).
On utilise (RX) pour recevoir et (TX) transmettre (les donnes sries de niveau TTL).
Ces broches sont connectes aux broches correspondantes du circuit intgr ATmega328

-9-

Chapitre I

Le dispositif programmable Arduino

programm en convertisseur USB vers srie de la carte, composant qui assure l'interface
entre les niveaux TTL et le port USB de l'ordinateur.
Comme un port de communication virtuel pour le logiciel sur lordinateur, La
connexion srie de l'Arduino est trs pratique pour communiquer avec un PC, mais son
inconvnient est le cble USB, pour viter cela, il existe diffrentes mthodes pour utiliser ce
dernier sans fil:

Microcontrleur
Figure I.3 Constitution de la carte Arduino UNO

I.5.2 Partie programme


Une telle carte dacquisition qui se base sur sa construction sur un microcontrleur doit
tre dote dune interface de programmation comme est le cas de notre carte.
L'environnement de programmation open-source pour Arduino peut tre tlcharg
gratuitement (pour Mac OS X, Windows, et Linux).

- 10 -

Chapitre I

Le dispositif programmable Arduino

I.5.2.1 lenvironnement de la programmation


Le logiciel de programmation de la carte Arduino sert d'diteur de code (langage
proche du C). Une fois, le programme tap ou modifi au clavier, il sera transfr et
mmoris dans la carte travers de la liaison USB. Le cble USB alimente la fois en
nergie la carte et transporte aussi l'information ce programme appel IDE Arduino. [7]
I.5.2.2 Structure gnrale du programme (IDE Arduino)
Comme nimporte quel langage de programmation, une interface souple et simple est
excutable sur nimporte quel systme dexploitation Arduino bas sur la programmation
en C.

Barre de menu

Barre des boutons

Fentre d'dition de
programme

Zone de messages des actions


en cours

Console d'affichage des


messages de compilation

Figure I.4 Interface IDE Arduino

I.5.2.3 Injection du programme


Avant d'envoyer un programme dans la carte, il est ncessaire de selectioner le type de
la carte ( Arduino UNO) et le numro de port USB ( COM 3) comme titre dexemple cette
figure suivante.

- 11 -

Chapitre I

Le dispositif programmable Arduino

Phase 2

2
Phase 1

Figure I.5 Paramtrage de la carte


I.5.2.4 Description du programme
Un programme arduino est une suite dinstructions lementaires sous forme textuelle
(ligne par ligne ). La carte lit puis effectue les instructions les unes aprs les autres dans
lordre dfini par les lignes de codes.
Commentaires
Les commentaires sont, en programmation informatique, des portions du code source
ignores par le compilateur ou linterprteur, car ils ne sont pas censs influencer lexcution
du programme.
1 /* programme de command DC moteur avec Smartphone via Bluetooth-----------------2 *et fait galement clignoter la diode de test de la carte---------------------------------------3 */-------------------------------------------------------------------------------------------------------Dfinition des variables
Pour notre montage, on va utiliser une sortie numerique de la carte qui est par exemple
la 3 me sortie numerique ; cette variable doit tre dfinie et nomme ici moteur pin 3 ; la
syntaxe est pour dsigner un nombre entier est int.

- 12 -

Chapitre I

Le dispositif programmable Arduino

4 int moteur 1 = 3; // mettre le moteur au pin 3----------------------------------------------------Configuration des entres et des sorties void setup ()
les broches numeriques de larduino peuvent aussi bien tre configures en entres
numeriques ou en sorties numeriques; ici on va configurer moteur pin en sortie ; pin mode
(nom,tat ) est une des quatre fonctions relatives aux entres sorties numriques.
5 void setup() {--------------------------------------------------------------------------------------------6 // mettre le moteur 1 comme sortie:------------------------------------------------------------------7 pinMode(motor 1, OUTPUT); // lorsque le pin 3 est activ le moteur tourne-----------------8 }----------------------------------------------------------------------------------------------------------Programmation des interactions void loop :
Dans cette boucle ,on dfinit les oprations effectuer dans lordre digital write (nom,
tat) est une autre des quatre fonctions relatives aux entres sorties numeriques.

delay (temps en mili-seconde ) est la commande dattente entre deux instructions.

chaque ligne dinstruction est termine par un point virgule.

ne pas oublier les accolades qu encadrent la boucle.

9 void loop() {---------------------------------------------------------------------------------------------10 digital write ( moteur 1,HIGH); ---------------------------------------------------------------------11 delay (3000)---------------------------------------------------------------------------------------------12 digital Write(moteur 1, LOW);-----------------------------------------------------------------------13 delay (1000)---------------------------------------------------------------------------------------------14 }----------------------------------------------------------------------------------------------------------I.5.2.5 Les tapes de tlchargement du programme
Une simple manipulation enchane doit tre suivie afin dinjecter un code vers la carte
Arduino via le port USB.
1. On conoit ou on ouvre un programme existant avec le logiciel IDE Arduino.
2. On vrifie ce programme avec le logiciel Arduino (compilation).
3. Si des erreurs sont signales, on modifie le programme.

- 13 -

Chapitre I

Le dispositif programmable Arduino

4. On charge le programme sur la carte.


5. On cble le montage lectronique.
6. Lexcution du programme est automatique aprs quelques secondes.
7. On alimente la carte soit par le port USB, soit par une source dalimentation autonome
(pile 9 volts par exemple).
8. On vrifie que notre montage fonctionne.

Figure I.6 Les tapes de tlchargement du code

I.6 Les Accessoires de la carte Arduino


La carte Arduino gnralement est associe aux accessoires qui simplifient les
ralisations.

- 14 -

Chapitre I

Le dispositif programmable Arduino

I.6.1 Communication
Le constructeur a suggr quune telle carte doit tre dote de plusieurs ports de
communications ; on peut claircir actuellement quelques types.
I.6.1.1 Le module Arduino Bluetooth
Le Module Microcontrleur Arduino Bluetooth est la plateforme populaire Arduino
avec une connexion srielle Bluetooth la place d'une connexion USB, trs faible
consommation d'nergie, trs faible porte (sur un rayon de l'ordre d'une dizaine de mtres),
faible dbit, trs bon march et peu encombrant.

Figure I.7 Type de modules Bluetooth


I.6.1.2 Le module shield Arduino Wifi
Le module Shield Arduino Wifi permet de connecter une carte Arduino un rseau
internet sans fil Wifi.

Figure I.8 Module shield wifi

- 15 -

Chapitre I

Le dispositif programmable Arduino

I.6.1.3 Le Module XBee


Ce module permet de faire de la transmission sans fil, faible distance /consommation
/dbit/ prix. [6]

Figure I.9 Module XBee


I.6.2 Les capteurs
Un capteur est une interface entre un processus physique et une information
manipulable. Il ne mesure rien, mais fournit une information en fonction de la sollicitation
laquelle il est soumis. Il fournit cette information grce une lectronique laquelle il est
associ. [6]

Figure I.10 Capteur Arduino


I.6.3 Les drivers
Il existe plusieurs drivers comme des cartes auxiliaires qui peuvent tre attaches avec
lArduino afin de faciliter la commande ; on peut citer quelques types.

- 16 -

Chapitre I

Le dispositif programmable Arduino

1 Des moteurs lectriques

Figure I.11 Moteurs lectriques


2 Les afficheurs LCD
Les afficheurs LCD sont devenus indispensables dans les systmes techniques qui
ncessitent laffichage des paramtres de fonctionnement.
Ces Afficheurs permettent d'afficher des lettres, des chiffres et quelques caractres
spciaux. Les caractres sont prdfinis. [6]

Figure I.12 Afficheurs LCD


3 Le relais
Cest un composant qui possde une bobine (lectro-aimant) qui est parcourue par un
courant lectrique agissant sur un ou plusieurs contacts. Le relais est une solution la
commande en puissance. Il assure en outre une isolation galvanique en mettant en oeuvre un
mouvement mcanique. [10]

- 17 -

Chapitre I

Le dispositif programmable Arduino

Figure I.13 Relais


I.7 Conclusion
Dans ce chapitre, nous avons projet la lumire sur une carte dacquisition qui est
lArduino donnant ainsi les raisons pour lesquelles on la choisie, puis nous avons cit des
diffrents types de cette dernire. Ensuite, nous avons expliqu les deux parties essentielles
de lArduino; (la partie matrielle et la partie de programmation) plus prcisment. Nous
avons galement expliqu le principe de fonctionnement de la carte Arduino sans oublier ses
caractristiques.
Le chapitre suivant sera consacr l'tude et la ralisation dun dispositif de commande
domotique comme une premire phase et une deuxime phase de commande distance des
vhicules grs par un smart phone.

- 18 -

Chapitre II
Ralisation dun dispositif
Exprimental

Chapitre II

Ralisation dun dispositif exprimental

II.1 Introduction
Dans ce chapitre, on prsentera de manire sommaire une vue d'ensemble du dispositif
exprimental ralisation d'un carte lectronique commande par Arduino et contrle par un
Smart phone.
Ce travail d'initiation base dune carte Arduino UNO permet de commander une maison
intelligente (la domotique) et autoguidage dun vhicule distance (contrle deux moteurs dans
les deux sens de rotation) via systme Bluetooth.
Aprs avoir donn dans le chapitre prcdent une description thorique sur le module
Arduino et son environnement de dveloppement, on va procder lapplication exprimentale ;
pour cette raison, plusieurs blocs ont t ncessaires afin de raliser une telle combinaison.
II.2 Les diffrentes tapes de la ralisation
Notre ralisation pratique a t faite en trois parties:

La premire partie est la conception de tout le systme lectronique.

La deuxime partie est la ralisation pratique de la carte.

La troisime partie est la cration dune application androde. (voir chapitre III)

La premire partie de notre projet est trs importante, on est pass par plusieurs tapes:
1. Chercher les diffrentes structures des blocs constituants notre maquette et qui
vont avec les objectifs fixs et les moyens disponibles.
2. Prsenter les diffrents lments ou composants constituants chacun des blocs en
choisissant des composants aux caractristiques voulus, dfaut, on choisira ceux
disponibles sur le march.
Dans la deuxime partie ralisation pratique , on passe par les deux tapes suivantes :
1. Prsenter les diffrentes tapes de la ralisation pratique de la carte.
2. On assemble ensuite les composants suivants notre montage sur le circuit
imprim, commenant par lalimentation gnrale de notre dispositif.
Dans la troisime partie la cration dune application androde , on passe par les deux tapes
suivantes :
1. Cration de linterface de notre application androde.
2. Programmation oriente objet de notre application (programmation par bloc).

- 19 -

Chapitre II

Ralisation dun dispositif exprimental

II.3 Schma synoptique gnral


Le schma synoptique gnral de notre dispositif est indiqu par la figure (II.1). Pour
faciliter cette tude, on a dcompos le schma synoptique en quatre blocs :

Bloc d'alimentation;

Bloc de traitement et contrle;

Bloc de commande ;

Bloc de puissance;
En ce qui concerne l'lment principal de ce dispositif, notre choix tait le dispositif

Arduino UNO.

Carte Arduino
UNO

Pile de +9V

Bloc
dalimentation

Commande domotique

Bloc de
commande

Bloc de
puissance
base de relais

Bluetooth BT

Bloc de
puissance de
L298

Source +12V

Application Androde

Bloc de
contrle

Commande pour deux


moteurs dans les deux
sens

Le Smart phone

Figure II.1 Schma synoptique du dispositif


La ralisation de notre systme est reprsente la fin de ce chapitre et son circuit imprim
est illustr dans lannexe (A).
II.3.1 Bloc d'alimentation
Lensemble des dispositifs pile de +9 volts et source externe, rsistances, condensateurs,
relais, Arduino UNO, transistors, photo-coupleurs exige dans la plupart des cas, des
alimentations stabilises de (+5V) , alors dans notre travail, nous avons ralis une alimentation

- 20 -

Chapitre II

Ralisation dun dispositif exprimental

simple partir dune alimentation externe de (<+12V) avec une rgulation et filtrage comme il
est indiqu sur la figure (II.2).
Nous avons ralis une alimentation continue de +5 volts Pour lalimentation de lArduino,
et une autre alimentation de +12 volts pour lalimentation de ltage de puissance.

Bloc de puissance +12V

Filtrage

Rgulation

Charge 1

Rgulation

Filtrage

Charge 2

Source
Externe de >+12V

Bloc de commande +5V

Source
Externe de +9V
Figure II.2 Schma synoptique de l'alimentation
Pour la ralisation lectrique de ce schma synoptique lalimentation du bloc de
commande, figure (II.3), on a utilis:

Une rsistance 10 k ohms pour protection ;

Des condensateurs pour filtrage . condensateur de 15F, tous deux placs avant le
rgulateur;

Un rgulateur baisse la source dentre de >+12V 12 nous avons utilis le LM7812.

Un rgulateur baisse la source dentre de +12V +5V ; nous avons utilis le LM7805.

LM7812

LM7805

Interrupteur
>+12V

R1

+12V

C1

GND
Figure II.3 Schma lectrique de l'alimentation
- 21 -

C2

+5V

R1

Chapitre II

Ralisation dun dispositif exprimental

Le principe de fonctionnement dune alimentation est trs simple. Il consiste gnrer ou


rguler +5 volts partir dune source continue (+12V) ; cette dernire est filtre via un filtre
passif et rgule par un rgulateur type (LM7805) la sortie duquel, on aura une tension continue
dune valeur de +5 volts.
II.3.2 Bloc de traitement et contrle
Le bloc concern est le Smart phone, nous allons ralis dans le chapitre qui suit une
application deux Screene dont : la premire est capable de grer une commande directe vers six
relais (la commande domotique) et la deuxime Screene grer la commande de deux moteurs
(autoguidage) et ce travers le bleutooth.
II.3.3 bloc de commande
Notre bloque de commande, on le rsume tout simplement par lutilisation du module
Arduino UNO qui est dtaill prcdemment au chapitre I.
Dans cette partie, on peut classer laccessoire Bluetooth de lArduino
comme une suite de bloque de commande puisque il prend la relve de la validation des
signaux mis par le smart phone vers larduino ; donc, il a besoin dune configuration lords de la
programmation. Nous avons utilis un modle nomm HC-05.
Avant de passer la configuration du bleutooth, il faut raliser quelques tapes et ce
comme suit :

Enlever toutes les communications ;

Placer la position de fonctionnement DAT de commutateur ;

Relier le port d'USB lordinateur ;

Tlcharger le programme ou ouvrir une terminale srie ;

Employer ce mode pour vrifier ou changer la configuration de bleutooth : le mot de passe


PIN, la vitesse baud, le mode de mtre / esclave ;
La configuration dun Bluetooth module de HC-05, peut tre ralis par l'intermdiaire de

la terminale srie aux commandes. (On peut utiliser IDE Arduino moniteur de srie, sous menu "
Tool / Serial Monitor", ou juste, cliquer sur CTRL+M du clavier du PC).

- 22 -

Chapitre II

Ralisation dun dispositif exprimental

Partie IDE

Partie matrielle

Figure II.4 Schma simplificateur de la configuration BT


Dans le tableau qui suit, nous allons citer les plus importantes commandes que nous avons
utilis pour configurer le module de Bluetooth HC-05.
Commande
AT

Fonction
Ne fait rien mais la rponse OK signifie bon essai pour connatre le
mode de CMD.

AT+VERSION?
AT+ORGL

donner la version Bluetooth HC-05.


Restaurer les paramtres par dfaut:

1.type

de module : 0

2.code ncessaire : 0x009e8b33


3. Mode de travail: mode esclave
4.mode de connexion: connecter le module de Bleutooth
spcifier
5.paramtres srie: Baud rate: 38400 bits/s; Stop
bit:1bit; bit de Parit: Non.
6.mot de passe : "1234"
7.le nom de priphrique

AT+NAME?

Pour donner le nom du dispositif bleutooth.

AT+NAME=MyName Placer le nom avec 'MyName'


AT+ROLE?

HC-2010-06-01.

Donner le rle.

- 23 -

Chapitre II

AT+ROLE=rle-

Ralisation dun dispositif exprimental

Placer le nombre de rle.

numro
0---- le rle esclave
1---- le rle mtre
2---- le rle esclave-boucle
Dfaut: 0

AT+PSWD?

Le mot de passe du Bluetooth 4 chiffres

AT+PSWD= passcode Placer le mot de passe du Bluetooth de 4 chiffres


AT+UART?

Pour donner la vitesse de baud, le bit de parit et le bit d'arrt.

AT+UART=

Placer la vitesse de baud, avec bit de parit et bit d'arrt..

Bit de parit, bit d'arrt.


les valeurs

(Dcimal)

4800
9600
19200
38400
57600
115200
23400
460800
921600
1382400
Paramtre de stop bit:
0----1 bit
1----2 bits
Param3: bit de parit
AT+UART?
+UART=vitesse,stop-bit,parit-bit

0---- Aucun
1---- Imparit
2---- parit gale
Dfaut: 9600, 0, 0

Tableau II.1 Tableau de commande BT


- 24 -

Chapitre II

Ralisation dun dispositif exprimental

NB : Rglez la vitesse 38400 de transfert des donnes cest le paramtre le plus essentiel
dans la configuration du BT.
II.3.4 Bloc de puissance
Notre bloc de puissance se compose de deux sous blocs :
-

Etage des relais (Screene 1) la commande domotique ;

Etage de driver L298 (Screene 2) autoguidage.

II.3.4.1 Etage 1
Ce dernier se compose de six relais lectromcaniques donc cest un organe lectrique
permettant de dissocier la partie puissance de la partie commande. Chaque relais est excit dans
sa bobine par un signal gnr par larduino travers un composant disolation (un optocoupleur) afin dassurer une protection de la carde Arduino.
Ce bloc contient six LED qui sallume et steint savoir le signal mis par le smart phone.
II.3.4.2 Etage 2
Dans cet tage nous avons utilis un modle de pont-H vraiment robuste, il existe le L298N
(ou L298HN horizontal) qui peut tout fait convenable, leur fiche technique est reprsente dans
lannexe (C).

Figure II.5 L298HN (H=Modle Horizontal)

- 25 -

Chapitre II

Ralisation dun dispositif exprimental

Les principes de montages du L298N sont rigoureusement identiques ceux du L293E, ce


qui facilite grandement son utilisation seul le brochage diffre, parmi les avantages qui nous ont
laisss choisir ce composant :

L298 supporte une tension de puissance jusqu' 46 volts maximum ;

Un courant de service de 2A. supporte les pics occasionnels 3A et pics rptitifs a 2.5A ;

Compatible TTL (peut donc tre command directement avec Arduino) ;

Dispose d'un dispositif de mesure du courant (sensor/ pins). A raccorder la masse si on


ne l'utilise pas ;

Chute de tension Vce_sat totale de 1.8 volts (typique), 3.2v IL=1A, 4.9v IL=2A. Si
cela semble beaucoup, c'est aussi un avantage car cela permet d'utiliser un accu de 7.2v
directement avec un moteur +5V. La chute de tension Vce_Sat du Pont-H sera suffisante
pour adapter la tension au moteur (gnralement +/- 5V).
Ce composant dispose de 15 broches ; on peut claircir son brochage sous forme de tirets

comme suit :

VSS - Alimentation de la logique de commande (+5V). A raccorder la borne +5V


d'Arduino (donc sur le rgulateur d'Arduino) ;

VS - Alimentation de puissance des moteurs ;

GND - Doit tre raccorde la masse (GND) de la source d'alimentation de puissance VS


(donc le ngatif de l'accumulateur) et la masse de la source d'alimentation de VSS (donc
GND Arduino) ;

OUTPUT1, OUTPUT2 - Broches raccorder la charge (le moteur). Via ces broches
que le L298 commande le sens de rotation du moteur.

INPUT1, INPUT2 - Broches de commande du Pont-H. Se raccorde a Arduino.

ENABLE A - (Chip Activer) permet d'envoyer (ou pas) la tension sur les sorties du
moteur via OUTPUT1 & OUTPUT2. ENABLE. A commande l'activation du premier
Pont-H. Si ENABLE A = GND, le pont-H est dconnect et le moteur ne fonctionne pas.
Si ENABLE A = VSS, le pont-H est connect aux sorties et le moteur fonctionne dans un
sens ou l'autre ou pas en fonction des tensions appliques sur INPUT1 & INPUT2.

- 26 -

Chapitre II

Ralisation dun dispositif exprimental

CURRENT SENSING A & CURRENT SENSING B - permet de faire une mesure du


courant dans le circuit de puissance. A placer imprativement sur GND si cette
fonctionnalit n'est pas utilise.

Figure II.6 Schma de brochage L298


Le principe de montage de ce driver est similaire celui du L293E ; on peut le prsenter
comme le montre cette figure.

Figure II.7 Schma de principe

- 27 -

Chapitre II

Ralisation dun dispositif exprimental

II.4 La ralisation virtuelle PORTEUS


Avant de passer la ralisation pratique, nous avons utilis un CAO: il sagit de ISISPORTEUS, cest un CAO lectronique perfectionn conu par Labcenter Electroniques qui
permet de dessiner des schmas lectroniques, de les simuler et de raliser le circuit imprim
correspondant. Le CAO lectronique PROTEUS disponible et tlchargeable sur ce lien
[21], se compose de nombreux outils regroups en modules au sein d'une interface unique.
Ce dernier nous permet de schmatiser notre carte lectrique et la simuler virtuellement
comme le montre la figure suivante :

R10
b

U9

U10

BC547

3
K
PC817

20

Q5

R9
2

R12

10k

RL5

D9

12V

BC547

3
K
PC817

LED8-RED

20

Q6

R11

D10

DIODE

10k

D11

RL6
12V

D12

DIODE

R6
a

LED7-RED

R1410k

1
15

10k

VCC

VS

U5
OUT1
OUT2
OUT3

SENSA
SENSB

OUT4

D15

D16

1N4007

1N4007

1N4007

U3
A

D14

1N4007

4
BC547

3
K
PC817

20

Q3

R5
2

10k

D5

RL3
12V

DIODE

13

LED6-RED

L298

D17

D18

D19

D20

1N4007

1N4007

1N4007

1N4007

(COM)

R4

U6

7812

10uF

C2

R16
1k

10uF

VI

VO

10

BC547

3
K
PC817

GND

10k

RL2

D2

12V

DIODE

D4
LED5-RED

R17

VO

GND

VI

Q2

R3

7805
1

U2

U11

C1

D6

14

GND
8

D13

+88.8

IN1
IN2
IN3
IN4
ENA
ENB

+88.8

5
7
10
12
6
11

9
10
11
12

R13

20

D21

R2

D22
LED2-RED

U1
A

LED1-RED

4
BC547

3
K
PC817

20

Q1

R1
2

ARD1

10k

D3

RL1
12V

DIODE

D1
LED4-RED

AREF

RXD

TXD

1121
ATMEGA328P-PU

PC0/ADC0
PC1/ADC1
PC2/ADC2
PC3/ADC3
PC4/ADC4/SDA
PC5/ADC5/SCL

PB0/ICP1/CLKO

DIGITAL (~PWM)

ANALOG IN

A0
A1
A2
A3
A4
A5

~PB3/MOSI/OC2A
~ PB2/SS/OC1B
~ PB1/OC1A
PD7/AIN1
~ PD6/AIN0
PD5/T1
~
PD4/T0/XCK
~ PD3/INT1
PD2/INT0
TX PD1/TXD
RX PD0/RXD

7
6
5
4
3
2
1
0

R8
b

13
12
11
10
9
8

VT52, VT100, ANSI

PB5/SCK
PB4/MISO

RESET

12
11
10
9

RTS

U4
Xmodem, Ymodem, Zmodem

CTS

BC547

3
K
PC817

20

Q4

R7
2

8
7
6
5
4
3
2
1

10k

D7
DIODE

RL4
12V

D8
LED3-RED

ARDUINO UNO R3

Figure II.8 La carte ralise sous ISIS-PORTEUS


Ce CAO a la possibilit demporter mme des codes hexadcimaux pour les ralisations qui
contiennent des composants programmables ou des cartes programmables Arduino comme
dans notre ralisation.
Le code hexadcimal de notre programme est reprsente dans lannexe (E).

- 28 -

Chapitre II

Ralisation dun dispositif exprimental

Chemins du code HEX

Paramtrage de la
carte Arduino sous
ISIS

Figure II.9 Le chemin du fichier de code HEX de notre programme


La simulation de notre dispositif sous ISIS prouve la russite, ce CAO possde mme un
virtuel USB quon peut utilis comme un bleutooth (un terminal USB).
II.5 La ralisation PCB
Le typon est en effet le ngatif de la partie cuivre du circuit imprim. Il sagit donc de
crer les liaisons entre les diffrents composants utiliss rsistances, condensateurs, relais,
Arduino, transistors, photo-coupleurs etc, avec des pistes en cuivre sur le circuit imprim. De ce
fait, on utilise un CAO simple manipuler : il sagit dun logiciel nomm EAGEL disponible
et tlchargeable sur ce lien [22] pour tracer un tel typon voir annexe (A).
Pour raliser notre carte lectronique, nous allons passer par plusieurs tapes.
EAGLE nous permet de dessiner des schmas de haute qualit avec la possibilit de
contrler parfaitement l'apparence du dessin tout au long du processus d'dition: largeurs de
lignes, styles de remplissage, couleurs et polices, etc.

- 29 -

Chapitre II

Ralisation dun dispositif exprimental

Cette photo nous montre le circuit imprim et le schma lectrique imprims sur une feuille
glace.

Typon ngatif

Typon avec
composant

Typon positif

Figure II.10 Typon et circuit imprim


Pour raliser une telle carte nous avons pass par plusieurs tapes

Dcouper la plaque Epoxy /cuivre aux dimensions du futur circuit imprim 10*23.4 cm ;

Mettre le typon dans l'insoleuse en vrifiant bien son sens ;

Pour que l'insolation puisse s'effectuer, il faut retirer l'adhsif opaque qui protge la
couche photosensible des rayons ultra-violets de la lumire ambiante ;

placer la plaque pr sensibilise dans l'insoleuse, avec le typon ct cuivre une fois
l'adhsif retir ;

Ltape qui suit prsente Une gravure chimique dans laquelle est utilis le produit
attaquant le cuivre le perchlorure de fer ;

Cette figure regroupe ces tapes :

- 30 -

Chapitre II

Ralisation dun dispositif exprimental

Figure II.11 Schma final du Epoxy

Enfin, on finalise notre ralisation par une opration la soudure est cela aprs le
perforage des vias o on implante les diffrents composants sur leurs emplacements.

II.6 Composants utiliss


Pour une telle ralisation, nous avons assembl les diffrents composants:

Une Carte Arduino UNO ;

Un Bluetooth module de HC-05 ;

8 LEDs ;

6 photo-coupleurs ;

16 rsistances (470 ohms, 1Kohms, 10 Kohms) ;

2 capacits 15uf pour filtrage ;

1 L298 ;

9 diodes de protection 1N4007 ;

Rgulateur LM 7805 ;

Rgulateur LM 7812 ;

Une pille 9V ;

Fiche jack.

Une plaque dpoxy de10 * 23.4 cm ;

La photo globale de notre ralisation est mentionne sur annexe (B )

- 31 -

Chapitre II

Ralisation dun dispositif exprimental

II.7 Conclusion
Cette partie a donn lieu la ralisation pratique dune carte lectronique pour commander
une maison intelligente et une voiture qui possde deux moteurs. Ces commandes sont gres
partir dun smart phone (application Androde) et une carte Arduino UNO. Lensemble des
travaux dcrits dans ce chapitre est :

La conception des composants lectroniques qui compose la carte ralise laide


logiciel (ISIS- PROTUSE), puis dessine le typon de notre carte laide logiciel
EAGALE.

Le choix des composants convenables pour chaque bloc.

Lidentification des paramtres des circuits dalimentation, circuit de commande et


circuit de puissance.

Cette carte lectronique est destine directement aux fabricants de produits lectriques et/ou
lectroniques afin quils rendent de manire trs simple leur produit pilotage distance.
Lorganigramme, le droulement des diffrentes tapes du programme et la ralisation de
lapplication androde seront prsents dans le chapitre suivant.

- 32 -

Chapitre III
Dveloppement dune
Application androde

Chapitre III

Dveloppement dune application Androde

III.1 Introduction
LAndrode est parmi les derniers systmes dexploitation qui dveloppent les exigences
des tlphones intelligents. La plateforme androde de smart phone devient de plus en plus
importante pour les ralisateurs de logiciel, en raison de ses puissantes possibilits et open
source.
Lors des annes prcdentes, le traitement des donnes informatiques se fait par des
ordinateurs ; en revanche le smart phone a des avantages qui ont les mmes fonctions que loutil
informatique ; ce dernier porte lintrt de lordinateur grce landrode.
La tlphonie mobile a connu une explosion dans les annes 2000 mais aucune rvolution
na sembl arriver depuis que les appareils se ressemblent. Les innovations navaient plus
vraiment de saveur ; les applications taient difficiles daccs de par leur mode de distribution et
souvent peu performantes cause des faibles capacits des appareils.
Depuis quelques mois, les smart phones sont dots dune puissance plus importante et
despaces de stockages consquents. Les tlphones tendent devenir des objets artistiques,
presque de reconnaissance sociale, et possdent des fonctionnalits quaucun tlphone ne
pouvait esprer auparavant: connexion haut dbit, localisation GPS, boussole, acclromtre,
cran tactile souvent multipoint, march dapplications en ligne. Autant de qualits permettant de
crer des applications innovantes et de les distribuer en toute simplicit.
La plate-forme Androde apporte tout cela au consommateur, mais surtout, elle affranchit le
dveloppeur de nombreuses contraintes. Par son ouverture; elle permet nimporte quel
dveloppeur de crer ses applications avec un ticket dentre quasi nul. Le framework et le
systme dexploitation et outils associs ont un code source ouvert, leur accs est gratuit et
illimit. Plus besoin de ngocier avec le constructeur du tlphone pour quil vous laisse
dvelopper sur sa plate-forme. Tous les dveloppeurs sont ainsi sur un mme pied dgalit, tous
peuvent ajouter de la mobilit des applications existantes.
Cette partie de notre tude ne nous donnera pas de bons rsultats si on nglige certains
paramtres ; donc le bon fonctionnement de notre systme se base essentiellement sur une bonne
dmarche et une bonne rflexion de notre programme.

- 33 -

Chapitre III

Dveloppement dune application Androde

III.2 Les types de programmation


Du premier chapitre et du second, on peut combiner que notre ralisation software a besoin
de deux tapes : la premire consiste un programme qui va sinjecter aux microcontrleurs de la
carte Arduino aprs avoir t convertie par le IDE en code HEX et la deuxime a un programme
qui va se manipul sous App Inventor et sinstall sous smart phone.
III.2.1 Prsentation de lorganigramme IDE
L'organigramme est une reprsentation schmatique des liens fonctionnels, organisationnels
et hirarchiques d'un organisme, d'un programme, etc. Il se doit de possder une rfrence
documentaire.
III.2.1.1 Organigramme Arduino UNO
Avant de passer la programmation, nous devons raliser un organigramme qui explique le
droulement des diffrentes squences, tant intrieures quextrieures : il comportera plusieurs
boucles dont la fin dexcution succde toujours son commencement.

- 34 -

Chapitre III

Dveloppement dune application Androde

Le programme principal
Start

Screene 1

Initialisation sortie

Incrment du timer

Dfinition des :
Caractre : [A Z]
Nombre : [0 9]

Non

Le bouton ON
Est appuy?

Oui
Excitation du la bobine du
relais
Appel de la temporisation

Non

Oui
Le bouton Off
Est appuy

Figure III.1 Organigramme Screene 1

- 35 -

Chapitre III

Dveloppement dune application Androde

Start

Screene 2

Initialisation sortie

Incrment du timer

Dfinition des :
Caractre : [A Z]
Nombre : [0 9]

Non
Le bouton marche
gauche ou droit Est
appuy?

Oui
Excitation dun bloc sur le
Draver L298

Appel de la temporisation

Oui

Non
Le bouton off
Est appuy

Figure III.2 Organigramme Screene 2

Chaque action est symbolise par un rectangle et chaque test est symbolis par un losange.

- 36 -

Chapitre III

Dveloppement dune application Androde

III.2.1.2 Prsentation du programme IDE


Nous avons prfr de photographier linterface du IDE de lenvironnement Arduino dans
lequel nous avons simul notre programme.

- 37 -

Chapitre III

Dveloppement dune application Androde

- 38 -

Chapitre III

Dveloppement dune application Androde

Figure III.3 Prsentation graphique du programme


III.2.1.3 Explication du programme
Le but de ce programme est de raliser des actions caractres codes par des lettres ou
par des chiffres mis de lArduino vers le smart phone ; chaque caractre active ou dsactive une
bobine sur la carte ralise (commande domotique) ou faire tourner un de deux moteurs gauche
ou droite et cela en agissant sur le driver L298. Chaque caractre est cod dune faon simple et
courte ; il comprend des dclarations dcimales sur les lignes dentre du microcontrleur.
On commence par la programmation du microcontrleur situ sur lArduino ; au dbut, on
dclare toutes les variables utilises aprs on initialise les ports du lArduino comme des sorties
OUTPUTS , ensuite ; on appelle le sous programme de temporisation dj situ sous le
compilateur IDE. Le programme incrmente le code du caractre automatiquement afin de faire
excuter lactivation ou la dsactivation dune commande ou plus : soit sur le Screene 1 ou le
Screene 2.
III.2.2 le systme Androde
Androde est un systme dexploitation dvelopp initialement pour les Smart phones. Il
utilise un noyau Linux qui est un systme dexploitation libre pour PC et intgre tous les

- 39 -

Chapitre III

Dveloppement dune application Androde

utilitaires et les priphriques ncessaires un smart phone. Il est optimis pour les outils Gmail.
Aussi, landrode est libre et gratuit et a t ainsi rapidement adopt par des fabricants.
La socit Androde a t rachete en 2007 par Google. Mais aujourdhui, lAndrode est
utilis dans de nombreux appareils mobiles (smart phones). Les applications sont excutes par
un processeur de type ARM travers un interprteur JAVA. En plus de cela, landrode
concurrence loprateur systme dApple quil tend dpasser en nombre dutilisateurs.
Androde volue pour mieux grer lhtrognit des appareils quil utilise. [13]
III.2.2.1 Loutil App Inventor
App Inventor est un outil de dveloppement des applications en ligne pour les smart phones
sous androde et permet chacun de crer son application personnelle pour le systme
dexploitation Androde qui est dveloppe par Google.
La plateforme de dveloppement est offerte tous les utilisateurs possdant un compte
Gmail. Elle rappelle certains langages de programmation simplifis bass sur une interface
graphique similaire Scratch. Les informations des applications sont stockes sur des serveurs
distants. [13] Elles sont actuellement entretenues par le Massachusetts Institute of Technologie
(MIT).
Lenvironnement de App Inventor contient trois fentres qui sont proposes pendant le
dveloppement :

Une pour la cration de linterface homme machine : permet de crer l'allure de


l'application (App Inventor Designer) ;

Une pour la programmation par elle-mme : elle permet, par lassemblage des blocs de
crer le comportement de lapplication (App Inventor Block Editor) ;

Une pour lmulateur : qui permet de remplacer un terminal rel pour vrifier le bon
fonctionnement du programme.
La connexion dun terminal rel sous Androde permettra ensuite dy tlcharger le

programme pour un test rel. Ce terminal pourra aussi bien tre un tlphone quune tablette ; le
comportement du programme sera identique. [13]
N.B : Scratch est un environnement graphique permettant aux dbutants de sinitier ` la
programmation. On y programme le comportement de lutins animes `a laide de briques visuelles
qui sembotent comme des Legos par Drag and Drop.[16]

- 40 -

Chapitre III

Dveloppement dune application Androde

III.2.2.2 Historique de logiciel App Inventor


2009 : Dbut du dveloppement du logiciel App Inventor par Google partir de recherches
dans lenseignement de linformatique faites par le MIT, Boston prs de New-York. LObjectif
de lenseignement permet des tudiants qui dbutent en informatique dapprendre
programmer sans se noyer sous le code Java.
2011: Google rend App Inventor open source. Le MIT poursuit le dveloppement.
2012: Version bta d App Inventor diffus par le MIT encore en version bta aujourdhui.
III.2.2.3 Langage JAVA
JAVA est un langage de programmation orient objet, dvelopp par Sun Microsystmes,
sorti en 1995. Sun Microsystmes est rachet en 2009 par Oracle, une application crite en JAVA
et facilement portable sur plusieurs systmes dexploitation.
Une application excutable sous Androde (interprtable par une interface en JAVA) est un
fichier avec lextension APK [14]
III.2.2.4 Un commencement avec App Inventor
Google fournit gratuitement un kit de dveloppement (SDK) prvu pour sintgrer (sous la
forme dun Plugin) lenvironnement de dveloppement Eclipse (libre). Il permet de dvelopper
des applications codes en langage Java pour les diffrentes versions dAndrode.
1. Se connecter Internet.
2. Ouvrir notre navigateur et se connecter au compte Google.
3. Se connecter au site Internet dApp Inventor du MIT : [15]. Cela peut-tre assez long
parfois car App Inventor est lance depuis le Web en mode Cloud.
4. Crer un nouveau projet :
Cliquer sur My Project (en haut gauche) / New / Project Name (sans espace) / OK.

- 41 -

Chapitre III

Dveloppement dune application Androde

Notre application
Figure III.4 Cration de nouveau projet sur App Inventor
Donc le projet est sauvegard automatiquement sur notre compte Google. (Dans le Cloud).
III.2.2.5 Structure dune application App Inventor
Une application dveloppe sous App Inventor est constitue de deux parties distinctes
mais troitement lies.
A. Linterface graphique :
Pour crer lapplication sous App Inventor linterface graphique contient nos proprits
(taille, couleurs, position, textes Ets).

- 42 -

Chapitre III

Dveloppement dune application Androde

Figure III.5 Premire interface de la cration App Inventor


Cette partie contient des composants (visibles ou invisibles) [13]. Cette interface graphique
contient quatre parties :
Partie 1 :
Une palette sous App Inventor contenant tous les lments qui peuvent tre positionns sur
lcran du tlphone.

Figure III.6 Les composants graphiques

- 43 -

Chapitre III

Dveloppement dune application Androde

Partie2 :
Cest la surface du tlphone ajust automatiquement par app inventor ou manuellement
par nous mme en utilisant le composant Screene arrangement .
Partie 3 :
La liste des lments et des mdias utiliss sur lcran.
Partie 4 :
Les proprits des diffrents lments utiliss par exemple la couleur et la taille du bouton
ou texture.

Partie 3
Partie 2

Partie 4

Figure III.7 Les proprits et les classes sous App Inventor


Pour ajouter un bouton sur lcran dmulateur virtuel, on clique sans lcher sur le mot
Bouton dans la palette en dplaant la souris sur Viewer et relcher le bouton et l un
nouveau bouton va apparatre sur le Viewer.

- 44 -

Chapitre III

Dveloppement dune application Androde

Pour ajuster la place du bouton, on utilise la proprit Width de notre exemple ; on utilise
le paramtre Fill parent.
Pour utiliser le bouton sur la largeur de lcran, on slectionne les nombres de pixels de
lcran 50 pixels. De ces oprations, on obtient lcran suivant :

Figure III.8 Ajustement dun bouton sous App Inventor


Aprs lassemblage des diffrents composants qui constituent notre application, on peut
rsumer cette phase Scratch par la figure qui suit et cela pour les deux Screene (1 et 2).

Figure III.9 Schma global du Screene 1

- 45 -

Chapitre III

Dveloppement dune application Androde

Figure III.10 Schma global du Screene 2


B. Editeur de blocs (Fentre Scratch)
Une fois les composants de lcran de tlphone mis en place et dsign, nous passons la
deuxime phase de dveloppement d'une application via App Inventor : l'interface Scratch, pour
cela, il faut cliquer sur Open the Blocks Editor en haut droite de la page.
Linterface Scratch permet dimbriquer des lments graphiques entre eux pour effectuer la
partie programmation de lapplication dvelopper. De cette partie, on peut assembler les
diffrents blocs de lapplication et indiquer comment les composants doivent se comporter et qui
saffichent dans lmulateur virtuel (par exemple ; ce qui se produit quand un utilisateur clique
un bouton) dterminant le fonctionnement mme de l'application, en raction des vnements
(internes ou externes) ou des rponses. [13]
Pour ouvrir ce Block, on a cliqu en haut gauche sur Open the Blocks Editor .
App Inventor, lanc le Blocks Editor depuis le serveur du MIT et propos lexcution du fichier
App Inventor For Androde Code blocks, dun format *.Jnlp . Aprs tlchargement, JAVA
ouvre la fentre du Block Editor sur votre PC (cela peut tre assez long).
N.B Jnlp:est un format de fichier associ la technologie JAVA web start. Il s'agit de pouvoir
dployer facilement des applications Java partir d'un simple navigateur web, [17]
Comme indiqu sur la figure (III.11) App Inventor, diteur de blocks, cette interface est trs
simple et pure. En effet, en haut ; on retrouve des lments classiques Save, Undo et

- 46 -

Chapitre III

Dveloppement dune application Androde

Redo ainsi quun bouton de test pour lancer lapplication sur le mobile ou sur lmulateur.
Cette interface contient des parties Built-in et blocks.

Figure III.11 En-tte dditeur de blocks App Inventor


La fentre gauche contient les blocs qui assemblent la partie droite de la fentre pour
dcrire le comportement de notre application. Les blocs peuvent tre standards (dans longlet
Built-in ) ou dfinis spcifiquement pour lapplication (dans longlet My Blocks ).
Aussi, la corbeille est utilise pour jeter des morceaux de pseudo-code et la loupe sert
changer la taille lcran de lditeur.
Chaque lment contient des blocks : (ces pages dcrivent les blocs que nous pouvons
utiliser lorsque nous construisons nos applications App Inventor.
Dans longlet Built-in , nous retrouvons toujours les mmes lments :

Dfinition : morceaux permettant de dfinir des procdures (avec/sans rsultats/attributs).

Texte : morceaux permettant de traiter le texte. Assimilables au type char et la classe


String en JAVA.

Lists : morceaux permettant de traiter des listes. Assimilables aux sous-classes de List en
JAVA.

Math : morceaux permettant de traiter des nombres. Assimilables au type int et la classe
Integer en JAVA.

Logic : morceaux permettant de traiter des boolens. Assimilables au type boolean et la


classe Boolean en JAVA.

control : outils permettant deffectuer de la programmation conditionnelle par


exemple : dans llment logic.

Lorsqu on clique sur My Blocks en haut et droite de la page : nous obtenons la figure
suivante :

- 47 -

Chapitre III

Dveloppement dune application Androde

Figure III. 12 Editeurs de blocks App Inventor


La palette des variables et fonctions est gauche, longlet My blocks propose les fonctions
associes aux lments dposs sur notre cran au pralable
Dans longlet My Blocks, on retrouvera les lments et leurs accesseurs et fonctions :

My Definitions : variables et procdures globales.

Button1 : variables et procdures spcifiques au bouton.

Label1 : variables et procdures spcifiques au label.

Orientation Sensor1 : variables et procdures spcifiques au capteur.

Screen1 : variables et procdures spcifiques lcran (assez restreint).


Lorsque on Clique sur llment Button1 on obtient la figure suivante est cela comme

chantillon pour nimporte quel composant associ dans notre application.

- 48 -

Chapitre III

Dveloppement dune application Androde

Figure III.13 Echantillon dun composant sous App Inventor


A partir de longlet Package for phone ce test assure trois solutions accessibles :
1. Lmulateur : un cran saffichera sur lordinateur.
2. la connexion se fera directement sur le smart phone en wifi.
3. USB : la connexion se fera sur le smart phone via un cble USB.
Pour installer notre application sur un appareil Androde, on excute une des trois solutions
partir du bouton "Package for Phone" (en haut droite de l'interface web.
On rsume notre application pour cette phase Scratch par la figure qui suit.

- 49 -

Chapitre III

Dveloppement dune application Androde

Figure III.14 Schma global du Scratch 1

Figure III.15 Schma global du Scratch 2

- 50 -

Chapitre III

Dveloppement dune application Androde

III.3 Explication et dmarche


Notre interface contient une touche dactivation et dsactivation du Bluetooth donc avant
denvoyer nimporte quel caractre travers les boutons ON , il faut dabord sassurer que le
bleutooth est allum ; un mot de passe pour raison de protection a t programm afin dexcuter
un ordre quelconque. Cette figure montre que notre application nomme BT contrle peut
tre installe sur smart phone, sa taille est de deux mgas comme premire version.

Figure III.16 Photo relle de notre application BT contrle


III.4 Conclusion
Sur le plan pratique, une manipulation adquate du logiciel Arduino nous permet alors
dutiliser un compilateur ; il sagit de IDE ce dernier possde une capacit de crer un code
HEX, qui peut tre inject sur son microcontrleur dune part ; dune autre part une simple
laboration de lenvironnement App Inventor qui nous pousse raliser une application *.apk
sous smart phone capable de lier une carte Arduino et un smart phone afin dexcuter des ordres
bien dfinis. On peut conclure que les rsultats obtenus sont satisfaisants compte tenu des
limitations du matriel et des moyens dont nous disposons.

- 51 -

Conclusion Gnrale

Conclusion Gnrale
Experimental

1. Gnralits
Le dveloppement sous androde se fait en JAVA. En effet, Google a port un sousensemble de Java Standard (SE) ainsi qu'un certain nombre de projets open source dont il avaient
besoin. Si vous tes habitu faire du JAVA, attendez-vous donc ne pas retrouver la totalit des
paquets que vous utilisez quotidiennement.
Afin de dvelopper une application Androde, vous devrez utiliser les composants mis
disposition par Google.
Le systme Arduino est un outil pour fabriquer des dispositifs qui peuvent capter et
contrler davantage de choses du monde matriel que votre ordinateur. C'est une plateforme
open-source d'lectronique programme qui est base sur une simple carte microcontrleur (de
la famille AVR), et un logiciel vritable environnement de dveloppement intgr, pour crire,
compiler et transfrer le programme vers la carte microcontrleur.
la programmation du microcontrleur AVR exige une connaissance en langage C
comme soft et la matrise des outils IDE, afin darriver lobjectif souhait.
Dans ce travail, un assemblage de plusieurs logiciels est fait afin de raliser un tel rsultat
voir annexe (D).
2. Problmes rencontrs
Une telle ralisation nest pas dnue de difficults. Il est noter que nous nous sommes
confronts plusieurs problmes surtout dans la partie ralisation de la carte.
Cependant, on peut dire que malgr ces difficults, les rsultats obtenus travers cette
tude quils soient pratiques ou thoriques, permettent douvrir la porte dautres tudes.
3. Perspectives du projet
Nous souhaitons vivement que ce projet puisse servir comme lment de base pour dautres
tudes plus approfondies pour le faire intgrer sous des systmes plus complexes.

- 52 -

Annexes

Annexes

Annexe A

Typon avec lemplacement des composants

- 53 -

Annexes

Annexe A

Typon de la carte ralise

- 54 -

Annexes

Annexe B

Photo de la ralisation pratique

- 55 -

Annexes

Annexe C

La fiche technique de L 298 (01)

-56-

Annexes

Annexe C

La fiche technique de L 298 (02)

-57-

Annexes

Annexe C

La fiche technique de L 298 (03)

-58-

Annexes

Annexe C

La fiche technique de L 298 (04)

-59-

Annexes

Annexe D

Les Logiciels Utiliss

Pour programmer Arduino

Pour la simulation virtuelle de notre carte

Pour lapplication APK

Pour le dessin de typon

- 60 -

Annexes

Annexe E

:02000004EEE0FA
:10000000B2017728A70089100910091083168910FA
:10001011091009100F30880583122708B2182D28FF
:10001453A30A100FC305E203330A6004120103071
:10003000A1056353088000FF330A100FBCCC0102
:100050002C20B21427082D283214A600321C3B286D
:100060000910033C031C402840200730A100D03079
:100070005E20031408003214FE3C03197228091490
:10008000321C321089140F3088052608F039880494
:100090008910A60E3218412832305D200314080062
:1000A000A301A200FF30A207031CA307031C7228B0
:1000B0000330A100DF305E205228A101E83EA000FD
:1000C000A109FCC569EEC6728A00703186428A007B7
:1000D0006400A10F642820186D28A01C712800005E
:1000E0007128080083130313831264000800831629
:1000F00007309F0083120911831609118312013002
:10010000A3002C308A01512083168101F030860033
:100110008701831286018701FE308A0102208F3019
:100120008A01022034308A01022096308A01502050
:10013000FE308A0102208E308A01022034308A018A
:10014000022058308A01022096308A015020FE3069
:100150008A0102208D308A01022034308A01022077
:1001600058308A01022034308A01022096308A01F8
:100170005020FE308A0102208C308A010220343067
:100180008A01022058308A01022034308A0102207C
:1001900020308A01022096308A015020FE308A01E8
:1001A00002208B308A01022034308A01022058302C
:1001B0008A01022034308A01022020308A01022084
:100200005020FE308A01022089308A0102203430D9
:100210008A01022058308A01022034308A010220EB
:1002200020308A01022043308A0102204C308A01AA
:10023000022041308A01022096308A015020FE308F
:100240008A01022088308A01022034308A0102208B
:1002500058308A01022034308A01022020308A017D
:101C500033308A01022020308A01022033308A0189
:101C70008A01022044308A01022020308A01022099
:0A1C8000080063008A150A12412EC5
:02400E007D3FF4
:00000001FF

Le code hexadcimal de notre programme

- 61 -

Bibliographes

[01] C. Tavernier, Arduino applications avances . Version Dunod.


[02] http://www.acm.uiuc.edu/sigbot/tutorials/ 2009-11-17-arduino-basics.
consulter le: mars 2015.
[03] http://www.generationrobots.com/fr/152-arduino. consulter le: mars 2015.
[04] S.V.D.Reyvanth, G.Shirish, PID controller using Arduino .
[05] A.SAI Kishore, J.Sandeep, A.Dadapeer, P.Sai Srinivas. Three-phase inverter using
Arduino .
[06] Eskimon, Olyte Arduino pour bien commencer en lectronique et en programmation .
[07] Jean- Nol, livret Arduino en franais , centre de ressources art sensitif .
[08] http://arduino.cc/en/Main/ArduinoBoardUno. . consulter le: mars 2015.
[09] http://arduino.cc/fr/Main/Librairies. consulter le: mars 2015.
[10] A. Grimault, J. Querard Articl Procd et dispositif de commutation d'un relais
lectromagntique . EP2312598 A1.
[11] ERIK Bartmann . Le grand liver dArduino . 2eme Edition , date de parution
02/01/2014.
[12] http://www. Datasheetcatalog.com .+ (datasheets for electronics components) . consulter le:
mai 2015.
[13] sig.fgranotier.info/IMG/pdf/debuter_app_inventor.
[14] http://blogpeda.ac-poitiers.fr . consulter le: mars 2015.
[15] http://www.lifl.fr/tarby. consulter le: mars 2015.
[16] http://scratch.mit.edu/. consulter le: mars 2015.
[17] http://coursstimartinique.fr/. consulter le: mars 2015.
[18] http://fr.wikipedia.org/wiki/JNLP. consulter le: mars 2015.
[19] J. Oxer, H. Blemings Practical Arduino Cool Projects for Open Source Hardware .
[20] X.HINAULT. www.mon-club-elec.fr.
[21] http://www.labcenter.com/
[22] http://www.cadsoftusa.com/



.

.
.

.

:
.

Rsum
Ce projet nous permet de plonger dans le monde dinterfaage afin darriver raliser une carte
lectronique qui communique entre (le systme Androde et la carte Arduino ainsi que les actionneurs).
L'objectif prliminaire est de manipuler un langage de programmation afin darriver raliser une
application capable de transmettre des ordres mis par lutilisateur vers des moteurs courants continus
et autre accessoires lectriques via un smart phone.
Faire comprendre les diffrents protocoles de communication et extraire le port srie comme
tant un port de transfert du programme dans l'Arduino.
Mots Cls : systme Androde, carte Arduino, les actionneurs, langage de programmation,
moteurs courants continus, protocoles de communication, port srie.

Abstract
Nous avons ralis un dispositif de commande distance travers un accessoire
This project allows us to delve into the world of interfacing in order to arrive to create an

Bluetooth afin dassurer deux types de commande ; le premier est la commande domotique et
electronic card that communicates between (Android system and the Adriano board and the

le second est autoguidage des vhicules par intervention dune application sous smart phone.
actuators).

The preliminary goal is to manipulate a programming language in order to reach build an


application able to transmit commands emitted by the user toward direct current motors and electrical
equipment via a smart phone.
Understanding of the different communication protocols and extracts the serial port as a port
for transferring program to Arduino board.
We performed a remote control device through a Bluetooth accessory to provide two types of
control; the first is the home automation control and the second is self-guiding vehicles by
intervention of an application in smart phone.
Key words: Android system, Adriano board, actuators, programming language, direct current motor,
communication protocols, serial port.