Commande déportée d'une chaîne de production ● Présentation générale du projet ● Présentation du Testeur ● Programmation
Présentation du projet Une entreprise de fabrication de vérin pour l’automatisme souhaite faire évoluer sa chaîne de production pour optimiser son rendement. Elle souhaite, pour cela, créer un service de supervision qui lui permettra de surveiller, de commander et de réaliser la maintenance préventive de sa chaîne de production. Pour cela, elle veut : A partir d’une IHM graphique : Commander, observer et surveiller, en temps réel, sa chaîne de production à partir de n’importe quel navigateur WEB installé sur les PC de son service de supervision. Visualiser et récupérer les informations sur le taux d’utilisation et les anomalies de fonctionnement du système complet dans la base de données commune pour la gestion des stocks, la maintenance préventive et la sauvegarde du journal des anomalies. Que chaque station, de sa chaîne de production, soit capable de stocker des informations d’anomalies dans une base de donnés commune.
Chaîne de production
Automate FEC-640 ● Microcontroleur SC12 ● Port Com et Ethernet ● 4 ports de sorties et 2 ports d'entrées
SC12 Le SC12 est un microcontroleur 16 bits équipé d'un processeur intel cadencé a 20Mhz avec 512Ko de Ram et de mémoire flash. Le bios du sc12 possède: un noyau temps réel RTOS Une pile TCP/IP(TCP,UDP,ARP,ICMP,Socket,Ethernet) Une serveur ou client PPP(point par point) Des serveurs telnet et FTP un serveur web http avec les cgi Un support du système de fichier RTOS
Le RTOS Sur le site de Beck,on peut trouver ce tableau qui nous montre les différentes versions du RTOS. Dans notre cas, la version medium est la plus appropriée. Ce choix nous permet d'éviter de prendre une version plus lourde vu la quantité de mémoire limité du sc12.
Cas D'usage du Systeme
Diagramme de séquences
Le Testeur sous plusieurs angles
Détails ● Capteur de proximité ● Capteur de Pièce non noire ● Capteur d'occupation ● Pousseur
Capteur Opto-Electronique ● Signaux de type Infrarouge ● Contient 1 émetteur et 1 récepteur ● Principe de réflexion donc il ne fonctionne qu'avec les pièces non noirs
Capteur de Proximité ● Basé sur un circuit RC résonnant. La capacité du condensateur augmente avec un objet à proximité ● Porté de 2mm à 8mm
Capteur à barrière Réfléchissante ● A coupler avec une barrière réfléchissante ● Émetteur et récepteur infrarouge
Details ● Capteurs de positions(haute ou basse) ● Capteurs de hauteur des pièces
Capteur de Proximité (Niveaux) ● Génère un signal de changement à l'approche d'un champ electro-magnétique (Système inductif) ● Précision de +ou - 0,1mm
Testeur de Hauteur ● Couplé à un comparateur de Seuils ● Capteur analogique ● Mesure la hauteur de 0mm à 25mm
Details ● Terminal d'Entrées / Sorties entre la machine et l'automate ● Comparateur de seuils muni de 2 potentiomètres
Comparateur de Seuils ● 1)Sorties digitales ● 2)Affichage des erreurs en sortie ● 3)Potentiomètre pour le niveau Haut ● 4)Entrée analogique ● 5)Voltage linéaire de référence pour le capteur de hauteur de pièce. ● 6)Affichage du voltage opérationnel externe ● 7)Voltage opérationnel externe ● 8)Potentiomètre pour le niveau bas ● 9)Affichage des changements de statuts des sorties
Terminal d'Entrées/Sorties ● Donne 8 entrées et 8 sorties ● Alimenté en 0/24V ● Contient 22 terminaux 0V et 12 terminaux 24V ● Utilise un connecteur 24pin de serie 57GE
Details ● Distributeurs pneumatiques utilisable manuellement ou via l'automate.
ElectroDistributeur ● Le terminal de distribution pneumatique est composé de 2 distributeurs de type 5/2 et 1 distributeur de type 3/2
Borland ● Borland C++ 5,02 est nécessaire à la programmation pour le RTOS ● Programmation pour un processeur 80186
Programmation ● Organigramme du Testeur qui va se synchroniser via la connection du convoyeur au testeur
Première partie de l'organigramme ● On commence par initialiser l'automate. ● On attend qu'un technicien appuie sur start ● On test si la station est libre et prête
Seconde Partie ● Si la pièce est correcte on attend que le convoyeur soit prêt pour éjecter la pièces sinon on met la pièce non valide dans le compartiment prévu a cet effet
Organisation et classes Chacune des mes classes est définie dans un cpp et un.h séparées du main pour plus de clarté. Cette structure nous permet de manier des objet spécifiques aux opérations que l'on veut faire(panneau pour le panneau avant ou client pour la communication par exemple).
Serveur « Passerelle » Le serveur « passerelle » permet la communication entre l'automate et la base de données. Ils sont tous les deux sur la même machine et on peut accéder à ces informations via n'importe quel poste de Supervision
Programmation ● Avant tout il faut: ● Créer la DLL LibMySQL.dll avec la fonction: « implib libmySQL.lib libmySQL.dll » dans une console windows ● Ajouter la librairie SQL au source ● Initialiser l'accès à la dll
Base de données La base de données va permettre la supervision. Elle va reporter l'utilisation des actionneurs et le nombres de pièces testées. Chacun des champs va être incrémenté par des requêtes SQL envoyées par le serveur passerelle.
IHM L'IHM va permettre de surveiller la chaîne depuis n'importe quel poste de supervision. Celle ci a été codé en PHP grâce à la Gdlib qui est une bibliothèques de fonctions graphiques pour php. Cette bibliothèques est plus communément utilisée pour la fusion, ou les opérations sur des fichiers images déjà existant. Dans notre cas, la Gdlib génère une image à partir des données de la base de données et se rafraîchie toutes les secondes