Vous êtes sur la page 1sur 48

Code :TRT-3

Rapport de projet de fin d’etudes


Pour l’obtention du diplôme de Licence appliquée en Réseaux Informatique
Spécialité : Technologies de l’Informatique et de Télécommunication

Intitulé

Conception et mise en place d’une


ferme intelligente

Réalisé par : Encadrant :


Akkari Aymen Dr.Ing
Oueslati Rabeb Ould Elhassen Mohamed

Au sein de

Année universitaire
2017/2018
Dédicace

A mon père
qui m’a comblé de son soutien et m’a voué un amour inconditionnel. Tu es pour moi un
exemple de courage et de sacrifice continu. Que cet humble travail témoigne mon
affection, mon éternel attachement et qu’il appelle sur moi ta continuelle bénédiction.

A mes très chers frères


je vous remercie pour votre amour, votre soutien et vos encouragements.

A tous mes chers amis


pour le soutien que vous m’aviez offert,

Je vous dis MERCI.

Akkari Aymen

1
Dédicace

A mes chers parents


Grâce à leurs tendres encouragements et leurs grands sacrifices, ils ont pu créer le climat
affectueux et propice à la poursuite de mes études. Aucune dédicace ne pourrait exprimer
mon respect, ma considération et mes profonds sentiments envers eux. Je prie le bon Dieu
de les bénir, de veiller sur eux, en espérant qu’ils seront toujours fiers de moi..

A ma sœur et à mes frères


En témoignage de mon affection fraternelle je vous souhaite une vie pleine de bonheur et
de succès et que Dieu, le tout puissant, vous protége et vous garde.

A la famille OUESLATI et JAZIRI


Ils vont trouver ici l’expression de mes sentiments de respect et de reconnaissance pour le
soutien qu’ils n’ont cessé de m’offrir.

A mes Amies
Pour le soutien que vous m’aviez offert.

A qui était la cause de mon bonheur une spéciale dédicace a cette personne
qui compte déjà énormément pour moi, et pour qui je porte beaucoup de
respect.

Oueslati Rabeb

2
Remerciements

Nous tenons à exprimer notre profonde gratitude et nos scincères remerciments à notre
encadrant : Monsieur OUELD ELHASSAN MOHAMED pour son encadrement, ces avis
éclairés et ces judicieux conseils. Ainsi au toute l’équipe de centre d’innovation elghazela
et au corps administratif et à tout le cadre enseignant du département informatique pour
leur efforts durant ces trois années de notre formation à la faculté des sciences de Bizerte.
Nos vifs remerciments aux membres du jury pour l’honneur qu’ils nous font en acceptant
de juger ce travail .

3
Table des matières

Introduction 9

1 Cadre du projet 10
1.1 Organisme d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.2 Problématique et solutions . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3 Travail à faire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4 Méthodologie de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.5 Planification du travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.6 Etude de l’existant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.6.1 les applications consacrées pour les plantes . . . . . . . . . . . . . 12
1.6.2 les applications consacrées pour les Volailles . . . . . . . . . . . . . 13
1.7 Critique de l’existant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.8 Solution proposée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.8.1 Compartiment des bétails . . . . . . . . . . . . . . . . . . . . . . . 15
1.8.2 Compartiment des volaille . . . . . . . . . . . . . . . . . . . . . . . 16
1.8.3 Controle de l’irrigation . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.9 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2 Specification et Conception 19
2.1 Spécification des besoins . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.1.1 Besoins Fonctionnels . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.1.2 Besoins non fonctionnels : . . . . . . . . . . . . . . . . . . . . . . . 20
2.2 Identification des acteurs et des cas d’utilisation . . . . . . . . . . . . . . . 20
2.2.1 Identification des Acteurs . . . . . . . . . . . . . . . . . . . . . . . 20

4
Table des matières 5

2.2.2 Modélisation des besoins . . . . . . . . . . . . . . . . . . . . . . . 20


2.2.3 Diagramme d’activité . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.3 Conclusion : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3 Réalisation et Tests du projet 28


3.1 Environnement logiciel et matériel . . . . . . . . . . . . . . . . . . . . . . 28
3.1.1 Environnement matériel . . . . . . . . . . . . . . . . . . . . . . . . 28
3.1.2 Environnement Logiciel . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.2 Préparation de l’environnement de travail . . . . . . . . . . . . . . . . . . . 34
3.2.1 Au niveau de la carte . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.2.2 Au niveau de l’application . . . . . . . . . . . . . . . . . . . . . . . 36
3.3 Développement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.3.1 Capteur humidité temperature . . . . . . . . . . . . . . . . . . . . . 40
3.3.2 Capteur de gaz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.3.3 Capteur d’humidité de sol . . . . . . . . . . . . . . . . . . . . . . . 40
3.3.4 Capteur de lumière . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.3.5 Camera de Surveillance . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.4 Construction matérielles : . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

Conclusion générale 46

Netographie 47
Table des figures

1.1 Interface de l’application IRREY Agrume . . . . . . . . . . . . . . . . . . . 13


1.2 Interface de l’application AVItouch . . . . . . . . . . . . . . . . . . . . . . 14
1.3 Les Pack de l’application AVItouch . . . . . . . . . . . . . . . . . . . . . . 15
1.4 Architecture générale du projet . . . . . . . . . . . . . . . . . . . . . . . . 15
1.5 Architecture de compartiment des bétails . . . . . . . . . . . . . . . . . . . 16
1.6 Architecture de compartiment des volaille . . . . . . . . . . . . . . . . . . 16
1.7 Architecture de systéme d’irrigation des plantes . . . . . . . . . . . . . . . 18

