Tutoriel carte Arduino Uno exemple
Université Sidi Mohamed Ben Abdellah
Faculté des Sciences et Techniques de Fès
Département de Génie Industriel
Mémoire de Projet de fin d'étude
Préparé par
GRIDECHE Ikram
Pour l'obtention du diplôme d'Ingénieur d'Etat
Spécialité : Ingénierie en Mécatronique
Intitulé
Réalisation d’un système de surveillance des temps d’arrêt de machines
Lieu : Lear Corporation
Réf : 16/IMT15
Soutenu le 2 Juillet 2015 devant le jury :
- Pr ENNADI Abdelali (Encadrant FST)
- Mr JEFFAL Soufiane (Encadrant Société)
- Pr GADI Mohamed Fouad (Examinateur)
- Pr HAMEDI l’Habib (Examinateur)
Au Dieu Tout Puissant,
Qui m’a accordé santé, force et courage pendant ces années d’études.
A mes chers parents,
Vous êtes ce que j’ai de plus cher au monde et je vous jure qu’aucun mot, ni expression ne saurait exprimer tout mon amour et toute ma gratitude. Merci de faire l’impossible pour moi.
A ma chère sœur,
Tu es mon ange gardien, celle dont j’ai toujours senti la présence et vers laquelle je me suis toujours tournée quand j’en ai eu besoin de support.
A toute ma grande famille,
Je vous remercie pour l’amour et pour le support que vous m’avez toujours donné.
A mes enseignants,
De l’école primaire jusqu’à l’université dont les conseils précieux m’ont guidé, qu’ils trouvent ici l’expression de ma profonde reconnaissance.
A mes amis,
Je vous aime tous très fort et je vous remercie pour tout ce que vous avez fait pour moi.
A vous je dédie ce modeste travail
A Monsieur JEFFAL Soufiane, mon encadrant de la société et Manager du service Maintenance, vous avez accordé un intérêt à ce présent sujet et vous m’avez orienté dans ses différentes phases tout au long de la durée de stage malgré vos préoccupations.
A Monsieur ENNADI Abdelali, mon encadrant pédagogique et professeur en filière Mécatronique, pour votre disponibilité et votre orientation avisée, ainsi que pour les précieux conseils que vous n’avez cessez de me prodiguer et qui ont fort contribué à l’accomplissement de ce travail.
A Monsieur HAMEDI l’Habib, responsable de la filière Mécatronique, pour les efforts que vous fournissez pour la filière, vos conseils pédagogiques précieux et votre généreuse sympathie.
Aux professeurs de la Faculté des Sciences et Techniques de Fès, pour les efforts qu’ils fournissent pour nous, je vous exprime ma grande admiration pour vos hautes qualités morales, humaines et professionnelles spécialement les professeurs de la Filière Mécatronique.
A l’équipe Maintenance du département Operations and Process, et plus spécialement ELKARROUCH Ayoub et SOUISSI Hamza pour leurs soutien et leurs remarques pertinentes.
A tous ceux qui, de près ou de loin m’ont aidé dans la réalisation de ce projet de fin d’études.
PCB: | Printed Circuit Board |
SMT: | Surface Mounted Technology |
EOL: | End Of Line |
AOI: | Automatic Optical Inspection |
ICT: | In Circuit Test |
SCADA: | Supervisory Control And Data Acquisition |
IHM: | Interface Homme-Machine |
UART: | Universal Asynchronous Receiver Transmitter |
USB: | Universal Serial Bus |
ICSP: | In Circuit Serial Programming |
FTDI: | Future Technology Devices International |
PWM: | Pulse Width Modulation |
SRAM: | Static Random Access Memory |
EEPROM: | Electrically Erasable Programmable Read Only Memory |
LCD: | Liquid Crystal Display |
LED: | Light Emitting Diode |
RAM: | Random Access Memory |
EPMS: | Electrical Power Management System |
MCD: | Modèle Conceptuel de Données |
MLD: | Modèle Logique de Données |
MPD: | Modèle Physique de Données |
SGBD : | Système de gestion de Base de Données |
Figure 1 : La société Lear aux USA (Michigan) 13
Figure 2 : Sièges d’automobile .. 14
Figure 3 : Types d’EPMS 14
Figure 4 : les ventes de Lear en 2014 . 15
Figure 5 : Clients de Lear .. 15
Figure 6 : Sites de Lear à travers le monde . 16
Figure 7 : Boîte à jonction 17
Figure 8 : Carte électronique .. 17
Figure 9 : Organisation administrative de Lear Rabat 18
Figure 10 : Processus de production dans la zone Electronique .. 20
Figure 11 : Processus de production dans la zone Puissance 20
Figure 12 : Machine Laser 21
Figure 13 : Machine DEK .. 22
Figure 14 : Photo approchée du pochoir .. 22
Figure 15 : Machine CyberOptic d’inspection 23
Figure 16 : Machine Panasonic .. 23
Figure 17 : Four de soudage 24
Figure 18 : Machine AOI 24
Figure 19 : Machine ICT . 25
Figure 20 : Machine FKT 26
Figure 21 : Machine de vernissage et séchage .. 26
Figure 22: Diagramme de Gantt du projet .. 31
Figure 23 : Diagramme Pareto .. 32
Figure 24 : Architecture SCADA . 34
Figure 25 : Architecture du système à base d’un micro terminal 35
Figure 26 : Diagramme bête à corne du système 37
Figure 27 : Diagramme pieuvre du système 37
Figure 28 : Diagramme F.A.S.T .. 38
Figure 29 : Diagramme F.A.S.T du système . 39
Figure 30 : Diagramme S.A.D.T .. 39 Figure 31: Diagramme S.A.D.T du système . 40
Figure 32 : Programmation sur le logiciel ARDUINO .. 41
Figure 33 : Principaux composants de l'ARDUINO Mega 2560 . 42
Figure 34 : Afficheur LCD 4x20 .. 46
Figure 35 : Brochage du LCD avec la carte ARDUINO sous ISIS . 46
Figure 36 : Clavier matriciel 4x4 47
Figure 37 : Schéma du clavier matriciel 4x4 48
Figure 38: Brochage du clavier matriciel avec la carte ARDUINO sous ISIS 48
Figure 39 : Horloge temps réel .. 49
Figure 40 : Brochage de l’horloge temps réel avec la carte ARDUINO sous ISIS .. 50
Figure 41 : schéma globale du micro terminal sous ISIS .. 51
Figure 42: Les étapes de traduction d’un système d’information en une base de données . 52
Figure 43 : Modèle Conceptuel de Données .. 54
Figure 44 : Modèle Logique de Données .. 55
Figure 45 : Modèle Physique de Données 56
Figure 46 : L’environnement du VB . 58
Figure 47 : Programme en cours de développement . 58
Figure 48 : Ecran d’authentification 59
Figure 49 : Ecran principal 59
Figure 50 : Ecran de consultation des temps d’arrêt . 60
Figure 51 : Mode configuration du système .. 64
Figure 52 : Mode marche du système 65
Figure 53 : Mode attente du système 65
Figure 54 : Mode arrêt du système . 65
Figure 55 : Mode arrêt du système . 66
Figure 56 : Première étape de configuration de MySQL sous VB 67
Figure 57 : deuxième étape de configuration de MySQL sous VB .. 67
Figure 58 : troisième étape de configuration de MySQL sous VB 68
Figure 59 : Arrêt de la machine . 68
Figure 60 : Authentification . 69
Figure 61 : Consultation des temps d’arrêt par shift . 69
Figure 62 : Consultation des temps d’arrêt par machine . 70
Figure 63 : Consultation des temps d’arrêt par période .. 70
Figure 64 : calcul des indicateurs . 71
Figure 65 : Diagramme de temps d’un équipement .. 74
Tableau 1 : Différents produits fabriqués 19
Tableau 2 : Planning du projet .. 30
Tableau 3 : Machines critiques .. 31
Tableau 4 : Fréquence des arrêts . 32
Tableau 5 : Avantages et Inconvénients d’un SCADA 34
Tableau 6: Avantages et Inconvénients d’un micro terminal . 35
Tableau 7: brochage de l’afficheur LCD avec la carte ARDUINO .. 46
Tableau 8 : brochage du clavier avec la carte ARDUINO .. 48
Tableau 9: brochage du clavier avec la carte ARDUINO 50
Tableau 10 : Liste des codes associés aux causes d’arrêt 66
Tableau 11 : estimation du coût du matériel utilisé .. 72
Tableau 12 : Historique des arrêts du mois Mars 2015 75
Table des matières
Dans le milieu industriel de plus en plus caractérisé par une compétitivité acharnée l’entreprise se trouve aujourd’hui, plus que jamais, dans l’obligation de satisfaire les impératifs : qualité, coût et délai. Afin de conserver cet équilibre, elle cherche à éliminer tous les disfonctionnements existants dans ses activités de production.
La maîtrise et la mise en œuvre des démarches d’amélioration s’avèrent donc capitale pour l’entreprise. Cependant, avant de se lancer à corps perdu dans la mise en œuvre d’outils, méthodes et démarches d’amélioration continue, il est indispensable d’évaluer la performance du système de production en se basant sur des indicateurs mesure correcte est une étape importante d’amélioration. Pour cela, il faut avoir une image globale du processus visualisant tous les indicateurs clés qui peuvent nous donner une information pour nous situer par rapport à la concurrence et déterminer à quel niveau des améliorations doivent être apportées .
C’est dans ce contexte que s’inscrit le présent projet, effectué dans le cadre d’un projet industriel de fin d’études réalisé en collaboration avec l’équipe de la société LEAR de Rabat. Le but de ce projet est de développer un système qui permet de surveiller et d’enregistrer les temps d’arrêt des machines et de les afficher dans une interface graphique qui permet de visualiser et d’analyser les résultats des données.
Pour se faire, le présent rapport décrit l’essentiel du travail réalisé lors du projet, il comporte quatre chapitres présentant la démarche suivie pour la mise au point et l’organisation de cette mission :
• Le premier chapitre présente l’établissement d’accueil lieu de mon stage pour l’élaboration de mon projet de fin d’études ainsi que l’activité principale de la société.
• Le deuxième chapitre est essentiel à chaque projet, il situe le projet dans son contexte organisationnel, présente le cahier des charges du projet et décrit la façon avec laquelle il a été géré.
• Le troisième chapitre porte, dans un premier lieu, sur l’étude des systèmes de supervision possibles et l’analyse fonctionnelle du système adapté. Dans un deuxième lieu, il décrit la partie Hardware du système. En troisième lieu, il présente la création de la base de données dans laquelle les informations reçues du système sont stockées et aussi la réalisation de l’interface graphique permettant d’analyser les données et visualiser les résultats.
• Le quatrième chapitre est consacré pour le test de la partie matérielle et logicielle ainsi que la description de la communication des données d’arrêts vers le serveur de la base de données. Finalement, il présente une simulation du système réalisé.Ce rapport est clôturé par une conclusion générale suivie d’une bibliographie, webographie et des annexes.
1.Présentation de Lear Corporation 2.Présentation de la société Lear Rabat 3.Processus de production
Le présent chapitre porte sur la présentation de la société Lear corporation, dans un premier temps, un aperçu général sur la multinationale Lear, sa filiale à Rabat qui nous a accueillis pendant quatre mois dans le cadre de ce projet de fin d’études, et son activité principale. Par la suite nous présentons les différentes étapes du processus de production.
Présentation de Lear Corporation
Aperçu général
La société Lear a été fondée à la ville de Détroit située dans l’état de Michigan aux États-Unis (figure1), en 1917 comme une société d'assemblage des sièges et d'autres composants pour l'industrie automobile et aéronautique, elle était connue sous le nom « American Metal Products ». Aujourd’hui la société se spécialise dans la fabrication et la distribution d'équipements intérieurs automobiles.
Lear apparaît parmi les 500 premières entreprises, classées selon l'importance de leur chiffre d'affaires de 17,8 milliards de dollars en 2009.
Toutes les usines de Lear Corporation sont certifiées ISO TS 16949 (exigences qualité pour l’industrie automobile) et ISO 14001 (respect de l’environnement).
Figure 1 : La société Lear aux USA (Michigan)
Domaines d’activités et clients
La société travaille sur deux activités principales à savoir :
Ø Les systèmes de siège (figure 2) dont la fonction est la fabrication des systèmes complets de sièges pour automobiles : Les housses de siège à base de tissu et cuir incluant toutes les opérations de coupe et couture, les structures, mécanismes et mousses. Les ventes réalisées en 2012 au niveau de cette activité ont atteint 11,0 milliards de dollars.
Figure 2 : Sièges d’automobile
Ø Les systèmes de gestion de l’alimentation électronique connue sous l’acronyme EPMS : ce métier consiste en la fabrication des systèmes de distribution électriques et des composants connexes, y compris les connecteurs, les boîtes de jonction à puce et les chargeurs de batterie (figure 3). Ses ventes ont augmenté de 1,9 milliards de dollars en 2009 à 3,5 milliards de dollars en 2012.
Les connecteurs les boîtes de jonction à puceles chargeurs de batterie
Figure 3 : Types d’EPMS
En 2014, les ventes totales de Lear ont atteint 16 milliards de dollars, dont 76% dans le segment des sièges et 24% dans le segment des systèmes de gestion de l'alimentation électrique (figure 4).
Figure 4 : les ventes de Lear en 2014
Lear équipe plus de 300 marques d’automobiles dans le monde, elle opère auprès de plusieurs constructeurs de l’industrie automobile tel que Ford, Jaguar Land Rover, Mercedes, Honda, Volvo, Toyota, Nissan, Isuzu, Renault, Fiat, Mazda et d’autres. La figure 5 rassemble l’ensemble des clients de Lear dans le monde.
Figure 5 : Clients de Lear
Implantation mondiale
Actuellement la société possède 221 sites de production et d’assemblage dans 36 pays, comme c’est montré dans la figure 6, employant environ 113 400 employés.
Figure 6 : Sites de Lear à travers le monde
Présentation de la société Lear Rabat
Aperçu général
La société Lear a annoncé l’ouverture officielle de sa nouvelle unité à Rabat Technopolis le 18 Mai 2011. La construction de l’usine a débuté en Avril 2010 et s’est achevée en Décembre de la même année. L’installation occupe une superficie de 14.340 m² ; 8200 m² pour la production, 2380 m² pour le stockage de la matière première et produits finis et 3760 m² pour l’administration et les autres services. Elle emploie plus de 400 personnes. A la fin 2015, la nouvelle unité espère passer à 800 emplois, et multiplier par 4 ses investissements. L'emplacement de l'installation facilite la livraison vers le marché européen, ce qui permet de réduire les délais et les coûts de livraison, tout en augmentant la souplesse et en accélérant la réponse aux préférences des clients. De plus, cette nouvelle installation se trouve à proximité d'autres usines européennes de Lear.
La nouvelle usine de Rabat s’intéresse a l’activité EPMS (Electrical Power Management Systems), elle fournit des gammes de systèmes de distribution d’énergie appelés boites de jonction intelligentes (Smart Junction Boxes) illustrées sur la figure 7. Ce système gère de façon intelligente la distribution d’énergie et contrôle les différentes fonctionnalités électroniques et électriques de la voiture.
Figure 7 : Boîte à jonction
Figure 8 : Carte électronique
Fiche technique
? Raison sociale: LEAR Automotive Corporation
? Forme juridique : S.A.S
• Activité: Fabrication des cartes électroniques pour véhicules
• Création: Avril 2010, Inauguration officielle en Mai 2011
• Effectif : 503 employées dont 73 cadres
• Chiffre d’affaires: +178 000 000 Dhs (2012)
• Principaux clients: BMW, DAIMLER, Renault, Volvo, Jaguar.
? Superficie du site : 14 340 m²
• Siège social : Parc Technopolis, Rocade Rabat Sala El Jadida
• Logo :
Organisation de la société
La filiale est dirigée par un directeur général et constituée de huit services comme il est présenté sur la figure 9. Durant ce stage, nous étions affectés au département « Operations & Process ».
Figure 9 : Organisation administrative de Lear Rabat
Processus de production
L’activité principale de la société est la fabrication des cartes électroniques qui concernent le secteur automobile. L’atelier de production s’étalant sur une superficie de 8200 m², il est composé de deux zones de production : une zone électronique et une zone puissance.
Chacune est destinée à la réalisation d’un type de carte électronique.
L’aménagement des lignes de production est fait par projet suivant les types de produits.
Produits de Lear Rabat
La fabrication des différents produits de Lear est réalisée par projet et selon la fonctionnalité du produit. Dans le tableau 1, nous avons rassemblé ces différents produits fabriqués.
Projet | Client | Véhicule | Fonctionnalités |
PL7 | BMW | BMW séries 1, 2, 3, 4, 5 | Système d'accès en voiture, portail central, la climatisation, le confort, l'éclairage et la distribution d'énergie. |
PL3 | BMW | Mini Cooper | Capteur portes centrales, verrouillage complet, alarme antivol, détecteur automatique de pluie et de lumière de voiture, capteur de carburant, vitres électriques, essuieglaces avant et arrière. |
MQB | Audi, VW, Skoda, Seat | A3, G5, Octavia, Leon | La passerelle et les nœuds de connexion. |
Gateway | Jaguar, Land Rover | JLR | La passerelle et les nœuds de connexion. |
STAR2 | Mercedes | BR 205, BR 222 | La distribution du courant électrique et des services de protection. |
USM | Renault | Megan, Clio, Fluence, Twingo, Laguna, Master | Unité de ventilation, de climatisation, essuie-glaces avant, GPS & Démarrage. |
X10 | Renault | Twizy | La gestion de charge de la batterie pour la voiture 100% électrique. |
SBOX | BMW | I8 | Contrôle de niveau de charge et décharge de la batterie, système de surveillance avec une très grande précision, et assurance de la communication avec la passerelle d'énergie. |
BDC | BMW | X5, X6, I3 | Système d'accès en voiture, portail central, la climatisation, le confort, l'éclairage et la distribution d'énergie. |
Tableau 1 : Différents produits fabriqués
Description du processus de production
L’atelier est composé de deux zones de production : une zone « Electronique » qui fabrique les cartes électroniques ou passe les produits PL3, PL7, X10, MQB et JLR, et une zone « Puissance » destinée à la réalisation des cartes de puissance pour les cartes PL3, X10, USM et STAR2. (Les deux zones sont connues au sein de la société en anglais par Electronic et Power).
A la fin de la chaine on fait l’assemblage des cartes PL3 et X10. Certaines cartes telles que MQB et JLR sont dépourvues de carte de puissance. Pour le projet USM, on ne fabrique à Lear Rabat que les cartes puissance et on l’assemble avec les cartes électroniques reçues de la société Lear Valls en Espagne.
Les produits finis sont par la suite emballés dans des boîtes de carton et expédiés dans des conteneurs vers la plateforme de stockage « Calsina Carre » en Espagne, qui se chargera du transport et de la distribution aux clients.
La zone « Electronic » dispose de 10 lignes de production, les cartes fabriquées dans ces lignes passent par trois étapes principales représentées sur la figure ci-dessous :
Figure 10 : Processus de production dans la zone Electronique
Pour la zone « Power », elle dispose de 8 lignes de production. Les cartes fabriquées dans ces lignes passent par deux étapes principales représentées sur la figure ci-dessous :
Figure 11 : Processus de production dans la zone Puissance
3.2.1. LASER
Marquage au Laser (Laser Marking) : Cette opération consiste à marquer la surface de la carte avec un code en utilisant un faisceau Laser (la chaleur générée par le faisceau modifie thermiquement la surface de la carte). Ce code est composé de dix chiffres (digit), les trois premiers chiffres indiquent la référence du produit et les sept deniers indiquent son numéro de série (serial number).
Ce code servira à connaitre les étapes par lesquelles passe la carte tout au long du processus de fabrication : l’objectif est de garder la traçabilité du produit (une exigence client et exigence ISO TS 16949). Les PCB sont à la fin transportés manuellement vers le prochain poste de travail via des racks.
Figure 12 : Machine Laser
3.2.2. SMT a. Sérigraphie
Dépôt de la pâte à braser sur le PCB : à l’aide de la machine DEK (figure 13), on dépose une pâte à souder sur les emplacements spécifiques aux composants de la carte à l’aide d’un pochoir (stencil) illustré sur la figure 14. La pâte ne doit pas excéder une semaine dans le magasin, huit heures après sa sortie du magasin et trois jours dans la machine.
La machine DEK est composée :
• D’une unité latérale du chargement des cartes.
• De deux raclettes indépendantes.
• D’un pochoir permettant de déposer la pâte uniquement aux endroits voulus, c'est-à-dire sur les plages où les composants vont être montés.
• D’un support de carte permettant de lier la carte au pochoir.
• D’une caméra pour centrer le pochoir, il suffit alors de corriger le décalage soit manuellement soit à l’aide d’asservissement électronique. Un problème de centrage peut engendrer des courts-circuits lors de la fusion.
• D’un écran tactile qui présente des contrôles par menus graphiques pour une utilisation simple et sans risque d’erreur.
Figure 13 : Machine DEK
Figure 14 : Photo approchée du pochoir
b. Inspection optique 3D
Une fois arrivée au bout du convoyeur, la machine CyberOptic (figure 15) reçoit la carte et fait une inspection optique 3D pour vérifier la qualité de dépôt de la pâte, la machine contrôle les dimensions de la pâte (volume, surface, hauteur…).
Les critères définissants un dépôt acceptable sont : l’alignement par rapport aux empreintes, une couche déposée d’épaisseur constante et de surface uniforme. Cependant quelques défauts apparaissant lors du dépôt (trous, débordement léger de la pâte) disparaitront lors de la fusion de la pâte.
Figure 15 : Machine CyberOptic d’inspection
c. Insertion automatique des composants
Le circuit imprimé arrive, il est immobilisé sur la table de la machine Panasonic (figure 16) pour insérer les composants. Une caméra vérifie la position des mires*, pour centrer la carte puis la tête se déplace pour chercher dans le bon magasin le bon composant à placer. Ces composants sont contenus dans des bobines comportant des numéros de série et placés dans des lignes d’amélioration (feeders).
Figure 16 : Machine Panasonic
d. Soudage des composants
La carte passe dans le four à tapis pour souder efficacement les composants (figure 17) : c’est un long tunnel composé de plusieurs zones de chauffe que l’on peut régler. En général la carte commence à être préchauffée à une température de 100°, puis passe dans une zone plus chaude, puis arrive le pic de température pour permettre la refusion de l’étain (230°), enfin la température redescend rapidement pour redevenir à la température ambiante.
Figure 17 : Four de soudage
e. Contrôle optique 2D (AOI)
La carte passe maintenant par la machine AOI (figure 18) qui fait une inspection 2D : elle vérifie l’absence des composants, composants inversés, décalage, polarité et orientation, dépôt de la pâte à braser, soudure en excès ou insuffisante, pins soulevés ou tordus.
Figure 18 : Machine AOI
f. Contrôle visuel
C’est un contrôle obligatoire pour s’assurer des résultats de la machine, ce jugement est fait à la base du standard IPC, c’est une forme d’aide visuelle contenant des instructions pour corriger les défauts éventuels.
3.2.3. EOL a. Test électrique
La carte subi un test de continuité électrique sur la machine ICT (figure 19), elle est divisée en deux parties :
• La première est destinée au test des cartes électroniques. Elle consiste à tester, individuellement, les uns après les autres, les différents composants que comporte la carte. L’accès aux composants se fait via un lit à pins. Elle permet de tester les circuits ouverts, les courts-circuits, de vérifier que les bons composants sont aux bonnes places, de contrôler les valeurs des composants passifs (résistances et condensateurs…) et de vérifier le bon fonctionnement des circuits intégrés.
• La deuxième partie consiste à programmer le microcontrôleur, et d’effectuer un petit test pour vérifier que le programme est bien installé.
Figure 19 : Machine ICT
b. Test de fonctionnement
La machine FKT présentée sur la figure 20, est un bloc de résistances qui simule le fonctionnement de la voiture, ceci permet, en mettant la carte sous tension, de vérifier qu’elle assure correctement les fonctions pour lesquelles elle est conçue .
Figure 20 : Machine FKT
c. Vernissage et séchage
Cette étape consiste en le vernissage (figure 21) : l’opération enrobe des parties de la carte par le vernis (toute la carte sauf les relais et les connecteurs). Les cartes sont mises sur un support pour l’égouttage, ensuite entrées dans le four par un robot pour le séchage du vernis.
Le vernis permet d’augmenter la durée de vie des cartes et donc de les protéger contre la poussière et l’humidité et maintenir un bon isolement des conducteurs.
Figure 21 : Machine de vernissage et séchage
d. Contrôle visuel final
C’est une étape importante à la fin du processus pour vérifier que le vernis remplisse la totalité des zones concernées de la carte et l’absence des boules d’étain sur la surface et la vérification si tous les composants sont en bon état (relais, connecteurs, et leurs capuchons). e.Emballage
Après contrôle on enregistre les numéros de série de la carte afin de garder la trace des produits et connaitre ainsi les étapes du processus par lesquelles elle est passée. La deuxième étape est l’emballage des cartes électroniques dans des caisses pour les transférer dans la zone Power.
L’objectif de ce chapitre était d’une part de présenter le groupe Lear et particulièrement le site fraîchement inauguré de Rabat et d’autre part de décortiquer les différentes étapes du processus de production des cartes électroniques. Une présentation du cahier des charges et de la problématique donnée par la société, une analyse fonctionnelle, ainsi qu’une analyse des données font l’objet du chapitre suivant.
CHAPITRE 2 : Contexte général du projet
1.Problématique 2.Cahier des charges3.Méthodologie4.Planning 5.Choix de la machine d’étude
Ce chapitre a pour objet de mettre au clair la problématique, établir le cahier des charges, décrire le planning et la méthodologie de travail, et effectuer une analyse des données afin de choisir la machine critique sur laquelle nous allons travailler.
Problématique
Les arrêts des machines de production, et plus particulièrement les micro-arrêts, ont un impact énorme sur le rendement et la productivité des équipements de production.
L’enregistrement de ces arrêts se fait manuellement par les opérateurs pour la majorité des machines et reporté par les superviseurs via « email » à la fin de la journée.
Durant ce stage effectué au sein du département « Operations & Process » de la société Lear Corporation Rabat, nous étions rattachés au service Maintenance. Les missions qui nous ont été confiées, consistent à répondre au cahier des charges présenté dans le paragraphe suivant.
Cahier des charges
Ce projet de fin d’études consiste à développer un système automatique qui permet de surveiller les temps d’arrêt des machines.
Les tâches exigées sont les suivantes :
Ø Détection de l’arrêt de la machine.
Ø Calcul de la durée d’arrêt.
Ø Enregistrement des données d’arrêt dans une base de données.
Ø Consultation de ces données via une interface graphique.
Méthodologie
Pour la réalisation de ce projet, nous allons suivre la démarche suivante:
- L’analyse fonctionnelle avec les outils standards.
- Le niveau Hardware : La conception du système en définissant les différents composants nécessaires.
- Le niveau Software : programmation et test de la partie électronique.
- La Communication des données vers le serveur afin de les exploiter.
Planning
Afin de traiter la problématique et remplir le cahier des charges, nous avons élaboré un plan d’action en essayant de respecter le temps alloué à ce projet.
Le tableau si dessous présente le planning détaillé:
Tableau 2 : Planning du projet
L’avancement de la réalisation des tâches de ce travail est illustré dans la figure de Gantt suivante :
Figure 22: Diagramme de Gantt du projet
Choix de la machine d’étude
Pour identifier la machine la plus critique sur laquelle le test sera effectué, nous avons adopté une démarche d’étude basée sur la méthode ABC. Cette méthode permet l’identification de la machine ayant la fréquence d’arrêt la plus élevée.
La première étape consiste à collecter les problèmes d’arrêts dus aux équipements, et associer les machines subissant ces problèmes à leur durée d’arrêt en se basant sur l’observation et les données historiques (voir Annexe. B).
Le tableau 3 présente les machines classées par ordre décroissant de la durée d’arrêt pendant le mois Mars de cette année :
Machine | Durée en min |
Panasonic | 346 |
CyberOptic | 300 |
Coating | 180 |
DEK | 155 |
Four | 90 |
AOI | 40 |
Laser Marking | 30 |
Tableau 3 : Machines critiques
La deuxième étape consiste à construire le diagramme représentant le total des temps d’arrêt par machine pendant le mois Mars 2015 avec leurs fréquences cumulées. Le cumul d’arrêt est calculé en faisant la somme des arrêts de toutes les machines. Les résultats sont comme suit:
Fréquence = [Arrêts / ? (Arrêts)] x 100
Machine | Total d'arrêt en min | Cumul d'arrêt | Fréquence | Fréquence cumulée |
Panasonic | 346 | 346 | 30% | 30% |
CyberOptic | 300 | 646 | 26% | 56% |
Coating | 180 | 826 | 16% | 72% |
DEK | 155 | 981 | 14% | 86% |
Four | 90 | 1071 | 8% | 94% |
AOI | 40 | 1111 | 4% | 98% |
Laser Marking | 30 | 1141 | 2% | 100% |
Tableau 4 : Fréquence des arrêts
Figure 23 : Diagramme Pareto
Le diagramme Pareto présenté sur la figure 23 montre que les machines « Panasonic » et « CyberOptic » subirent le plus grand nombres d’arrêts, ce qui rendra prioritaire, pour la phase de la mise en place du système de surveillance, de commencer par ces deux machines.
Dans ce chapitre, nous avons présenté le contexte général du projet, ses objectifs, et le planning de son déroulement. Cette analyse préliminaire du projet, nous a permis de bien cerner son périmètre et nous facilitera le passage à une étude détaillée du système.
1.Etude de solutions possibles 2.Analyse fonctionnelle du système de surveillance adopté 3.Description du Hardware 4.Conception de la base de données 5.Réalisation de l’interface graphique
Introduction
Ce chapitre a pour objet de présenter les solutions satisfaisant le besoin exprimé précédemment et de choisir la solution de développement adéquate et optimale. Par la suite, l’étude portera sur l’ensemble du matériel utilisé pour la réalisation de cette solution, la conception de la base de données, et la réalisation de l’interface graphique.
Etude des solutions possibles
Contrôle à distance
SCADA-WinCC (télésurveillance et acquisition des données), est un système de télégestion à grande échelle permettant de traiter en temps réel un grand nombre de télémesures et de contrôler à distance des installations techniques. C’est une technologie industrielle de l’instrumentation.
Cette technique impose un automate principal qui communique avec les différents automates reliés aux machines pour collecter les données et interfacer avec WinCC.
La figure suivante montre son architecture :
Figure 24 : Architecture SCADA
Le tableau suivant présente les avantages et les inconvénients de cette solution :
Avantages | Inconvénients | |
- Rapidité d’implantation. - Disponibilité des logiciels surveillance. | de | - Coût énorme du matériel d’installation. - Attente longue du matériel. - Contrainte de mise en place : quelques machines ne disposent pas d’API. |
Tableau 5 : Avantages et Inconvénients d’un SCADA
Conception d’un système de surveillance à base d’un micro terminal
Les micros terminaux sont utilisés pour collecter le statut Marche/Arrêt de la machine et la quantité des pièces produites, il collecte les datas saisis : Matricule de l’opérateur, les causes et les temps d’arrêt. Les datas collectées sont envoyées au PC monitoring via une liaison série comme le montre la figure suivante :
Figure 25 : Architecture du système à base d’un micro terminal
Chaque micro terminal est composé d’un microcontrôleur qui permet de gérer l’acquisition et le traitement des données via un software embarqué, un afficheur LCD pour afficher l’état actuel de l’équipement et d’un keypad pour configurer le système et saisir les codes des causes d’arrêts et les matricules.
Le tableau suivant présente les avantages et les inconvénients de cette solution :
Avantages | Inconvénients |
- Collecte en temps réel des informations. - Sauvegarde chronologique. - Facilité de mise en place et coût acceptable. | - Conception du Hard et du Soft. |
Tableau 6: Avantages et Inconvénients d’un micro terminal
Vue la contrainte du temps et le coût de l’installation de la solution SCADA-siemens, nous avons opté pour la deuxième solution, qui est la conception d’un système de surveillance à base d’un micro terminal, car elle présente plusieurs avantages et répond aux besoins.
Analyse fonctionnelle du système de surveillance adopté
Nécessité de l’analyse fonctionnelle
L’analyse fonctionnelle vise à améliorer la qualité du produit du système ou du service en s’intéressant d’abord à ses fonctions, c'est-à-dire les raisons de sa conception. La méthode propose un raisonnement orienté fonctions et services à l’utilisateur ou au client.
Elle permet de concevoir des projets de qualité, conformes aux besoins des utilisateurs, dans les budgets et les délais, de suivre et de faciliter leurs évolutions.
On retient l’idée que le produit agit sur un élément de son environnement nommé matière d’œuvre et que la transformation apportée correspond à un service souhaité par le client et satisfait ainsi le besoin exprimé.
Analyse fonctionnelle externe du système
2.2.1. Définition
Elle concerne l’expression fonctionnelle du besoin tel qu’exprimé par le client utilisateur du produit : il s’agit de mettre en évidence les fonctions de services ou l’estime du produit étudié. Le produit est considéré comme une « boite noire » et ne fait pas partie de l’analyse. Par contre les fonctions qui sont produites par cette « boite noire » doivent être minutieusement étudiées : Il s’agit dans cette analyse d’en faire l’inventaire, de les décrire et de les évaluer.
2.2.2. Diagramme bête à corne du système
L’outil « bête à corne » est utilisé pour décrire le besoin fonctionnel auquel répond un produit. Ce diagramme répond à trois questions :
- A qui le produit rend-il service ?
- Sur quoi agit-il ?
- Pour quel but le produit existe-il ?
Figure 26 : Diagramme bête à corne du système
2.2.3. Diagramme pieuvre du système
L’outil « diagramme pieuvre » est utilisé pour analyser les besoins et identifier les fonctions de service d’un produit. Le diagramme « pieuvre » met en évidence les relations entre les différents éléments du milieu environnant et le produit. Ces différentes relations sont appelées les fonctions de service qui conduisent à la satisfaction du besoin.
Figure 27 : Diagramme pieuvre du système
Classification des différentes fonctions :
Fonctions de service principales :
• FP1 : Permet à l’administrateur de consulter les résultats du stockage.
• FP2 : Permet à l’utilisateur de saisir le code de la cause d’arrêt.
• FP3 : Permet l’enregistrement de la durée d’arrêt de la machine.
Fonctions contraintes :
• FC1 : Assurer une alimentation séparée à la machine.
• FC2 : Assurer le calcul de la durée d’arrêt.
• FC3 : Assurer un prix acceptable.
Analyse fonctionnelle interne du système
2.3.1. Définition
L’analyse fonctionnelle interne s’intéresse aux constituants du système appelés « Solutions techniques » et prévoit leurs degrés de performance dans la réalisation des fonctions de service et donc dans la satisfaction du besoin.
Elle privilégie le point de vue du concepteur, qui est chargé de concevoir un produit réel à partir d’un cahier des charges donné traduisant le besoin de l’utilisateur.
Elle utilise deux outils de description :
- Le diagramme F.A.S.T (Function Analysis System Technic).
- Le diagramme S.A.D.T (Structured Analysis and Design Technic).
2.3.2. Le F.A.S.T
Le diagramme F.A.S.T détaille en plusieurs niveaux, à l’aide de fonctions techniques, la façon dont est réalisée une fonction de service. Chaque fonction technique est concrétisée par une ou plusieurs solutions techniques.
Figure 28 : Diagramme F.A.S.T
2.3.3. Le F.A.S.T du système
Figure 29 : Diagramme F.A.S.T du système
2.3.4. Le S.A.D.T
L’outil S.A.D.T décrit le système en utilisant des boîtes et des flèches représentant les flux entrants ou sortants de ces boites. Une boite appelée actigramme contient l’expression de l’action à accomplir. Le flux comporte un label précisant les données véhiculées par ce flux. La méthode S.A.D.T est une méthode d’analyse descendante à plusieurs niveaux qui permet de représenter les flux d’énergie et d’information entre les composants du système. Le diagramme qui décrit la fonction globale du système est le diagramme A-0. La fonction globale peut être ensuite décomposée en plusieurs composantes éventuellement sur plusieurs niveaux.
Figure 30 : Diagramme S.A.D.T
2.3.5. Le S.A.D.T du système
Figure 31: Diagramme S.A.D.T du système
Description du Hardware
Description de la carte ARDUINO
ARDUINO est un circuit imprimé en matériel libre (dont les plans de la carte elle-même sont publiés en licence libre dont certains composants de la carte comme le microcontrôleur par exemple, ne sont pas en licence libre), sur lequel se trouve un microcontrôleur qui peut être programmé pour analyser et produire des signaux électriques, de manière à effectuer des tâches très diverses comme le pilotage d’un robot. C’est une plateforme basée sur une interface entrée/sortie simple. L’ARDUINO peut être utilisé pour construire des objets interactifs indépendants (prototypage), et peut être connecté à un ordinateur pour communiquer avec ses logiciels.
Un module ARDUINO est généralement construit autour d’un microcontrôleur Atmel AVR (ATmega328 ou ATmega2560 pour les versions récentes, ATmega168 ou ATmega8 pour les plus anciennes), et de composants complémentaires qui facilitent la programmation et l’interfaçage avec d’autres circuits. Chaque module possède au moins un régulateur linéaire synchrone et un oscillateur à quartz 16 MHz (ou un résonateur céramique dans certains modèles).
3.1.1. Logiciel et langage de programmation
Le logiciel de programmation des modules ARDUINO est une application Java libre et multiplateforme, servant d’éditeur de code et de compilateur, et qui peut transférer le firmware(appelé aussi microcode, qui est un ensemble d’instructions et de structures de données intégrées dans du matériel informatique pour qu’il puisse fonctionner) et le programme au travers de la liaison série (RS232, Bluetooth ou USB selon le module). Il est également possible de se passer de l’interface ARDUINO, et de compiler et uploader les programmes via l’interface en ligne de commande.
Le langage de programmation utilisé est le C++, compilé avec avr-g++, et lié à la bibliothèque de développement ARDUINO, permettant l’utilisation de la carte et de ses entrées/sorties. La mise en place de ce langage standard rend aisé le développement des programmes sur les plateformes ARDUINO.
3.1.2. ARDUINO Mega 2560
ARDUINO Mega 25602 est une carte à microcontrôleur basée sur un ATmega2560. La carte dispose de 54 broches numériques entrées/sorties, de 16 entrées analogiques, de 4 UART (port série matériel), d’un quartz 16 MHz, d’une connexion USB, d’un connecteur d’alimentation jack, d’un connecteur ICSP, et d’un bouton de réinitialisation (reset).
Elle contient tout ce qui est nécessaire pour le fonctionnement du microcontrôleur, pour pouvoir l’utiliser et se lancer, il suffit simplement de la connecter à un ordinateur à l’aide d’un câble USB (ou de l’alimenter avec un adaptateur secteur ou une pile, mais ceci n’est pas indispensable, l’alimentation étant fournie par le port USB).
La carte ARDUINO Mega diffère de toutes les autres cartes car elle n’utilise pas le circuit intégré FTDI USB-vers-série. A la place elle utilise un ATmega8U2 programmé en convertisseur USB-vers-série.
• Détails techniques :
Ø Microcontrôleur : ATmega 2560
Ø Tension de fonctionnement : 5V
Ø Tension d’alimentation (recommandée) : 7-12 V
Ø Tension d’alimentation (limites) : 6-20 V
Ø Broches E/S numériques : 54 (dont 14 disposent d’une sortie PWM)
Ø Broches d’entrées analogiques : 16 (utilisables en broches E/S numériques)
Ø Intensité maximale disponible par broche E/S (5V) : 40 mA (200 mA cumulé pour l’ensemble des broches E/S)
Ø Intensité maximale disponible pour la sortie (3.3V) : 50 mA
Ø Intensité maximale disponible pour la sortie (5V) : Fonction de l’alimentation utilisée – 500 mA max si port USB utilisé seul
Ø Mémoire programme Flash : 256 KB dont 8 KB sont utilisés par le bootloader(qui est un programme préprogrammé une fois pour toute dans l’ATmega et qui permet la communication entre l’ATmega et le logiciel ARDUINO via le port USB, notamment lors de chaque programmation de la carte).
Ø Mémoire SRAM (mémoire volatile) : 8 KB
Ø Mémoire EEPROM (mémoire non volatile) : 4 KB
Ø Vitesse d’horloge : 16 MHz ? Alimentation :
La carte ARDUINO peut être alimentée soit via la connexion USB (qui fournit 5V jusqu’à 500 mA) où à l’aide d’une alimentation externe. La source d’alimentation est sélectionnée automatiquement par la carte.
L’alimentation externe (Non USB) peut être soit un adaptateur secteur (pouvant fournir typiquement de 3V à 12V sous 500 mA) ou des piles.
Les broches d’alimentation sont les suivantes :
Ø VIN : La tension d’entrée positive lorsque la carte ARDUINO est utilisée avec une source de tension externe (à distinguer du 5V de la connexion USB ou autre 5V régulée).
Ø 5V : La tension régulée utilisée pour faire fonctionner le microcontrôleur et les autres composants de la carte.
Ø 3V3 : Une alimentation de 3.3 V fournie par le circuit intégré FTDI (circuit intégré faisant l’adaptation du signal entre le port USB de votre ordinateur et le port série de l’ATmega) de la carte est disponible.
Ø GND : broche de masse (ou 0V).
• Mémoire :
L’ATmega 2560 a 256 Ko de mémoire FLASH pour stocker le programme (dont 8Ko également utilisés par le bootloader). L’ATmega 2560 a également 8Ko de mémoire SRAM (volatile) et 4Ko de EEPROM (non volatile).
• Entrées et sorties numériques :
Chacune des 54 broches numériques de la carte peut être utilisée soit comme une entrée numérique, soit comme une sortie numérique en utilisant les instructions PinMode( ) DigitalWrite( ) et DigitalRead( ) du langage ARDUINO. Ces broches fonctionnent en 5V. Chaque broche peut fournir et recevoir un maximum de 40 mA et dispose de résistance pullup (déconnectée par défaut) de 20-50 KOhms.
• Communication :
La carte ARDUINO Mega2560 dispose de toute une série de facilités pour communiquer avec un ordinateur, une autre carte ARDUINO, ou avec d’autres microcontrôleurs. L’ATmega2560 dispose de quatre UARTs pour communication série de niveau TTL (5V) et qui est disponible sur les broches 0 (RX) et 1 (TX). Un circuit intégré ATmega8U2 sur la carte assure la connexion entre cette communication série de l’un des ports série de l’ATmega2560 vers le port USB de l’ordinateur qui apparait comme un port COM virtuel pour les logiciels de l’ordinateur. Le code utilisé pour programmer l’ATmega8U2 utilise le driver Standard USB COM, et aucun autre driver externe n’est nécessaire.
Afficheur LCD 4x20
3.2.1. Définition
Les afficheurs à cristaux liquides, autrement appelés afficheurs LCD, sont des modules compacts intelligents qui nécessitent que peu de composants externes pour un bon fonctionnement. Ils consomment relativement peu (de 1 à 5 mA).
Plusieurs afficheurs sont disponibles sur le marché et différent les uns des autres, non seulement par leurs dimensions, (de 1 à 4 lignes et de 6 à 80 caractères), mais aussi par leurs caractéristiques techniques et leur tension de service. Certains sont dotés d’un rétro éclairage de l’affichage. Cette fonction fait appel à des LEDs montées derrière l’écran du module, cependant, cet éclairage est gourmand en intensité (de 80 à 250 mA).
Ils sont très utilisés dans les montages à µcontrôleurs, et permettant une grande convivialité. Ils peuvent aussi être utilisés lors de la phase de développement d’un programme, car on peut facilement y afficher les valeurs de différentes variables.
3.2.2. Principe des cristaux liquides
Deux modes de fonctionnement de l’afficheur sont disponibles, le mode 4 bits et le mode 8 bits, modes que l’on choisira à l’initialisation de l’afficheur.
Ø Mode 8 bits :
Dans ce mode, les données sont envoyées à l’afficheur sur les broches D0 à D7. On place la RS à 0 ou 1 selon que l’on désire transmettre une commande ou une donnée. Il faut aussi placer la ligne R/W à 0 pour indiquer à l’afficheur que l’on désire effectuer une écriture.
Il reste à envoyer une impulsion d’au moins 450 ns sur l’entrée E, pour indiquer que des données valides sont présentes sur les broches D0 à D7. L’afficheur lira la donnée sur le front descendant de cette entrée.
Si on désire au contraire effectuer une lecture, la procédure est identique, mais on place cette fois la ligne R/W à 1 pour demander une lecture. Les données seront valides sur les lignes D0 à D7 lors de l’état haut de la ligne E.
Ø Mode 4 bits :
Il peut, dans certains cas être nécessaire de diminuer le nombre de fils utilisés pour commander l’afficheur, comme, par exemple lorsqu’on dispose de très peu de broches d’entrées sorties disponibles sur un microcontrôleur.
Dans ce cas, on peut utiliser le mode quatre bits de l’afficheur LCD. Dans ce mode, seuls les quatre bits de poids fort (D4 à D7) de l’afficheur sont utilisés pour transmettre les données et les lire. Les 4 bits de poids faible (D0 à D3) sont alors connectés à la masse.
Les données sont alors écrites ou lues en envoyant séquentiellement les quatre bits de poids fort suivi des quatre bits de poids faible. Une impulsion positive d’au moins 450 ns doit être envoyée sur la ligne E pour valider chaque demi-octet.
Dans les deux modes, on peut, après chaque action sur l’afficheur, vérifier que celui-ci est en mesure de traiter l’information suivante. Pour cela, il faut demander une lecture en mode commande, et tester le flag Busy BF. Lorsque BF = 0, l’afficheur est prêt à recevoir une nouvelle commande ou donnée.
Il se peut qu’on dispose encore de moins de broches disponibles dans l’application envisagée. Dans ce cas, on peut alors relier la ligne R/W à la masse de façon à forcer l’afficheur en écriture. On a alors besoins, hors alimentation de seulement six fils en mode 4 bits, et dix fils en mode 8 bits, pour commander l’afficheur.
Figure 34 : Afficheur LCD 4x20
3.2.3. Branchement avec la carte ARDUINO
Le logiciel ARDUINO possède une bibliothèque appelée « LiquidCrystal » qui gère l’afficheur LCD, cette bibliothèque fonctionne en mode 4 bits et dispose de plusieurs fonctions qui manipulent l’initialisation, l’écriture et la transmission des données.
Nous avons branché l’afficheur LCD avec la carte ARDUINO comme suit :
ARDUINO Mega | PWM2 | PWM3 | PWM4 | PWM5 | PWM8 | PWM9 |
LCD | D7 | D6 | D5 | D4 | RS | E |
Tableau 7: brochage de l’afficheur LCD avec la carte ARDUINO
Figure 35 : Brochage du LCD avec la carte ARDUINO sous ISIS
Exemple d’écriture d’une chaine de caractère :
Pour écrire une chaîne de caractères, il faut ajouter tout d’abord la bibliothèque « LiquidCrystal » en ajoutant la ligne #include "LiquidCrystal.h" au début du code. On déclare par la suite une variable LCD de type LiquidCrystal comme suit : LiquidCrystal (rs, enable, d4, d5, d6, d7) où rs est le numéro de la broche où est branché ‘’RS’’, enable est la broche ‘’E’’ et ainsi de suite pour les données. Ensuite, dans la fonction setup ( ) pour démarrer l’écran en spécifiant son nombre de colonnes puis de lignes. Cela se fait grâce à la fonction begin(cols,rows).
Clavier matriciel 4x4
3.3.1. Description
Le clavier matriciel ou le clavier à membranes (constitué de multiples couches de polyester imprimé) représente la liaison idéale pour le dialogue homme-machine.
Ce clavier dispose de 16 touches, disposés dans une grille 4 colonnes x 4 lignes. Il est fait d’un matériau mince formant une membrane flexible avec un support adhésif.
Il possède 8 broches qui seront reliées à un microcontrôleur. Les 8 broches se présentent sous forme d’une nappe pour faciliter l’utilisation.
Figure 36 : Clavier matriciel 4x4
Pour déterminer quel bouton est pressé, il faut tester les boutons par lignes de quatre en appliquant une tension nulle sur la ligne à tester et une tension de 5V sur les autres.
Le rôle du clavier matriciel dans notre application est de configurer le système et entrer les causes d’arrêt.
Figure 37 : Schéma du clavier matriciel 4x4
3.3.2. Branchement avec la carte ARDUINO
Le logiciel ARDUINO possède une bibliothèque appelée « Keypad » qui gère le clavier matriciel, cette bibliothèque dispose de plusieurs fonctions qui gèrent l’initialisation et le renvoie d’état courant du clavier.
Nous avons branché le clavier matriciel avec la carte ARDUINO comme suit :
ARDUINO Mega | Digital 37 | Digital 35 | Digital 33 | Digital 31 | Digital 29 | Digital 27 | Digital 25 | Digital 23 |
Clavier Matriciel | A | B | C | D | 1 | 2 | 3 | 4 |
Tableau 8 : brochage du clavier avec la carte ARDUINO
Figure 38: Brochage du clavier matriciel avec la carte ARDUINO sous ISIS
Pour utiliser le clavier matriciel, il faut ajouter tout d’abord la bibliothèque « Keypad » en ajoutant la ligne #include "Keypad.h" au début du code. On déclare par la suite une instance CustomKeypad de la classe Keypad comme suit :
Keypad customKeypad = Keypad (makeKeymap (hexaKeys), rowPins, colPins, ROWS,COLS); où makeKeymap(hexaKeys) définit les symboles sur les boutons du clavier matriciel, rowPins et colPins spécifient le brochage des lignes et des colonnes (respectivement) du clavier matriciel avec la carte ARDUINO, ROWS et COLS représentent le nombre de lignes et de colonnes (respectivement) du clavier matriciel.
Horloge temps réel (RTC DS1302)
3.4.1. Description
DS1302 contient une horloge temps réel/calendrier et 31 octets de mémoire RAM statique. Elle communique avec microcontrôleur par l’intermédiaire d’une interface série simple.
L’horloge temps réel/calendrier fournit les secondes, les minutes, les heures, le jour, la date, le mois, et des informations d’année.
L’interface du DS1302 avec un microcontrôleur est simplifiée à l’aide de la communication périodique synchrone. Seulement trois fils sont exigés pour communiquer avec le Clock/RAM : RST (reset), DAT (ligne de données entrées/sorties), et SCLK (horloge périodique).
Figure 39 : Horloge temps réel
3.4.2. Branchement avec la carte ARDUINO
Le logiciel ARDUINO possède une bibliothèque appelée « DS1302 » qui gère l’horloge temps réel, cette bibliothèque dispose de plusieurs fonctions qui gèrent l’utilisation de l’horloge temps réel.
Nous avons branché l’horloge temps réel avec la carte ARDUINO comme suit :
ARDUINO Mega | 5V | 0V | SCL | SDA | Digital 49 |
RTC | VCC | GND | SCLK | DAT | RST |
Tableau 9: brochage du clavier avec la carte ARDUINO
Figure 40 : Brochage de l’horloge temps réel avec la carte ARDUINO sous ISIS
Pour utiliser l’horloge temps réel, il faut ajouter tout d’abord la bibliothèque « DS1302 » en ajoutant la ligne #include "DS1302.h" au début du code. On déclare par la suite une variable RTC de type DS1302 comme suit : DS1302 RTC (rst,dat ,sclk) où rst est le numéro de la broche où est branché ‘’RST ‘’, dat où est branché ‘’DAT’’, et sclk où est branché SCLK.
Les composants cités ci-dessus vont être connectés à la carte ARDUINO Mega selon le schéma suivant :
Figure 41 : schéma globale du micro terminal sous ISIS
Conception de la base de données
Après l’acquisition des données à savoir, les temps d’arrêt et les causes d’arrêt, vient l’étape du stockage de ces données. Pour cela, nous devons créer une base de données, la réalisation de cette dernière nécessite l’analyse que nous allions décrire dans cette partie.
Analyse Merise
Merise est une méthode de conception et de développement de système d’information, elle vise à recenser la totalité des informations dont l’entreprise a besoin pour assurer toute ou une partie de ses activités fondamentales, que ces informations soient utilisées manuellement ou qu’elles le soient de manière automatique.
La méthode Merise propose une approche de la conception séparant l’étude des données de celles du traitement, en avançant progressivement par niveaux.
Chacun de ces niveaux a pour objectif principal de fournir un certain nombre de documents (MCD, MLD, MPD…) permettant ainsi la synthèse textuelle d’un processus de réflexion.
Ces documents sont indispensables à l’élaboration et à la concertation autour de tout projet informatique.
La mise en place des modèles de traitement a non seulement pour but de définir les traitements à effectuer, mais également de valider les options prises lors de l’élaboration des modèles de données.
Ainsi la méthode Merise préconise, non pas d’effectuer l’analyse des données, puis ensuite celle des traitements, mais plutôt de mener en parallèle à chaque niveau, l’analyse des données et celle des traitements.
Cette méthode propose trois niveaux de représentation d’un système d’information :
- Le niveau conceptuel.
- Le niveau organisationnel (logique).
- Le niveau opérationnel (physique).
Figure 42: Les étapes de traduction d’un système d’information en une base de données
Analyse de la situation existante et des besoins
Pour mener à bien le fonctionnement de notre système de supervision et pouvoir consulter les données acquises, notre base de données doit contenir les informations suivantes :
- Les arrêts en spécifiant leur date d’apparition, leur durée, et leur cause.
- Les machines subissant ces arrêts
- Les zones de production contenant ces machines.
- Les opérateurs supervisant ces machines.
Ainsi, les règles qui gèrent les relations entre ces données sont :
- Une machine peut avoir plusieurs arrêts comme elle peut ne pas avoir aucun arrêt.
- Un arrêt survient au moins une fois sur une machine (pendant un shift).
- Un arrêt est lié à une machine et une seule, c’est un événement avec un intervalle de temps unique.
- Un opérateur doit superviser au moins une machine, ou plusieurs machines.
- Une machine est forcement supervisée par un seul opérateur.
- Une zone de production contient au moins une machine ou plusieurs machines.
- Une machine fait partie d’une zone de production, alors qu’une machine (avec un identifiant unique) ne peut pas faire partie de plusieurs zones de production.
- Un opérateur doit travailler pendant un shift, mais il ne peut pas travailler pendant plusieurs shifts.
MCD
Le Modèle Conceptuel de Données est une représentation statique du système d’information de l’entreprise. Il a pour objectif de constituer une représentation claire et cohérente des données manipulées dans l’entreprise en décrivant leur sémantique et les rapports qui existent entre elles.
Les règles de construction du MCD permettent d’aboutir à une représentation graphique standard qui élimine les redondances et les ambigüités.
Le MCD qui décrit le système d’information est le suivant :
Figure 43 : Modèle Conceptuel de Données
MLD
Le Modèle Logique des Données reprend le contenu du MCD, mais précise la volumétrie, la structure et l’organisation des données telles qu’elles pourront être implantées. Par exemple, à ce stade, il est possible de connaitre la liste exhaustive des tables qui seront à créer dans la base de données relationnelle.
Le MLD qui décrit le système d’information est le suivant :
Figure 44 : Modèle Logique de Données
MPD
Le Modèle Physique des Données est la traduction du modèle logique des données dans une structure de données spécifique au système de gestion de bases de données utilisé.
Le MPD est donc représenté par des tables définies au niveau du système de gestion de bases de données. C’est donc au niveau du MPD que nous quittons la méthode générale de création d’un MCD et de sa transformation en MLD, pour nous tourner vers la manipulation d’un SGBD spécifique.
Le MPD qui décrit le système d’information est le suivant :
Figure 45 : Modèle Physique de Données
Nous allons faire la réalisation de la base de données à l’aide du système de gestion de bases de données MySQL
MySQL
MySQL est un système de gestion de bases de données. Selon le type d’application, sa licence est libre ou propriétaire. Il fait partie des logiciels de gestion de base de données les plus utilisés au monde, autant par le grand public (application web principalement) que par des professionnels, en concurrence avec Oracle ou Microsoft SQL Server.
MySQL est un serveur de bases de données relationnelles SQL développé dans un souci de performances élevées en lecture, ce qui signifie qu’il est davantage orienté vers le service de données déjà en place que vers celui de mise à jour fréquentes et fortement sécurisées. Il est multi-threads et multi-utilisateurs.
- Avantages de MySQL :
§ Il est rapide.
§ Facile à utiliser.
§ Le support technique est largement disponible.
§ Il peut fonctionner sur une large variété de systèmes d’exploitation – Windows, Linux, Mac.
§ Il possède son propre système de sécurité pour les utilisateurs et les groupes d’utilisateurs.
Réalisation de l’interface graphique
C’est quoi Visual Basic
Visual Basic (VB) est un langage de programmation événementielle de troisième génération ainsi qu’un environnement de développement intégré, créé par Microsoft pour son modèle de programmation COM. Visual Basic est directement dérivé du BASIC et permet le développement rapide d’application, la création d’interfaces utilisateur graphiques, l’accès aux bases de données, ainsi que la création de contrôles ou objets ActiveX.
Pourquoi Visual Basic
Les avantages de Visual Basic sont nombreux :
- Rapidité de programmation.
- Facilité d’installation.
- Faible structuration des données.
- Possibilité de programmation de toutes sortes de programmes (utilitaire, jeux, applications, etc.).
- Fonctionnalités infinies.
L’environnement du VB
L’interface de Visual Basic ressemble à ceci :
Figure 46 : L’environnement du VB
On trouve dans la fenêtre du VB en haut à droite une arborescence contenant deux entrées :
- MyProject : qui va regrouper les propriétés relatives au projet en cours.
- : qui est la fenêtre principale de l’application.
Sous cette arborescence, appelée « Explorateur des solutions » se trouve la fenêtre « Propriétés » qui permet de modifier le comportement des fenêtres, par exemple leurs titres, couleurs de fond, etc.…
On trouve à gauche la boite à outils appelée « Toolbox » qui regroupe les éléments nécessaires pour construire une application graphique, par exemple : bouton, zone de saisie de texte, cadre pour placer des images, etc.…
Quand un composant est ajouté, on peut faire apparaitre une fenêtre contenant le code VB à fin de développer le programme à la fonction souhaitée.
Figure 47 : Programme en cours de développement
L’interface graphique
La fenêtre suivante présente l’interface de l’authentification et c’est via cette fenêtre que l’utilisateur peut créer son compte pour accéder aux différents menus de l’application graphique, ceci est fait en terme de sécurité de l’application.
Figure 48 : Ecran d’authentification
Après l’authentification, nous accédons à l’écran principal de l’application, qui contient trois menus à savoir : « DOWNTIMES », «INDICATORS » et « STATISTICS ».
Figure 49 : Ecran principal
Le premier menu « DOWNTIMES » permet de consulter les différents arrêts rencontrés sur toutes les machines de production avec un affichage selon les critères de recherche (By Shift, By Machine, By Period).
Figure 50 : Ecran de consultation des temps d’arrêt
Le deuxième menu « INDICATORS » est pour le calcul des indicateurs industriels de la maintenance (Up Time, Down Time, MTBF, OEE%). Voir Annexe. A.
Le troisième menu « STATISTICS » permet de visualiser le cumul des temps d’arrêt selon les machines sous forme de diagrammes à bétons.
Conclusion
Après avoir décrit les différents composants du système de surveillance, nous allons détailler les étapes de création de la base de données et de l’interface graphique. La réalisation et la simulation du système feront l’objet du prochain chapitre.
CHAPITRE 4 : Réalisation et simulation du système de surveillance
1.Test du hardware et du software 2.Communication des données 3.Simulation du système 4.Etude financière du système adapté
La réalisation est l’aboutissement logique d’un travail parfait de conception. Le travail de développement de ce projet n’est autre que la concrétisation des besoins exprimés précédemment.
Ce présent chapitre sera consacré à la description et la réalisation du projet, le test et la simulation du système, ainsi qu’une étude économique.
Test du hardware et du software
Description du Software
Le programme embarqué dans le microcontrôleur de la carte ARDUINO fait la gestion des données de l’horloge, du Keypad et de l’affichage sur LCD.
Les données que fournie cette carte sont :
- Heure : génère l’heure, la minute et la seconde.
- Date: génère le jour, le mois et l’année.
- Etat : exprime l’état de la machine « Arrêt », « marche », « en attente ».
- Nombre : le nombre de pièce produite depuis la mise en marche de la machine.
- Code : le code de la cause d’arrêt de la machine.
- Matricule : le matricule de l’opérateur supervisant la machine.
Organigramme du programme
Un organigramme de programmation est une représentation graphique normalisée de l’enchainement des opérations et de décisions effectuées par un programme.
La figure ci-dessous présente l’organigramme du programme de la carte ARDUINO :
Figure 47 : Organigramme de l’algorithme du programme
Test du hardware et du software
Après l’étude analytique et les recherches effectuées pour la réalisation du Hardware de ce projet, nous sommes arrivés à la phase de test après brochage et implantation des composants sur labdec. Pour cela, nous avons modélisé la machine par un bouton poussoir, une fois celui-ci est appuyé la machine est déclenchée.
Suivant l’état de la machine, le système fonctionne selon différents modes. Ces modes sont décrits comme suit:
1.3.1. Mode configuration
Ce mode est utilisé lors de la première implantation du micro terminal dans la machine, et lors d'un changement d'opérateur ou de produit. Il est activé en appuyant sur « A », et il permet de configurer les différents paramètres du système : heure, date, mot de passe, cycle time, délai, matricule de l’opérateur, Identifiant du produit, et l’adresse du micro terminal.
Le cycle time : est le temps nécessaire pour que la machine complète un cycle d’une opération.
Délai : est une durée de tolérance attribuée aux opérateurs pour déposer la carte pour que la machine puisse reprendre son cycle.
Ces deux paramètres diffèrent d’une machine à une autre.
Figure 51 : Mode configuration du système
1.3.2. Mode marche
Ce mode apparait lors du fonctionnement normal de la machine, l’affichage sur l’écran LCD est comme suit :
Figure 52 : Mode marche du système
1.3.3. Mode attente
Ce mode s’active lorsque la machine est en marche mais en attente d’une pièce pendant une période t < Délai, l’affichage sur l’écran LCD est comme suit :
Figure 53 : Mode attente du système
1.3.4. Mode arrêt
Le mode arrêt est déclenché lorsque la machine subit un arrêt, l’affichage sur l’écran LCD est comme suit :
Figure 54 : Mode arrêt du système
Lorsque la machine subit un arrêt, elle est automatiquement verrouillée, et ne reprend son cycle de production qu’après la saisie du code de la cause d’arrêt. Une fois le code entré, la machine est déverrouillée.
Figure 55 : Mode arrêt du système
Le tableau suivant présente les arrêts que peut avoir une machine et leurs codes associés :
CODE | DESCRIPTION | EXPLICATION |
1 | Mecanical Problem | Un problème mécanique sur la machine |
2 | Electrical Problem | Un problème électrique sur la machine |
3 | SET-UP | Changement de produit |
4 | No operator | Pas d'opératrice pour pause réunion ou changement de shift |
5 | Preventive | Maintenance préventive sur la machine |
6 | QC | Arrêt de la machine pour contrôle qualité |
7 | Defect | Pièce défectueuse en sortie |
8 | No materiel | Pas de matériels ou d'outils accompagnant la machine |
9 | Engineering | Intervention engineering sur la machine |
Tableau 10 : Liste des codes associés aux causes d’arrêt
Communication des données
Pour communiquer les données issues du micro terminal vers le serveur de la base de données, nous avons utilisé la liaison série USB de la carte ARDUINO.
En communication série, on découpe l’information à transmettre en petits blocs de taille fixe avant de la transmettre. Ce type de communication s’oppose à la communication parallèle. En communication parallèle, il y a une ligne par bit à transmettre, tous les bits sont donc transmis en même temps.
L’avantage de la communication série par rapport à la communication parallèle c’est qu’elle nécessite moins de lignes.
Après le transfert de ces données, celles-ci seront stockées dans la base de données que nous avons déjà créée, et ceci par l’intermédiaire de l’interface graphique réalisée en VB.
Connexion entre ARDUINO et l’interface graphique en VB
La connexion entre le micro terminal contenant la carte ARDUINO et l’interface graphique s’établie en ajoutant des instructions au code VB, permettant de configurer le port utilisé pour le transfert des données.
Ces instructions figurent en Annexe. C
Connexion entre l’interface graphique en VB et le SGBD MySQL
Pour se connecter à la base de données MySQL avec l’interface graphique en VB, nous avons suivi les étapes si dessous :
Figure 56 : Première étape de configuration de MySQL sous VB
Figure 57 : deuxième étape de configuration de MySQL sous VB
Figure 58 : troisième étape de configuration de MySQL sous VB
Simulation du système
Le micro terminal permet de collecter en temps réel les informations relatives aux arrêts des équipements, par la suite ces informations sont communiquées au serveur de base de données et sauvegardées comme je l’ai expliqué précédemment dans le chapitre 3.
Pour consulter les informations d’arrêts, nous utilisons l’interface graphique que nous avons créée.
Les figures suivantes montrent une simulation du système allant de la survenance de l’arrêt jusqu’à la consultation des données d’arrêt et le calcul des indicateurs de la maintenance.
Figure 59 : Arrêt de la machine
Figure 60 : Authentification
Figure 61 : Consultation des temps d’arrêt par shift
Figure 62 : Consultation des temps d’arrêt par machine
Figure 63 : Consultation des temps d’arrêt par période
Figure 64 : calcul des indicateurs
Etude financière du système adapté
L’étude financière est une partie indispensable de tout projet, dans la mesure où elle permet de donner une estimation budgétaire du projet.
Dans cette partie, nous allons estimer l’investissement nécessaire pour la réalisation de ce système de surveillance.
Composant | Prix (DH) | Image |
Carte ARDUINO MEGA | 1500 | |
LCD 20x4 | 450 | |
Clavier 4x4 | 320 | |
RTC | 100 | |
Prix total hors taxe | 2370,00 DH | |
Prix total avec taxe (20%) | 2844,00 DH |
Tableau 11 : estimation du coût du matériel utilisé
Ce dernier chapitre a eu comme objectif la réalisation et le test de la partie matérielle et logicielle, ainsi qu’une simulation du système adapté pour s’assurer de son bon fonctionnement. Enfin, une étude économique pour estimer le coût d’investissement de ce système de surveillance.
A l’issue de ce projet, un système de surveillance des temps d’arrêt des machines a pu être réalisé. Trois points principaux ont été abordés : acquisition et traitements des données d’arrêt, communication de ces données vers le serveur de la base de données, et exploitation de ces données via une interface graphique.
La première partie a été consacrée à la conception d’un micro terminal qui permet l’acquisition des données d’arrêt et leur traitement par une carte électronique ARDUINO basé sur un microcontrôleur d’ATmega.
Ensuite, nous avons transmis les différentes données d’arrêt issues du micro terminal au serveur, après avoir créé une base de données dans la quelle ces données vont être enregistrées.
Après, nous avons créé une interface graphique afin de pouvoir consulter les données d’arrêt, et les exploiter pour calculer des indicateurs de maintenance à savoir : Up time, Down time, MTBF, et OEE%.
Le système de surveillance proposé permettra de collecter en temps réel des informations relatives aux statuts des équipements de production, de sauvegarder chronologiquement tous les événements qui arrivent sur une machine et d’évaluer la performance du système de production en se basant sur des indicateurs industriels.
D’autre part, ce stage au sein de Lear Corporation nous a permis d’acquérir une expérience professionnelle, de développer mes connaissances théoriques et pratiques. Aussi nous avons eu une idée sur les méthodes de résolution des problèmes dans un milieu industriel. En guise de perspectives, mon ambition est de mettre en place ce système de surveillance sur les deux machines les plus critiques « Panasonic » et « CyberOptic » pour s’assurer de son efficacité, et effectuer la communication des données en utilisant un protocole de communication wifi pour adopter la mise en place du système de surveillance sur toutes les machines.
Finalement, j’espère que ce rapport perdure et qu’il évitera tout travail inutile aux étudiants et à tous ceux qui s’y référeront.
Définition :
La figure si dessous schématise les états successifs que peut prendre un équipement.
Figure 65 : Diagramme de temps d’un équipement
Les sigles utilisées sont d’origine anglo-saxonne et correspondent aux notions suivantes :
UT: (Up Time)
Période de temps pendant laquelle l’équipement est utilisé en production suivant les spécifications de la production.
DT: (Down Time)
Période de temps pendant laquelle l’équipement n’est pas en conditions ou n’est pas capable de performer ses fonctions attendues selon les spécifications de la production.
MTBF: (Mean Time Between Failures)
Désigne le temps moyen entre des défaillances consécutives
MTBF = Somme des temps de bon fonctionnement / nombre de défaillances
OEE : (Overal Equipment Efficiency)
Le OEE % est le taux d’utilisation de l’équipement par rapport au temps qu’on lui a assigné pour qu’il soit en production.
OEE% = UT/8h × 100
8h désigne le nombre d’heures travaillées d’un shift.
Date | Problem | Timing en min | Machine |
02/03/2015 | Coating Pb bules d'air | 180 | Coating |
DEK prob de rejet (driver) | 30 | DEK | |
Manque de nozzle | 30 | Panasonic | |
DEK prob de rejet(TSMC) | 20 | DEK | |
03/03/2015 | Pb bugg buffer AOI | 10 | AOI |
Pb chain reflow | 15 | Four | |
Pb registration U4 cyberoptics | 40 | CyberOptic | |
04/03/2015 | Manque bobine | 10 | Panasonic |
Pb nozzle M2T2 | 10 | Panasonic | |
Manque de nozzle | 45 | Panasonic | |
06/03/2015 | Pb DEK | 30 | DEK |
Pb DEK | 15 | DEK | |
11/03/2015 | Composant sur dos | 6 | Panasonic |
Manque bobine | 15 | Panasonic | |
12/03/2015 | Pb composant sur dos | 30 | Panasonic |
Pb itac DEK | 20 | DEK | |
Pb communication P&P | 25 | Panasonic | |
Pb nozzle | 20 | Panasonic | |
Pb blocage DEK | 40 | DEK | |
21/03/2015 | Pb reflow | 15 | Four |
Pb missing AOI sur la new ref | 30 | AOI | |
Pb nozzle sur la new ref | 40 | Panasonic | |
24/03/2015 | repassge pièce fail cyberoptics | 20 | CyberOptic |
Pb Lazer | 30 | LaserMarking | |
rejet cyberoptics | 240 | CyberOptic | |
25/03/2015 | Pb insertion | 10 | Panasonic |
Pb missing | 5 | Panasonic | |
Pb feeder | 5 | Panasonic | |
Pb reflow | 15 | Four | |
26/03/2015 | Pb nozzle | 5 | Panasonic |
Composant sur dos + missing | 30 | Panasonic | |
chip drop down | 5 | Panasonic | |
29/03/2015 | stabilisation reflow | 45 | Four |
30/03/2015 | chip drop down | 5 | Panasonic |
31/03/2015 | Pb nozzle M2T3 | 45 | Panasonic |
Pb nozzle M1T3 | 5 | Panasonic |
Tableau 12 : Historique des arrêts du mois Mars 2015
Imports .Ports
Imports System.Threading
Public Class Form1
Private Delegate Sub Affich(ByVal donnees As String)
Private _continue As Boolean
Public Sub Form1_Load (ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles
With SerialPort1
.PortName = "COM21"
.BaudRate = 9600
.Parity =
.DataBits = 8
.StopBits =
End With
If SerialPort1.IsOpen Then
SerialPort1. Close ()
End If
Dim readThread As Thread = New Thread (AddressOf Read)
SerialPort1.ReadTimeout = 1000
SerialPort1 .Open () _continue = True readThread. Start ()
End Sub
End Class
[1] Service RHLear, « Presentation Lear Rabat_HR days » 2013
[2] Lear Corporation, « Monthly report » 2015
[3] Eskimon et Olyte, « ARDUINO pour bien commencer en électronique et en programmation »
[4] Chantal GRIBAUMONT, « Administrer les bases de données avec MySQL »
[5] Pierre STOCKREISER, « Les systèmes de gestion de bases de données »
[6] François MONCHEY – Jean Pierre VERNIER, « Maintenance méthodes et organisation » [7] Hankerspace,« Apprendre à programmer en VB »
[1]
[2]
[3]
Résumé
Ce rapport porte sur la démarche suivie pour la réalisation d’un système électronique d’automatisation et de supervision permettant de surveiller, enregistrer et consulter les temps d’arrêt des machines.
La première partie de ce travail consiste en la conception d’un micro terminal permettant l’acquisition du signal marche/arrêt de la machine, le calcul du temps d’arrêt et le traitement des données relatives à l’arrêt.
La deuxième partie, quant à elle, concerne la création d’une base de données à fin de stocker les informations d’arrêt, et la réalisation d’une interface graphique pour consulter et exploiter ces données.
Mots clés:Temps d’arrêt, Micro terminal, Surveiller, Base de données, Interface graphique
Abstract
This report covers the approach followed for the realization of an electronic system of automation and supervision allowing monitoring, recording and consulting down times of machines.
The first part of my work consists of a micro terminal conception allowing the acquisition of the machine ON/OFF signal, the calculation of down times and the treatment of the information related to the break down.
As far as the second part consists of the creation of database so as to store the information of the break down, and the realization of a graphic interface for consultation and exploitation of these data.
Keywords: Down time, Micro terminal, Monitor, Database, graphic interface.