Pfe Mbarek
Pfe Mbarek
1
I. Présentation de la société :
1. Présentation :
MG ADVANCED TECHNOLOGY est une société marocaine, créée en 2018 par une équipe
de management expérimentée multisectorielle et pluridisciplinaire, ayant occupés des postes
clés au sein de différents organismes, notamment à travers le pilotage de projets en relation
avec les domaines des mines, de l’industrie d’automobile, de l’industrie aéronautique, des
énergies renouvelables, etc.
2. Domaines d’activités :
2
CHECO: (Chauffe-eau solaire économique),
SUICO: (Suivi & Contrôle de la consommation énergétique), MIXEF: (Mix énergétique pour
la réduction de la facture énergétique).
CATEL: Contrôle d’accès intelligent (Badge magnétique ou reconnaissance faciale),
SIVEL: (Système de vidéo surveillance intelligent),
CICPRO: Contrôle intelligent d’une chaine de production.
Conception de :
Expertise ;
3
Modélisation 3D de l’ensemble de la machine
Réalisation des plans de détails,
Etude préliminaire de la structure métallique du Convoyeur,
Modélisation de la structure,
Estimation poids de la structure,
Modélisation d’un Tripper.
4
II. Cadre général du projet :
1. Problématique :
Le marché mondial est caractérisé aujourd’hui par une concurrence de plus en plus féroce. Pour
rester compétitives dans un tel contexte les entreprises doivent améliorer la qualité de leurs
produits et services en s’appuyant sur la meilleure gestion de temps.
Depuis sa création en 2018, la société MGAT à une augmentation du nombre de salariés. Cet
accroissement de personnel génère un volume de données très important et en constante
évolution, devenant ingérable .Ainsi la complexité de la gestion de la base de données
intervient.
Figure 5 : Problématique.
5
2. Critique de l'existant :
Le système d’accès existant est un système d’accès traditionnel permettant seulement
d’autoriser l’accès aux utilisateurs dont les ID sont déjà stockés sur la base de données locale
du système qui sont manuellement ajoutés. Cette base de données étant incapable de résister à
la complexité que peut engendrer le nombre des salariés au cas d’une croissance probable de
l’entreprise.
Outre la gestion des comptes utilisateurs, il est important de garder un œil sur l’historique et les
statistiques de leurs activités, à base desquelles on pourra évaluer la ponctualité d’un salarié,
pointer les jours de ses absences et les jours dont il a passé moins de huit heures.
Le pilotage de l’ensemble des portes équipées avec les lecteurs, l’ajout, l’autorisation ou refus
d’un badge se font depuis un ordinateur et sur une base de données locales Excel ; une démarche
traditionnelle et limitée, qu’on doit changer ou développer, afin de présenter un produit robuste,
et facilement à pilot.
3. Solution proposée :
La société MGAT, cherche Aujourd’hui à améliorer son système de pointage pour gérer plus
facilement l‘accès de ses employés à l’entreprise.
Le système à réaliser se caractérise par son faible coût, son montage bien détaillé et simple à
réaliser ainsi que sa technologie la plus développée qui permet de fournir, recevoir, modifier et
faire la gestion des informations.
4. Objectifs :
L’objectif de ce projet et de réaliser un système de contrôle d’accès basé sur le réseau wifi
pour communiquer avec une base de données. Ce système consiste en :
• La réalisation d’un système d’accès qui répond aux déffirentes exigences de sécurité
dans la société.
• La sauvegarde de l’historique d’entrée/sorties d’une manière plus précise que la
méthode existante.
6
• Créer un système embarqué à faible coût, générique et modifiable facilement.
• Développement et réalisation d'une application mobile.
• Autoriser ou non des personnels.
• Communication entre le microcontrôleur et le serveur Firebase.
• Communication entre le microcontrôleur et le serveur Firebase et l’application mobile
5. Organisation :
Tout au long de ce projet de stage, il était important de répartir les tâches à effectuer, d’abord
pour en suivre l’avancée mais aussi pour ne pas en oublier.
b. Diagramme pieuvre:
7
Figure 5:Diagramme pieuvre
8
Figure 6:L'architecture globale du système
Lorsqu’un employé passe son badge sur le lecteur RFID, le lecteur passe les informations du
badge à l’arduino qui va communiquer avec le serveur firebase via le module wifi Esp8266 Ce
dernier, va permettre de vérifier si l’ID de la carte existe dans la base de données, pour autoriser
l’ouverture ou non de la porte. Si le profil d’employé détient les droits d’accès, le système donne
l’ordre au module wifi ESP8266 pour transmettre les informations au serveur web (Firebase)
qui s’est Connecté avec une tablette par l’intermédiaire d’une application Mobile.
Quand le système détecte une carte RFID déjà connu, l’Arduino déclenche une bipe de
validation une led vert s’allume. Puis, il enregistre ID du personnel avec l’heure du pointage
et action effectué (entrée /sortie) sur Firebase ‘Activities’, Ensuite, il affiche un message de
salutation dans l’afficheur LCD, le relais s’excite et la porte s’ouvre. Si la carte n’est pas connue
le système déclenche une bipe d’invalidité de la carte et la led rouge s’allume .puis il enregistre
ID du personnel sur firebase sous Nouvelle carte qui sera autorisé depuis l’application .Ce
principe se résume comme suit :
• Demande d'accès par carte RFID.
• Envoi de la demande via wifi à la tablette
• Approbation de la demande au niveau de la base de données
• Autoriser l'accès
• Gérer la base de données (ajouter/supprimer des utilisateurs) par tablette.
• Recevoir des notifications relatives aux activités.
9
5.4 Organigramme de fonctionnement :
10
Figure 8:Architecture de l'application
Conclusion :
Ce chapitre introductif a été consacré essentiellement à la présentation de l’environnement dans
lequel le projet a été effectué, ensuite notre cadre de projet à savoir définir leur contexte ainsi
que la problématique et la méthodologie du travail. Le chapitre suivant concerne les généralités
sur les technologies utilisées.
11
Chapitre II : Généralités sur les technologies utilisés
I. La technologie RFID :
1. Historique :
La technologie RFID existe depuis longtemps. Au départ, on l’a notamment utilisée pour
l’identification des avions amis et ennemis pendant la Seconde Guerre mondiale.
12
D’important les étiquettes (transpondeurs) sont placées dans les avions amis afin de répondre
amicalement à l’interrogation des radars. Ce système IFF (Identify : Friend or Foe/
identification: ami ou ennemi) fut la première utilisation de la RFID.
Aujourd’hui, la RFID avec de réelles capacités de calcul est le résultat d’un croisement de
connaissances entre les domaines des puces électroniques et de l’identification par
radiofréquence. Les années 1980 ont marqué un tournant décisif dans l’histoire de la
technologie sans contact avec les premières applications commerciales, comme l’identification
du bétail et les péages autoroutiers.
Plusieurs centaines de millions de copies ont été vendues depuis son introduction sur le
marché(les années 90). Le grand public n’a pris conscience de l’ampleur du phénomène RFID
qu’avec le déploiement d’applications qui sont maintenant incontournables, comme les cartes
de transports publics, l’identification animale ou encore les passeports électroniques. (1)
2. Définition :
13
porteurs d'une étiquette capable de transmettre des données en ondes radio. La technologie
des radiofréquences est généralement utilisée pour la transmission et la réception sans fil
d'informations. Divers appareils électroniques tels que les téléviseurs, les radios et les
téléphones portables utilisent ce principe pour transmettre ou recevoir des informations.
L'émetteur émet en continu un rayonnement radiofréquence pour fournir de l'énergie à
l'étiquette sous forme électromagnétique (étiquette passive) et fournir également les
informations à transmettre. Le tag réagit alors et utilise l'énergie qu'il contient pour renvoyer
l'information au récepteur.
Figure 10:RFID
Le système RFID repose sur deux éléments essentiels : l'étiquette RFID et le lecteur RFID.
1- L’étiquette (tag) :
L’étiquette radiofréquence, tag RFID, ou encore transpondeur composé d’une antenne et d’une
puce RFID, peut prendre différentes formes, tailles et spécifications techniques. La puce stocke
des informations à l’aide de son antenne puis les envoie à un lecteur à proximité.
14
La figure ci-dessous, montre une étiquette à radiofréquence qui se compose d’une puce et
d’une antenne :
2- Le lecteur :
Le lecteur appelé aussi interrogateurs, coupleurs, ou station de base, joue le rôle d'émetteur et
de récepteur, est un dispositif utilisé pour communiquer avec des étiquettes de RFID. Il envoie
un signal selon une fréquence déterminée via une antenne à une ou plusieurs étiquettes RFID
situées dans son zone de lecture. L’étiquettes est réveillée et renvoyée le signal qui est
immédiatement capté par le lecteur, et alors un dialogue s'établit entre eux selon un protocole
de communication prédéfini et ainsi des données sont échangées. Le lecteur RFID transmet et
reçoit des ondes analogiques et les convertit en informations digitales.
Le lecteur peut prendre la forme d’un dispositif fixe ou portatif généralement, on distingue
quatre modalités :
15
3. Principe de fonctionnement :
Le principe d'identification repose sur le fait que chaque transpondeur possède son identifiant
unique UID (Unique ID) fréquemment codé sur 32 bits et qui est stocké en zone mémoire à
lecture seule. Les trois premiers octets "xx xx xx xx" sont identiques pour tous les Tags et les
cinq suivants sont uniques.
3) La puce renvoie les informations à l’antenne, qui les transferts (le signal) au lecteur et
les interpréte.
16
Les tags actifs : utilisent leur propre énergie pour émettre leurs ondes, en utilisant une pile
interne. Ils peuvent ainsi avoir une très longue distance de lecture. Ils sont plus chers que les
tags passifs, ils sont donc souvent utilisés pour tracer des articles de valeur.
Les tags semi-passifs : petits et légers, sont des tags intermédiaires entre les tags actifs et les
tags passifs. Ils utilisent généralement une pile comme source d’énergie (comme les tags actifs),
mais ils peuvent également utiliser l'énergie générée par les ondes radio des lecteurs RFID pour
transmettre des données. (2)
Les systèmes RFID se distinguent par leurs plages de fréquences de fonctionnement : basse
fréquence (LF), haute fréquence (HF), ultra haute fréquence (UHF) et super ultra haute
fréquence (SHF). Ces différentes gammes de fréquences ont des gammes et des vitesses de
transmission très différentes. Il n'y a pas de norme RFID internationale qui spécifie une
fréquence spécifique.
La détermination de la fréquence optimale dépend du type d’usage que l’on souhaite en faire,
les contraintes géométriques comme la distance séparant l’interrogateur du transpondeur. Ces
fréquences peuvent être classées en quatre groupes comme résume le (tableau 3) suivant :
17
Fréquences Dénominat distance Application Types
ion
d’étiquette
125-135 Basses Distance Utilisées pour le Passive
KHz fréquences <1m contrôle d’accès ou
d’identification
Des animaux et
Système d’alarme.
6. Domaine d’application :
18
Sécurité
• Gestion du personnel ;
• Vérification de l'authenticité ;
• Contrôle des accès ;
• Prévention contre le vol.
Véhicule
Industrie
Médical
Transport…
Par définition, l’Internet des Objets est un ensemble d’applications permettant une connexion
entre le monde physique et le monde numérique. Les objets physiques connectés ont leurs
propres identités numériques et sont capables de communiquer entre eux. L’IoT est considéré
comme la troisième évolution d’Internet car les technologies de ce réseau démultiplient le
nombre de points de mesures, créent de nouveaux réseaux de communications et améliorent le
19
traitement de la donnée. Ainsi, cette évolution permet une optimisation des ressources du
monde d’aujourd’hui sur un point financier, humain et énergétique.
2. Fonctionnement d’IOT :
L’internet des objets fonctionne principalement avec des capteurs et objets connectés placés
sur des infrastructures physiques. Ces capteurs vont ensuite émettre des données qui seront
renvoyées via le réseau sans fil sur la plate-forme IoT. Par conséquent, ils peuvent être analysés
et enrichis pour en tirer pleinement parti. L’Internet des objets (IoT) permet à différents objets
intelligents d'être interconnectés via Internet. Son fonctionnement repose sur l'utilisation de
plusieurs technologies. Nous citons :
• Réseau de capteurs sans fil (RCSF): Il s'agit d'un groupe de nœuds qui communiquent
sans fil et sont organisés en un réseau collaboratif. Chaque nœud a des capacités de
traitement et peut contenir différents types de mémoire, d'émetteurs-récepteurs RF et
d'alimentations, car il peut inclure différents types de capteurs et d'actionneurs.
20
• Machine to Machine (M2M) : c’est l’association des technologies de l’information et
de la communication avec des objets intelligents dans le but de donner à ces derniers les
moyens d’interagir sans intervention humaine avec le système d’information d’une
organisation ou d’une entreprise.
3. Composants d’IOT :
Composants Description
Un objet connecté est un objet physique équipé de capteurs ou d’une
puce qui lui permet de transcender son usage initial pour proposer de
nouveaux services. Il s’agit d’un matériel électronique capable de
Objets physiques communiquer avec un ordinateur, un Smartphone ou une tablette via un
réseau sans fil (Wi-Fi, Bluetooth, réseaux de téléphonie mobile, réseau
radio à longue portée de type Sigfox ou LoRa, etc.), qui le relie
à Internet ou à un réseau local.
Exemple : Les humains peuvent contrôler l'environnement via des
applications mobiles
Gens
Ils sont installés sur les objets connectés, ils sont plus ou moins
intelligents, selon qu’ils intègrent ou non eux-mêmes des algorithmes
Capteurs
d’analyse de données, et qu’ils soient pour certains auto-adaptatifs. Les
capteurs connus sont : Capteurs de température et thermostats, Capteurs
de pression, Humidité / niveau d’humidité, Détecteurs d'intensité
lumineuse, Capteurs d’humidité, Détection de proximité,
Étiquettes RFID….
Exemple : Services Cloud - peuvent être utilisés pour:
Traiter les Big Data et les transformer en informations
précieuses
Prestations de service
Construire et exécuter des applications innovantes
Optimiser les processus métier en intégrant les données de
l'appareil.
21
Les composants IoT sont liés entre eux par des réseaux,
utilisant diverses technologies, normes et protocoles sans fil et
Réseaux filaire.
Plusieurs domaines d’application sont touchés par l’IoT, Parmi ces principaux domaines nous
citons:
L'un des domaines d'application de l'IoT les plus intéressants concerne la mise des équipements
domestiques sur réseau. Cela permet d'abord d'avoir un contrôle global des différents
équipements techniques d'une maison depuis une même interface (une tablette ou un téléphone
intelligent par exemple), mais aussi, il offre la possibilité de contrôler à distance ces
équipements via la mise à disposition d'API sur le web. Le champ d'application de l'IdO s'étale
pour toucher les villes (smart cities), l'IdO permettra une meilleure gestion de tous les réseaux
qui alimentent ces villes intelligentes (eaux, électricité, gaz, etc.). Des capteurs peuvent être
utilisés pour améliorer la gestion des parkings et du trafic urbain, diminuer les embouteillages
et les émissions en CO2. (3)
Le transport
Grâce à l'Internet des objets, la communication entre les véhicules et entre les véhicules et
l'infrastructure routière deviendra possible. Par conséquent, le domaine de l'Internet des objets
peut être considéré comme une expansion des systèmes de transport intelligents, dans le but
non seulement d'améliorer la sécurité routière et l'assistance à la conduite, mais aussi
d'améliorer l'efficacité routière. Confort du conducteur.
22
La santé
Le domaine de l'Internet des objets assurera le contrôle et le suivi des symptômes cliniques des
patients en mettant en place des réseaux de surveillance personnels, constitués de biocapteurs
placés sur le corps du patient, à l'hôpital ou même à domicile. Cela facilitera le suivi à distance
des patients et apportera des solutions pour l'autonomie des personnes à mobilité réduite.
L’industrie
Le déploiement de l'Internet des objets dans l'industrie apportera certainement un grand soutien
au développement de l'économie et de l'industrie des services, car l'Internet des objets assurera
le suivi complet des produits de la chaîne de production à la chaîne de logistique et de
distribution en surveillant la situation de l'offre.
Conclusion
Dans ce chapitre une présentation générale des technologies utilisées a éte donnée. Le chapitre
suivant sera consacré à la description de la partie matérielle et logiciel du projet, ainsi que la
phase de conception.
23
Chapitre III : Etude de la partie matérielle et logicielle et la phase de
conception
Ce chapitre définit les composants, les matériels et les logiciels nécessaires pour la réalisation
de ce projet ainsi que les architectures internes et les caractéristiques de chaque matériel on
présentera aussi toutes les fonctionnalités de notre application, les différents diagrammes de la
conception en citant les besoins fonctionnels et les différents diagrammes de la conception.
24
I. Etude de la partie matérielle :
Pour la réalisation de ce projet, différents équipements électroniques sont utilisés ils s’imposent
grâce à leurs simplicités, efficacité, faible coût et à leurs disponibilités:
C’est une plateforme open-source d’électronique programmée qui est basée sur une carte à
microcontrôleur ATmega2560.
25
2. Lecteur RFID
Le RC522 est un module RFID 13,56 MHz basé sur le contrôleur MFRC522 des semi-
conducteurs NXP. Le module peut prendre en charge I2C, SPI et UART, normalement livré
avec une carte RFID et un porte-clés. Il est couramment utilisé dans les systèmes de présence
et autres applications d'identification des personnes / objets.
26
7 SCK Broche d'horloge série - utilisée pour fournir une source
d'horloge.
3. Module Wifi :
Pour assurer la connectivité sans fil , on a opté pour la technologie Wifi, qui présente plusieurs
avantages par rapport aux autres (Bluetooth,….) notamment la portée et l’interconnexion avec
l’internet afin de rendre notre circuit connecté n’importe où.
Le module wifi est présent sous nom de l’ESP 8266 et qui existe en différentes versions (Figure
29) le principe est le même pour l’ensemble des versions, la différence réside dans technologies
de wifi supportées (802.11 a/b/g/n) ce qui implique la vitesse et le débit de communication et
le nombre d’entrées et sorties. (GPOi).
L’ESP8266-01 est un circuit intégré à microcontrôleur avec connexion WiFi .Ce modèle sert à
communiquer avec un serveur web pour envoyer des messages au téléphone portable par
27
l’intermédiaire d’une application Android et un retour Wifi. Il simplifie la connexion de toute
petite plate-forme de microcontrôleur comme Arduino à internet sans fil.
Broche Descriptions
RX /TX Liaison série
GPIO0 Jeux le rôle d’entrée sortie ; Il devrait être en haut dans le
démarrage, bas pour la mise à jour flash
GPIO2 Jeux le rôle d’entrée sortie ; Il devrait être en haut dans le
démarrage.
VCC 3.3V.
RST Reset externe : 3.3v
- 0 : Reset
- 1 : Normal
CH-PD Chick power down
GND La masse.
On a utilisé pour notre système deux versions ESP8266 E-01, et E- 12. Avec la 1er version (E-
01) on a rencontré quelque problèmes telle que le blocage et le sur chauffage du module pour
ses raisons on a opté à changer le module et travailler une version plus récente le Nodmcu v3,
afin d’assurer la bonne connectivité avec l’ensemble du système.
NodeMCU est une plate-forme open source IoT, matérielle et logicielle, basée sur un SoC Wi-
Fi ESP8266 intégrant un microprocesseur Tensilica Xtensa LX106. Le terme « NodeMCU » se
réfère par défaut au firmware plutôt qu'aux kits de développement. Le firmware, permettant
nativement l'exécution de scripts écrits en Lua, est basée sur le projet eLua et construit sur le
SDK Espressif Non-OS pour ESP82668.
28
Figure 22: La carte nodmcu
Le microcontrôleur possède un total de 30 broches (pins) une entrée analogique et 16 GPIO (11
Digital I/O) disponibles sur les broches de la carte de développement. Sur les 25 broches:
• 1 entrée analogique
• 4 sorties PWM
• Certaines sont réservées pour les protocoles de communication série (SPI, I2C, Serial).
• Deux bouton (flash et reset)
Plus un connecteur USB-C pour assurer la liaison l’alimentation et la programmation avec un
PC via Arduino IDE.
La figure 23 présente l’image des pin map du nodmcu v3 :
Voltage 3.3V
Consommation de courant 10uA – 170Ma
Mémoire flash pouvant être attachée 16MB max (512K normal)
29
Le processeur Tensilica L106 32 bits
La vitesse du processeur 80- 160MHz
RAM 32K + 80K
GPIOs 17 (multiplexé avec d'autres fonctions)
Analogique à numérique 1 entrée avec résolution 1024 (10 bits)
Tableau 7:Descriptions des broches de la Node MCU
Avantage du NodMCU :
• Materiel open source extensible,
• Bas prix : les coûts différents d’un modèle à l’autre est dû à leurs spécifications
techniques mais ils restent néanmoins assez bas,
• Facilité de programme : Programmer en LUA via L’IDE Arduino avec un grand nombre
de bibliothèques déjà disponibles,
• WIFI inclus,
• Port micro USB inclus.
L'écran LCD est un module d'affichage électronique qui permet de trouver un large éventail
d'applications. Un écran LCD 16x2 signifie qu'il peut afficher 16 caractères par ligne, avec 2
lignes Dans cet écran LCD.
Le bus I2C permet aux périphériques ou aux composants équipés de l'interface I2C
de communiquer entre eux avec 4 fils
30
• Signal d'alimentation : +Vcc
• Signal de masse : Gnd
• Gnd : La masse
• Vcc : +5v
• SDA : Le bit de donnée SDA
• SCL : Le bit d'horloge SCL
5. Buzzer :
Un buzzer est une sorte de haut-parleur mais de faible puissance qui émettre un son en fonction
de la fréquence et amplitude de vibration quand on lui applique une tension.
31
6. Relais :
Un relais est un commutateur électrique qui permet de commander un second circuit utilisant
généralement une tension et un courant bien supérieur à ce que l’Arduino pourrait accepter (par
exemple, allumer/éteindre une ampoule 220V).
Le relais est un mécanisme simple d’interrupteur on/off : il se ferme lorsque l’entrée est à 12V
et s’ouvre lorsque l’entrée est à 0V. On le contrôlera donc à partir de la fonction digitalWrite()
dans l’environnement de programmation Arduino.
NC signifie ‘NORMALEMENT FERME’. Cela veut dire que lorsque le relais n’a pas de signal
d’entrée (valeur LOW dans digitalWrite()), le circuit haute tension connecté sera actif. Si par
contre, vous appliquez une tension de 12V au relais, le circuit secondaire sera coupé.
NO signifie ‘NORMALEMENT OUVERT’. Cela veut dire qu’à contrario, une valeur de 12V
appliqué au relais (valeur HIGH dans digitalWrite()) coupera le circuit haute tension et
inversement.
32
7. Gâche électronique :
Une gâche électrique est un dispositif de contrôle d'accès utilisé pour les cadres de porte. Il
remplace la plaque frontale fixe souvent utilisée avec un loquet
33
2. Visual Studio Code
Est un éditeur de code extensible développé par Microsoft qui peut être utilisé avec une
variété de langages de programmation, notamment Java, JavaScript, Node.js et C++. Les
fonctionnalités incluent la prise en charge du débogage, la mise en évidence de la syntaxe,
la complétion intelligente du code. Les utilisateurs peuvent modifier le thème, les
raccourcis clavier, les préférences et installer des extensions qui ajoutent des
fonctionnalités supplémentaires.(4)
4. Environnement Ionic
Ionic est un Framework moderne, créé en 2013 par Max Lynch, Ben Sperry et Adam
Bradley. Ce Framework regroupe une panoplie d’outils et technologies pour développer des
applications hybrides et natives.
34
Figure 35: Logo Ionic
Ionic utilisant les technologies Web HTML, CSS, et JavaScript, afin de développer
facilement et rapidement des applications cross-plateformes (supportée sous les différents
systèmes d’exploitation mobile).
En s’appuyant sur Apache Cordova ou Capacitor, Ionic propose des plugins natifs cette
fois-ci pour interagir avec les fonctions dites natives du téléphone mobile et permettra, par suite,
de construire des applications natives complètes et robustes.
5. Serveur Firebase
Firebase est le nom d’une plateforme mobile de google il s’agit d’un ensemble de services
d'hébergement pour n'importe quel type d'application (Android, iOS, Javascript, Java, ...). Il
propose d'héberger en NoSQL et en temps réel des bases de données.
35
Notre motivation derrière ce choix est principalement liée au temps de synchronisation
des données. En effet, avec Firebase, toute instance d’application connectée à notre base de
données recevra les mises à jour qui se produisent, dans des millisecondes.(7)
6. Google Chrome
On peut complètement tester l’application lors de son développement sur un navigateur,
tant qu’elle ne nécessite pas un appel des APIs natives du mobile telles que la caméra, la
géolocalisation, les contacts, etc., mais aussi on peut y déboguer son code JavaScript.
Tous les navigateurs modernes possèdent des outils pour déboguer du JavaScript, et se
distinguent, les uns des autres, parfois dans la consommation de la mémoire RAM lorsqu’on
débogue ou lorsque plusieurs onglets sont ouverts, Nous avons donc choisi Google Chrome
pour sa praticité, rapidité, que nous avons constaté après un long temps d’utilisation et de
familiarité.
36
• L’administrateur : Acteur qui gère les utilisateurs, leurs rôles et leurs droits d’accès,
réponds aux demandes de congés, visualise les activités et les statistiques de tous le
personnel.
• Le responsable du département : Peuvent gérer les salariés sous son hiérarchie,
visualiser leurs activités et statistiques.
• Le salarié : Peut visualiser l’historique et les statistiques de ses propres activités, et peut
demander un congé.
2. Besoins fonctionnels
Pour assurer les objectifs attendus, il est essentiel que nous parvenons à une vue claire des
différents besoins escomptés de ce projet.
L’administrateur
• Peut créer un compte par une adresse email, se connecter, se déconnecter,
réinitialiser son mot de passe en cas d’oubli.
• Peut ajouter, modifier, supprimer un salarié.
• Peut accéder à un profil de salarié.
• Peut afficher les activités d’un salarié.
• Peut filtrer les activités par mois, jour ou période.
• Peut afficher les statistiques relatives aux activités d’un salarié.
• Peut filtrer les statistiques par mois et par année.
• Peut répondre aux demandes de congé des salariés (refuser, accepter).
• Peut ajouter, modifier, supprimer un responsable de département.
Le Responsable du département
• Peut se connecter, se déconnecter.
• Peut ajouter, modifier, supprimer un salarié.
• Peut afficher les activités d’un salarié.
• Peut filtrer les activités par mois, jour ou période.
• Peut afficher les statistiques relatives aux activités d’un salarié.
• Peut filtrer les statistiques par mois et par année.
Le salarié
37
• Peut se connecter, se déconnecter.
• Peut afficher ses activités.
• Peut filtrer les activités par mois, jour ou période.
• Peut afficher ses statistiques.
• Peut filtrer les statistiques par mois et par année.
• Peut demander un congé.
Responsivité : L’application mobile doit être responsive, vu qu’elle sera installée sur téléphone
et sur tablette.
Intégrité : L’intégrité et la cohérence des données doivent être assurées à chaque mise à jour,
correction ou changement apporter à l’application.
Le diagramme de cas d’utilisations est une vue statique qui montre les fonctionnalités d’un
système. Ces cas d’utilisations mènent en œuvre les acteurs du système dans leurs relations.
38
Figure 38 : Diagramme de cas d’utilisation globale de l’administrateur
Un admin a le droit de gérer les utilisateurs, et de visualiser leurs activités ainsi que la gestion
des demandes de congé (figure 38).
5. Diagramme de cas d’utilisation globale d’un responsable de
département
Un responsable a le droit de gérer les salariés dans son département, et de visualiser leurs
activités (figure 39).
39
Figure 330: Diagramme de cas d’utilisation globale d’un salarié
40
Le cas d’utilisation gérer demandes de congé permet à l’admin d’accepter ou de refuser les
demandes de congé des salariés (figure 42).
9. Diagramme de composants
Le diagramme de composants permet d’avoir une vue du système selon une perspective
aérienne. A partir de ce diagramme, on peut comprendre l’organisation des composants de notre
application ainsi que leurs relations et leurs dépendances mutuelles.
42
11. Diagramme d’activité authentification
Valides
Pour s’authentifier l’utilisateur doit saisir ses coordonnées, si elles sont valides, on passe
à l’authentification Firebase, sinon on lui demande de les ressaisir ou de réinitialiser son mot
de passe. L’authentification peut échouer généralement à cause des problèmes de connexions,
dans ce cas l’utilisateur doit refaire l’opération (figure 45).
Valides
43
L’utilisateur (admin ou responsable de département) saisit les données du salarié selon des
règles de validation spécifiée. Dans le cas de validation, les données sont envoyées au serveur
de base de données (salarié ajouté) voir la figure 46 sauf dans le cas où le serveur ne répond pas
ou la connexion n’est pas établie ; l’utilisateur est informé, et doit remplir le formulaire de
nouveau.
Le diagramme de séquence nous aidera à voir comment les objets et les composants
interagissent entre eux pour effectuer un processus
44
15.Diagramme de séquence authentification
45
16.Diagramme de séquence Ajouter un salarié
46
17.Diagramme de séquence ‘visualiser les activités’
47
Conclusion
Dans ce chapitre ,on a étudié de manière détaillée toute la partie matérielle, Framework et outils
aussi la phase de la conception, en présentant tous les composants utilisés à savoir : carte
Arduino MEGA, le module Wi-Fi, écran LCD 16x4 I2C, module RFID RC522.Ensuite, nous
avons décrit l’ensemble des plateformes informatiques utilisées dans le développement du
projet.Ceci veut dire que les phases spécification, conception et réalisation formaient un cycle
tout au long de la période du travail. Dans le chapitre prochain, nous présenterons les résultats
du projet.
48
Bibliographie
1. azzedine, Boukoftane. Conception et implémentation du système « Radio frequency identification
a l'aide d'une carte arduino et lecteur rfid . 2016. PFE.
3. WALID, DJAFRI. Composition des services dans l’internet des objets. 2020.
4 . https://cutt.us/zPiVi[Wikipidia]
5.https://fr.wikipedia.org/wiki/TypeScript#:~:text=TypeScript%20est%20un%20langage%20de,peu
t%20%C3%AAtre%20utilis%C3%A9%20avec%20TypeScript).
6. https://ionicframework.com/
7 . https://junto.fr/blog/firebase/
8. https://www.ionos.fr/digitalguide/sites-internet/developpement-web/diagramme-de-
composants/
49