2.1 Diagramme de cas d’utilisation général . . . . . . . . . . . . . . . . . . . . 21


2.2 Diagramme de cas d’utilisation gérer le compte . . . . . . . . . . . . . . . 22
2.3 Diagramme de cas d’utilisation gérer la ferme . . . . . . . . . . . . . . . . 23
2.4 Diagramme de séquence systéme . . . . . . . . . . . . . . . . . . . . . . . . 25
2.5 Diagramme de séquence de capteur de gaz . . . . . . . . . . . . . . . . . . 26
2.6 Diagramme d’activité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.1 Carte Raspberry PI3 model B . . . . . . . . . . . . . . . . . . . . . . . . . 28


3.2 Capteur température et humidité DHT11 . . . . . . . . . . . . . . . . . . . 29
3.3 Capteur photorésistance . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.4 Diode électroluminescente (LED) . . . . . . . . . . . . . . . . . . . . . . . 30
3.5 Camera Raspberry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.6 Capteur de Gaz MQ5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.7 Relais model raspberry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.8 Capteur humidité de sol . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.9 Pompe à eau submersible . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

6
Table des figures 7

3.10 Installer le système d’exploitation Raspbian . . . . . . . . . . . . . . . . . 34


3.11 Connexion de la carte à Internet . . . . . . . . . . . . . . . . . . . . . . . . 34
3.12 Interface Putty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.13 Interface de la connexion avec la carte . . . . . . . . . . . . . . . . . . . . 35
3.14 Interface de connexion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.15 Interface d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.16 Création de dispositif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.17 Ajout des valeurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.18 Création de tableau de bord . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.19 Interface de tableau de bord . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.20 Consulté temperature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.21 Consulté humidité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.22 Montage capteur temperature et humidité DHT11 . . . . . . . . . . . . . . 41
3.23 Montage capteur de lumière . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.24 Montage de lumière . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.25 Montage de capteur de gaz . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.26 Montage de capteur d’humidité . . . . . . . . . . . . . . . . . . . . . . . . 43
3.27 Montage de camera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.28 Montage de camera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Liste des acronymes

IOT Intrenet Of Things


SSH Secure Shell
GPL GNU General Public License
TCP Transmission Control Protocol
UML The Unified Modeling Language
API Application programming interface
HTTP Hypertext Transfer Protocol
HTTPS Hypertext Transfer Protocol for secure communication
FTP File Transfer Protocol
RDP Remote Desktop Protocol
RDS Remote Desktop Services
LAN Local area network
WAN Wide area network
VCC Voltage common collector
GND Ground

8
Introduction Générale

De nos jours, les agriculteurs font contre un groupe de défis : une envie mondiale de
nourriture, un climat altérant et une quantité restreinte d’eau.
Avec l’existence de l’internet des objets (IOT) qu’on remarque émerger plusieurs domaines
parmi les quels le marché agricole.
L’idée à terme est d’avoir un contrôle total sur tous les compartiments de la ferme : aug-
menter ou diminuer la température, irriguer s’il y a un manque d’humidité dans le sol . . .
A priori, chaque agriculteur pourra à l’avenir être relié au Cloud qui analysera les données
provenant des capteurs installés au niveau des compartiments de la ferme.
Ce projet vise l’étude, la conception et l’implémentation d’une ferme intelligente, un en-
semble de capteurs permet la collecte de données et les transférer à une base de données
et d’analyse à travers des canaux de communication.
Après quatre mois passé au sein du Centre d’Innovation, nous produisons ce document qui
s’articule autour de trois chapitres qui sont les suivants :
— Le premier chapitre « Cadre du projet » est consacré à la présentation du cadre
de notre projet ainsi que l’organisme d’accueil et aussi fera l’objectif de définir la
gestion de tous les compartiments de la ferme et d’étudier quelques applications de
gestion de ferme existantes.
— Le deuxiéme chapitre « Spécification et Conception » porte sur la détermination
des principaux cas d’utilisation, les besoins fonctionnels, les besoins non fonctionnels
et les aspects conceptuels de notre application.
— Le dernier chapitre « Réalisation et Tests du projet » présente l’environne-
ment matériel et logiciel que nous avons utilisé pour la réalisation de notre projet
.Il illustre aussi le travail réalisé avec un ensemble d’interfaces graphiques de l’ap-
plication.

Nous clôturons le présent rapport par «la conclusion» dans laquelle nous récapitulons
tout le travail réalisé dans le cadre de notre projet, puis nous terminons par quelques
perspectives qui peuvent être étudiées dans le cadre d’une extension de notre projet de fin
d’études.

9
Chapitre 1

Cadre du projet

1.1 Organisme d’accueil


Notre projet a été réalisé au Centre d’Innovation du Pôle Technologique El Ghazela, qui
est un incubateur d’entreprises et une structure d’accompagnement de projets de création
de start-ups. Le centre d’innovation est situé au pôle technologique El Ghazela faisant
partie des 10 technopôles spécialisés dans des secteurs d’activités différents. Le centre
d’innovation a démarré en Janvier 2016 avec une dizaine de projets qui ont été sélectionnés
en adéquation avec la politique du centre et les thématiques prioritaires. Plusieurs équipes
travaillent actuellement au niveau du centre d’innovation et parmi eux des étudiants en
stage de PFE venant de divers établissements. Ces équipes travaillent actuellement sur
la mise en place de prototypes. Elles ont bénéficié d’un encadrement dans divers aspects
tel que la gestion de projet, l’élaboration d’un business plan, le processus d’innovation, le
marketing, le commercial, la propriété industrielle et la veille technologique.
Ce centre a pour objectifs de :
— Identifier les bons projets pour aider à la création d’entreprises innovatrices
— Favoriser l’émergence d’une nouvelle génération de créateurs et former des entrepre-
neurs afin de transformer des techniciens porteurs de projet en chefs d’entreprise
— Contribuer à la consolidation du tissu industriel dans le cadre des TIC et minimiser
les facteurs d’échec de la création d’entreprises

