LP AII parcours «Automatismes Supervisés» ** TP transversal : Tri postal automatisé durée : 3 x 3h 1. PRÉSENTATION DU SYSTÈME. Tri Postal Automatisé Programmation en CFC et SFC Communications industrielles : Gestion d'un bus ASi et d'une liaison série Opérations sur les chaînes de caractères Variables de temps et de datation Communication avec un serveur mail Gestion de tables d'échange pour communication avec PC Vue La partie opérative à automatiser est un système de tri postal. Les colis sont identifiés par un numéro lu sur un code-barre, puis convoyés et aiguillés vers trois destinations possibles, deux destinations perpendiculaires au convoyeur et la dernière en fin de bande transporteuse. L évacuation des colis ainsi que leur chargement sur la bande transporteuse est assurée par des vérin pneumatiques. La bande transporteuse est mue par un moteur asynchrone triphasé piloté par un variateur de vitesse ATV11. L ensemble des capteurs et actionneurs sont connectés sur un bus AS-i, le lecteur de code-barre infra-rouge étant quant à lui relié à la partie commande via une liaison série RS-232. IUT de Toulon Département GEII LP AII - S1
Le tri des colis suivant sera adopté : - Les colis portant les n 39, 45 sont aiguillés vers le 1 bac, - Les colis portant le n 51 et 32 vers le second bac, - Les autres n atterrissent dans le bac en fin de convoyeur. Liste des entrées/sorties du système: Description Vérin (1) de poussée vers le poste de lecture (Action / Sortie) Fin de course du vérin 1 (Capteur / Entrée) Vérin (2) de Tri vers le 1 bac (Action / Sortie) Fin de course du vérin 2 (Capteur / Entrée) Vérin (3) de Tri vers le 2 bac (Action / Sortie) Fin de course du vérin 3 (Capteur / Entrée) Mise en marche du convoyeur (Action / Sortie) Arrêt d'urgence (Capteur / Entrée) Détecteur IR : Présence Colis au poste de lecture de code Détecteur IR : Présence Colis au poste de chargement Détecteur IR : Présence Colis au poste d'évacuation vers le bac 1 Détecteur IR : Présence Colis au poste d'évacuation vers le bac 2 Symbole v_1a fc_1s1 v_2a fc_2s1 v_3a fc_3s1 MA AU SLC SPC SPE1 SPE2 La partie commande comporte : Contrôleur Wago 750-841 (FW12), adresse IP : 192.168.0.163, muni : 1 carte «coupleur ASi» : 750-655 (12 octets) 1 carte RS232C : 750-650 / 003-000 (5 octets) Q1) Établir sur papier le Grafcet de fonctionnement normal GP. Q2) Créez un nouveau projet correctement configuré afin de pouvoir gérer éventuellement plusieurs grafcets. IUT de Toulon département GEII 2/8
2. GESTION DE LA LIAISON SÉRIE POUR LE LECTEUR DE CODES BARRES. Q3) Ajouter au projet la bibliothèque «Scanner_01» du répertoire «Applications». La fonction «BARCODE_SCANNER» va être utilisée pour la lecture du code-barre : Nom Type Format Rôle bcom_port_nr Paramètre d'entrée Octet N du port série utilisé sur le Wago 750-841 cbbaudrate Paramètre d'entrée COM_BAUDRATE (type défini dans «SerComm.lib») cpparity Paramètre d'entrée COM_PARITY (type défini dans «SerComm.lib») cfflow_control Paramètre d'entrée COM_FLOW_CONTROL (type défini dans «SerComm.lib») Débit binaire de l'interface Contrôle de Parité utilisé Ttype de contrôle de flux utilisé bstartchar Paramètre d'entrée Octet Code ASCII du caractère d'entête bendchar Paramètre d'entrée Octet Code ASCII du caractère de fin strcommand Paramètre d'entrée Chaîne de caractères Châine permettant de définir une commande à envoyer au lecteur pour sa configuration (non utilisé ici) xstartcommand Paramètre d'e/s Bit Bit déclenchant l'envoi de la commande ci-dessus xnewdata Paramètre d'e/s Bit Bit mis à '1' par la fonction lorsqu'un nouveau code est lu (doit être remis à '0' par l'utilisateur) strbarcode Paramètre de Sortie Chaîne de caractères Valeur du code lu sur l'étiquette IUT de Toulon département GEII 3/8
Q4) Définir le paramétrage de la fonction à utiliser, sachant que : - Le débit de la communication est de 9600 bps - le lecteur est relié à la carte 750-650, qui correspond au port série n 2 (le COM1 étant le port intégré à la CPU) - Il n'y a pas de parité - 1 bit de STOP - Pas de contrôle de flux - La chaîne de caractères envoyée par le lecteur correspond aux codes ASCII des chiffres du code, entourés par le caractère '*' (au début et à la fin) Q5) Validez le paramétrage de cette fonction en chargeant votre programme et en vérifiant que les codes sont correctement affichés dans votre programme. Q6) Utiliser la fonction «STRING_COMPARE» afin de générer 2 variables booléennes qui seront utilisées pour les réceptivités du grafcet gérant l'aiguillage des colis. 3. GESTIONG DU BUS ASI ET ADRESSAGE DES E/S. Les esclaves ASi sont adressés de la manière suivante : Esclave 1 : Module 4E/4S TOR OUT0 : M_A (mise en marche du convoyeur) Esclave 2 : Module 4E TOR IN0 : SLC (Présence Colis au poste de lecture de code) IN1 : SPE1 (Présence Colis en face du bac n 1) IN2 : SPE2 (Présence Colis en face du bac n 2) IN3 : SPC (Présence Colis au poste de chargement) Esclave 3 : Distributeur électro-pneumatique 4S TOR (vérins) + 4E TOR (fins de course) IN0 : (N.C) IN1 : fc_1s1 (fin de course vérin 1) IN2 : (N.C) IN3 : fc_2s1 (fin de course vérin 2) f.c OUT0 : v_1a (sortie vérin 1) OUT1 : v_2a (sortie vérin 2) OUT2 : v_3a (sortie vérin 3) A.U Esclave 4 : Module 4E TOR IN0 : (N.C) IN1 : fc_3s1 (f.c vérin 3) IN2 : (N.C) IN3 : AU (arrêt d'urgence (NF)) f.c Q7) Déterminez pour chaque capteur/actionneur l'adresse de bit correspondante sous CoDeSys (%I..., %Q...). Vous pouvez utilisez le fichier excel suivant. IUT de Toulon département GEII 4/8
4. PROGRAMMATIONP DE LA SÉQUENCE DE TRI. Q8) Ajouter la bibliothèque «iecsfc.lib» à votre projet et créez un sous programme «TRI» en langage SFC. Q9) Déclarez les noms symboliques du tableau page 15 aux adresse adéquates déterminées à la question Q23) comme variables internes de votre sous programme, en utilisant la syntaxe suivante: Q10) Définir les variables d'entrée de votre sous programme qui vont vous permettre de récupérer les valeurs booléennes relatives à l'aiguillage des colis générées en Q21). Q11) Programmez le grafcet correspondant à la séquence de tri des colis. Q12) Appelez votre sous programme «TRI» depuis le programme principal, et reliez-le aux autres éléments. Q13) Chargez votre programme dans le contrôleur et ajustez votre programme afin d'obtenir un fonctionnement acceptable (ajout d'étapes d'attente lorsque cela est nécessaire etc...) 5. GESTIONG DE L'A 'ARRÊT D'URGENCE. Nous allons dans cette partie réinitialiser le grafcet lorsque l'arrêt d'urgence est enclenché. Q14) En étudiant le schéma électrique du système, indiquer si la coupure des actionneurs est gérée par l'automate. Selon vous pourquoi? Les variables drapeau permettent d'agir sur un programme SFC pour le figer, le ré-initilaiser etc... Q15) En utilisant l'aide de CoDeSys, donnez le nom de la variable drapeau permettant de remettre à zéro un grafcet. Q16) Programmez la gestion de l'arrêt d'urgence en utilisant cette variable drapeau. IUT de Toulon département GEII 5/8
6. VISUALISATIONV ISUALISATION. Nous allons dans cette partie créer une page de visualisation offrant les principales informations du programme : État des capteurs et des actionneurs Comptage des colis dans chacun des bacs N du colis en cours de traitement Temps de fonctionnement du tapis Q17) Créez la page de visualisation demandée, ainsi qu'un sous-programme permettant les comptage des colis et du temps de fonctionnement du tapis. 7. SUIVIS DES COLIS PAR MAIL. L'objectif de cette partie est de tenir informé l'expéditeur du colis du trajet suivi par celui-ci, en envoyant un message du type «votre colis a été expédié vers le centre de tri n... le... à..h..». Q18) Inclure à votre projet la bibliothèque «Mail_02.lib». Nous allons utiliser la fonction «Mail_SmtpClient» pour gérer l'envoi des mails : IUT de Toulon département GEII 6/8
Paramètres d'entrée : Nom Type Rôle ssmtpserverip string Adresse IP su serveur SMTP sfrom string Adresse mail de l'expéditeur de l'e- mail sto string Adresse de la bôite mail destinatrice ssubject string Objet de l'e- mail smessage string Message de l'e- mail sattachmentfilename string Nom de la pièce jointe (non utilisé dans ce TP) ptattachment pointer Pointeur vers le fichier joint (non utilisé dans ce TP) iattachmentlength integer Taille du fichier joint (non utilisé dans ce TP) Paramètres de sortie : xdone bool Passe à '1' dès que la mail a été envoyé werror word Code d'erreur d'éxécution du bloc sanswer string Non utilisé dans ce TP Paramètres d'entrée/sortie : xsend bool L'e-mail est envoyé sur front montant de xsend Un serveur mail tourne sur le PC n 6 ('192.168.0.153'), ses caractéristiques sont les suivantes : nom de domaine : «geii.fr» port SMTP : n 110 adresses mail configurée : : expe1@geii.fr ; expe2@geii.fr ; expe3@geii.fr ; expe4@geii.fr ; expe5@geii.fr, ; expe6@geii.fr ; expe7@geii.fr mot de passe : geii Q19) placez le bloc «Mail_SmtpClient» dans votre 'PLC_PRG', et paramétrez-le de façon à envoyer un mail à chaque nouveau code lu. Q20) Générez les chaines de caractères «Ssubject» et «Smessage» de façon : - à ce que l'objet du mail affiche «Suivi de votre colis n...» - le contenu du message affiche : «votre colis est passé au centre de tri GEII à : (date /heure») Aide : Vous aurez besoin des fonctions suivantes (consultez l'aide de CoDeSys pour connaître leur fonctionnement): Attention, en langage CFC, le n de chaque bloc placé sur le schéma indique son ordre d'exécution. Il est primordial d'en tenir compte pour que le programme fonctionne. IUT de Toulon département GEII 7/8
8. CRÉATIONC DES TABLES D'ÉCHANGE POUR LA SUPERVISION. L'objectif de cette partie est de préparer votre programme pour la communication avec la supervision (logiciel PCVue). L'interface reprendra les éléments de la visualisation créée précédemment. Q21) Déterminer la liste des variables utiles au superviseur en les classant en 4 catégories : - Les bits accessibles en lecture/écriture - Les bits accessibles en lecture seule - Les mots accessibles en lecture/écriture - Les mots accessibles en lecture seule Q22) Dans la partie «configuration de l'automate» de votre projet CoDeSys, déclarez ces variables comme «variables réseau» : Q23) Créez un sous programme "Tables_Supervision" en langage ST réalisant les affectations entre ces variables réseau et les variables de vos programmes d'automatisation. Q24) Faîtes un clic-droit sur «K-Bus» puis «Calcule les adresses», et relevez les adresses des différentes variables. Q25) Déterminez les adresses Modbus (utilisées par PC Vue) correspondantes à l'aide de la note d'application suivante. Q26) Validez ces adresses à l'aide de Modbus Doctor. IUT de Toulon département GEII 8/8