Rapport Ramzi Finaaaal
Rapport Ramzi Finaaaal
***REPULIQUE TUNISIENNE***
Par
AYARI Ramzi
***REPULIQUE TUNISIENNE***
Par
AYARI Ramzi
Signature : Signature :
Conception et réalisation d’une application ‘’ gestion des cadres vague’’
Dédicaces
Nulle parole ne peut exprimer l’amour que je te porte, tu as été pour moi le meilleur des pères.
Par ce message de remerciement je t’écris mon affection pour toi, pour ton encouragement et
ton soutien tout au long de mes études. C’est une fierté pour moi d’avoir un père comme toi.
Aucune dédicace n’est suffisante pour exprimer ce que tu mérites pour tous les sacrifices
consentis et précieux conseils que tu n’as cessé de me donner tout au long de mon parcours
universitaires jusqu’à aujourd’hui. Je te dédie ce travail en témoignage de mon profond
amour, mon immense gratitude et mon plus grand respect. Puisse Dieu te préserver et
t’accorder santé, longue vie et bonheur.
Avec une grande reconnaissance et gratitude, je dédie ce travail à ma très chère sœur, qui m’a
toujours soutenu.
Conception et réalisation d’une application ‘’ gestion des cadres vague’’
Remerciements
Je tiens à remercier toutes les personnes qui ont contribué au succès de mon projet de fin
d’étude et qui ont aidé de près ou de loin à la réalisation de ce travail dans les meilleures
conditions.
Je remercie ainsi mon encadrante technique chez SAGEMCOM Tunisie, Madame Amira
OUESLATI, pour le suivi, l’assistance et le partage de son expertise avec nous.
Un grand merci à tous les membres de l’équipe SAGEMCOM Tunisie qui, pendant trois
mois, m’ont donné de leur temps afin de réussir cette expérience professionnelle.
Résumé
Sommaire
Introduction générale..................................................................................................................1
1 Introduction.....................................................................................................................3
2 Présentation de l’entreprise.............................................................................................3
3 Présentation du sujet.......................................................................................................8
3.3 La problématique......................................................................................................8
4 Conclusion......................................................................................................................9
1 Introduction...................................................................................................................11
2 Etude de l’existant.........................................................................................................11
3 Critique de l’existant.....................................................................................................16
4 Solution proposée..........................................................................................................16
6 Conception....................................................................................................................19
7 Conclusion....................................................................................................................24
1 Introduction...................................................................................................................26
2 Environnement logiciel.................................................................................................26
2.3 LABVIEW..............................................................................................................27
2.4 Arduino...................................................................................................................28
3 Environnement matériel................................................................................................29
5 Interface de l’application..............................................................................................37
8 Conclusion....................................................................................................................42
Conclusion générale..................................................................................................................43
Conception et réalisation d’une application ‘’ gestion des cadres vague’’
Figure 29 : VISA.......................................................................................................................38
Introduction générale
De nos jours, l’innovation est devenue dans plusieurs domaines la clé de la réussite et
de la pérennité des entreprises. Elle leur garantit un avantage concurrentiel par rapport à leurs
rivales et les encourage à trouver des moyens pour se différencier des autres. Pour cela,
certaines entreprises cherchent à mécaniser leurs processus de développement afin
d’augmenter le gain et la productivité.
Le présent rapport se compose de trois chapitres. Le premier chapitre permet de faire une
description de l’entreprise d’accueil SAGEMCOM ainsi que son domaine d’activité. Il
introduit également le contexte du projet et la problématique. Le deuxième chapitre intitulé «
Etude et Conception » présente une étude de l’existant et définit les notions qui vont nous
servir à la compréhension du projet. Finalement le dernier chapitre intitulé « Réalisation »
présente l’implémentation de la solution et les principaux résultats.
Un aperçu sur les différents chapitres, les apports de ce stage et les perspectives du système
est donné en conclusion générale.
1 Introduction
Ce chapitre introductif s’étalera sur deux parties. La première sera consacrée pour la
présentation de l’entreprise SAGEMCOM, de son activité et des différents services et unités
de fabrications proposés par la société. La deuxième partie s’intéressera à l’introduction du
projet, à la description de la problématique et les objectifs derrière.
2 Présentation de l’entreprise
SAGEMCOM est un groupe français leader européen sur le marché des terminaux
communicants à haute valeur ajoutée tel que les décodeurs, les box Internet et les compteurs
électriques. Le Groupe est présent dans plus de 50 pays.
SAGEMCOM Tunisie est créé en décembre 2002 à la zone industrielle Borj Ghorbel, Ben
Arous Tunis. Elle emploie près de 4,5 milles personnes dont 800 ingénieurs et techniciens
tunisiens.
Le groupe, dont le logo apparait dans la figure1, opère sur les marchés du haut débit, de la
ville intelligente « smart city » et de l’Internet des Objets à travers 3 filiales ; SAGEMCOM
Broadband, SAGEMCOM Energy&Telecom, et SAGEMCOM Documents.
Avec plus de 22 millions de produits conçus, fabriqués et livrés chaque année dans le monde
entier, SAGEMCOM a pour ambition de devenir un des leaders mondiaux des terminaux
communicants.
Le groupe est piloté par une équipe de direction stable, dont les membres sont présents depuis
plus de 20 ans et à la tête de SAGEMCOM depuis sa sortie du groupe SAFRAN en 2008.
La Figure 2 illustre un organigramme pour représenter la hiérarchie des postes au sein de la
direction de SAGEMCOM.
SAGEMCOM est une société totalement exportatrice qui opère dans le secteur de la
communication, de partenariat industriel, de l’énergie, du traitement et de la transmission
numérique de l’information.
Elle fabrique une large gamme de produits en grande et moyenne série tels que :
Unités de
Fabrication Fonctionnalité Exemples de produit
(UF)
3 Présentation du sujet
Je présente dans cette section le contexte et la description du projet ainsi que la
problématique.
Ce stage a été effectué au sein de l’entreprise SAGEMCOM Tunisie. Il consiste à réaliser une
application locale pour automatiser le process de gestion des cadres vagues dans le but
d’optimiser le cycle de vie des cadres.
3.3 La problématique
4 Conclusion
Ce chapitre est le point de départ pour la présentation de mon projet. J’ai commencé par la
présentation de l’organisme d’accueil et de son secteur d’activité ensuite j’ai présenté le
contexte du projet avec une description de la problématique. Le prochain chapitre sera
consacré à l’analyse et la spécification des besoins de la solution conçue.
1 Introduction
L'analyse de mon projet m’a amené à déterminer les fonctionnalités qui devront être mise à la
disposition des différents utilisateurs. En effet, dans cette section, je vais décrire en premier
lieu les besoins fonctionnels et non fonctionnels en définissant les acteurs qui interagissent
avec le système. En deuxième lieu, je vais présenter les diagrammes de cas d’utilisation et des
différents scénarii.
Après l’analyse et la spécification des besoins, je continue dans ce chapitre avec la conception
des modèles statiques dans la première partie, et les modèles dynamique dans la deuxième
partie.
5 Etude de l’existant
Il est à noter que jusqu'à nos jours, malgré le développement technologique, un nombre
important de sociétés utilisent des outils classiques pour gérer leurs différentes tâches.
C’est le cas, au sein du service « process Energie » de SAGEMCOM où la gestion des cadres
vague est géré visuellement. Elle nécessite l’intervention de l’utilisateur pour évaluer l’état du
cadre et décider s’il doit passer par un traitement de lavage, de maintenance ou il doit être
rejeté.
Le processus de fabrication des cartes électroniques passe par deux phases principales :
La sérigraphie : C’est la dépose d'une crème à braser sur les cartes à l'aide d'une racle.
La pose des composants : Les cartes passent par une série de machines de poses pour
poser les composants tels que les résistances, les condensateurs et les diodes. Les
composants sont stockés dans des bobines se trouvant dans leurs feeders appropriés.
Ces bobines sont appelées Unité de Stockage (US).
La vision : Avant de passer dans le four à soudure, les cartes passent par ce qu'on
appelle le poste de vision, qui permet de vérifier si les composants ont été placés
correctement sur la carte.
La soudure : La soudure des composants s'effectue en passant les cartes par le four.
La pose manuelle des composants : Les composants de tailles moyennes et de grandes
tailles sont insérés manuellement par les opérateurs.
Le brasage : Le brasage se fait selon les étapes suivantes : fluxage de la face à braser,
Préchauffage (activation de flux) et brasage dans la vague.
La phase des tests : cette phase comporte les tests de vision, les tests diélectriques, les
tests fonctionnels et les tests de calibration.
L'installation des composants : cette phase permet l’insertion des cartes d'alimentation
et de programmation dans leur boitier.
On ne peut pas insérer tout genre de composants avec la machine CMS, pour cela il est
nécessaire de passer par l’étape d’insertion manuelle.
Les ouvriers responsables à cette étape doivent assurer la mise en place des différents
composants traversant citant l’exemple des condensateurs, des LEDs, des potentiomètres et
des afficheurs.
Ensuite les cartes seront mises dans un couvercle appelé « cadre vague » pour les préparer à la
phase suivante qui est la brasure à la vague.
Il existe différents types de machines vagues parmi lesquelles je cite à titre d’exemple :
Le cadre vague, présenté dans la figure 6, contient principalement des appuis (figure 7) qui
servent à serrer les composants de la carte avec une plaque semelle au-dessus.
On trouve principalement 3 types de matériaux pour les cadres vagues tels que :
Critique de l’existant
Pour faire la gestion des cadres dans le service process Energie chez SAGEMCOM, la
présence d’un ouvrier est toujours nécessaire. Cette solution présentes plusieurs points faible
qu’on peut les résumer comme suit :
Pour diminuer l’intense des erreurs d’opérations, les sociétés cherchent à se diriger vers des
solutions plus moderne et plus sécurisé.
7 Solution proposée
L’idée générale de ce projet est de développer une application LABVIEW qui permet de gérer
et de suivre le cycle de vie des cadres vagues. Les informations des cadres sont collectées par
des capteurs, ensuite elles sont envoyées en temps réel par un microcontrôleur vers
l’application qui traite les données et précise l’état actuel d’un cadre donné.
Chef de ligne vague : cet acteur est le responsable de contrôler les cadres vagues lors
de leurs passages dans la vague et il a la permission d’ajouter un nouveau cadre vague.
Le besoin fonctionnel pour le chef de ligne c’est l’ajout d’un nouveau cadre vague.
Le besoin fonctionnel pour l’opérateur de maintenance est de confirmer la
maintenance des cadres vagues
Le besoin fonctionnel pour l’opérateur de lavage est de confirmer le lavage des cadres
vague.
• Ergonomie : Toute interface dans l’application doit être simple, lisible et pratique de
façon que l’utilisateur puisse l’utiliser sans se référer à des connaissances particulières.
• La rapidité de traitement : Assurer une bonne qualité de service lors de la réponse aux
requêtes introduites par les internautes ainsi l’exécution.
• Validité : application doit remplir exactement ces fonctions définir par les
spécifications fonctionnelles.
Le diagramme de cas d’utilisation général, décrit par la figure 10 présente une vision globale
sur le fonctionnement de l’application. Il décrit les différentes tâches effectuées par les acteurs
de l’application, qui nous permettra de mieux visualiser les libertés d’utilisations selon chaque
acteur.
9
Conception
Après avoir entamé la partie d’analyse et spécification de notre projet, on va s’atteler, dans
cette partie, à donner une vue plus lisible des schémas de conception d’une solution répondant
aux spécifications présentées précédemment. La conception est la phase la plus importante
dans le cycle du développement d’un projet qui aide à aboutir à des résultats fiables et de
haute qualité. Elle vise à transformer un concept abstrait en un produit réel et permet
d’élaborer une base solide sur laquelle s’appuiera le projet. Cette partie représente la
conception technique dans le cadre de mise en évidence des différents diagrammes. La
conception détaillée consiste à détailler les résultats de la conception générale, jusqu’à un
Dans notre système, nous allons donner les diagrammes de séquence pour les cas suivants :
Dans ce diagramme (figure 11), nous allons représenter la tâche principale de notre projet : le
contrôle des cadres vague, et les scenarios possibles.
- Scénario :
5.Activer le stoppeur si nombre de passage est égale ou supérieure à 12000 (Cadre rebut).
6.Activer le stoppeur si nombre de passage est égale ou un multiple de 4000 (Cadre vague
doit passer pour maintenance).
6.Activer le stoppeur si nombre de passage est égale ou un multiple de 3000 (cadre vague doit
être lavée).
7. Laisser passer le cadre vague si numéro de passage différent de 12000, différent des
multiples de 4000 et différent des multiples de 3000)
- Scénario :
5.Annuler l’action en envoyant un message d’erreur si le cadre vague existe déjà dans la base.
- Scénario :
1. L’opérateur vérifie l’état des appuis et la plaque semelle des cadres vague.
2.Confirmer la maintenance des cadres s’il les trouve dans un bon état.
3.Reparer les cadres vague s’il ne les trouve pas dans un bon état.
- Scénario :
Les diagrammes de classes sont statiques : ils affichent ce qui interagit mais pas ce qui se
passe pendant l’interaction.
Une Classe : une classe est représentée sous la forme d’un rectangle divisé en plusieurs parties
: le nom de la classe, les attributs (champs), les opérations (méthodes) et autres :
Les relations : les relations entre les classes sur les diagrammes de classes sont généralisation
(implémentation), dépendance, et association (association simple, agrégation, composition).
-Dépendance : relation d’utilisation qui indique les instances d’une classe sont reliées aux
instances d’un autre élément.
-Généralisation : relation entre une classe générale (parent) et une classe spécifique (enfant)
qui en dérive.
10 Conclusion
Ce chapitre a été dédié à la phase étude et conception, j’ai fait une description de l’existant en
détaillant les points faibles ensuite j’ai présenté la solution proposée. Ceci constitue une
entrée essentielle pour le chapitre suivant qui sera consacré à la phase de réalisation.
1 Introduction
Ce chapitre sera dédié aux réalisations relatives au projet. Le début du chapitre sera consacré
à la présentation de l’environnement matériel et logiciel du travail ainsi qu’à toutes les
technologies utilisées durant l’implémentation du projet. Dans la deuxième partie, le focus
sera sur l’illustration des résultats obtenus par des captures d’écran et des graphes statistiques.
11 Environnement logiciel
ODBC, ou bien « Open Database Connectivity », est un gestionnaire qui permet à une
application informatique de manipuler plusieurs bases de données qui sont mises à disposition
par des systèmes de gestion de bases de données (SGBD). La figure ci-dessous représente
l’architecture simplifiée d’un OBCD.
La technologie ODBC permet d'interfacer de façon standard une application à n'importe quel
serveur de bases de données. Il s'agit d'un format défini par Microsoft permettant la
communication entre des clients bases de données et les différents SGBD du marché.
Microsoft SQL Server est un système de gestion de base de données (SGBD). Il possède des
caractéristiques pour permettre à un utilisateur la manipulation, le tri, le contrôle et la mise à
jour de bases de données grâce au langage SQL. C’est un outil développé et commercialisé
par la société Microsoft. La figure suivante montre l’interface graphique du SQL Server.
11.3 LABVIEW
Ce logiciel, illustré dans la figure 7, est utilisé dans un grand nombre de domaines, il est
principalement destiné à la mesure par acquisition de données, le contrôle d’instruments et à
11.4 Arduino
Le logiciel Arduino, présenté dans la figure ci-dessus, est une application Java multi-
plateforme de programmation. Il sert à éditer du code et de le compiler ainsi de transférer le
programme développé à travers de la liaison série (RS-232, Bluetooth ou USB selon le
module).
Le langage de programmation utilisé est le C++. Il impose une structure particulière typique
de l’informatique embarquée.
12 Environnement matériel
La carte Arduino, illustré dans la figure 14, est un circuit imprimé en matériel libre sur lequel
se trouve un microcontrôleur. Il peut être programmer pour analyser et produire des signaux
électriques de manière à effectuer des tâches très diverses comme la domotique (le contrôle
des appareils domestiques, éclairage, chauffage…), le pilotage d’un robot, etc. C'est une
plateforme basée sur une interface entrée/sortie simple.
• Microcontrôleur : ATmega328
• Tension d'alimentation interne = 5V
• Tension d'alimentation (recommandée)= 7 à 12V, limites =6 à 20 V
• Entrées/sorties numériques : 14 dont 6 sorties PWM (figure 15)
• Entrées analogiques = 6
• Courant max par broches E/S = 40 mA
• Courant max sur sortie 3,3V = 50mA
• Mémoire SRAM 2 KB
• Mémoire EEPROM 1 KB
• Fréquence horloge = 16 MHz
• Dimensions = 68.6mm x 53.3mm
Les cartes MIFARE sont des circuits intégrés très répandus pour leur utilisation dans le
domaine des cartes à puce sans contact. Les applications de cette carte se multiplient chaque
jour. Elles sont utilisées pour la gestion et la sécurité d’accès à plusieurs établissements et
parkings. Ces cartes sont aussi utilisées dans le transport ou la billetterie . Elles sont adoptées
dans les ventes électroniques ou chaque article est identifié par une carte arrimée sur lui.
La carte MIFARE présente plusieurs atouts, parmi les quel on peut citer :
Structure Interne :
La figure 17 illustre le diagramme des blocs de la carte MIFARE tel qu'il est fourni dans la
documentation technique du circuit. Principalement, la carte contient :
Le lecteur est constitué d'un circuit qui émet des ondes radio dans un espace de quelques
centimètres. Selon la puissance de l'alimentation et la fréquence radio utilisée, ce lecteur peut
communiquer simultanément avec plusieurs étiquettes. Quand une étiquette RFID (radio
fréquence identification) passe dans le champ électronique, elle détecte le signal du lecteur,
lui-même lit les données encodées. Les principales caractéristiques de ce lecteur sont :
La majeure partie de ce montage est la programmation. Pour établir une liaison série,
une utilise la librairie Serial. Comme c’est une librairie, pour utiliser ces fonctions, il
faudra écrire « Serial.nomdelafonction ». Elle contient les fonctions suivantes :
begin () : Fixe le débit de communication en bits par secondes (l’unité est le baud)
pour la communication série. Pour communiquer avec l’ordinateur, utiliser l’un de ces
débits : 300, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600, or 115200.
Dans notre exemple nous utiliserons 9600 bauds.
La figure xx donne comment connecter le lecteur MFRC522 à la carte Arduino. Ce lecteur est
alimenté avec 3.3 v. L'échange de données obéit au protocole SPI.
14 Interface de l’application
Un programme LABVIEW est appelé instrument virtuel (VI) tout simplement parce que sa
représentation et son fonctionnement ressemblent à ceux des instruments classiques.
Néanmoins, les VIs diffèrent en ce sens qu’ils tirent leurs fonctionnalités de la programmation
informatique. Ils offrent une interface interactive.
Un VI reçoit des instructions de son diagramme, que l’on construit en langage graphique G. Il
correspond au code source du VI, et réduit ainsi la programmation à une simple manipulation
graphique.
Figure 29 : VISA
Les diagrammes ci-dessus nous indique comment connecter a une base de donnée :
Ceci représente l’ouverture de la base de données à partir du lien du fichier ODBC, qui
est la liaison avec SQL et LabVIEW
2 Diagramme
principale de LABVIEW
Le diagramme principal se fait d’une manière séquentielle puisque nous avons utilisé la
Structure Séquence déroulée, cette structure comprend un ou plusieurs étapes ou sous-
diagrammes qui exécutent dans un ordre séquentiel.
La Figure 33 illustre l’interface accueil ouverte lors le passage d’un cadre vague. Cette
interface présente les principales fonctionnalités de notre application.
Cette interface comporte trois Inputs principales et trois Outputs :
Les inputs :
- Le bouton ”Entrée vague” décrit qu’il y a un cadre présent dans l’entrée de la machine vague
- Le bouton ”Confirmation” permet de valider le lavage ou la maintenance d’un cadre vague
et donc pouvoir l’utiliser de nouveau.
- Le bouton ”Visa resource Name” : permet de rechercher automatiquement le périphérique
auquel la carte-ARDUINO est connectée.
Les outputs :
-‘Output Cluster’ : Lors d’un passage d’un cadre vague cet output affiche touts les
informations de base du cadre : Son ID, La série correspondante du vague et son nombre de
passage.
-‘Uniformité cadre’ : Affiche si le cadre présent a besoin de lavage, de maintenance ou bien
s’il est arrivée au nombre maximum de passage, il ne peut plus etre utilisée
-‘STOPPEUR’ : C’est un output de type booléen et indique l’état du stoppeur. Si le cadre à
l’entrée de la vague n’est pas conforme pour l’utilisation le stoppeur s’allume (ON).
16 Conclusion
Dans ce dernier chapitre de notre rapport, nous avons commencé tout d’abord par la
présentation de l’environnements matériel et logiciel, ensuite nous avons présenté les
différents logiciels et langages de programmation que nous avons utilisées pour la réalisation
de notre application.
Conclusion générale
Mon stage au sein de SAGEMCOM était pour moi une opportunité de développer mon
savoir-faire et de monter en compétences dans plusieurs technologies de développement telles
que les bases de données et la programmation embarqué.
En effet, j’ai pu travailler sur différentes tâches et cela m’a permis d’être polyvalent. J'ai eu
l’occasion d’acquérir de nouvelles connaissances et de mettre en application celles acquises
lors de mes années d'études notamment les bases de données, le développement orienté objet
et le génie logiciel.
De plus, j’ai pu assimiler les bonnes pratiques de codage et j’ai pu implémenter des tests
unitaires. J’ai également participé aux tâches de livraison, d’analyses des erreurs et de
correction des bugs.
Bibliographie
http://etudiant.aujourdhui.fr/etudiant/info/rapport-de-stage.html
https://www.ni.com/fr-fr/shop/labview.html
https://www.sagemcom.com/
http://www.orion-industry.com/cadre-de-vague.html