1.2 Problématique et solutions


Après une discussion avec les experts du domaine de l’agriculture nous avons dégagé
les problèmes suivants :

10
1.3. Travail à faire 11

— Gaspillage d’eau avec les systèmes d’irrigation manuelle.


— L’agriculteur est prisonnier de son système actuel de contrôle de la ferme.
— Manque de main d’œuvre.
— la majorité des agriculteurs suivent la culture maraîchère.
— Main d’oeuvre coûteuse.
— l’agriculteur n’a pas de contrôle sur la ferme lorsqu’il est ailleur.
Afin de résoudre ces problèmes nous devrons alors penser à une solution qui automatise les
tâches d’irrigation et contrôle de logements des animaux et penser à un système portable,
tout en les rendant plus fiables.

1.3 Travail à faire


Au niveau de ce projet, nous allons concevoir et mettre en place une solution de gestion
d’une ferme : une solution d’irrigation qui va calculer les besoins réelles des plantes en eau,
ces données seront collectées par un capteur placés sur le sol, et une autre solution pour le
controle de logements des animaux au niveau de température, humidité, lumière et sécurité.

1.4 Méthodologie de travail


Au cours de ce projet on a utiliser le modèle de cycle de vie en cascade : on ne passe à
la étape suivante que lorsque la précédente est validée. Ce modèle est simple à suivre et il
permet d’éviter les retards puisqu’il est facile de visualiser que si une étape se décale, les
suivantes seront impactées.

1.5 Planification du travail


— 02 Février - 28 Février
Compréhension du projet et étude le terrien de l’agriculture .
— 1 Mars - 8 Mars
Spesification des besoin et conception d’une solution .
— 9 Mars - 10 Avril
Auto-formation pour la maîtrise du langage de programmation, l’environnement de
développement et le matriel utilisé .
— 11 Avril - 13 Mai
Implémentation de la solution .
1.6. Etude de l’existant 12

— 14 Mai - 18 Mai
Validation et test .
— 1 Mars - 16 Juin
Réduction du rapport .

1.6 Etude de l’existant


En Tunisie, les agricuteurs utilisent plusieurs methodes pour fournir de bonnes condi-
tions de vie pour les volailles et les bétails mais cette tache n’est pas automatisée de façon
qu’elle est devenue fatigante. Pour l’irrigation les agriculteurs utlisent des methodes qui
ne sont plus efficaces comme «le goutte à goutte» ou « l’irrigation integrale » car elles
apportent à la plante une quantité d’eau beaucoup plus qu’elle peut absorber d’où le sol
peut ne plus être en capacité d’absorber l’eau alors on est en face à des inondations et pour
limiter encore plus le gaspillage d’eau.

1.6.1 les applications consacrées pour les plantes


Notamment l’Institut National des Grandes Cultures a mis au point une application
mobile gratuite nommé IRREY Agrume . Cette application permet aux agriculteurs de
maîtriser le processus d’irrigation pour optimiser l’utilisation de l’eau en fonction de la
nature de la culture , du sol et du climat . Et aussi pour augmenter la rentabilité et améliorer
le rendement . Dans le formulaire d’ajout l’utilisateur indique le type de sa plante , date de
la plantation. La latitude et la longitude du champ seront obtenues automatiquement en
utilisant la géolocalisation. L’application calcule chaque jour la quantité d’eau à irriguer
selon les paramètres entrés dans le formulaire.
1.6. Etude de l’existant 13

Figure 1.1 – Interface de l’application IRREY Agrume

1.6.2 les applications consacrées pour les Volailles


AVItouch est un système interactif de gestion des paramètres de la ventilation des
bâtiments d’élevage de volaille. Équipé d’un écran tactile couleur, AVItouch permet de
piloter en temps réel plus de 25 paramètres tels que les températures, l’hygrométrie et les
besoins en apport d’air. Grâce à l’AVItouch, chaque éleveur peut connaître en temps réel
tous les paramètres associés à son bâtiment. Tous ces paramètres sont cruciaux dans le
développement des animaux. Une bonne maîtrise de ces derniers assurent à l’éleveur une
bonne productivité et maîtrise de ses coûts à la fois en consommation d’énergie mais aussi
en consommation d’aliment. Avec AVItouch, les éleveurs s’équipent pour une agriculture
performante et responsable.
1.7. Critique de l’existant 14

Figure 1.2 – Interface de l’application AVItouch

1.7 Critique de l’existant


Les applications d’irrigation existantes qui obtiennent les données de l’environnement à
partir d’un web service météo, certe elles sont gratuites ou peu coûteuses mais elle donnent
des mesures peu précises, en outre elle dependent des webservices météo qu’on peut pas
les contrôler (peuvent devenir indisponible à tout moment ) Les applications existantes qui
obtiennent les données de l’environnement à partir des capteurs sont Résultats de recherche
performantes (donnent des mesures précises) mais elle sont payantes et généralement chères.
Pour utiliser l’application irey Agrume il faut passer une demande au institut national des
grandes cultures et comme vous connaissez la procédure des papier est toujours pénible
. Aussi les applications de gestion du logements des animaux s’achètent par paquet d’où
l’agriculteur va les trouver chèrs comme AVItouch qu’on la trouve au marché divisé en
paquet de façon qu’elle devient chère pour les petite fermes . Il n’existe pas une application
contenant tout ce qu’on a besoin pour les logements et l’irrigation d’où ça va être ardu
pour l’agriculteur qui veut avoir une application exhaustive pour mieux gérer sa ferme.
1.8. Solution proposée 15

Figure 1.3 – Les Pack de l’application AVItouch

1.8 Solution proposée


On propose dans notre projet de relier les compartiments de la ferme entre eux par une
carte raspberry pi 3 que tous les données collectées par les capteurs qui seront stockées
dans une base de donnée UBIDOTS qui serait accessible et contrôlable par une application
mobile .

Figure 1.4 – Architecture générale du projet

1.8.1 Compartiment des bétails


Pour le compartiment des bétails on va installer des capteurs un pour le contrôle de
la lumière et un autre pour le contrôle de la température qui doit être entre 15C et 29C
1.8. Solution proposée 16

équipé par un système de ventilation. Pour l’aspect sécurité on va installer une caméra de
surveillance.

Figure 1.5 – Architecture de compartiment des bétails

1.8.2 Compartiment des volaille


Pour le compartiment des volailles on va installer des capteurs un pour le contrôle de
la lumière qui doit être allumée 17h pour les volailles qu’on va bénéficier de leur oeufs et
24h de luminosité pour les volailles qu’on va bénéficier de leur viandes et un autre pour le
contrôle de la température qui doit être 32C en hivers et 27C en été équipé par un système
de ventilation et un capteur de gaz qui contrôle la qualité de l’air dans l’atmosphère.Pour
l’aspect sécurité on va installer une caméra de surveillance.

Figure 1.6 – Architecture de compartiment des volaille


1.8. Solution proposée 17

1.8.3 Controle de l’irrigation


Les pluies, en particulier leur part efficace, fournissent une partie de l’eau requise pour
satisfaire les besoins d’évapotranspiration des cultures. Le sol, agissant comme un tampon,
stocke une partie de l’eau de pluie et la restitue aux cultures en période de déficit. Sous
des climats humides, ce mécanisme suffit pour assurer une croissance satisfaisante dans
des systèmes de culture sans irrigation. Dans des conditions arides ou en cas de saison
sèche prolongée, il est nécessaire d’irriguer pour compenser le déficit d’évapotranspiration
(transpiration des cultures et évaporation à partir du sol) dû à l’insuffisance ou à l’irrégu-
larité des précipitations. La consommation d’eau pour l’irrigation est définie comme étant
le volume d’eau nécessaire pour compenser le déficit entre d’une part l’évaporation poten-
tielle et d’autre part les pluies efficaces pendant la période de croissance des cultures et
le changement dans la teneur en eau du sol. Elle varie considérablement en fonction des
conditions climatiques, des saisons, des cultures et des types de sol. Pour un mois donné,
le bilan hydrique des cultures peut s’exprimer comme suit :
ICU = ETc - P - DS
Où :
ICU = consommation d’eau pour l’irrigation nécessaire pour satisfaire la demande des
cultures (mm)
ETc = évapotranspiration potentielle de la culture (mm)
P = pluie efficace (mm)
DS = changement dans l’humidité du sol (mm)
Pour l’evapotranspiration elle se calcule comme suit de façon quotidienne
ETc(t) = Kc x ETo(t)
Où :
t = période de temps (jours)
ETc(t) = évapotranspiration potentielle de la culture au cours de la période de temps
donnée (mm)
ETo(t) = évapotranspiration de référence au cours de la période de temps donnée (mm)
Kc = coefficient cultural ou d’affectation des sols (-)
1.9. Conclusion 18

Figure 1.7 – Architecture de systéme d’irrigation des plantes

On va intaller un systéme de Contrôle d’humidité du sol puis on va fixer son taux


normal si ce dernier est dépassé il envoie une haute tension au relais qu’il transmettra au
pompe d’eau pour l’arrêter sinon une faible tension sera envoyé au pompe d’eau.

1.9 Conclusion
Ce chapitre nous a permis tout d’abord de comprendre les conditions pour avoir une
haute qualité de productivité et de vie de bétails et de volailles et les besoins en eau des
plantes .Ensuite on a étudié quelques applications existantes de calcul des besoins en eau
des plantes et de contrôle de logement et conditions de vie de volailles et de bétails en
Tunisie. Sur la base de cette étude, nous allons élaborer la spécification et la conception
de notre application.
Chapitre 2

Specification et Conception

L’analyse du sujet et la collecte des informations nous a permis d’encercler les fonc-
tionnalités du système que doivent être à la disposition de l’agriculteur.
Les besoins sont classes en fonctionnels et non fonctionnels.

2.1 Spécification des besoins

2.1.1 Besoins Fonctionnels

Nous présentons dans ce qui suit tous les besoins fonctionnels classés par acteur .
L’utilisateur peut :
Gérer le compte :
— Créer un compte
— Supprimer un compte
— Modifier un compte
— Consulter un compte
Gérer la ferme :
— Gérer les volailles
— Gérer les betails
— Gérer l’irrigation

19
2.2. Identification des acteurs et des cas d’utilisation 20

2.1.2 Besoins non fonctionnels :

Ce sont des besoins permettant d’améliorer la qualité des services du projet comme la
convivialité, l’ergonomie des interfaces et l’amélioration du temps de réponse. Parmi ces
besoins, on cite :
— Sécurité : l’application doit obligatoirement fournir une garantie de sécurité aux
utilisateurs.
— Performance et fiabilité : l’application doit fonctionner dans les meilleurs conditions
sans s’interrompre
— ergonomie : l’application doit disposer d’une certaine clarté et une simplicité d’uti-
lisation.

2.2 Identification des acteurs et des cas d’utilisation

2.2.1 Identification des Acteurs


un acteur est une entité externe (personne ou objet) qui interagit sur le système d’une
façon directe (acteur principal) ou indirecte (acteur secondaire). Il est représenté par un
pictogramme sous-titré par le nom de l’acteur Les acteurs qui interagissent avec notre
système sont :
- Agriculteur : sera capable de créer un compte, gérer la ferme et consulter les
données
- Capteurs : des acteurs secondaires qui envoient périodiquement les informations
nécessaires collectées sur le champ tout au long de la journée.
- Ubidots : sert à recevoir les données et les stocker dans une base de données.

2.2.2 Modélisation des besoins


Pour modéliser les fonctionnalités de notre application on va utiliser Unified Modeling
Langage (UML) comme langage de modélisation de notre système. UML aide ses utilisa-
teurs à produire différents diagrammes qui forment ensemble une modélisation complète
du système.
2.2. Identification des acteurs et des cas d’utilisation 21

Diagramme de cas d’utilisation général

Le diagramme de cas d’utilisation est exploité afin de permettre une modélisation entière
du Comportement fonctionnel du système, comme le démontre la figure 2.1 . Il permet
d’identifier les acteurs et présenter leurs relations avec le système.

<
Figure 2.1 – Diagramme de cas d’utilisation général
2.2. Identification des acteurs et des cas d’utilisation 22

Diagrammes de cas d’utilisation détaillé :

Gérer le Compte :

Figure 2.2 – Diagramme de cas d’utilisation gérer le compte

Description textuelle :

Supprimer un compte :
— Nom de cas d’utilisation : Supprimer un compte
— Acteur : Agriculteur
— Pré-condition : L’agriculteur doit s’authentifier
— Post-condition : Suppression d’un compte
Enchaînement nominal :
1. L’agriculteur sélectionne le compte dont il veut supprimer
2. L’agriculteur valide la suppression du compte
3. Le système effectue la suppression

Modifier un compte :
— Nom de cas d’utilisation : Modifier un compte
2.2. Identification des acteurs et des cas d’utilisation 23

— Acteur : Agriculteur
— Pré-condition : L’agriculteur doit s’authentifier
— Post-condition : Modificationde donées d’un compte
Enchaînement nominal :
1. L’agriculteur sélectionne le comte dont il veut modifier les données.
2. Le système affiche les informations relatives de l’utilisateur à modifier
3. L’agriculteur remplie et valide le formulaire
4. L’agriculteur effectue les modifications souhaitées
5. Le système met à jour les informations de l’utilisateur et affiche un message de
confirmation.
Exception : si les champs obligatoires sont vides ou un format non valide :
— Le système affiche un message d’erreur
— Le scénario reprend de (2)

Gérer la ferme :

Figure 2.3 – Diagramme de cas d’utilisation gérer la ferme


2.2. Identification des acteurs et des cas d’utilisation 24

Gérer les volailles :


Supprimer des données
— Nom de cas d’utilisation : Supprimer des données
— Acteur : Agriculteur
— Pré-condition : L’agriculteur doit s’authentifier
— Post-condition : Suppression de données
Enchaînement nominal :
1. L’agriculteur sélectionne le champ dont il veut supprimer
2. L’agriculteur valide la suppression du champ
3. Le système effectue la suppression
Consulter les données :
— Nom de cas d’utilisation : consulter les données
— Acteur : Agriculteur
— Pré-condition : L’agriculteur doit s’authentifier
— Post-condition : consultation des variables
Enchaînement nominal :
1. L’agriculteur sélectionne la variable qu’il veut consulter
2. Le système affiche les informations relatives au variable

Gérer l’irrigation :
Modifier les données de l’irrigation :
— Nom de cas d’utilisation : Modifier les données de l’irrigation
— Acteur : Agriculteur
— Pré-condition : L’agriculteur doit s’authentifier
— Post-condition : Modifier un ou plusieurs champs de données
Enchaînement nominal :
1. L’agriculteur sélectionne le champ dont il veut modifier
2. L’agriculteur valide la modification du champ
3. Le système effectue la modification

Consulter les données :


— Nom de cas d’utilisation : consulter les données
— Acteur : Agriculteur
— Pré-condition : L’agriculteur doit s’authentifier
— Post-condition : consultation des variables
Enchaînement nominal :
2.2. Identification des acteurs et des cas d’utilisation 25

1. L’agriculteur sélectionne la variable qu’il veut consulter


2. Le système affiche les informations relatives au variable

Diagramme de séquence systéme

Pour avoir une vue séquentielle globale sur les principales fonctionnalités de notre sys-
tème :

Figure 2.4 – Diagramme de séquence systéme

Ce diagramme montre l’interaction de façon séquentielle entre l’acteur et le système.


Une authetification doit être établie, une fois elle est effectuée, l’agriculteur peut sélection-
ner une action à faire, lorsqu’il aura l’interface principale.
2.2. Identification des acteurs et des cas d’utilisation 26

Diagramme de séquence de capteur de gaz

Figure 2.5 – Diagramme de séquence de capteur de gaz

Ce diagramme de séquence montre le processus de consultation de niveau de gaz dans


le batiments des volailles . Une commande est envoyée de l’application à la carte qu’à son
tour elle va envoyer la commande au capteur pour recuperer le niveau de gaz.
2.3. Conclusion : 27

2.2.3 Diagramme d’activité


Dans cette partie nous présentons le diagramme d’activité lié à tout le système.

Figure 2.6 – Diagramme d’activité

2.3 Conclusion :
Dans ce chapitre nous avons énuméré les besoins fonctionnels et non fonctionnels de
notre application et nous avons fait une étude des différents cas d’utilisation de notre
système et définit nos modèles.
Chapitre 3

Réalisation et Tests du projet

Dans ce chapitre nous présentons l’environnement matériel et logiciel utilisé dans notre
projet ensuite nous présentons quelques captures d’écran montrant les fonctionnalités du
notre projet.

3.1 Environnement logiciel et matériel

3.1.1 Environnement matériel


L’équipement mis à notre disposition pour la réalisation du projet à part d’un ordinateur
portable :
— Carte Raspberry Pi 3 : est un nano-ordinateur monocarte à processeur ARM.
Cet ordinateur, est destiné à encourager l’apprentissage de la programmation in-
formatique, il permet l’exécution de plusieurs variantes du système d’exploitation
libre GNU/Linux-Debian et des logiciels compatibles. Mais également avec les OS
Microsoft Windows : Windows 10 IoT Core et Android Pi.

Figure 3.1 – Carte Raspberry PI3 model B

28
3.1. Environnement logiciel et matériel 29

— Capteur de température et d’humidité DHT11 : est un capteur détecte,


mesure et signale régulièrement l’humidité relative de l’air. Il mesure à la fois l’hu-
midité et la température de l’air. L’humidité relative, exprimée en pourcentage, est
le rapport entre l’humidité réelle dans l’air et la plus grande quantité d’humidité
à cette température. Plus l’air est chaud, plus il peut contenir d’humidité , donc
l’humidité relative change avec les fluctuations de température.

Figure 3.2 – Capteur température et humidité DHT11

— Capteur photorésistance : est un composant électronique dont la résistivité va-


rie en fonction de la quantité de lumière incidente : plus elle est éclairée, plus sa
résistivité baisse.

Figure 3.3 – Capteur photorésistance


3.1. Environnement logiciel et matériel 30

— Diode électroluminescente (LED) : est une à deux plomb semi-conducteur


source de lumière . C’est une diode de jonction p-n qui émet de la lumière lorsqu’elle
est activée .

Figure 3.4 – Diode électroluminescente (LED)

— Caméra Raspberry : Le module de caméra Raspberry Pi peut être utilisé pour


prendre des vidéos haute définition, ainsi que des photos.

Figure 3.5 – Camera Raspberry

— Capteur de Gaz MQ5 : Un capteur de gaz est un dispositif qui détecte la pré-
sence de gaz dans une zone. Ce capteur interagit avec un gaz pour mesurer sa
concentration. Chaque gaz a une tension de claquage unique, c’est-à-dire le champ
électrique auquel il est ionisé. Le capteur identifie les gaz en mesurant ces tensions.
La concentration du gaz peut être déterminée en mesurant la décharge de courant
dans l’ appareil. Le capteur de gaz MQ5 détecte la présence de divers gaz tels que
3.1. Environnement logiciel et matériel 31

l’ hydrogène, le monoxyde de carbone, le méthane et le GPL allant de 100ppm à


3000 ppm .

Figure 3.6 – Capteur de Gaz MQ5

— Relais model raspberry : La carte RPi Relay permet au carte raspberry Pi de


contrôler les appareils à haute tension / courant élevé, ce qui rend facilement les
appareils ménagers normaux intelligents.

Figure 3.7 – Relais model raspberry

— Capteur humidité de sol : Ce capteur permet de détecter des changements d’hu-


midité avec réglage de seuil, et double sortie, numérique et sortie analogique.
3.1. Environnement logiciel et matériel 32

Figure 3.8 – Capteur humidité de sol

— Pompe à eau submersible : est une pompe qui permet la mise en mouvement
de l’eau

Figure 3.9 – Pompe à eau submersible

3.1.2 Environnement Logiciel

Après avoir présenté les moyens matériels mis à notre disposition dans le cadre de
réalisation de ce projet, nous présentons les logiciel choisis et nos motifs :
— Raspbian : est un système d’exploitation libre et gratuit basé sur Debian GNU/Linux
optimisé pour fonctionner sur un Raspberry Pi.
— Python : est un langage de programmation objet, multi-paradigme et multiplate-
formes. Il favorise la programmation impérative structurée, fonctionnelle et orientée
3.1. Environnement logiciel et matériel 33

objet. Il est doté d’un typage dynamique fort, d’une gestion automatique de la
mémoire par ramasse-miettes et d’un système de gestion d’exceptions .
— PuTTY : est un émulateur de terminal doublé d’un client pour les protocoles SSH,
Telnet, et TCP brut. Il permet également des connexions directes par liaison série
RS-232 .
— NANO : nano est un éditeur de texte pour les systèmes Unix et dérivés, basé sur
la bibliothèque ncurses et publié sous licence GNU GPL. C’est un clone libre de
Pico, l’éditeur de texte du logiciel de courrier électronique Pine. GNU nano s’efforce
de reproduire les fonctionnalités et la simplicité de l’interface de Pico, mais sans
conserver la dépendance forte envers Pine qu’impose Pico.
— Ubidots : offre aux développeurs une plate-forme qui leur permet de capturer facile-
ment les données des capteurs et de les transformer en informations utiles. Utilisez
la plate-forme Ubidots pour envoyer des données au cloud à partir de n’importe
quel appareil connecté à Internet. Vous pouvez ensuite configurer des actions et des
alertes en fonction de vos données en temps réel et déverrouiller la valeur de vos
données via des outils visuels. Ubidots propose une API REST qui vous permet
de lire et d’écrire des données sur les ressources disponibles : sources de données,
variables, valeurs, événements et informations. L’API prend en charge HTTP et
HTTPS et une clé API est requise .
— Connexion bureau à distance : est un composant du système d’exploitation Win-
dows de Microsoft. Il s’agit d’un logiciel client de bureau à distance pour les services
et protocoles RDP, TSE ou RDS qui permet d’effectuer de la télé-administration ou
du télétravail à l’échelle d’un réseau local (LAN) ou distant (WAN).
— Win32 disk Imager : Win32DiskImager est un programme Windows ouvert pour
enregistrer ou restaurer des images à partir de lecteurs amovibles tels que clés USB,
cartes mémoire SD, etc. Il peut être utilisé pour écrire des images de démarrage ou
de mise à jour (yocto sdcard image) sur un périphérique Flash SD ou USB appareil
flash. Par conséquent, il est extrêmement utile pour le développement intégré.
— Advanced IP Scanner : Advanced IP Scanner 2.5 est un scanner de réseau gratuit,
rapide et puissant avec une interface conviviale. En quelques secondes, Advanced
IP Scanner peut localiser tous les ordinateurs de votre réseau local filaire ou sans
fil et effectuer une analyse de leurs ports. Le programme fournit un accès facile à
diverses ressources réseau, telles que HTTP, HTTPS, FTP et les dossiers partagés.
Il vous permet également de détecter toutes les adresses IP sur votre réseau Wi-Fi.
— Fritzing Fritzing est une initiative open source [2] pour développer des logiciels de
CAO amateur ou de loisir pour la conception de matériel électronique, pour soutenir
les concepteurs et les artistes prêts à passer d’expérimenter avec un prototype à
construire un circuit plus permanent
3.2. Préparation de l’environnement de travail 34

3.2 Préparation de l’environnement de travail

3.2.1 Au niveau de la carte


1. Installation de système d’exploitation :
On a utilisé win32 disk Imager pour installer le système d’exploitation Raspbian sur
la carte mémoire de la carte raspberry.

Figure 3.10 – Installer le système d’exploitation Raspbian

2. Connexion de la carte à Internet :


On a interconnecté la carte Raspberry avec un écran , un clavier et une souris pour
avoir accès à l’interface graphique et se connecter à Internet.

Figure 3.11 – Connexion de la carte à Internet


3.2. Préparation de l’environnement de travail 35

3. Interconnexion de la carte à un PC :

On accède à la carte Raspberry après avoir récupérer son adresse IP en utilisant


Putty et le protocole SSH.

Figure 3.12 – Interface Putty

Figure 3.13 – Interface de la connexion avec la carte


3.2. Préparation de l’environnement de travail 36

3.2.2 Au niveau de l’application


1. Authentification

La figure ci-aprés donne l’interface à travers laquelle l’agriculteur s’identifie pour


accéder au menu principal pour cela il saisit son login et son mot de passe.

Figure 3.14 – Interface de connexion

2. Interface d’accueil

Une fois authentifié, une interface d’acceuil s’affiche à l’agriculteur pour lui proposer
les fonctionnalités de l’application.

Figure 3.15 – Interface d’accueil


3.2. Préparation de l’environnement de travail 37

3. Création de dispositif

Aprés l’agriculteur commencer à connecter l’application avec le source de donner


"carte raspberry" .

Figure 3.16 – Création de dispositif

4. Ajout des valeurs

Une fois l’application est connecter avec la carte nous commençons à créer des
valeurs pour les données que nous prenons de la carte .

Figure 3.17 – Ajout des valeurs


3.2. Préparation de l’environnement de travail 38

5. Création de tableau de bord

Pour la facilité de l’utilisation on créer trois tableau de borad pour les trois batiments

Figure 3.18 – Création de tableau de bord

Figure 3.19 – Interface de tableau de bord


3.2. Préparation de l’environnement de travail 39

6. Consulté les données


L’agriculteur peut aussi afficher toutes les informations en détails d’un élément
sélectionné

Figure 3.20 – Consulté temperature

Figure 3.21 – Consulté humidité


3.3. Développement 40

3.3 Développement

3.3.1 Capteur humidité temperature


Pour le controle du temperature dans la compartiment des bétails on a programmes
notre capteur pour activé le chauffage lorsque la temperature est moins de 17C et activé la
vetillation lorsque la temerature est plus que 29C ,et pour le compartiment des volailles on
a programmes le capteur pour activé la ventilation lorsque la temperature est plus de 27C
on été et activé le chauffage si la temperature et mois de 10C en hiver. et pour donnée un
control total à l’agriculteur sur la ferme on a crée un boutton d’activation et desactivation
manuel de la ventilation et le chauffage sur l’application .

3.3.2 Capteur de gaz


Pour le contrôle le niveau d’ammoniac dans l’air dans le compartiment des volailles on
a programmé le capteur lorsque le taux d’ammoniac depasse 60% active les ventilateurs
d’aération au moment qu’il refait de nouveau la caption et trouve que le niveau est normal
il desactive les ventilateurs .

3.3.3 Capteur d’humidité de sol


Pour le contrôle le système d’irrigation dans notre projet on a programmé le capteur
d’humidité du sol que lorsque la pompe d’eau est en marche il compare le taux d’humidité
du sol lors de l’irrigation avec le seuil qu’il a déjà pour ne pas le depasser et si il est depassé
il envoie une tension peu elevée pour desactiver la pompe d’eau .

3.3.4 Capteur de lumière


Pour le controle de lumiére dans les compartiment on a programmes le capteur lorsque
l’éclairement est mois de 200 activé la lumière et nous créons un bouton pour chaque
compartiment sur l’application pour le control manuel .

3.3.5 Camera de Surveillance


Pour la securité de la ferme et les compartiments nous créons deux bouton sur l’appli-
cation pour cotrole le camera un pour prendres des photos et un autre pour active le direct
et l’enregistrement .
3.4. Construction matérielles : 41

3.4 Construction matérielles :


Dans cette partie nous allons présenter tous les montages électroniques effectués .

1. Montage de capteur température et humidité DHT11


Pour ce montage nous utilisons une tension de 5v branché avec le pin VCC du
capteur et on branche le pin GND avec le GPIO GND de la carte et le pin DATA
avec le GPIO 17 .

Figure 3.22 – Montage capteur temperature et humidité DHT11

2. Montage de capteur de lumière LDR


pour ce montage nous utilisons une tension de 3v pour l’alimentation et on mettre
on série un condensateur de 1uF on branche son borne negative avec le GND de la
carte et le capteur avec le GPIO 4 .

Figure 3.23 – Montage capteur de lumière


3.4. Construction matérielles : 42

3. Montage de lumiére
Pour ce montage nous utilisons un led est on branche ca borne negative avec le GND
de la carte et la borne positive avec le GPIO 18 .

Figure 3.24 – Montage de lumière

4. Montage de capteur de gaz MQ5


Pour ce montage, nous utilisons une tension de 5V en sortie. C’est trop pour les
GPIO, c’est pourquoi nous utilisons un convertisseur de niveau logique (TTL) qui
réduit la tension. Une fois le MCP3008 correctement connecté, nous utilisons le port
0 et le connectons à RX0 de la TTL. Du côté opposé, RX1 est connecté à la broche
analogique (A0) du capteur MQ2. Connectez également 3.3V du Raspberry Pi (LV)
et 5V (HV) au TTL. Et aussi 5V à la broche VCC du capteur de gaz et GND du
Raspberry Pi vient à GND du côté BT et HT du TTL, ainsi qu’à GND du MQ2.
Schématiquement, l’ensemble se présente comme suit :
3.4. Construction matérielles : 43

Figure 3.25 – Montage de capteur de gaz

5. Montage de capteur d’humidité du sol


Pour ce montage, nous utilisons une tension de 5V branché avec le pin VCC du
capteur, le pin GND avec le GND de la carte et le pin DO avec le GPIO 21 .

Figure 3.26 – Montage de capteur d’humidité


3.4. Construction matérielles : 44

6. Montage de camaera
Pour ce montage nous utilisons une camera raspberry Rev1.3 et on a branche direc-
tement avec le port de camera sur la carte .

Figure 3.27 – Montage de camera

7. Produit final
Pour ce montage nous présentons le produit final du projet qui contient toutes les
montagues que nous voyons avant .

Figure 3.28 – Montage de camera


3.5. Conclusion 45

3.5 Conclusion
Dans ce chapitre, nous avons fourni un rapport détaillé sur nos choix techniques et
notre environnement de travail. Par la suite, nous avons présenté les détails de mise
en œuvre.
Conclusion et perspectives

Si la quantité d’informations circulant sur internet s’eclate , c’est partiellement au


moyen des capteurs et equipements connectées qui occupe notre environnement. Le do-
maine agricole ne peut que s’en ravir : plus il y a d’informations, plus on trouve des
reponses à nos questions et plus le monde est mieux .
D’où l’atout d’organiser la collecte des informations et d’en faciliter l’accés plus tard.
D’où l’idée de ce projet de fin d’études, qui s’est déroulé au sein de Centre d’innovation
el ghazela, avait pour but la conception et la réalisation d’une ferme intelligente d’où on
a maîtrisé une nouvelle technologie qui a une grande tendance et réussite dans le domaine
agricole , il consiste la conception et mise en place des capteurs pour collecter et transferer
les données captées et les stocker dans une base de données Cloud.
Ce travail ne s’arrête pas là. En effet, plusieurs perspectives sont envisageables pour l’amé-
liorations de ce projet .Nous pourrons developper une application pour rendre l’interactivité
plus souple et complète avec l’agriculteur, aussi on peut évoluer même la ferme en lui inté-
grants de multiples nouveaux capteurs pour la rendre encore plus complete et automatisée.
Sur le plan personnel, pendant toute la durée de ce projet, Nous avons eu l’opportunité
de mettre en pratique nos connaissances, de même nous avons pris d’autres connaissances
en électronique, embarquées et nous avons aussi eu la hance de travailler avec de récents
outils et équipements. Cette expérimentation a été extrêmement enrichissante et essentielle
parce qu’elle a marqué la fin de ce cycle de licence et nous a rendu possible d’être face
aux nouvelles responsabilités qui sont celles d’un technicien : faire affronter les délais, aux
obligations du travail à l’intérieur d’un milieu d’ étude et d’innovation.

46
Netographie

https ://wiki.eprolabs.com/index.php ?title=Humidity_Sensor_DHT11

https ://en.wikipedia.org/wiki/Raspberry_Pi

https ://en.wikipedia.org/wiki/Light-emitting_diode

https ://fr.wikipedia.org/wiki/Photor%C3%A9sistance

https ://fr.wikipedia.org/wiki/Raspbian

https ://www.programmableweb.com/api/ubidots

https ://en.wikipedia.org/wiki/PuTTY

https ://en.wikipedia.org/wiki/Python_(programming_language)

https ://fr.wikipedia.org/wiki/Connexion_bureau_%C3%A0_distance

https ://fr.wikipedia.org/wiki/GNU_nano

https ://fr.wikipedia.org/wiki/Pompe_%C3%A0_eau

https ://goo.gl/FZ2Ahc

https ://en.wikipedia.org/wiki/Fritzing

47