▼
Scroll to page 2
of
338
Présentation, Installation SIMTSX A Démarche de la simulation B Description d'une application SIMTSX utilisant des modèles de la bibliothèque Description d'une application SIMTSX à partir de nouveaux éléments C D Validation de l'application SIMTSX E Validation du programme automate F Utilitaires SIMTSX G Exemples H Annexes I A B C D E F G H I ___________________________________________________________________________ B/2 A Présentation, Installation Chapitre Page 1 Présentation et mise en œuvre 1.1 Sommaire Intercalaire A Présentation 2 Installation 1/1 1/1 2/1 2.1 Vérification du matériel 2/1 2.2 Configuration requise 2/1 2.3 Installation de SIMTSX 2/2 2.4 Mise en place du code d'autorisation 2/4 2.5 Accès à SIMTSX 2/6 2.6 Fenêtre principale de SIMTSX 2/6 3 Raccordements aux automates 3.1 Raccordements 3.1-1 Communication avec un Micro/Premium 3.1-2 Communication avec un Quantum 3/1 3/1 3/1 3/1 ___________________________________________________________________________ A/1 A Présentation, Installation Chapitre Sommaire Intercalaire A Page ___________________________________________________________________________ A/2 A Présentation Chapitre 11 1 Présentation et mise en œuvre 1.1 Présentation Ce document décrit la mise en œuvre et l’utilisation des produitsSIMTSX et SIMTSX LITE référencés TLX FCD SIM ••• et TLX FCD SIM L•••. SIMTSX est un produit logiciel permettant de simuler les évolutions d’une installation automatisée, pilotée par un ou plusieurs automates de la gamme Modicon TSX : Micro, Premium ou Quantum (SIMTSX LITE ne permet de simuler que les automates de la gamme Micro). SIMTSX, une fois raccordé à l'automate, remplace toute la périphérie d’entrées/ sorties et l’ensemble des équipements en aval (systèmes câblés dans l’armoire électrique, préactionneurs, actionneurs, capteurs, grandeurs physiques de l’installation, déplacement des produits...) : API Variation de sorties Variation d'entrées SIMTSX Simulation des équipements ___________________________________________________________________________ 1/1 A En cours de simulation, le programme automate chargé dans l'automate s’exécute comme s’il pilotait l’installation réelle, et ce sans modification du programme automate. Les plate-formes de simulation SIMTSX permettent ainsi : • La mise-au-point et la validation complète et rapide des programmes API et des fonctions de contrôle-commande associées : - pilotage des équipements, dans tous les modes de fonctionnement possibles, normaux et dégradés, - fonctions de supervision et de dialogue-opérateur en liaison avec le ou les automates, - tâches de communication inter-automate ou avec les niveaux informatiques supérieurs. • La recette en plate-forme du contrôle-commande avec l’édition des documents nécessaires. • La formation des opérateurs de conduite et de maintenance avant la prise en charge des équipements sur site. ___________________________________________________________________________ 1/2 A Installation Chapitre 22 2 Installation 2.1 Vérification du matériel L’ensemble logiciel SIMTSX comprend : • un jeu de disquettes du logiciel SIMTSX au format 3"1/2, • un CD-ROM, • une formule d'autorisation à télécopier impérativement pour disposer du numéro de licence nécessaire à l'installation, • la présente documentation. 2.2 Configuration requise Le logiciel SIMTSX nécessite la configuration matérielle minimale suivante : • un ordinateur compatible IBM P.C. équipé du système d’exploitation WINDOWS 95 ou WINDOWS NT version 4.0. • un écran V.G.A. (l’utilisation d’un écran haute-résolution est recommandée), • un processeur 80486 DX ou supérieur (un PENTIUM est conseillé), • 16 Mo de mémoire RAM (20 Mo conseillé), • un disque dur disposant de 20 Mo d’espace libre pour installer SIMTSX, • un lecteur de CD-ROM ou un lecteur de disquettes 3"1/2, • une souris, • un port parallèle pour l’imprimante, • un port série COM disponible (COM1 à COM4), pour la connexion à l’automate. Compatibilités : • SIMTSX est compatible avec PL7 Version 3.• ou supérieure. • SIMTSX est compatible avec CONCEPT et IEC Simulator version 2.1 (ou supérieure). • Une application SIMTSX ne peut être connectée qu’à des processeurs Micro ou Premium (ou PCX) dont la version logicielle est supérieure ou égale à 3.• • Une application SIMTSX ne peut être connectée qu’à des processeurs Quantum compatibles avec CONCEPT 2.1 ou supérieur. • Les imprimantes supportées pour impression des chronogrammes des mouvements sont les imprimantes compatibles EPSON et HP Laser Jet. Pour l’impression des dossiers des applications de simulation et des modèles, utilisez votre imprimante habituelle. ___________________________________________________________________________ 2/1 A 2.3 Installation de SIMTSX Opérations préliminaires SIMTSX peut être installé à partir : • soit du CD-ROM, • soit du jeu de disquettes. Avant d’installer le logiciel SIMTSX sur disque dur, il est conseillé de : • lire le certificat de licence et de garantie concernant les restrictions de copie et d’installation du logiciel, • faire une duplication des disquettes nécessaires à l’installation, afin de les préserver contre toute détérioration accidentelle et ne travailler qu’avec une copie. Important : Les disquettes au format 3 pouces 1/2, sont livrées en position verrouillées en écriture. Ne pas modifier la position du verrou sur ces disquettes. Procédure d’installation Les opérations suivantes doivent précéder l’installation du logiciel SIMTSX : 1. Fermer toutes les sessions en cours (voir la documentation WINDOWS correspondante). 2. Dans le cas d’un poste équipé de WINDOWS NT, il est nécessaire d’ouvrir une session avec les droits de l’administrateur. Installation du logiciel SIMTSX • lancer depuis le bureau WINDOWS 95 ou NT dans le menu "Démarrer" l’item "Exécuter", • insérer la première disquette “SIMTSX” dans le lecteur, ou insérer le CD-ROM “ SIMTSX ” • saisir la commande "x:setup" (x étant l’identificateur du lecteur de CD-ROM ou de disquettes), puis valider par <Entrée>, • suivre les instructions (voir les modes opératoires). Modes opératoires Chaque écran de la procédure d’installation est standard. Il présente une zone de paramétrage, et 3 boutons : <Précédent>, <Suivant> et <Annuler>. Les items <Précédent> et <Suivant> permettent de passer à l’écran précédent ou suivant. L’item <Annuler> permet d’abandonner la procédure d’installation. ___________________________________________________________________________ 2/2 A Installation 2 Le premier écran permet de choisir la langue utilisée par SIMTSX. La langue proposée par défaut est détectée sur le poste. Le deuxième écran permet d’indiquer le mode d’installation choisi parmi <Par défaut> ou <Personnalisé>. Ces 2 modes déterminent le déroulement de l’installation : • Mode par défaut : SIMTSX est installé sur le poste, sur le premier disque qui a assez de place disponible, et ce sous le répertoire \SIMTSX. Des exemples d’applications et de modèles y sont aussi installés. Le driver Uni-Telway permettant de se connecter à la prise terminal d’un Micro ou d’un Premium est installé dans le répertoire \XWAYDRV\. Les modules de simulation pour Micro et Premium sont automatiquement installés si le poste comporte une version de PL7 Micro, PL7 Junior ou PL7 Pro. L’EFB de simulation pour CONCEPT nécessaire à la simulation connectée sur Quantum est automatiquement installé si le poste comporte une version de CONCEPT (l’emplacement de CONCEPT est détecté automatiquement). Le driver MODBUS pour la connexion avec un Quantum est automatiquement installé. • Mode personnalisé : Un écran permet de sélectionner les composants à installer parmi la liste : - SIMTSX, - enrichissement PL7, - enrichissement CONCEPT, - driver Uni-Telway, et de personnaliser leurs répertoires d'installation. ___________________________________________________________________________ 2/3 A 2.4 Mise en place du code d'autorisation Le mode simulation (local et connecté) nécessite un code d'autorisation. La saisie de ce code se fait au niveau du menu ? Une boîte de dialogue est alors affichée avec les commandes : <Installation> : cette commande est lancée par défaut la première fois. Elle affiche le numéro de série et le numéro de mise à jour. Reporter ces numéros sur le formulaire d'autorisation et télécopier celui-ci pour avoir votre code d'autorisation. <Activation> : cette commande permet de saisir votre numéro d'autorisation (champ "Code Production". Important : Il est important de ne jamais déplacer ou supprimer le répertoire de SIMTSX suite à cette activation, sous peine de perdre votre code d'autorisation activé sur le poste. S’il est nécessaire de déplacer SIMTSX sur un autre poste, voir la commande <Déplacement>. Important : Conserver votre télécopie envoyée et la télécopie reçue avec votre licence. ___________________________________________________________________________ 2/4 A Installation 2 <Déplacement> : cette commande permet de déplacer votre code d'autorisation d’un poste équipé de SIMTSX à un autre poste. 1. Sur le poste destinataire de SIMTSX, procéder à l’installation classique du logiciel. 2. Sur le poste équipé de SIMTSX (poste 1), cliquer sur le bouton <Déplacement>. Une boîte de dialogue s’affiche alors. 3. Sur le poste 2, cliquer sur l’item <Activation>, un numéro de série est affiché. Indiquez-le au poste 1. 4. Sur le poste 1, remplir la case d’édition <Nouveau numéro de série>, un code vous est délivré. 5. Sur le poste 2, indiquer dans la case d’édition <Code production> le code qui a été donné par le poste 1: votre droit SIMTSX est dès lors transféré sur le poste 2. Désinstallation de SIMTSX Il est possible de désinstaller le logiciel SIMTSX : • lancer depuis le bureau WINDOWS 95 ou NT dans le menu "Démarrer" l'item "Paramètres/Panneau de configuration", • dans le panneau de configuration sélctionner l'icône "Ajout/Suppression de Programme", • dans la liste des composants installés, sélectionner "SIMTSX", puis appuyer sur le bouton "Ajouter/supprimer" ; suite à une demande de confirmation, le logiciel va être retiré du poste. Les applications développées avec "SIMTSX" ne sont pas retirées du poste. Remarques 1. La désinstallation ne retire pas le code d'autorisation du poste. Par contre, pour une nouvelle installation de SIMTSX, il faudra choisir le même répertoire que celui spécifié lors de la première installation, afin de récupérer le code d'autorisation. 2. Dans le cas d'une installation du driver Uni-Telway parSIMTSX, la désinstallation retire les composants communs XWAY du poste. Il sera peut-être alors nécessaire de réinstaller les drivers pour une utilisation par d'autres logiciels. ___________________________________________________________________________ 2/5 A 2.5 Accès à SIMTSX La procédure d’accès est rigoureusement identique à celle utilisée pour les autres programmes placés dans des raccourcis du bureau WINDOWS 95 ou WINDOWS NT. Accéder au logiciel SIMTSX revient à ouvrir la fenêtre correspondante. Il faut pour cela : 1. 2. 3. 4. Ouvrir le menu Démarrer situé sur le bureau. Activer l’item Programmes. Dans le sous-menu déroulé, passer la souris devant l’item SIMTSX. Dans le sous-menu déroulé, sélectionner l’item SIMTSX. 2.6 Fenêtre principale de SIMTSX La fenêtre principale de SIMTSX donne accès aux diverses fonctionnalités du logiciel. ___________________________________________________________________________ 2/6 A Installation 2 La ligne de menu de la fenêtre est composée des 5 items suivants : • Fichier - Application : Sa sélection donne accès à la liste des applications SIMTSX existantes. - Grafcet : Cet item est accessible dès qu’une application a été sélectionnée. Sa sélection donne accès à la liste des grafcets existants. - Quitter : Cet item permet de quitter SIMTSX. • Simulation Ce bouton active un sous-menu permettant de lancer le mode simulation : "local" ou "connecté". • Description Permet d'accéder aux éditeurs de Description. • Traces Donne accès à la représentation sous forme chronogramme des évolutions de variables enregistrées pendant une simulation. • ? Donne accès à l’aide sur SIMTSX. Donne accès à la gestion du code d'autorisation SIMTSX. ___________________________________________________________________________ 2/7 A ___________________________________________________________________________ 2/8 A Raccordements aux automates Chapitre 33 3 Raccordements aux automates 3.1 Raccordements Les raccordements aux automates sont identiques à ceux utilisés par PL7 etCONCEPT. 3.1-1 Communication avec un Micro/Premium Le produit SIMTSX inclut en standard les outils pour se connecter avec un automate Micro ou Premium, et ce via la prise terminal. La connexion Automate/SIMTSX s’effectue via le port RS232. Dans le cas d’un PC avec port série, on utilisera un convertisseur RS232/RS485, par exemple le câble TSX PCU 1030, pour relier le PC au Micro/Premium. SIMTSX peut être connecté aux automates par les réseaux Fipway, Ethernet TCP/IP, Ethway moyennant la mise en place des supports physiques correspondants. On se référera aux manuels de mise-en œuvre de ces media. SIMTSX peut communiquer également avec les PCX en utilisant le driver ISA-Way. 3.1-2 Communication avec un Quantum Pour connecter SIMTSX au Quantum via Modbus Plus, le lecteur se référera à la documentation de mise en œuvre de la carte SA85. Il est possible aussi de se connecter au Quantum via une liaison Ethernet, le service utilisé étant alors Ethernet/Modbus. Pour cela, il faut se procurer une carte Ethernet / prise RJ45 au format PC, et la connecter via une liaison paire torsadée à un coupleur 140 NOE 211 00 associé à l’automate Quantum. Pour ce qui concerne la liaison Modbus, la connexion Automate/SIMTSX s’effectue via le port RS232 du PC ; on utilisera un câble Modbus standard (par exemple le câble 490 NAA 27101), pour relier le PC à la prise intégrée Modbus du Quantum. ___________________________________________________________________________ 3/1 A ___________________________________________________________________________ 3/2 Démarche de la simulation Chapitre Sommaire Intercalaire B Page 1 Démarche de la simulation 1/1 1.1 Démarche globale de description et de simulation 1/1 1.2 Démarche détaillée 1.2-1 Analyse documentaire 1.2-2 Description de l’application SIMTSX (voir intercalaires C et D) 1.2-3 Validation de l'application SIMTSX (simulation en mode local) 1.2-4 Validation du programme automate (simulation en mode connecté) 1/2 1/2 Fenêtre principale de l’interface de description 1/6 1.3 1/3 1/4 1/5 ___________________________________________________________________________ B/1 B B Démarche de la simulation Chapitre Sommaire Intercalaire B Page ___________________________________________________________________________ B/2 Démarche de la Chapitre simulation 11 1 Démarche de la simulation 1.1 Démarche globale de description et de simulation La démarche d’utilisation du produit SIMTSX peut se schématiser de la manière suivante : • Analyse documentaire : - dossiers de conception, - schémas électriques, pneumatiques, - chronogrammes des échanges, plans de l'installation. • Description de l'application SIMTSX : - bibliothèque de modèles, - grandeurs physiques, - partie électrique. • Validation de l'application SIMTSX - reflétant la conception mécanique et électrique de l'installation. • Validation du programme automate : - contrôle-commande, - dialogues inter API, - supervision... Analyse documentaire Description de l'application SIMTSX E/S Relais Axes Pupitres Synoptiques Validation de l'application SIMTSX (simulation en mode local) Validation du programme automate (simulation en mode connecté) Au-delà de la mise-au-point et validation du programme automate, la démarche SIMTSX peut se poursuivre, selon les besoins, pour la recette en plate-forme des automatismes, et la formation des opérateurs avant la prise en mains des installations réelles. ___________________________________________________________________________ 1/1 B B 1.2 Démarche détaillée La démarche proposée est destinée à guider l’utilisateur pour concevoir une application SIMTSX, puis l’utiliser le plus efficacement possible pour tester des programmes automate. Pour cela, il est utile de réaliser de manière chronologique un certain nombre d’opérations. Ces opérations sont décrites dans cet intercalaire, l’organigramme ci-dessous faisant référence aux chapitres et paragraphes concernés. 1.2-1 Analyse documentaire Quelles sont les évolutions à décrire ? Quels sont les échanges automate / SIMTSX ? Sorties automate Sous-ensemble élémentaire SIMTSX Entrées automate Sorties automate Sous-ensemble élémentaire SIMTSX Entrées automate Sorties automate Sous-ensemble élémentaire SIMTSX Entrées automate E/S ELEC MECA A partir des documents transmis par les concepteurs de l’installation, il s'agit d'identifier toutes les évolutions élémentaires possibles de l’installation qui seront à décrire dans SIMTSX : - mouvements mécaniques : vérins, plateaux, vannes, - déplacement de pièces : pièces sur tapis, convoyeurs… - évolutions de certaines grandeurs : niveau dans une cuve, température, pression, débit… - et, par extension, les dialogues entre l’automate et des sous-ensembles vus en tant que "boîte noire" : robots, boîtiers de soudure… (Les "mouvements" correspondent alors à la transcription de chronogrammes d’échange de données). Les documents à analyser sont : • les plans d'implantation, • les dossiers de conception mécanique, • les schémas fluides (pneumatique, hydraulique) • les schémas électriques, avec les pupitres de commande, le relayage, les alimentations, les entrées/sorties automate, • éventuellement une description fonctionnelle pouvant aider à la compréhension de l'installation. Il est possible qu'un ou plusieur équipements élémentaires correspondent à des équipements standards, ou déjà décrits dans des applications précédentes (exemples : vannes, systèmes de manutention), dont la description SIMTSX aura déjà été placée en bibliothèque sous forme de modèle directement récupérable (voir intercalaire C). Dans le cas contraire, les équipements seront à décrire à l'aide des outils de base de SIMTSX : axes, mouvements, capteurs, relais… (voir intercalaire D). ___________________________________________________________________________ 1/2 Démarche de la simulation 1 B 1.2-2 Description de l’application SIMTSX (voir intercalaires C et D) L'équipement existe-t-il en bibliothèque de modèle ? Oui Non Description du nouvel équipement dans l’application Création de l'application E/S Relais Axes Pupitres Synoptiques Description utilisant un modèle de bibliothèque (voir intercalaire C) Décrire les Axes (S/ch D1) Décrire les Relais (S/ch D2) Décrire les E/S (S/ch D3) Décrire les Pupitres (S/ch D4) Décrire les Synoptiques (S/ch D5) Oui Le modèle correspond-t-il exactement à l'équipement concerné ? Non Dupliquer le modèle, l’éditer pour l’adapter au contexte (S/ch B-2.2-5) "Instancier" n fois le modèle de bibliothèque dans l’application (S/chC1), les associer aux relais et aux entrées/sorties automate (S/ch C1). Edition du modèle E/S Relais Axes Pupitres Synoptiques S/ch S/ch S/ch S/ch D3 D2 D1 D4 S/ch D5 Associer les éléments issus de la bibliothèque aux éléments déjà décrits, compléter au besoin la description des schémas électriques et des pupitres Oui Existe-t-il d’autres équipements à décrire ? Non Aller en validation de l'application SIMTSX Il est vivement conseillé de procéder à une validation du comportement global de la description qui permet de plus de vérifier la conception d’ensemble en liaison avec le mécanicien. Pour cela, une fonction "grafcet" permet de décrire l’enchaînement des mouvements (description fonctionnelle) et d’animer ainsi automatiquement l’application, tout en restant en mode local (sans connexion automate). ___________________________________________________________________________ 1/3 B 1.2-3 Validation de l'application SIMTSX (simulation en mode local) (voir intercalaire G) Décrire le grafcet d’animation (voir sous-chapitre E2) Il s’agit ici de reproduire le fonctionnement de l’installation (exemple : cycle d’usinage d’une machine) en s’appuyant sur les documents fournis par le mécanicien : grafcet mécanicien, chronogramme des mouvements, voire description littérale). Puisqu’il s’agit ici de se substituer au programme automate pour enchaîner les évolutions de l’application, les actions des étapes peuvent agir sur les contacts électriques, les préactionneurs ou les actionneurs de l'application, les conditions des transitions peuvent récupérer des capteurs, des boutons de pupitre ou toute autre variable. Charger l’application et le grafcet, pour simuler en mode local dans l’environnement de simulation (voir sous-chapitre E4) • Utiliser les outils de pilotage pour animer la simulation : pupitres (S/ch E4.2-2), externes (S/ch E4.2-1), contextes (S/ch E4.2-3), scénarios (S/ch E4.8). • Utiliser les modes de marche de SIMTSX pour faire évoluer progressivement l'application, notamment le mode pas-à-pas (S/ch E4.1). • Utiliser les outils de visualisation (synoptiques pages S/ch E4.3) et les outils d’analyse (examen S/ch E4.5, activité, évolutions, pièges voir S/ch E4.6) pour la mise au point détaillée du modèle. • Accéder à la fonction Description (S/ch E4.11) pour toute modification "en ligne" qui ne remet pas en cause la description mécanique elle-même. • Utiliser la fonction Trace (S/ch E5) pour enregistrer les évolutions de l'application et les représenter ensuite sous forme de chronogramme, afin de valider de manière définitive le comportement de l'application SIMTSX (si possible en liaison avec le concepteur mécanicien). A cette étape, l'application SIMTSX obtenue doit correspondre exactement à la machine réelle en cours de réalisation ; elle peut être exploitée pour engager la mise au point du programme automate dès la fin des phases codage et tests unitaires par l’automaticien. ___________________________________________________________________________ 1/4 Démarche de la simulation 1 B 1.2-4 Validation du programme automate (simulation en mode connecté) (voir intercalaire F) API Variation de sorties Variation d'entrées SIMTSX Simulation des équipements Préparer la plate-forme de simulation (voir sous-chapitre F1.2-1) Configurer le module SIMTSX dans l'application PL7 (voir sous-chapitre F1.3) Charger l’application SIMTSX, pour simuler en mode connecté dans l’environnement de simulation (voir chapitre E4) • Utiliser les outils de pilotage pour animer la simulation : - pupitres (S/ch E4.2-2), - externes (S/ch E4.2-1), - contextes (S/ch E4.2-3), - scénarios (S/ch E4.8). • Utiliser les modes de marche de SIMTSX pour faire évoluer progressivement le modèle, notamment le mode pas-à-pas (S/ch E4.1). • Utiliser les outils de visualisation (synoptiques, pages S/ch E4.3) et d’analyse (examen S/ch E4.5, activité, évolutions, pièges S/ch E4.6) pour analyser l’état courant de l’automatisme. • Suivre l’évolution des entrées/sorties en cours de simulation (S/ch F1.5). Accéder aux différentes fonctions du menu outils pour afficher l’historique d’évolutions des entrées/sorties, ou des courbes par le tracé des variables analogiques. SIMTSX permet aussi de gérer les défauts voies et défauts modules sur Micro et Premium. • Utiliser les outils défaut (S/ch E4.7) et forçage (S/ch E4.4) pour reproduire les pannes et dysfonctionnements possibles de l’installation. • La fonction Description (S/ch E4.11) reste accessible pour d'éventuelles modifications "en ligne" de l'application qui ne remettraient pas en cause la description mécanique elle-même. ___________________________________________________________________________ 1/5 B • Prononcer la recette du programme automate lorsque toutes les fonctionnalités ont été testées et validées : utiliser au besoin la fonction Trace (S/ch E5) pour éditer les chronogrammes d’évolution dans les principaux modes de fonctionnement. Note : Dans le cas où l'architecture d'automatisme est répartie (plusieurs automates se répartissant le contrôle-commande de l'application), la simulation connectée peut se faire en deux étapes : - simulation mono-automate, automate par automate, - simuation multi-auomate, SIMTSX étant connecté par réseau à l'ensemble de l'architecture. A l'issue d'un projet SIMTSX, divers outils sont disponibles pour documenter et archiver l'application (Intercalaire G, chapitre 3), ainsi que pour transformer en modèle une partie intéressante ou réutilisable de l'application, et enrichir ainsi la bibliothèque de modèles en vue des projets futurs (Intercalaire G, chapitre 1). 1.3 Fenêtre principale de l’interface de description La fenêtre principale de l'interface de description comporte deux zones. Le bandeau supérieur conduit aux interfaces de description des différentes parties de l’installation. La zone centrale contient des informations sur l'application ou le modèle édité. Le rôle de chacun de ces éléments est détaillé ci-dessous. L’item fichier donne accès aux sous-items Application, Modèle, Imprimer, Simulation, Quitter. ___________________________________________________________________________ 1/6 Démarche de la simulation 1 B • items d’accès aux éditeurs de description : Application permet de créer, de charger et de supprimer les dossiers .Tant qu’aucune application n’a été chargée dans SIMTSX, le message "pas d'application sélectionnée" apparaît en haut à gauche de la fenêtre. Modèles voir chapitre 1 des intercalaires C et G. Entrées/sorties voir chapitre 3 de l' intercalaire D. Relais voir chapitre 2 de l' intercalaire D. Axes voir chapitre 1 de l' intercalaire D. Pupitres voir chapitre 4 de l' intercalaire D. Synoptiques voir chapitre 5 de l' intercalaire D. Grafcets voir chapitre 1 de l' intercalaire E. • accès aux autres fonctions aide lance l’aide en ligne sur la description SIMTSX outils impression de l'application voir chapitre 3 de l’intercalaire G. sauvegarde sur une disquette voir chapitre 2 de l’intercalaire G. chargement à partir d’une disquette voir chapitre 2 de l’intercalaire G. copie d’une application voir chapitre 2 de l’intercalaire G. transfert d’une application en modèle voir chapitre 1de l' intercalaire G. trace des instanciations voir chapitre 1.2 de l'intercalaire C. simulation voir intercalaire D. quitter quitte l’outil de description SIMTSX. ___________________________________________________________________________ 1/7 B ___________________________________________________________________________ 1/8 Description d'une application SIMTSX utilisant des modèles de la bibliothèque Sommaire Intercalaire C C Chapitre Page 1 Description d'une application SIMTSX 1/1 1.1 Présentation 1.1-1 Incorporation d’un modèle 1.1-2 Résolution des collisions 1.1-3 Validation des paramètres 1.1-4 Identification des entrées 1.1-5 Variables indéfinies 1.1-6 Accès à la description du modèle 1/1 1/1 1/3 1/4 1/4 1/4 1/5 1.2 Trace des instanciations 1/6 ___________________________________________________________________________ C/1 Description d'une application SIMTSX utilisant des modèles de la bibliothèque C Sommaire Intercalaire C 1234567890123456789012345678901212345678901234 1234567890123456789012345678901212345678901234 1234567890123456789012345678901212345678901234 1234567890123456789012345678901212345678901234 Chapitre Page 1234567890123456789012345678901212345678901234 1234567890123456789012345678901212345678901234 ___________________________________________________________________________ C/2 Description d'une application Chapitre SIMTSX 11 1 Description d'une application SIMTSX 1.1 Présentation Une application peut comporter des parties semblables, ou un même sous-ensemble peut être commun à des applications différentes. Il est avantageux de pouvoir facilement réutiliser des "modèles standards", en évitant une redescription laborieuse et source d’erreurs. De plus la sauvegarde du savoir-faire de description d’éléments peut s’avérer intéressante. Pour ces raisons la notion de "modèle" a été introduite dans l’interface de description de SIMTSX. L’utilisation de cette fonctionnalité comporte deux aspects : • la définition de modèles archivés dans une bibliothèque (détaillé dans le chapitre 1 de l'intercalaire G), • l'incorporation d'un modèle dans la description d'une application. 1.1-1 Incorporation d’un modèle L’incorporation d’un modèle consiste à importer un modèle déjà décrit et simulé dans une application. Il suffit de sélectionner le modèle adéquat dans la bibliothèque proposée dans SIMTSX (menu Fichier > Modèle). SIMTSX est livré avec une bibliothèque de modèles représentatifs, voir chapitre 1 de l’intercalaire H. L’incorporation d’un modèle peut avoir lieu à tout moment au cours de l’édition d’une application. Cependant, dans le cas où le modèle comprend des entrées ou si certaines variables indéfinies y figurant doivent être identifiées à des sorties, il est nécessaire que les entrées/sorties de l’application aient été préalablement configurées. ___________________________________________________________________________ 1/1 C C Un commentaire général est associé au modèle sous la forme d’un texte accessible par le bouton Commentaire apparaissant dans la fenêtre de sélection des modèles. De plus, les variables de description peuvent aussi être commentées afin de garantir la lisibilité du modèle lors de son utilisation. Pour incorporer un modèle dans une application, il faut, après avoir sélectionné le modèle désiré dans la fenêtre "gestion des modèles", cliquer le bouton Instancier. Avant que le modèle puisse être inclus dans l’application, un certain nombre d’opérations doivent être effectuées au moyen de fenêtres spécifiques. Bibliothèque de modèles Relais Edition d'une application SIMTSX itres Axes 1. Sélection du modèle Instancier 2. Résolution des collisions Contrôles (Eléments déjà existants) (Attribution d'un nom aux paramètres et contrôle des collisions) (Conformité aux entrées/sorties, entrées déjà affectées, réaffectation) 5. Identification des variables indéfinies 3. Valuation des paramètres 4. Identification des entrées/sorties Incorporer Remarque Le processus peut être interrompu, le bouton Adapter se trouvant en bas à gauche de la fenêtre principale d’incorporation de modèle permet de le réactiver. Dès que le modèle peut être inclus dans la machine, ce bouton est remplacé par le bouton Incorporer. ___________________________________________________________________________ 1/2 Description d'une application SIMTSX 1 1.1-2 Résolution des collisions Les "collisions" correspondent à des incompatibilités entre le modèle et l’application où l’on souhaite l’incorporer. Ces incompatibiités sont dues à l’existence de variables définies de même nom dans le modèle et l’application. Au cas où des collisions existent, la liste des variables concernées apparaît dans la fenêtre résolution des collisions, il faut renommer ces variables pour pouvoir reprendre le processus d’incorporation. Exemple : ___________________________________________________________________________ 1/3 C 1.1-3 Validation des paramètres C Si des paramètres ont été utilisés dans la définition du modèle à incorporer, il faut leur donner une valeur permettant "l'instanciation" de ce modèle. Les paramètres sont présentés dans la partie gauche de la fenêtre. La sélection d’un paramètre fait apparaître les éléments du modèle dans lesquels il intervient. La valeur à affecter à un paramètre est saisie dans un éditeur et validée (l'action de validation permet d'exécuter le contrôle automatique des collisions). Seules les valeurs n’introduisant pas de collisions sont autorisées. 1.1-4 Identification des entrées Si des entrées sont définies dans le modèle et que leurs adresses ne sont pas conformes à la configuration de l’application ou déjà affectées, il est nécessaire d'associer à ces entrées des adresses compatibles et disponibles. 1.1-5 Variables indéfinies Un modèle peut comporter des "variables indéfinies", représentant des conditions externes à ce modèle. Un modèle étant destiné à être incorporé dans l'application d'accueil, ces variables indéfinies peuvent correspondre à des variables existantes. Le bouton "Identifier" de la fenêtre d’accès aux variables indéfinies du modèle permet de sélectionner la variable de l’application à laquelle on souhaite identifier une de ces variables. Le bouton "Renommer" permet de changer le nom d’une variable indéfinie du modèle. ___________________________________________________________________________ 1/4 Description d'une application SIMTSX 1 1.1-6 Accès à la description du modèle Les boutons Relayage, Pupitres, Mouvements permettent d’accéder aux différentes composantes du modèle que l’on incorpore. On peut ainsi d’une part visualiser les éléments constituant le modèle et d’autre part changer le nom des variables de celuici, à condition toutefois qu’elles ne soient pas paramétrées. • Cas particulier des pupitres Un pupitre est constitué, d’une part, d’éléments (boutons poussoirs, commutateurs) agissant sur l’état de variables et d’autre part de voyants et afficheurs reflétant l’état de variables. La définition d’un pupitre est cohérente si les variables associées aux boutons poussoirs et commutateurs sont utilisées dans le relayage ou les entrées, et si les variables associées aux voyants et aux afficheurs sont des sorties ou des relais. Pour qu'un pupitre d'un modèle soit cohérent, il faut que ce pupitre soit accompagné de la description d’un relayage et/ou d’équations d’entrées. Les variables intervenant dans les éléments de ce pupitre doivent être définies et utilisées dans le relayage et/ou les équations d'entrées. Si par contre le modèle n’est constitué que d’un pupitre, il est forcément "non cohérent". Cette cohérence peut être vérifiée dans la fenêtre Pupitres lors de l’incorporation d’un modèle, au moyen du bouton Cohérence des variables. Si la cohérence n’est pas respectée, les variables concernées sont présentées. ___________________________________________________________________________ 1/5 C 1.2 C Trace des instanciations Un modèle peut être instancié plusieurs fois dans une application. Une trace des instanciations de modèles dans une application est conservée. On accède à cette trace par le menu Outils de l’interface de description. La liste des noms des différents modèles incorporés est présentée, avec le nombre d’instances correspondant. Si on sélectionne un des noms de modèle dans la liste de gauche, la valeur donnée aux paramètres pour la première instance de ce modèle est présentée. Les variables de l’application correspondant à cette instance sont affichées à droite. Si plusieurs instances existent pour le modèle sélectionné, on peut les visualiser au moyen des flèches se trouvant à droite du numéro de l’instance affichée dans la partie centrale de la fenêtre. Les valeurs données aux paramètres et les variables correspondantes sont présentées. On peut également accéder à une instance particulière d’un modèle en sélectionnant les valeurs qui ont été données aux paramètres du modèle lors de l’incorporation dans l’application. Pour ce faire, il faut cliquer, dans la partie centrale de la fenêtre, le paramètre dont on veut sélectionner la valeur. Apparaît alors l’ensemble des valeurs prises par ce paramètre compte tenu des valeurs qui ont été sélectionnées pour les paramètres précédents. Si on sélectionne l’une de ces valeurs, la première instance pour laquelle le paramètre correspondant a cette valeur est visualisée. Quand une instance est sélectionnée, les variables correspondantes sont affichées dans la partie droite de la fenêtre. Ces variables peuvent être éditées et on peut également changer leur nom. Si on édite une de ces variables, les boutons Précédent et Suivant de la fenêtre d’édition correspondante permettent de se déplacer dans l’ensemble des variables de l’application issue de la même variable du modèle. Ceci permet de faciliter une correction a posteriori des instances d’une application. Le bouton Supprimer permet de retirer toutes les instances de ce modèle de la description de l’application. Le bouton Supprimer l’instance permet de ne retirer de l’application que l’instance sélectionnée. ___________________________________________________________________________ 1/6 Description d'une application SIMTSX à partir de nouveaux éléments Sommaire Intercalaire D Chapitre Page 1 Description des axes 1/1 1.1 Fenêtre principale de description des axes 1/1 1.2 Création et édition des axes 1/2 1.3 Caractéristiques de l’axe 1/3 1.4 Liens amont et aval de l’axe 1/5 1.5 Axe standard 1/5 1.6 Axes échantillonnés 1/6 1.7 Création et édition des capteurs 1.7-1 Configuration de base proposée par l’interface 1.7-2 Description d’un capteur par évolutions 1.7-3 Vérification de la description des capteurs : visualisation 1/6 1/7 1/8 1/9 1.8 Création et édition des mouvements 1.8-1 Prise en compte d’une vitesse variable dans les mouvements 1/10 Création et édition des bistables 1/13 1.9 1/11 1.10 Création et édition des variables 1.10-1 Variables booléennes 1.10-2 Variables numériques : définition et évaluation 1.10-3 Prise en compte des variables numériques dans les expressions logiques 1.10-4 Liens avec les entrées-sorties 1/14 1/14 1/15 1.11 Accès aux "variables indéfinies" 1/20 1.12 Vérification de la description des axes 1/21 1/19 1/19 ___________________________________________________________________________ D/1 D Description d'une application SIMTSX à partir de nouveaux éléments D Sommaire Intercalaire D Chapitre Page 2 Description des relais 2/1 2.1 Introduction 2/1 2.2 Création d’un relais 2/2 2.3 Edition des relais 2/2 2.4 Prise en compte des contacts temporisés dans les équations des relais 2/3 3 Description des entrées/sorties 3.1 Introduction 3/1 3/1 3.2 Configuration des modules d’entrées/sorties 3.2-1 Modes opératoires du configurateur d’entrées/sorties 3.2-2 Configuration des automates Micro 3.2-3 Configuration des automates Premium 3.2-4 Configuration des automates Quantum 3.2-5 Configuration du multi-automate 3/1 3/1 3/6 3/12 3/18 3/22 3.3 Edition des entrées/sorties 3/23 3.4 Edition des entrées/sorties numériques 3/24 3.5 Edition des Mots 3/25 4 Description des pupitres 4.1 Introduction 4/1 4/1 ___________________________________________________________________________ D/2 Description d'une application SIMTSX à partir de nouveaux éléments Chapitre 4.2 4.3 Création et édition des pupitres 4.2-1 Création d’un élément 4.2-2 Modification d’un élément 4.2-3 Suppression et restitution d’un élément Définition des éléments des pupitres 4.3-1 Boutons poussoirs 4.3-2 Boutons poussoirs à accrochage 4.3-3 Voyants 4.3-4 Boutons poussoirs à voyant 4.3-5 Interrupteur 4.3-6 Commutateurs à 2 positions 4.3-7 Commutateurs à 3 positions 4.3-8 Commutateurs à n positions 4.3-9 Roues codeuses 4.3-10 Afficheurs hexadécimaux (ou "digits") 4.3-11 Texte 4.3-12 Séparateur 5 Description des synoptiques Sommaire Intercalaire D Page 4/1 4/2 4/2 4/2 4/2 4/3 4/4 4/4 4/5 4/5 4/6 4/7 4/8 4/9 4/10 4/10 4/10 5/1 5.1 Introduction 5/1 5.2 Création et édition des synoptiques 5.2-1 Axes 5.2-2 Variables 5.2-3 Texte 5.2-4 Décodeurs 5.2-5 Lignes 5/1 5/2 5/4 5/5 5/6 5/6 5.3 Aides 5.3-1 5.3-2 5.3-3 5/7 5/7 5/7 5/7 à l’édition des synoptiques Copier/Coller Déplacement d’éléments Impression des synoptiques ___________________________________________________________________________ D/3 D Description d'une application SIMTSX à partir de nouveaux éléments D Chapitre Sommaire Intercalaire D Page ___________________________________________________________________________ D/4 DescriptionChapitre des axes 11 1 Description des axes 1.1 Fenêtre principale de description des axes Cette fenêtre liste les axes constituant la description. Des boutons permettent de créer un nouvel axe, éditer, renommer ou supprimer les axes existants. A ce niveau peut être modifiée l’unité de temps utilisée pour la configuration. Par défaut cette unité est la seconde, elle peut être remplacée par le 1/100ième de minute en cliquant sur le texte seconde apparaissant dans la fenêtre. Ce choix d’unité est important pour la représentation des traces de simulation (voir chapitre 5 de l’intercalaire E). Le bouton Vérifier permet de signaler des anomalies dans la description. Les bistables et variables de modélisation (booléennes et numériques) ne sont pas associés de façon univoque à un axe. Aussi des boutons permettent-ils d’accéder à la liste des bistables et variables utilisés dans tous les axes. Le bouton Indéfinis donne accès à la liste des variables utilisées dans la description et qui n’ont pas été définies. ___________________________________________________________________________ 1/1 D 1.2 D Création et édition des axes La description des éléments mécaniques de l’installation est effectuée au moyen d'un "axe". Un axe représente une évolution physique de l’élément mécanique considéré : par exemple un vérin, un tapis ou convoyeur (évolution des pièces), une cuve (évolution du niveau), une vanne (évolution de la position d’ouverture et donc du débit), etc. Des capteurs positionnés sur l’axe permettent de représenter les échanges avec l’automate. Deux types d'axes sont disponibles : • l'axe de base, qui associé à des capteurs, permet de faire percevoir à l'automate la position de l'actionneur en certains points bien définis (caractérisés par ces capteurs), • l'axe échantillonné, qui suivant un pas donné, permet de fournir à l'automate la position d'un mobile ou la valeur d'une grandeur physique, en continu. Axe de base Axe échantillonné Compte-rendu vers l'automate FC1 EV1=1 Valeur transmise à l'automate FC2 MVT=1, vitesse= +10 EV1 SV1 Ordres de l'automate Ordres de l'automate MVT La création d’un axe commence par la définition du nom permettant de l’identifier. Le nom d’un axe est de la forme ax-<no>, où <no> est le numéro de l’axe incrémenté au fur et à mesure de la description. Ce numéro peut être modifié par l’utilisateur, il peut être associé à une chaîne comptant au plus 7 caractères. La fenêtre de configuration d’un axe permet d’une part la saisie des caractéristiques propres de l’axe et d’autre part d’accéder aux variables qui lui sont associées. ___________________________________________________________________________ 1/2 Description des axes 1.3 1 Caractéristiques de l’axe Outre le libellé de l’axe (chaîne d’au plus 16 caractères), les caractéristiques propres de l’axe, saisies directement dans la fenêtre d’édition sont les suivantes : sens - sens + Longueur L Position initiale Mouvement(s) Type linéaire ou rotatif D Longueur Capteurs libellé, position sur l'axe, logique Mouvements équation logique, sens, vitesse Variables bistable, variable booléenne, et/ou numérique Type de l’axe Par défaut l’axe est linéaire, c’est-à-dire que les évolutions sont limitées entre un début et une fin de course. Ceci correspond à la majorité des actionneurs (les vérins). Un axe peut être rotatif : la fin de course est confondue avec le début de l'autre (tourelle portant différents outils, transferts de pièces…). La longueur C’est un nombre strictement positif, exprimé dans l’unité choisie pour toute l’application. La largeur de came Par défaut, cette largeur est nulle. En pratique cette came est peu utilisée : on lui préfère souvent la largeur d’activation associée à chacun des capteurs de l’axe. La position initiale de l’axe Par défaut en début d’axe, cette position peut être en fin d’axe ou être déterminée en fonction d’un des capteurs de l’axe. ___________________________________________________________________________ 1/3 Les capteurs Les capteurs correspondent aux capteurs physiques installés sur l’élément mécanique représenté par l’axe. Ce sont ces informations qui vont être retournées à l’automate. D Les mouvements Les mouvements sont des équations qui gèrent la logique d’évolution physique de l’élément mécanique représenté par l’axe. Les mouvements sont généralement fonctions des sorties automates, via la partie électrique, et une vitesse d’évolution correspond à la dynamique de l’élément mécanique concerné. Les variables Des variables booléennes ou numériques peuvent être associées aux axes, afin de gérer les évolutions du système. Type Longueur Echantillonnage Came Liens amont/aval Position initiale Gestion des évolutions de l'axe... Le bouton Valider permet de prendre en compte les informations que l’on vient de décrire. Le bouton Annuler permet de retrouver les valeurs de la dernière validation. Les boutons Précédent et Suivant permettent d’éditer les axes précédent et suivant, déjà définis. ___________________________________________________________________________ 1/4 Description des axes 1.4 1 Liens amont et aval de l’axe Les capteurs et mouvements sont définis par rapport à un axe : le lien avec cet axe est donc immédiat. Pour les autres variables, l’association aux axes se fait selon les deux principes suivants : • Le lien amont consiste à associer à l’axe toutes les variables de la description intervenant dans la définition de ses mouvements, en excluant toutefois les relais faisant partie de l’alimentation générale (voir chapitre 3 de cet intercalaire). Appliquée récursivement, cette association permet de remonter jusqu’aux sorties de la partie commande. • Le lien aval consiste à associer à l’axe les variables de la description dans lesquelles interviennent ses capteurs. De la même façon que le lien amont, il est appliqué récursivement jusqu’aux entrées. Les boutons Amont et Aval permettent de visualiser ces variables dans la fenêtre d’édition d’un axe. La sélection d’une de ces variables avec la souris, permet de l’éditer. Ainsi, la description devient un véritable réseau représentant toute la partie électrique et mécanique de l’installation à modéliser. Les boutons se trouvant dans la partie inférieure droite de l’écran ouvrent les fenêtres d’édition respectivement des capteurs, mouvements, numériques, bistables et variables liés à l’axe. 1.5 Axe standard La description d’un axe peut nécessiter la manipulation d’un certain nombre de fenêtres, afin de définir les variables qui lui sont associées. C’est pourquoi la notion "d'axe standard" a été introduite. Le bouton Standard se trouvant dans la partie inférieure droite de la fenêtre permet d’ouvrir une page de description d’un axe type, tel qu’un vérin. Un axe standard comprend au plus deux capteurs, obligatoirement en début et fin d’axe. Au maximum, deux mouvements (positif et négatif) lui sont associés. Le bouton bistable permet de compléter cette description (voir sous-chapitre bistable). ___________________________________________________________________________ 1/5 D 1.6 Axes échantillonnés Un axe échantillonné possède, par rapport à un axe de base, une caractéristique supplémentaire qui est son "pas", défini par une valeur numérique, correspondant à la précision souhaitée pour la grandeur physique associée à l’axe. D La case "Echantillonné" doit être caché pour obtenir un axe échantillonné. Le "pas" de l’axe, c’est-à-dire à la distance entre 2 déplacements successifs de l’axe (hormis les capteurs réels) doit être saisi. Si l’axe "ax-i" est échantillonné, la variable "ax-i" a pour valeur le nombre de pas courant dans cet axe et peut être utilisée comme une grandeur numérique dans la modélisation. Elle peut en particulier être transcodée. Sur cette base, la modélisation d’un codeur sur 10 bits peut se faire simplement au moyen d’un axe de longueur 1023 et de pas 1. Un transcodage éventuel sera réalisé au moyen d’une variable numérique comme nous le verrons par la suite. En dehors du nombre de pas d’un axe échantillonné, deux autres informations, booléennes, sont disponibles qui peuvent être utilisées dans l’équation des variables de modélisation et des capteurs combinés : il s’agit de "+ax-i" et "-ax-i". Elles sont vraies de façon fugitive quand le nombre de pas dans l’axe est respectivement incrémenté et décrémenté. 1.7 Création et édition des capteurs Le bouton Capteurs de la fenêtre de configuration d’un axe fait apparaître le menu principal de la fonction d’édition des capteurs associés à cet axe. A ce niveau, il est possible comme pour toutes les variables liées à un axe, de créer, éditer, renommer et supprimer des capteurs. Les fenêtres de création et d’édition sont presque analogues, les différences sont les suivantes : • en création, on doit saisir le mnémonique du capteur créé. Le bouton Indéfinis permet de choisir le nom du capteur parmi les variables déjà présentes dans la description mais pas encore utilisées, • en édition, le mnémonique du capteur n’est pas modifiable : il faut recourir à la fonction Renommer. Dans ce mode, on peut passer d’un capteur à l’autre sans quitter la fenêtre d’édition. Deux manières différentes de décrire un capteur sont proposées dans l’interface de description. ___________________________________________________________________________ 1/6 Description des axes 1 1.7-1 Configuration de base proposée par l’interface C’est l’option par défaut. Celle-ci consiste à décrire le capteur par quatre informations qui sont : La position Celle-ci peut être début, fin d’axe ou une valeur numérique. Dans ce dernier cas, il faut veiller à ce que les choix en début ou fin d’axe ne soient plus sélectionnés, ce qui peut être obtenu en validant par la touche <Entrée> la valeur saisie. Le type logique 1. logique positive : le capteur est activé (son état logique est 1) quand la came agit dessus, 2. logique négative : l’état du capteur est complémenté par rapport au cas précédent, 3. enclenchement : le capteur passe à l’état actif à partir de sa position et le reste jusqu’à la fin de l’axe, 4. déclenchement : le fonctionnement est symétrique de l’enclenchement. La largeur d’activation Cette information caractérise la longueur pendant laquelle le capteur est actif (logique positive) ou inactif (logique négative). Par défaut, le capteur "hérite" de la largeur de came associée à l’axe. Le nombre d’occurrences Par défaut égal à 1, ce nombre permet de répéter le capteur plusieurs fois dans l’axe à intervalles réguliers. Ceci peut être utile par exemple dans le cas d’un axe rotatif activant un capteur au moyen de cames réparties régulièrement. Cette fonction n’est active que si le type de logique est logique positive ou logique négative. Note : La largeur d’activation est différente de la notion de "came" attachée à l’axe. Si un axe linéaire a une came non nulle, sa longueur est réduite d’autant et la position de chacun de ses capteurs est avancée, car l’on considère que le déplacement de cette came s’effectue "à l'intérieur" de l’axe. Les boutons Précédent et Suivant permettent d’éditer les axes précédent et suivant, déjà définis. Les boutons Valider, Quitter et Annuler permettent de sortir des fenêtres de création et de modification. ___________________________________________________________________________ 1/7 D 1.7-2 Description d’un capteur par évolutions D La description d’un capteur de la manière "standard" peut s’avérer inadaptée dans certains cas. Notamment quand un capteur de l’axe est activé par des cames de largeurs variables et/ou disposées à intervalles irréguliers. Pour pallier cela, il est possible de décrire un capteur de façon totalement libre. En cliquant le bouton Spécial se trouvant en haut à gauche de la fenêtre d’édition du capteur, le contenu de cette fenêtre est modifié. Si des données ont été saisies en mode "standard", on les retrouve ici sous la forme d’un chronogramme d’une part, et de la suite des évolutions logiques du capteur d’autre part, dans un défileur dans la partie droite de la fenêtre. L’état initial est indiqué au moyen d’un sélectionneur à 2 positions. La configuration du capteur consiste, à partir d’un état initial, à donner la suite des évolutions affectant le capteur. Ces évolutions sont saisies au moyen de l’éditeur se trouvant au bas de la fenêtre. La validation par la touche <Entrée> a pour effet d’ajouter la position d’évolution à celles se trouvant dans le défileur, si la valeur saisie est un nombre positif plus petit ou égal à la longueur de l’axe. Le chronogramme représentant les évolutions du capteur est simultanément remis à jour. Le bouton Fin à droite de l’éditeur permet de faire apparaître dans celui-ci la longueur de l’axe auquel le capteur est associé. Ceci permet de positionner une évolution en fin d’axe après validation, ou simplement de pouvoir se rappeler cette longueur. Le retrait d’une évolution non souhaitée est réalisé en la cliquant avec la souris dans le défileur. Le chronogramme est automatiquement remis à jour. ___________________________________________________________________________ 1/8 Description des axes 1 1.7-3 Vérification de la description des capteurs : visualisation Afin de vérifier si la configuration des capteurs que l’on a effectuée correspond bien à ce que l’on souhaitait faire, une fonction de Visualisation est disponible. Le bouton Visualiser du menu d’édition des capteurs permet de faire apparaître une fenêtre où est affiché un chronogramme des évolutions des capteurs de l’axe. Pour avoir une vision plus précise des positions de changement d’état de ces capteurs et de l’ordre dans lequel elles se produisent, on peut également visualiser la succession des évolutions de ces capteurs tout au long de l’axe. Note : A ce niveau de la représentation sous forme de chronogramme, il est possible d’éditer les capteurs en cliquant sur leur nom avec la souris. On peut ainsi corriger une configuration incorrecte. ___________________________________________________________________________ 1/9 D 1.8 Création et édition des mouvements Le bouton Mouvements de la fenêtre de configuration d’un axe fait apparaître le menu principal de la fonction d’édition des mouvements associés à un axe. Il est possible de créer, éditer, renommer et supprimer des mouvements. L’édition d’un mouvement consiste à déclarer : D Le mnémonique Celui-ci peut être entré à l’éditeur, ou sélectionné parmi les mnémoniques des sorties du bornier (bouton Sorties). Dans ce cas, en cliquant sur l’une d’entre elles, on crée le mouvement associé avec son mnémonique, et pour équation l’adresse de celle-ci. Le sens du mouvement Un mouvement ayant un sens positif entraîne un déplacement vers une position croissante sur l’axe (vers l’extrémité de l’axe). Un mouvement ayant un sens négatif entraîne un déplacement vers l’origine de l’axe. La vitesse Elle détermine la durée du déplacement de l’axe entre 2 capteurs. La vitesse d’évolution peut être une constante (valeur) ou une variable numérique. Note : Une vitesse "infinie" entraîne une durée de déplacement nulle d’un capteur vers un autre. L’équation Elle détermine l’état du mouvement. C’est une fonction logique de variables de modélisation, de relais, de capteurs, de sorties, ou de comparaisons de numériques. ___________________________________________________________________________ 1/10 Description des axes 1 Le bouton Termes permet de renseigner sur la nature des termes utilisés dans l’équation validé. Le bouton Aide Edition permet d’ouvrir une fenêtre où l’on peut sélectionner les variables susceptibles d’intervenir dans une équation. Elles peuvent être transférées dans les éditeurs de saisie de ces équations. Le bouton Dictionnaire permet d’accéder à une liste utilisateur dans laquelle il est possible de stocker, puis Copier/Coller, les équations les plus souvent utilisées. C’est en fait un "bloc note" accessible au niveau de toutes les équations dans l’environnement de description. La fonction Copier/Coller est réalisée avec la souris : sélectionner l’équation à copier avec le bouton gauche maintenu, relâcher le bouton pour coller, puis double cliquer à l’endroit où l’on veut coller. L’équation est toujours mémorisée tant qu’une nouvelle sélection n’est pas faite. Cette fonction est disponible partout dans l’éditeur SIMTSX. Les boutons Précédent et Suivant permettent d’éditer les équations des mouvements précédent et suivant, déjà définis pour l’axe. Les équations portant généralement sur les mêmes termes, ceci permet d’éviter de retaper une équation intégralement : il peut parfois suffire de complémenter certaines variables pour avoir l’équation du nouveau mouvement. Les boutons Valider, Quitter et Annuler permettent de sortir des fenêtres de création et de modification. 1.8-1 Prise en compte d’une vitesse variable dans les mouvements La vitesse d’un mouvement peut être la valeur d’une variable numérique. Si la variable prend une valeur négative, le sens du mouvement est inversé par rapport à celui défini en configuration. Exemple : Prenons l’exemple d’une cuve susceptible d’être remplie par deux vannes "tout ou rien" et vidée par une troisième. Pour décrire l’évolution du niveau de cette cuve, 5 mouvements - voire 7 si les débits entrant ont des valeurs différentes - doivent être définis et activés en fonction des combinaisons possibles d’ouverture des vannes. ___________________________________________________________________________ 1/11 D Si les vannes sont de plus des vannes proportionnelles, la notion de mouvement à vitesse constante devient alors trop limitative. D Vanne additif 1 L’exemple de la cuve exposé ci-dessus peut être traité plus simplement avec une vitesse variable de la manière suivante : En supposant que les débits apportés par les vannes vanne1 et vanne2 sont entrants et provoquent une variation de niveau de la cuve avec les vitesses respectives 10 et 5, tandis que le débit sortant par la vanne3 cause une baisse du niveau de la cuve à une vitesse 12. Vanne additif 2 Vitesse variable Vanne V Partant d’une valeur par défaut égale à 0, le tableau d’affectations présenté ci-dessous permet de calculer la vitesse de variation résultante du niveau de la cuve, par sommation algébrique en fonction de conditions booléennes représentant l’ouverture des vannes : Vitesse Affectations 0 + 10 +5 - 12 Conditions Explication < vanne1 < vanne2 < vanne3 la vitesse vaut 0 si les vannes 1, 2 et 3 sont fermées la vitesse vaudra 10 de plus si on ouvre la vanne 1 la vitesse vaudra 5 de plus si on ouvre la vanne 2 elle vaudra 12 de moins lors de l’ouverture de la vanne 3 La condition d’activation - ou équation - du mouvement de remplissage/vidage est donc la somme logique des ouvertures des vannes, soit : vanne1 + vanne2 + vanne3. Quand on arrive en fin de course sur l’axe - la cuve est remplie ou vide - le mouvement est désactivé. Cependant, la variable décrivant la vitesse peut conserver une valeur non nulle dès lors que l’une des vannes reste ouverte. Par contre, si la vitesse variable d’un mouvement s’annule, le mouvement est arrêté. La possibilité de rendre variable la vitesse d’un mouvement permet ainsi de se passer de l’équation définissant la condition d’activation, nécessaire pour les mouvements à vitesse constante. Cette équation peut rester néanmoins nécessaire pour décrire - par exemple - une condition d’énergie (inutile ici dans l’exemple de la cuve, puisque l’actionneur n’est autre que la gravité). ___________________________________________________________________________ 1/12 Description des axes 1.9 1 Création et édition des bistables La fenêtre de description des bistables de SIMTSX contient les éléments suivants : Le mnémonique Il s’agit du nom du bistable. Ce nom est utilisé dans les équations des éléments en aval du bistable, notamment les mouvements commandés par le bistable. Le terme d’enclenchement Nom d’un élément de description en amont du bistable. Le bistable prend l’état "1" sur le front montant du terme d’enclenchement lorsque la condition est vérifiée. Il garde cette valeur tant que le déclenchement n’est pas effectué, même si le terme d’enclenchement retombe à l’état "0". Le terme de déclenchement Nom d’un élément de description en amont du bistable. Le bistable prend l’état "0" sur le front montant du terme de déclenchement lorsque la condition est vérifiée. Il garde cette valeur jusqu’à ce qu’un nouvel enclenchement soit effectué, même si le terme de déclenchement retombe à l’état "0". La condition Nom d’un élément de description en amont du bistable. Le bistable ne peut pas changer d’état si la condition n’est pas vérifiée. Généralement, on trouve en condition un terme représentant l’énergie. Le bouton Indéfinis fait apparaître, dans une fenêtre, les variables de la description. Ce choix est limité aux variables indéfinies en amont de l’axe, intervenant par exemple dans l’équation des mouvements de celui-ci. Le bouton Aide Edition permet d’ouvrir une fenêtre où l’on peut sélectionner les variables susceptibles d’intervenir pour l’enclenchement, le déclenchement ou la condition. Les boutons Valider et Quitter permettent de sortir des fenêtres de création et de modification. ___________________________________________________________________________ 1/13 D 1.10 Création et édition des variables 1.10-1 Variables booléennes Le bouton Variables de la fenêtre d’édition de l’axe fait apparaître le menu principal permettant la création, l’édition, le changement de nom et la suppression des variables booléennes associées à l’axe. D Les variables sont associées à des équations logiques généralement utilisées pour gérer des évolutions internes à la description (analogie au bit interne du programme automate). Les éléments suivants peuvent intervenir dans les équations : • les capteurs, • les variables de pupitres, • les variables externes, • les relais, • les sorties, • les autres variables. Le bouton Termes permet de renseigner sur la nature des termes utilisés dans l’équation validé. Le bouton Aide Edition permet d’ouvrir une fenêtre où l’on peut sélectionner les variables susceptibles d’intervenir dans une équation. Elles peuvent être transférées dans les éditeurs de saisie de ces équations. Le bouton Dictionnaire permet d’accéder à une liste utilisateur dans laquelle il est possible de stocker, puis Copier/Coller, les équations les plus souvent utilisées. C’est en fait un "bloc note" accessible au niveau de toutes les équations dans l’environnement de description. La fonction Copier/Coller est réalisée avec la souris : sélectionner l’équation à copier avec le bouton gauche maintenu, relâcher le bouton pour coller, puis double cliquer à l’endroit où l’on veut coller. L’équation est toujours mémorisée tant qu’une nouvelle sélection n’est pas faite. Cette fonction est disponible partout dans l’éditeur SIMTSX. ___________________________________________________________________________ 1/14 Description des axes 1 Les boutons Précédent et Suivant permettent d’éditer les équations des mouvements précédent et suivant, déjà définis pour l’axe. Les équations portant généralement sur les mêmes termes, ceci permet d’éviter de retaper une équation intégralement : il peut parfois suffire de complémenter certaines variables pour avoir l’équation du nouveau mouvement. Les boutons Valider, Quitter et Annuler permettent de sortir des fenêtres de création et de modification. 1.10-2 Variables numériques : définition et évaluation Les variables numériques permettent d’aborder la modélisation des applications ayant une forte composante analogique, ce qui se traduit bien souvent dans l’architecture d’automatisme par l’utilisation de coupleurs spécialisés : modules d’Entrées/ Sorties analogiques, cartes d’axe, comptage rapide, variateurs... La fenêtre d’édition des axes donne l’accès (via l’appui sur le bouton Numériques ) à la configuration des variables numériques. La valeur d’une variable numérique est définie par un "tableau d’affectations", suite de lignes d’affectations éventuellement conditionnées. L’affectation peut être une constante, une variable numérique ou une position d’axe échantillonné, ou un registre de sortie. L’affectation peut aussi être un traitement élémentaire faisant intervenir un "opérateur" et un "opérande" : • transcodage d’une autre grandeur numérique, • incrémentation ou décrémentation sur le passage à "1" d’une expression, • opération arithmétique sur une constante ou une autre variable numérique : addition, soustraction, multiplication, division, • expression mathématique fonction d’une constante ou d’une autre variable numérique : cos, sin, exp, sqrt, log, abs, • expression logique : décalage à gauche ou à droite (shr,shr), et/ou logique (and/or). En vis-à-vis de l’affectation, une condition booléenne relative peut être insérée : • événement sur une variable booléenne (front montant ou descendant), • état d’une variable booléenne, • test d’égalité ou de comparaison de variables numériques, • expression logique de plusieurs variables booléennes ou numériques. Une variable numérique est définie par : • son mnémonique (10 caractères), • on peut lui associer une valeur minimale et maximale qui déterminent sa plage de variation, • sa valeur est mise à jour par un tableau d’affectations conditionnées. ___________________________________________________________________________ 1/15 D Les commandes Ajouter, Insérer permettent de compléter le tableau d’affectations par le contenu des champs d’édition Affectation et Condition. Les commandes Editer, Remplacer, Supprimer sont relatives à la ligne du tableau d’affectations sélectionnée. D A la différence des variables externes booléennes qui apparaissent implicitement quand on introduit un terme non défini dans une expression logique, les externes numériques doivent être définies explicitement. Ceci se fait en cochant la case Externe de la fenêtre de configuration. Le bouton Termes permet de renseigner la nature des termes utilisés dans l’équation validée. Le bouton Aide Edition permet d’ouvrir une fenêtre où l’on peut sélectionner les variables susceptibles d’intervenir dans une équation. Elles peuvent être transférées dans les éditeurs de saisie de ces équations. Le bouton Dictionnaire permet d’accéder à une liste utilisateur dans laquelle il est possible de stocker, puis Copier/Coller, les équations les plus souvent utilisées. C’est en fait un "bloc note" accessible au niveau de toutes les équations dans l’environnement de description. La fonction Copier/Coller est réalisée avec la souris : sélectionner l’équation à copier avec le bouton gauche maintenu, relâcher le bouton pour coller, puis double cliquer à l’endroit où l’on veut coller. L’équation est toujours mémorisée tant qu’une nouvelle sélection n’est pas faite. Cette fonction est disponible partout dans l’éditeur SIMTSX. Les boutons Précédent et Suivant permettent d’éditer les équations des mouvements précédent et suivant, déjà définis pour l’axe. Les équations portant généralement sur les mêmes termes, ceci permet d’éviter de retaper une équation intégralement : il peut parfois suffire de complémenter certaines variables pour avoir l’équation du nouveau mouvement. Les boutons Valider, Quitter et Annuler permettent de sortir des fenêtres de création et de modification. ___________________________________________________________________________ 1/16 Description des axes Détail des affectations · affectation simple registre de sortie tableau de sorties 1 exemple (pas d’espace avant l’affectation) <sortie>[n] (n entier de 1 à 32) constante entière constante exprimée en hexa autre variable numérique %QW03,1 %Q03,1[5] 13 H00FE niveau · codage btd <variable numérique> dtb <variable numérique> btg <variable numérique> gtb <variable numérique> bdr <variable numérique> conversion binaire→décimal conversion décimal→binaire conversion binaire→ gray conversion gray→ binaire conversion binaire→code BDR+3 · incrément, décrément +, (il faut un espace après l’opérateur) · opérations arithmétiques + <variable numérique> - <variable numérique> * <variable numérique> / <variable numérique> (il faut un espace après l’opérateur) + position - HFF02 * échelle / 100 · lecture du "nombre de pas" d’un axe échantillonné ax-i · fonctions mathématiques cos, sin, exp, sqrt, log, abs <variable numérique> (il faut un espace après l’opérateur) · fonctions "logiques" shl n décalage à gauche (n entier de 1 à 15) shr n décalage à droite and n ET logique or n OU logique xor n OU exclusif (il faut un espace après la fonction) shr 3 L’évaluation d’une variable numérique, en cours de simulation, consiste à exécuter séquentiellement à chaque "cycle" de simulation les affectations dont la condition est vérifiée. A l’issue d’un cycle la valeur de la variable sera égale au résultat de la dernière affectation effectuée. Dans le cas de l’incrémentation ou de la décrémentation, l’opération est effectuée lors du passage à l’état vrai de la condition. ___________________________________________________________________________ 1/17 D Supposons que l’on souhaite définir une variable Y vérifiant en permanence l’équation suivante : Y = a.x² + bx + c où X est une variable numérique. D Le tableau d’affectations de Y sera le suivant : Affectations Conditions Explication Y=a Y = valeur précédente * x soit a*x Y = valeur précédente + b soit (a*x)+b Y = valeur précédente * x soit ((a*x)+b)*x Y = valeur précédente + c soit (((a*x)+b)*x)+cà soit y = a.x² + bx + c a *x +b *x +c L’ensemble des variables numériques présentes dans la modélisation d’une application est traité selon le même principe que les variables booléennes : une évaluation est effectuée lorsque l’un des termes intervenant dans le tableau d’affectations de la variable change d’état - ou de valeur s’il s’agit d’une autre variable numérique. Toutes les variables où intervient ce terme sont évaluées de façon "synchrone", c’està-dire en n’affectant les nouvelles valeurs éventuelles que lorsque toutes les variables concernées ont été évaluées. Ceci garantit que le résultat de l’évaluation ne dépend pas de l’ordre dans lequel ces variables ont été décrites. Cela rend par exemple possible la modélisation d’un registre à décalage contenant des valeurs numériques. Supposons que chaque position du registre soit représentée par une variable numérique "Ri". Pour pouvoir décaler vers la "droite" ou vers la "gauche" en fonction des passages à 1 respectifs des variables "shr" et "shl", le tableau d’affectations de Ri s’écrit de la façon suivante : Ri: Affectations Conditions Explication Ri-1 Ri+1 < +shr < +shl la variable Ri vaudra Ri-1 sur apparition de la variable shr elle vaudra Ri+1 sur apparition de la variable shl ___________________________________________________________________________ 1/18 Description des axes 1 1.10-3 Prise en compte des variables numériques dans les expressions logiques Les variables numériques et les axes échantillonnés peuvent intervenir dans les variables de modélisation booléennes et dans les équations des mouvements de deux façons : • d’une part au moyen de comparaisons avec d’autres variables ou constantes numériques, par exemple : niveau > 10, • d’autre part par extraction de bit : "varnum,n" est vrai si le énième bit (compté à partir de 0) du codage binaire de la valeur de la variable "varnum" est à "1". 1.10-4 Liens avec les entrées-sorties SIMTSX échange les données numériques via les registres %IW%QW, %IW%QW de l’automate ; la communication avec celui-ci s’effectue de la façon suivante : • pour envoyer une valeur numérique au simulateur, il suffit d’affecter celle-ci à un registre de sorties de l’automate, et d’effectuer si besoin une remise à l’échelle. Par exemple, la vitesse d’un mouvement peut être lue depuis l’automate par le tableau d’affectations suivant : Affectations Conditions 0 + %QW1,2 +5 - 12 < vanne1 < vanne2 < vanne3 • réciproquement, une valeur numérique est transmise à l’automate en la recopiant sur un registre d’entrée, par exemple IW20,0 = position, position étant une variable numérique calculée par SIMTSX. Un codeur retournant une valeur Gray (ou en "binaire réfléchi") à un automate est modélisé de la façon suivante : le nombre de pas d’un axe échantillonné est transcodé au moyen du transcodage ad hoc dans une variable numérique, soit "val-gray" cette variable. La valeur de la variable val-gray est transmise à l’automate dans le registre adéquat. Soit par exemple : axe surveillé (échantillonné) : ax-1 ; correspond au pas de l’axe variable numérique : val-gray tableau d’affectations : gray ax-1 registre d’entrée : %IW5,8 affectation : val-gray ___________________________________________________________________________ 1/19 D 1.11 Accès aux "variables indéfinies" D Ces variables représentent des "limites de modélisation" correspondant à des conditions externes telles que l’alimentation en énergie, la présence de pièces en entrée d’une machine ou encore des capteurs signalant l’ouverture d’une porte. Dans l’environnement de simulation, l’état de ces variables sera déterminé par une action extérieure. Au cours de la description, des variables peuvent n’être que "temporairement indéfinies". Par exemple, si l’on débute la description par la définition des Entrées/Sorties" (voir chapitre 5 de cet intercalaire), les capteurs intervenant dans les équations des entrées sont des "variables indéfinies" car les axes activant ces capteurs n’ont pas encore été décrits. Lors de la création d’une entité de la modélisation, on peut accéder à la liste des variables indéfinies existantes pour nommer le nouvel élément. Mais l’existence de "variables indéfinies" dans la description peut également résulter d’une erreur de saisie dans la définition d’un élément. Afin de remédier à ceci, le bouton Indéfinis se trouvant dans la première fenêtre de l’interface de configuration des axes permet d’ouvrir une fenêtre où est présentée la liste de ces variables intervenant dans l’ensemble de la description. La sélection d’une de ces variables fait apparaître les éléments de la description où elle intervient. Si l’on sélectionne à l’aide de la souris l’un de ces éléments, la fenêtre d’édition propre au type de l’élément concerné apparaît, permettant ainsi d’effectuer une correction qui pourra faire disparaître la "variable indéfinie" indésirable. ___________________________________________________________________________ 1/20 Description des axes 1 Variables externes numériques A la différence des externes booléens qui apparaissent implicitement quand on introduit un terme non défini dans une expression logique, les externes numériques doivent être définis explicitement par l’utilisateur dans la mesure où toute variable numérique dont le tableau d’affectations est vide devient une variable externe numérique. L’utilisateur a alors la possibilité - en cours de simulation - d’introduire à tout instant une valeur sur cette variable. 1.12 Vérification de la description des axes Le bouton Vérifier la description de la fenêtre principale d’édition des axes, permet d’activer un contrôle de cohérence de la modélisation. Les anomalies suivantes sont signalées : • axes sans capteurs, • axes linéaires n’ayant pas au moins un mouvement par sens, • axes rotatifs sans mouvement, • diverses variables non utilisées. ___________________________________________________________________________ 1/21 D D ___________________________________________________________________________ 1/22 DescriptionChapitre des relais 22 2 Description des relais 2.1 Introduction La description du relayage consiste dans SIMTSX à transcrire sous forme d’expressions booléennes les schémas électriques disponibles dans les documents et intervenant dans l’application à simuler. Une distinction est faite dans l’interface de description entre "l'Alimentation" et les "Relais". Les termes figurant dans l’alimentation correspondent à des fonctions générales de l’application telles que la distribution de la puissance électrique, la mise sous tension de différents sous-ensembles..., et ne sont pas liés directement aux actionneurs. Par contre les "Relais" interviennent directement dans la commande des mouvements. Cette distinction n’influe pas sur le fonctionnement du simulateur mais intervient dans l’association des variables de la description aux axes de l’application. ___________________________________________________________________________ 2/1 D 2.2 D Création d’un relais Pour créer un relais, il faut le nommer (10 caractères maxi). Le relais à décrire a peut-être déjà utilisé dans la définition d’un élément du modèle (par exemple un autre relais). Dans ce cas, il existe une variable indéfinie ayant le nom du relais à créer : le bouton Indéfinis permet de retrouver ce nom. Le nom du relais à créer peut être le mnémonique d’une sortie décrite dans les entrées/sorties. Le bouton Mnémoniques donne accès à la liste des sorties avec leur mnémonique, permettant ainsi de choisir le nom du relais à créer. Il est possible d’associer une temporisation à un relais, en cochant la case temporisé de la fenêtre de création de ces éléments. Il faut alors préciser la durée de la temporisation : la valeur de celle-ci est saisie au moyen d’un éditeur. L’unité est celle choisie pour la configuration de l’application dans la fenêtre de création des axes. Par défaut, le relais est temporisé à l’enclenchement, c’est-à-dire que le contact temporisé apparaît un certain temps après que l’équation du relais soit vérifiée. En cliquant le texte à l’enclenchement apparaissant dans la fenêtre de création, le relais sera temporisé au déclenchement, c’est-à-dire que le contact temporisé retombera un moment après que l’équation du relais soit devenue "fausse". Remarque Les temporisations ne sont pas prises en compte dans le relais lui-même, mais uniquement dans les variables fax-<relais> et dax-<relais> qui lui sont associées. La création d’un relais est effectivement prise en compte sur validation par le bouton Valider. La fenêtre de création reste présente à l’écran : en modifiant le nom du relais, un autre relais peut être créé. 2.3 Edition des relais En mode édition, il est possible de modifier les caractéristiques du relais, c’est-à-dire son équation et la temporisation qui lui sont éventuellement associées. ___________________________________________________________________________ 2/2 Description des relais 2.4 2 Prise en compte des contacts temporisés dans les équations des relais Des temporisations peuvent être associées aux relais. Ceci n’a d’intérêt que s’il est possible de faire intervenir dans l’équation d’un relais les contacts temporisés correspondants. Pour les relais temporisés à l’enclenchement, l’état vrai du contact temporisé est fax-<relais> où "<relais>" est le nom du relais auquel est associée la temporisation. L’état actif du contact temporisé d’un relais temporisé au déclenchement de nom <relais> est /dax-<relais>. Ceci provient de la représentation interne des temporisations. Celles-ci sont représentées par des axes de nom ax-<relais>.fax-<relais> et dax-<relais> sont des variables, automatiquement associées à ces axes, qui passent à l’état "vrai" dès que ceux-ci arrivent respectivement en fin et début de course. Temporisations à l'enclenchement • A l'enclenchement fca 5 s. KM1 • Durée 5 s. fax-km1 5 secondes Temporisations au déclenchement • Au déclenchement 5 s. fcb KM2 • Durée 5 s. 5 secondes /dax-km2 Exemple Soit un relais Km1, temporisé à l’enclenchement avec une durée de 5. A partir du moment où l’équation associée à ce relais est vérifiée : • Km1 sera vrai immédiatement • Fax-km1 sera vrai après une temporisation de 5 unités (c'est-à-dire après que la date de simulation ait progressé de 5 unités). ___________________________________________________________________________ 2/3 D L'entrée reliée à un relais temporisé évoluera tel que décrit : Si dans l'équation de l'entrée est saisi : • <relais> il s'agit de l'image du relais, D • fax-<relais> il s'agit de l'image du relais après écoulement de la temporisation à l'enclenchement, • dax-<relais> il s'agit de l'image du relais après écoulement de la temporisation au déclenchement. ___________________________________________________________________________ 2/4 Description des entrées/sorties Chapitre 33 3 Description des entrées/sorties 3.1 Introduction Dans SIMTSX, le configurateur d’entrées/sorties permet de décrire l’interface entre les équipements (capteurs/actionneurs, grandeurs physiques) et un programme exécuté dans un automate. Le configurateur d’entrées/sorties comprend la description des modules d’entrées/ sorties en bac et déportées. Remarque 1 La description des entrées/sorties dans le configurateur SIMTSX doit correspondre à la configuration du programme automate. EN particullier, les emplacements des modules simulés doivent être identiques. Remarque 2 La simulation des automates Micro et Premium nécessite de configurerun module de simulation fictif dans la configuration automate, à un emplacement obligatoirement libre. 3.2 Configuration des modules d’entrées/sorties 3.2-1 Modes opératoires du configurateur d’entrées/sorties Accès à l’interface de configuration SIMTSX L’accès à l’interface de configuration des entrées/sorties se fait à l’aide de la commande "Configuration des entrées/sorties" du menu "entrées/sorties". Modes et principes de saisie Quel que soit le type d’automate cible, la configuration des entrées/sorties se fait toujours suivant les mêmes principes : • Un ou plusieurs onglets précisent les différents types d’entrées/sorties configurables (en rack, déportées) : • Un cadre vert se déplace dynamiquement en même temps que le pointeur de la souris sur les différents emplacements. Il permet un repérage aisé des emplacements configurables. • Un clic gauche sur un emplacement positionne un cadre rouge. Les commandes du menu Edition ou du menu contextuel (clic droit) sont alors actives sur cet emplacement. ___________________________________________________________________________ 3/1 D • Une barre d’outils Configuration permet de choisir entre les différents outils disponibles pour la saisie de la configuration : D La première icône donne accès à l’outil de configuration et permet le positionnement des modules d’entrées/sorties. La deuxième icône permet de supprimer des modules d’entrées/sorties. La troisième icône permet de passer en mode Zoom et inversement. • Pour ajouter un module d’entrées/sorties, réaliser un double-clic sur un emplacement vide. Une liste de choix est alors proposée : Sélectionner dans le champ Famille le type de module puis dans le champ Module la modularité désirée (par exemple 8 entrées booléennes). Valider le choix par OK ou par un double-clic sur le module sélectionné. Le module est visualisé dans la configuration. • L’ajout d’un module d’entrées/sorties peut se faire aussi par la commande "Insérer un module…" du menu contextuel (clic droit de la souris sur un emplacement). Les différentes familles et modules sont alors présentés sous forme de menu déroulant : ___________________________________________________________________________ 3/2 Description des entrées/sorties 3 D • La commande Zoom permet d’agrandir ou de rétrécir la zone utile des emplacements configurables. • Il est possible de déplacer ou de copier un module par une action simple à partir de la souris (Drag & Drop) : Cliquer sur le module à copier ou à déplacer avec le bouton gauche de la souris et le maintenir appuyé. Un cadre rouge apparaît sur celui-ci, déplacer la souris pour déclencher l’action de déplacement ou de copie. Pour déplacer le module, positionner la souris sur un emplacement vide et relâcher le bouton. Pour copier le module, enfoncer la touche Control et relâcher la souris sur un emplacement vide. • De la même manière, il est possible de déplacer ou de copier plusieurs modules : Sélectionner avec la souris le groupe de modules en cliquant en haut à gauche de la zone à copier ou à déplacer et maintenir le bouton appuyé de manière à créer un cadre jusqu’en bas à droite du dernier module à copier ou à déplacer. Tous les emplacements sélectionnés apparaissent en rouge. Pour déplacer ce groupe, positionner la souris sur un emplacement vide et s’assurer de disposer d’autant de place vers la droite que d’emplacements sélectionnés. Si l’opération est possible, un cadre vert s’affiche sur les emplacements ciblés. Pour copier le groupe, procéder de la même manière en maintenant la touche Control enfoncé. • Les commandes standards du menu Edition et du menu contextuel permettent de couper, copier, coller ou supprimer des modules dans la configuration. Pour cela, sélectionner un ou plusieurs modules (cadre rouge) et utiliser la commande réalisant l’opération désirée. ___________________________________________________________________________ 3/3 • La commande Propriétés du menu Edition et du menu contextuel permet d’afficher des informations sur le module sélectionné : D Dans le cas d’une configuration d’un automate Micro ou Premium, une commande supplémentaire Simulation du menu Edition ou du menu contextuel est disponible. Elle permet de signaler au simulateur que le module est simulé ou non. Par défaut, tous les modules sont simulés ce qui signifie que les entrées sont envoyées depuis le simulateur vers l’automate et que les sorties sont remontées depuis l’automate vers le simulateur. Pour ne pas échanger les entrées d’un module, il suffit de supprimer l’option Simulation pour ce module. Pour remonter vers le simulateur des sorties d’un module réellement présent dans l’automate, il suffit de supprimer l’option Simulation pour ce module. Edition des symboles et commentaires des entrées/sorties Quel que soit le type d’automate cible, l’édition des symboles et des commentaires associés aux entrées/sorties se fait toujours suivant les mêmes principes. • La commande Symboles du menu Edition ou du menu contextuel permet un accès à une boîte de dialogue permettant la saisie des symboles et des commentaires. • Un double-clic sur un module permet également l’ouverture de la boîte de dialogue. La grille de saisie est dépendante du type d’entrées/sorties. Par exemple, pour un automate Premium, les symboles des entrées/sorties sur Bus X sont accessibles si la boîte de dialogue est ouverte sur un module Bus X. Lors de l’ouverture de la grille de saisie, le curseur se positionne automatiquement sur le premier repère du module sélectionné. Pour valider une saisie d’un symbole ou d’un commentaire, il est impératif de changer de ligne en fin de saisie. ___________________________________________________________________________ 3/4 Description des entrées/sorties 3 Il est possible de rechercher une chaîne de caractères dans la liste des symboles et des commentaires. Renseigner l’éditeur Recherche d’un symbole par la chaîne à rechercher. A chaque appui sur le bouton Rechercher, le curseur se positionne sur la prochaine occurrence de la chaîne de caractères trouvée et le symbole ou commentaire associé est sélectionné. D ___________________________________________________________________________ 3/5 3.2-2 Configuration des automates Micro Entrées/sorties en bac La configuration des entrées/sorties en bac pour un automate Micro se fait à partir du synoptique suivant : D Choisir le nombre d’emplacements (4 ou 6) du bac de base par rapport à l’automate cible : ouvrir le menu contextuel du bloc Alim/CPU ou la fenêtre des propriétés et sélectionner le type de rack désiré. Choisir le type d’entrées/sorties analogiques intégrées selon l’automate cible : ouvrir le menu contextuel du bloc Alim/CPU ou la fenêtre des propriétés et sélectionner dans le sous-menu entrées/sorties analogiques intégrées le type désiré. Choisir la simulation ou non des voies d’entrées/sorties associées au bloc Alim/CPU cible : ouvrir le menu contextuel du bloc Alim/CPU ou la fenêtre des propriétés et sélectionner ou non la commande %I1.8 %I1.9 et %Q2.0 simulées. ___________________________________________________________________________ 3/6 Description des entrées/sorties 3 Renseigner la configuration à partir de la liste des modules disponibles pour les différentes familles : • Famille Tout ou Rien - 8 entrées - 12 entrées - 32 entrées - 4 sorties - 8 sorties - 32 sorties - 16 entrées/12 sorties - 32 entrées/32 sorties • Famille Analogique - 4 entrées - 8 entrées - 2 sorties - 4 sorties • Famille Communication - Module AS-i - Module liaison d'extension ___________________________________________________________________________ 3/7 D Entrées/sorties sur AS-i La saisie d’un module d’entrées/sorties permettant de configurer des voies sur AS-i ne peut se faire que sur l’emplacement numéro 4 de l’automate Micro. D Sélectionner l’emplacement 4 avec la souris. A l’aide de la boîte de dialogue Ajouter un module ou avec le menu contextuel, dans la famille Communication, choisir le module AS-Interface. Une boîte de dialogue permettant de positionner des esclaves AS-i s’ouvre automatiquement. Réaliser un double-clic sur un emplacement signalé par une ellipse pointillée pour ajouter un esclave AS-i et générer 4 voies d’entrées et 4 voies de sorties. Réaliser un double-clic sur un élément configuré pour accéder à la fenêtre de saisie des symboles et commentaires. Cliquer sur la croix en haut à droite de la fenêtre pour fermer la saisie des esclaves AS-i. Pour rappeler la fenêtre de saisie des esclaves, réaliser un double-clic sur le module AS-i ou utiliser la commande Propriétés du menu Edition ou du menu contextuel. ___________________________________________________________________________ 3/8 Description des entrées/sorties 3 Entrées/sorties sur Liaison d’extension (Nano Automate) La saisie d’un module d’entrées/sorties permettant de configurer une liaison d’extension pour Nano automates ne peut se faire que sur l’emplacement numéro 4 de l’automate Micro. Sélectionner l’emplacement 4 avec la souris. A l’aide de la boîte de dialogue Ajouter un module ou avec le menu contextuel, dans la famille Communication, choisir le module liaison d’extension. Une boîte de dialogue permettant de positionner des Nano automates s’ouvre automatiquement. Réaliser un double-clic sur un emplacement signalé par une ellipse grisée pour ajouter un Nano automate et générer 14 voies d’entrées et 10 voies de sorties. Réaliser un double-clic sur un élément configuré pour accéder à la fenêtre de saisie des symboles et commentaires. Cliquer sur la croix en haut à droite de la fenêtre pour fermer la saisie de la liaison d’extension. Pour rappeler la fenêtre de saisie des Nano automates, réaliser un double-clic sur le module de liaison d’extension ou utiliser la commande Propriétés du menu Edition ou du menu contextuel. ___________________________________________________________________________ 3/9 D Le module de simulation D Pour réaliser une simulation avec un automate Micro, il est nécessaire de positionner un module fictif de simulation dans la configuration côté simulateur et côté automate. Ce module doit être positionné sur un emplacement disponible à la fois dans le configurateur d’entrées/sorties du simulateur mais aussi dans le configurateur d’entrées/sorties du logiciel de programmation de l’automate. Ce module est disponible dans la famille Simulation de la boîte de dialogue Ajouter un module ou à partir du menu contextuel. Import des symboles et commentaires issus de PL7 Pour réutiliser les symboles et commentaires issus de PL7 et éviter ainsi une double saisie dans le configurateur d’entrées/ sorties, une fonction d’import est disponible dans le menu Fichier. Dans la boîte de dialogue, saisir le chemin du fichier .SCY généré par PL7 ou utiliser la commande parcourir pour le sélectionner puis valider. Les symboles et commentaires associés aux modules présents dans le configurateur sont récupérés. ___________________________________________________________________________ 3/10 Description des entrées/sorties 3 Les mots Lors d’une simulation, il est possible d’échanger des %MW entre le simulateur et l’automate. Pour cela, il suffit de renseigner les champs présents dans la boîte de dialogue Propriétés du bloc Alim/CPU. D Les mots internes simulés en entrée seront envoyés par le simulateur vers l’automate et les mots internes simulés en sortie seront remontés depuis l’automate vers le simulateur. ___________________________________________________________________________ 3/11 3.2-3 Configuration des automates Premium La configuration des entrées/sorties pour un automate Premium se fait à partir du synoptique suivant : D Choisir le nombre d’emplacements (4, 6, 8 ou 12) pour chaque rack utilisé selon l’automate cible : ouvrir le menu contextuel de l’alimentation ou la fenêtre des propriétés et sélectionner le type de rack désiré. Choisir le type d’alimentation (simple ou double) : ouvrir le menu contextuel de l’alimentation ou la fenêtre des propriétés et sélectionner ou non Alimentation double. Choisir le type de processeur (simple/double emplacement, fipé/non fipé) : ouvrir le menu contextuel du processeur ou la fenêtre des propriétés et sélectionner les options désirées. Dans le cas d’un processeur fipé, un onglet Fipio apparaît pour la saisie des entrées/sorties déportées. ___________________________________________________________________________ 3/12 Description des entrées/sorties 3 Entrées/sorties sur bus X Renseigner la configuration sur Bus X à partir de la liste des modules disponibles pour les différentes familles : • Famille Tout ou Rien - 8 entrées - 12 entrées - 32 entrées - 64 entrées - 8 sorties - 16 sorties - 32 sorties - 64 sorties - 16 entrées/12 sorties • Famille Analogique - 4 entrées - 8 entrées - 16 entrées - 4 sorties - 8 sorties • Famille Communication - Module AS-i - Module Interbus-S ___________________________________________________________________________ 3/13 D Entrées/sorties sur bus AS-i La saisie d’un module d’entrées/sorties permettant de configurer des voies sur AS-i peut se faire sur n’importe quel emplacement de l’automate Premium. Le nombre total de module AS-i ne devra cependant pas excéder huit. D Sélectionner un emplacement avec la souris. A l’aide de la boîte de dialogue Ajouter un module ou avec le menu contextuel, dans la familleCommunication, choisir le module AS-Interface. Une boîte de dialogue permettant de positionner des esclaves AS-i s’ouvre automatiquement. Réaliser un double-clic sur un emplacement signalé par une ellipse pointillée pour ajouter un esclave AS-iet générer 4 voies d’entrées et 4 voies de sorties. Réaliser un double-clic sur un élément configuré pour accéder à la fenêtre de saisie des symboles et commentaires. Cliquer sur la croix en haut à droite de la fenêtre pour fermer la saisie des esclaves AS-i. Pour rappeler la fenêtre de saisie des esclaves, réaliser un double-clic sur le module AS-i ou utiliser la commande Propriétés du menu Edition ou du menu contextuel. Entrées/sorties sur Interbus-S La saisie d’un module d’entrées/sorties permettant de configurer un réseau Interbus-S peut se faire sur n’importe quel emplacement de l’automate Premium. Pour une même configuration, un seul module est possible. Sélectionner un emplacement avec la souris. A l’aide de la boîte de dialogue Ajouter un module ou avec le menu contextuel, dans la famille Communication, choisir le module Interbus-S. L’ajout d’un tel module génère 140 entrées et 140 sorties analogiques. ___________________________________________________________________________ 3/14 Description des entrées/sorties 3 Entrées/sorties sur Fipio Sur Fipio, les emplacements disponibles sont matérialisés par des modules TBX grisés. Le principe de saisie de la configuration est identique aux entrées/sorties Bus X. Renseigner la configuration sur Fipio à partir de la liste des modules disponibles pour les différentes familles : • Famille TBX Tout ou Rien - 16 entrées - 16 sorties - 8 entrées/8 sorties - 8 entrées/8 mixtes • Famille TBX Analogique - 4 entrées - 2 sorties - 6 entrées/2 sorties • Famille Communication - Profil FSD - Profil FED - Profil FRD - Momentum analogique 4 entrées - Momentum analogique 4 sorties - Momentum analogique 8 entrées - Momentum analogique 4 entrées/2 sorties - Momentum analogique 16 entrées - Momentum Tout ou Rien 16 entrées/16 sorties - Momentum Tout ou Rien 16 entrées/8 sorties - Momentum Tout ou Rien 10 entrées/8 sorties - Momentum Tout ou Rien 16 entrées - Momentum Tout ou Rien 32 entrées - Momentum Tout ou Rien 8 sorties - Momentum Tout ou Rien 16 sorties - Momentum Tout ou Rien 32 sorties - CCX 17 - ATV 16 Si le module que vous désirez simuler ne se trouve pas dans la liste ci-dessus mais qu'il s'intègre dans un des profils standards (FED, FSD ou FRD) alors vous pouvez le remplacer dans le configurateur par le profil correspondant. Pour savoir à quel profil correspond votre module, il suffit de regarder dans PL7 le nombre de voies (%I, %Q, %IW, %QW) qu'il génère en sachant qu'un profil FED possède 32%IW et 32%QW, qu'un profil FSD possède 8%IW et 8%QW et qu'un profil FRD possède 32%I et 32%Q. ___________________________________________________________________________ 3/15 D D Le module de simulation Pour réaliser une simulation avec un automate Premium, il est nécessaire de positionner un module fictif de simulation dans la configuration côté simulateur et côté automate (sur Bus X ou sur Fipio). Ce module doit être positionné sur un emplacement disponible à la fois dans le configurateur d’entrées/sorties du simulateur mais aussi dans le configurateur d’entrées/sorties du logiciel de programmation de l’automate. S’il existe au moins une entrée ou une sortie à simuler sur Fipio, alors le module de simulation doit être positionné sur Fipio après le dernier point configuré. Dans le cas contraire, il faut le positionner sur un emplacement Bus X. Ce module est disponible dans la famille Simulation de la boîte de dialogue Ajouter un module ou à partir du menu contextuel. Import des symboles et commentaires issus de PL7 Pour réutiliser les symboles et commentaires issus de PL7 et éviter ainsi une double saisie dans le configurateur d’entrées/ sorties, une fonction d’import est disponible dans le menu Fichier. Dans la boîte de dialogue, saisir le chemin du fichier .SCY généré par PL7 ou utiliser la commande Parcourir pour le sélectionner puis valider. Les symboles et commentaires associés aux modules présents dans le configurateur sont récupérés. ___________________________________________________________________________ 3/16 Description des entrées/sorties 3 Les mots Lors d’une simulation, il est possible d’échanger des %MW entre le simulateur et l’automate. Pour cela, il suffit de renseigner les champs présents dans la boîte de dialogue Propriétés du processeur. D Les mots internes simulés en entrée seront envoyés par le simulateur vers l’automate et les mots internes simulés en sortie seront remontés depuis l’automate vers le simulateur. ___________________________________________________________________________ 3/17 3.2-4 Configuration des automates Quantum La configuration des entrées/sorties pour un automate Quantum se fait à partir du synoptique suivant : D Pour ce type d’automate, il existe quatre onglets : • Le premier permet de réaliser une configuration physique des modules d’entrées/ sorties à simuler. • Le second (onglet Logique) permet d’ajuster les paramètres d’adressage des voies ainsi que les paramètres des registres de travail nécessaires à la recopie des entrées dans l'automate. • Le troisième (onglet Peer Cop) permet d'ajouter, à l'aide d'un éditeur simple, des registres 0x, 1x, 3x et 4x à simuler qui n'aurait pas de correspondance dans l'onglet physique. • Le quatrième (onglet Lien EFB) donne le nombre d’EFB SIMTSX qu’il faut insérer en début de programme automate sous CONCEPT ainsi que les valeurs des différents paramètres pour chaque EFB SIMTSX. ___________________________________________________________________________ 3/18 Description des entrées/sorties 3 Configuration physique Renseigner la configuration physique à partir de la liste des modules disponibles pour les différentes familles : • Famille Tout ou Rien - 16 entrées - 24 entrées - 32 entrées - 8 sorties - 16 sorties - 32 sorties - 8 entrées/8 sorties - 16 entrées/8 sorties - 16 entrées/16 sorties • Famille Analogique - 1 entrée - 2 entrées - 8 entrées + 1 défaut - 8 entrées + 2 défauts - 1 sortie - 2 sorties - 4 sorties - 4 entrées/2 sorties + 1 défaut • Famille Autre - 107 entrées analogiques 6 entrées analogiques/6 sorties analogiques 12 entrées analogiques/12 sorties analogiques 12 entrées analogiques/13 sorties analogiques 139 entrées analogiques/128 sorties analogiques Interbus-S (267 entrées analogiques/264 sorties analogiques). ___________________________________________________________________________ 3/19 D D Configuration logique La configuration logique donne accès aux adresses des voies d’entrées/sorties configurées. Ces adresses sont positionnées automatiquement par le configurateur à chaque ajout de module dans la configuration physique. Elles peuvent être modifiées à la main de manière à les ajuster avec les voies réellement configurées dans l’automate : La configuration logique permet également de régler les paramètres nécessaires à un bon déroulement de la simulation. Lors d’une simulation sur un automate Quantum, il est nécessaire de réserver un certain nombre de registres 4x pour chaque zone d’entrées TOR ou ANA contiguës, cela pour permettre une écriture des entrées dans l’automate. Le configurateur réserve automatiquement ces registres avec des valeurs par défaut. Elles peuvent être modifiées à la main de manière à les ajuster dans le cas d’éventuel chevauchement avec des zones de sorties analogiques. Il est important de noter les registres 4x correspondant à chaque début de zone contiguë. Ils permettent de renseigner les EFB de simulation qui sont ajoutés dans le programme automate. Il sera en effet nécessaire d’ajouter dans le programme automate autant d’EFB SIMTSX de simulation que de zone d’entrées TOR et ANA contiguës. Par exemple, pour la configuration décrite dans la figure du paragraphe suivant, on aura 2 EFB de simulation à ajouter. Les valeurs 400100 et 400200 seront utilisées pour renseigner ces EFB (voir paragraphe mode connecté). Configuration avec l'éditeur A l'aide de l'éditeur de l'onglet Peer Cop, il est possible d'ajouter des registres 0x, 1x, 3x et 4x à simuler dans SIMTSX. Pour la saisie des registres 0x et 4x, il suffit de donner l'adresse de début ainsi que le nombre de registres à ajouter et de cliquer sur le bouton >>. pour l'ajout de registres 1x et 3x, il faut renseigner les champs début et longueur, le champ début recopie qui concerne la zone des registres de travail utilisés pour la recopie des entrées dans l'automate. Cette zone doit être choisie dans une plage libre des registres 4x. ___________________________________________________________________________ 3/20 Description des entrées/sorties 3 Lien EFB Dans cet onglet, un arbre résume le nombre d’EFB SIMTSX qu’il faut insérer en début de programme automate en fonction de la configuration physique et logique réalisée. Pour l’exemple ci-dessus, SIMTSX indique deux EFB SIMTSX dans l’arbre avec pour chacun d’eux, les paramètres correspondants : D Les mots Lors d’une simulation, il est possible d’échanger des registres 4x entre le simulateur et l’automate. Pour cela, il suffit de renseigner les champs présents dans la boîte de dialogue Propriétés du processeur. Les mots internes simulés en entrée seront envoyés par le simulateur vers l’automate et les mots internes simulés en sortie seront remontés depuis l’automate vers le simulateur. ___________________________________________________________________________ 3/21 Import des symboles issus de CONCEPT D Pour réutiliser les symboles et commentaires issus de CONCEPT et éviter ainsi une double saisie, une fonction d’import est disponible dans le menu Fichier : Dans la boîte de dialogue, saisir le chemin du fichier généré par CONCEPT ou utiliser la commande parcourir pour le sélectionner puis valider. Les symboles et commentaires associés aux modules présents dans le configurateur sont récupérés. 3.2-5 Configuration du multi-automate Pour réaliser une configuration multi-automate : • Créer une nouvelle application. • Ouvrir le configurateur d’entrées/sorties et choisir dans la liste le premier type d’automate à configurer, afin de procéder ensuite à la configuration de ses modules d’entrées/sorties. • Sélectionner la commande Nouveau du menu Automate, pour ajouter un nouvel automate • Choisir dans la liste le second automate à configurer. • etc., jusqu’à une limite de 8 automates maximum. Il est à noter que les voies d’entrées/sorties générées seront précédées dans tous les éditeurs par un chiffre correspondant au numéro d’automate. Ce numéro est incrémenté automatiquement à chaque ajout de nouvel automate. ___________________________________________________________________________ 3/22 Description des entrées/sorties 3.3 3 Edition des entrées/sorties La configuration des entrées/sorties permet de définir les adresses des entrées/ sorties. Leur édition permet d’autre part de définir les équations des entrées (Câblage des entrées). Une aide est apportée pour la saisie de ces équations par le bouton Aide édition. Ce bouton permet d’ouvrir une fenêtre permettant de sélectionner les variables susceptibles d’intervenir dans l’équation d’une entrée. Il n’est pas permis de faire intervenir une sortie dans une équation d’entrée. Ce rebouclage nécessite que soit définie une variable intermédiaire, qui peut être un relais de la tête de filerie ou une variable de modélisation de la partie " Mouvements ". ___________________________________________________________________________ 3/23 D 3.4 Edition des entrées/sorties numériques Elle permet de déterminer les adresses des entrées/sorties et des registres %IW, %QW. Pour les registres numériques, on accède à une fenêtre d’édition permettant de définir une affectation pour le registre d’entrée (en fait le nom d’une variable numérique). D ___________________________________________________________________________ 3/24 Description des entrées/sorties 3.5 3 Edition des Mots La configuration des tableaux de mots d’échange détermine la liste des mots d’entrée et de sortie, pouvant être éditer. A chaque mot écrit par le simulateur peut être associé une équation comportant un terme (en fait le nom d’une variable numérique). Celui-ci peut être changé en cochant Flottant dans la fenêtre d’édition du double-mot. Un mot ou un double-mot peut être référencé dans une variable numérique. Exemple : • vitesse = %MW1(vitesse est une variable numérique), • la vitesse est recopiée dans une vitesse de mouvement sur un axe, • l’axe étant échantillonné, une variable de suivi peut lui être associée et être recopiée sur un mot ou un double mot : %MW10 = position. ___________________________________________________________________________ 3/25 D D ___________________________________________________________________________ 3/26 Chapitre 4 Description des pupitres 4 4 Description des pupitres 4.1 Introduction SIMTSX permet de représenter graphiquement les pupitres de conduites des machines (boutons poussoirs, voyants lumineux…). Aux boutons poussoirs et commutateurs sont associées des variables activées en fonction des actions exercées sur ces éléments. Ces variables sont donc reprises dans les équations des entrées ou dans les relais. Les voyants et afficheurs sont commandés en fonction de sorties ou de relais et éventuellement de variables de modélisation de l’application. 4.2 Création et édition des pupitres Pour créer un pupitre, il faut d’abord lui donner un titre, qui pourra être modifié ultérieurement. Dans la phase d’édition, le pupitre apparaît en haut à gauche de l’écran. A droite de l’écran se trouve un ensemble de boutons de commande correspondant aux fonctionnalités d’édition. ___________________________________________________________________________ 4/1 D 4.2-1 Création d’un élément La sélection du type d’élément à créer fait apparaître la fenêtre de définition correspondante (voir sous-chapitre 4.3. "définition des éléments de pupitre" de cet intercalaire). D Après validation des données saisies, le nouvel élément est positionné par rapport à un élément figurant déjà dans le pupitre que l’on sélectionne par la souris : cet élément de référence passe alors en inverse vidéo. 4.2-2 Modification d’un élément Après sélection d’un élément du pupitre édité, le bouton Modifier un élément permet de rappeler la fenêtre de définition propre au type de cet élément. Les étiquettes et la ou les variables qui lui sont associées peuvent ainsi être modifiées. 4.2-3 Suppression et restitution d’un élément Un élément du pupitre, préalablement sélectionné à l’aide de la souris, peut être supprimé au moyen du bouton Supprimer. Le bouton Restitution d’un élément permet d’annuler la dernière suppression effectuée. L’élément restitué doit être repositionné dans le pupitre. Il est possible de modifier la position d’un élément dans un pupitre. Le pupitre est d’abord réaffiché sans l’élément sélectionné qui doit être repositionné par rapport à un élément de référence. 4.3 Définition des éléments des pupitres Ce paragraphe est consacré à la description de chacun des éléments composant les pupitres. ___________________________________________________________________________ 4/2 Description des pupitres 4 4.3-1 Boutons poussoirs Un bouton poussoir est identifié par un titre formé de 2 chaînes superposées de 6 caractères chacune. Le champ couleur est en fait une lettre, initiale de la couleur du bouton. Le bouton poussoir apparaîtra donc avec cette couleur. L'utilisateur choisit la couleur du bouton poussoir parmi la liste : - R pour rouge, - B pour bleu, - V pour vert, - J pour jaune, - N pour noir, - O pour orange. La variable activée par le bouton est saisie au moyen d’un éditeur. Comme cette variable a peut-être déjà été utilisée dans l’équation d’une Entrée ou dans un relais, elle est susceptible de se trouver dans la liste des variables "indéfinies" de la description : cette liste est donc présentée dans la fenêtre d’édition des boutons poussoirs. Par défaut le contact du bouton est à fermeture : l’état logique de la variable associée passe à "vrai" quand un appui est effectué sur le bouton. En cliquant le texte "fermeture" ce fonctionnement est inversé : il s’agit alors d’un contact à ouverture ou "normalement fermé". Le bouton poussoir "large" a le même fonctionnement qu’un bouton poussoir standard. Comme il est deux fois plus large, les chaînes formant le titre peuvent compter 12 caractères. ___________________________________________________________________________ 4/3 D 4.3-2 Boutons poussoirs à accrochage D Ces boutons permettent de représenter des éléments tels que les arrêts d’urgence "coup de poing", qui restent enfoncés et nécessitent parfois l’utilisation d’une clé pour être relâchés. Ces boutons ont un titre formé d’une seule chaîne d’au plus 12 caractères. Comme pour les boutons poussoirs simples, le contact peut être à fermeture ou à ouverture. 4.3-3 Voyants A l’instar des boutons poussoirs, le titre identifiant ces éléments est formé de deux chaînes de 6 caractères. La variable allumant le voyant étant le plus souvent une Sortie ou un relais, un accès à ces entités est prévu. De la même façon que pour les boutons poussoirs, les voyants "larges" occupent une place deux fois plus grande dans les pupitres, et les chaînes formant leur titre peuvent compter 12 caractères. ___________________________________________________________________________ 4/4 Description des pupitres 4 4.3-4 Boutons poussoirs à voyant Ces éléments regroupent les fonctions "bouton poussoir" et "voyant". Leur configuration reprend donc ces deux aspects. D 4.3-5 Interrupteur Cet élément occupe la même place qu’un bouton poussoir simple, son titre est également formé de deux chaînes de 6 caractères. Son fonctionnement est similaire à celui d’un commutateur à 2 positions, il peut également être muni d’une fonction de rappel automatique. ___________________________________________________________________________ 4/5 4.3-6 Commutateurs à 2 positions D Les commutateurs occupent dans les pupitres un emplacement correspondant à deux boutons poussoirs "standards". Ils sont munis d’un titre de 12 caractères et chaque position est identifiée par une étiquette d’au plus 5 caractères. Si la fonction "Rappel Automatique" est sélectionnée, le commutateur retournera en position de repos, à gauche, dès qu’il sera relâché. Ceci est indiqué par une flèche dans la représentation graphique de l’élément. Par défaut, la variable associée est activée dans la position droite du commutateur. Ceci peut être inversé en remplaçant le "contact à fermeture" par un "contact à ouverture", de la même façon que pour les boutons poussoirs. La variable peut être choisie parmi la liste des "variables indéfinies" de la description. ___________________________________________________________________________ 4/6 Description des pupitres 4 4.3-7 Commutateurs à 3 positions Dans ces commutateurs, deux variables dites "droite" et "gauche" sont activables. Par défaut la position neutre, où aucune de ces variables n’est à l’état logique 1, est la position centrale du commutateur. Cette position peut être modifiée au moyen du sélectionneur prévu à cet effet. Dans le cas où la position neutre est la position centrale, les positions droite et gauche peuvent être à rappel automatique au centre. ___________________________________________________________________________ 4/7 D 4.3-8 Commutateurs à n positions D A chaque position de ce commutateur sont associées un certain nombre de variables, qui seront à l’état logique "1" si la position est sélectionnée. Par défaut, ce commutateur a 2 positions. Une nouvelle position peut être ajoutée : ce sera la n+1 ième, si n était le nombre de positions du commutateur. L’insertion correspond à un décalage des positions existantes, à partir de celle qui est éditée. La position éditée peut être changée au moyen des boutons "Position précédente" et "Position suivante". Il est possible de supprimer la position courante. Les variables associées à la position courante apparaissent dans un défileur. Pour ajouter une variable à la position courante, elle peut être saisie soit dans l’éditeur se trouvant en haut à droite de la fenêtre de configuration du commutateur à n positions, soit la choisir dans la liste des variables «indéfinies», qui est présentée sous cet éditeur. Le retrait d’une variable de la position courante est effectué en cliquant celle-ci dans le défileur, sous le texte "Position <i>". A chacune des positions du commutateur, un commentaire peut être associé. Ces commentaires seront affichés, dans le pupitre, à droite du commutateur. ___________________________________________________________________________ 4/8 Description des pupitres 4 4.3-9 Roues codeuses La configuration de ces éléments est similaire à celle des commutateurs à n positions. Le nombre de positions est ici fixé à 10 ou 16, et ces positions sont numérotées de 0 à 9 ou de 0 à 16. La roue codeuse occupe un emplacement deux fois moins important que le commutateur à n positions, aussi le titre est-il réduit à 6 caractères. ___________________________________________________________________________ 4/9 D 4.3-10 Afficheurs hexadécimaux (ou "digits") D Ces éléments donnent la possibilité d’afficher une valeur hexadécimale dans un pupitre. La valeur affichée est donnée par 4 bits qui peuvent être des sorties ou des relais. La validation est optionnelle. Si elle est définie, l’état des 4 bits n’est affiché que si la variable de validation est à "1". L’affichage peut être validé sur un front montant ou descendant d’une variable. Dans ce cas celle-ci doit être préfixée par "+" ou "-". 4.3-11 Texte Ceci permet d’introduire une ou deux lignes de commentaires dans un pupitre. 4.3-12 Séparateur Le séparateur sert à disposer des "blancs" dans le pupitre. Ces espaces vides ont la même dimension qu’un bouton poussoir «standard». ___________________________________________________________________________ 4/10 Description des synoptiques Chapitre 55 5 Description des synoptiques 5.1 Introduction Les synoptiques associés à une application permettent de suivre l’évolution des variables et des différents mouvements. Ils se composent d’un fond de plan supportant différents éléments graphiques relatifs à des variables de l’application. D 5.2 Création et édition des synoptiques Pour créer un synoptique, il faut lui donner un titre, qui pourra être modifié ultérieurement. Un cas particulier est le titre vide. Il figure en tête de la liste des synoptiques décrits sous la dénomination "Fond de Plan". Ce synoptique sera affiché par défaut dans l’environnement de simulation. En mode édition, en haut de l’écran apparaissent d’une part les boutons du choix du type d’élément graphique (axes, variables, textes, décodeurs), d’autre part les boutons d’édition et de suppression d’un élément de la vue. ___________________________________________________________________________ 5/1 5.2-1 Axes D L’axe à représenter est choisi parmi les axes de l'application. Ses caractéristiques (forme, origine, taille) sont ensuite précisées. • La forme est choisie parmi les icônes correspondantes, elle peut être verticale, horizontale ou circulaire. La position dans l’axe peut être représentée par une came se déplaçant le long de celui-ci ou par un barre-graphe (évolution d’un niveau par exemple). Dans ce dernier cas, les capteurs sont symbolisés par des flèches. • Le choix de l’origine de l’axe (à gauche/à droite ou en haut/en bas) détermine le "0" des coordonnées. Par exemple, un axe de forme horizontale dont l’origine est choisie à droite et dont la position initiale est 0 aura sa came dessinée à droite. • La taille de l’axe est fixée par un cœfficient de proportionnalité pris entre 0,5 et 5. Par défaut il est positionné à 1. Quand les choix du mode de représentation de l’axe sont définis, il est possible d’insérer celui-ci dans la vue avec la souris en cliquant à l’endroit où il doit être positionné. Il disparaît alors de la liste. ___________________________________________________________________________ 5/2 Description des synoptiques 5 Le dernier axe créé (ou sélectionné) peut être déplacé à l’aide de la souris ou avec les flèches du clavier. Sa taille peut être modifiée avec les touches "+" et "-", respectivement pour l’augmenter ou la diminuer. Il peut être supprimé par l’appui sur le bouton Suppression. Représentation des capteurs associés à l’axe Afin de ne pas surcharger la représentation de l’axe dans le synoptique, seuls apparaissent les capteurs intervenant dans les équations des entrées du bornier ou des relais. Les capteurs n’intervenant que dans les variables de modélisation sur les mouvements des axes sont considérés comme fictifs et ne sont donc pas représentés. Si le synoptique est décrit avant d’avoir configuré le bornier, les capteurs de l’axe n’apparaîtront pas dans la représentation. Ceci est le cas lors d'une simulation en mode local au moyen d’un "grafcet mécanicien". Dans ce cas, les capteurs de l’axe intervenant dans les réceptivités des transitions du grafcet apparaîtront, en simulation, dans le synoptique : ces capteurs interviennent dans des entrées implicites. ___________________________________________________________________________ 5/3 D 5.2-2 Variables Une variable de l’application peut être visualisée sur le synoptique qui, en mode simulation, reflétera son état courant. Pour ajouter une variable, il faut d’abord sélectionner le bouton Variables dans la fenêtre Variables de description. D Choix de la variable 8 formes possibles 6 couleurs Entrées km10 bouton radio Rouge Sorties km10 triangle Bleu Relais km10 carré Vert affichage ou non Jaune flèche haut / bas Noir flèche droite / gauche Orange Variables booléennes Variables numériques km10 km10 Capteurs km10 km10 km10 La partie droite de la fenêtre permet de sélectionner le type de variable parmi les entrées ou les sorties, les relais, les variables de la partie mouvement, et les capteurs. Ce choix se fait alors simplement en la sélectionnant dans la liste de gauche à l’aide de la souris, avec le choix du type d’affichage et de la couleur (un clic dans le carré coloré arrête le défilement des couleurs et sélectionne la couleur affichée), puis en désignant le point de l’écran où la variable (nom + icône) sera affichée. La variable à afficher peut aussi être sélectionnée par saisie de son mnémonique dans le champ prévu à cet effet. ___________________________________________________________________________ 5/4 Description des synoptiques 5 Les variables numériques sont sélectionnées de la même manière puis affichées dans le synoptique. La valeur courante sera affichée dans une case (nombre absolu ou nombre en hexa si la case hexa est cochée). D Si un axe représenté dans le synoptique est sélectionné en le cliquant avec la souris, les variables sont restreintes à celles figurant dans les liens amont et aval de l’axe considéré. Pour revenir à l’ensemble des variables de l'application, il faut cliquer, avec le bouton droit de la souris, sur la représentation de l’axe (ou d’un élément quelconque du synoptique) ou cliquer dans une zone du synoptique où aucun élément n’est représenté. Il est possible de choisir une représentation verticale de la variable (case à cocher). La variable sélectionnée peut être déplacée à l’aide de la souris, ou avec les flèches du clavier. Elle peut être supprimée par l’appui sur le bouton Suppression. 5.2-3 Texte Des textes libres peuvent être disposés dans la vue en les positionnant avec la souris. ___________________________________________________________________________ 5/5 5.2-4 Décodeurs De la même façon que dans les pupitres, des afficheurs hexadécimaux peuvent être disposés dans la vue. La valeur affichée est donnée par 4 bits, qui peuvent être des sorties ou des variables. D 5.2-5 Lignes Des traits pleins peuvent être ajoutées pour agrémenter les vues. ___________________________________________________________________________ 5/6 Description des synoptiques 5.3 5 Aides à l’édition des synoptiques 5.3-1 Copier/Coller Un mécanisme de copier/coller est proposé : 1. choisir la partie du synoptique à copier, à l’aide du bouton gauche de la souris en encadrant la zone à copier, 2. cliquer sur le bouton Copier, 3. cliquer sur le bouton Coller puis cliquer sur la position désirée dans le synoptique. 5.3-2 Déplacement d’éléments Il est possible de déplacer des éléments de la vue soit en cliquant dessus et en bougeant la souris sans lâcher le bouton, soit en utilisant les flèches de direction du clavier (déplacement par pixels). 5.3-3 Impression des synoptiques Cette commande permet d’imprimer un synoptique sur l’imprimante par défaut. Le document créé par SIMTSX correspond à une simple recopie de l’image du synoptique sélectionné. Remarque Avant de déclencher l’impression d’un synoptique, l’utilisateur devra s’assurer que ce synoptique peut être entièrement visualisé à l’écran. Dans le cas contraire, seule la partie affichée sera imprimée. ___________________________________________________________________________ 5/7 D D ___________________________________________________________________________ 5/8 Validation de l'application SIMTSX Chapitre Page 1 Présentation des possibilités de validation 1.1 Sommaire Intercalaire E Présentation 2 Utilisation des grafcets mécaniciens 1/1 1/1 2/1 2.1 Syntaxe 2/2 2.2 Interface d’édition des grafcets 2/4 2.3 Impression des grafcets 3 Validation par simulation en mode local 3.1 Animation en mode local 4 Environnement de simulation 2/10 3/1 3/1 4/1 4.1 Fenêtre de fond de l’environnement de simulation 4/2 4.2 Actions sur les pupitres et les variables externes 4.2-1 Variables externes 4.2-2 Pupitres 4.2-3 Notion de "contexte" 4.2-4 Notion de "scénario" 4/5 4/5 4/7 4/9 4/9 4.3 Outils de visualisation 4.3-1 Pages dynamiques 4.3-2 Les synoptiques 4/10 4/10 4/12 4.4 Forçage des variables de modélisation 4/13 ___________________________________________________________________________ E/1 E Validation de l'application SIMTSX Chapitre 4.5 E Sommaire Intercalaire E Examen ou l’analyse des situations 4.5-1 Examen des variables dont l’état est déterminé par une expression booléenne 4.5-2 Examen des variables numériques 4.5-3 Examen des mouvements 4.5-4 Examen des capteurs Page 4/14 4/15 4/15 4/16 4/17 4.6 Pièges d’exploitation 4.6-1 Caractérisation d’un piège 4.6-2 Evaluation des pièges 4.6-3 Action des pièges 4/18 4/18 4/19 4/19 4.7 Les défauts 4.7-1 Collages et forçages 4.7-2 Rebonds sur les capteurs 4.7-3 Remarques 4/20 4/20 4/21 4/21 4.8 Les scénarios 4.8-1 Séquences d’actions sur les pupitres et les variables externes. 4.8-2 Edition d’un scénario 4.8-3 Notion d’attente 4.8-4 Vérifications de réactions 4/22 Initialisation 4/30 4.9 4/22 4/25 4/26 4/28 4.10 Sauvegarde et Restitution d’état de l'application 4/31 4.11 Description 4/32 ___________________________________________________________________________ E/2 Validation de l'application SIMTSX Chapitre Sommaire Intercalaire E Page 5 Edition des chronogrammes 5/1 5.1 Configuration 5.1-1 Edition d’un module 5/1 5/2 5.2 Eléments de présentation - Fonctions générales 5.2-1 Présentation générale 5.2-2 Principe général 5.2-3 Entête de la page 5.2-4 Déplacement dans le chronogramme 5.2-5 Précision du diagramme 5.2-6 Indications de temps 5/3 5/3 5/5 5/7 5/7 5/8 5/8 5.3 Diagramme des axes 5.3-1 Nature des éléments présentés 5.3-2 Changement d’origine 5.3-3 Sélection d’un module 5.3-4 Sélection d’un axe 5.3-5 Quitter le diagramme des axes 5/10 5/10 5/10 5/11 5/11 5/11 5.4 Diagramme des mouvements d’un module 5.4-1 Nature des éléments présentés 5.4-2 Choix des éléments présentés 5.4-3 Quitter le diagramme des mouvements 5/12 5/12 5/12 5/12 5.5 Diagramme des entrées/sorties d'un axe 5.5-1 Nature des éléments présentés 5.5-2 Choix des éléments présentés 5.5-3 Quitter le diagramme des entrées/sorties 5/13 5/13 5/14 5/14 ___________________________________________________________________________ E/3 E Validation de l'application SIMTSX Chapitre 5.6 E 5.7 Sommaire Intercalaire E Représentation en tableau d’analyse fonctionnelle 5.6-1 Accès 5.6-2 Présentation 5.6-3 Fonctionnalités 5.6-4 Filtrage 5.6-5 Quitter la représentation AF Page 5/15 5/15 5/15 5/15 5/16 5/16 La comparaison de cycles 5.7-1 Principe 5.7-2 Création d’un cycle de référence 5.7-3 Activation de la comparaison 5.7-4 Affichage des durées des évolutions du cycle de référence 5.7-5 Affichage des divergences temporelles en tableau structuré 5.7-6 Déplacement de l’enregistrement de référence 5.7-7 Affichage des informations de synchronisation du cycle de référence 5.7-8 Recherche de divergence 5/17 5/17 5/18 5/20 5.8 Impression des diagrammes 5/24 5.9 Synthèse des touches utilisées 5.9-1 Description du clavier 5.9-2 Diagramme des axes 5.9-3 Diagramme des Mouvements 5.9-4 Diagramme des entrées/sorties 5.9-5 Diagramme Analyse Fonctionnelle 5/25 5/25 5/25 5/26 5/27 5/28 5/20 5/20 5/21 5/21 5/22 ___________________________________________________________________________ E/4 1 Présentation des possibilités deChapitre validation 1 1 Présentation des possibilités de validation 1.1 Présentation La simulation locale permet de vérifier que le comportement de l'application simulée correspond à la réalité. La simulation locale est généralement effectuée à l’aide d’un grafcet, qui permet d’enchaîner facilement les mouvements afin de reproduire le cycle de fonctionnement de l'application simulée. Le "grafcet de mécanicien" permet de faire une simulation locale sans avoir à réaliser la configuration des entrées/sorties. Ces grafcets ont pour nom "MGRAF<i>". Des entrées/sorties sont implicitement créées pour permettre le dialogue entre le grafcet et le modèle de la partie opérative. Les entrées sont créées pour toute variable apparaissant dans une condition de transition et ne correspondant pas à une variable interne du grafcet telle qu’une fin de temporisation ou un état d’étape. De même des sorties "fictives" sont créées pour toute action d’étape pour laquelle n’est pas définie une variable de même nom dans le modèle de la partie opérative. Si un Bornier et une Tête de filerie ont été décrits, ils sont pris en compte, même s’il s’agit d’une simulation avec grafcet. Cependant si des actions du grafcet ont le même nom que des relais, ces derniers sont "occultés" pendant la simulation. Remarque : Il est possible de faire une simulation locale de deux façons : - les actionneurs devront être pilotés "manuellement" en agissant sur les sorties, ou directement sur les relais ou électrovannes si la tête de filerie n’a pas été décrite : ces entités apparaîtront en "variables externes". - avec un grafcet mécanicien. ___________________________________________________________________________ 1/1 E E ___________________________________________________________________________ 1/2 Chapitre 22 Utilisation des grafcets mécanicien 2 Utilisation des grafcets mécaniciens Un grafcet de mécanicien est un grafcet dont l’interface avec la partie opérative n’est pas définie explicitement par un bornier d’entrées/Sorties. Le dialogue s’effectue en agissant sur les variables indéfinies du modèle de la partie opérative au moyen des actions du grafcet : les actions des étapes dont le nom n’est pas celui d’une variable définie dans la modélisation sont "extériorisées" sous la forme de "Sorties implicites" susceptibles d’avoir un effet sur la partie opérative. Ceci vaut également pour les relais de la tête de filerie ne faisant pas partie de l’alimentation : ces relais ne seront pas pris en compte si des actions de même nom existent dans le grafcet de mécanicien. Réciproquement, les compte-rendus intervenant dans les conditions de transition sont directement les capteurs et autres variables de la partie opérative, ainsi que les variables de pupitres. Des variables externes supplémentaires peuvent éventuellement être introduites. Un tel grafcet peut être créé si le bornier est configuré : il est alors simplement interdit de faire intervenir des entrées dans les conditions de réceptivité. Pour atteindre l’interface de création des grafcets mécaniciens, il faut utiliser le bouton GRAFCET de l’interface de configuration de SIMTSX. ___________________________________________________________________________ 2/1 E 2.1 Syntaxe Les grafcets sont constitués d’étapes et de transitions reliées par des arcs. Aux étapes sont associées des actions et aux transitions des réceptivités. Actions des étapes Les actions de base sont les activations des actionneurs. Elles peuvent également concerner des variables internes, ou porter sur des temporisations et des compteurs. E Actions sur des variables booléennes Les actions peuvent être positionnées pendant l’activation de l’étape à laquelle elles sont associées, ou mémorisées et désactivées. Dans ce cas les syntaxes sont : <action> = 1 pour la mémorisation, <action> = 0 pour la désactivation. Gestion des variables numériques Au niveau des grafcets, il est possible d’affecter une valeur à une variable numérique, à condition qu’elle soit déclarée externe, dans une action d’étape. Exemple : vitesse = 4 La valeur d’une variable numérique peut être testée dans une transition ou une condition d’action. Activations des temporisations Une action peut également être le lancement d’une temporisation, la syntaxe est la suivante : <Lti> si l’on active la temporisation avec sa durée par défaut (durée = 1) ou <Lti> <durée> , où <durée> est une valeur numérique positive. Le fonctionnement de la temporisation est différent selon que son activation est conditionnée ou non. S’il n’y a pas de condition, la temporisation est lancée lors de l’activation de l’étape à laquelle elle est associée et continue à s’écouler même si cette étape est désactivée. Par contre si une condition est précisée, la temporisation est lancée lors du passage à l’état vrai du "et logique" formé par l’activité de l’étape et cette condition : cette temporisation est donc initialisée à l’activation de l’étape si la condition est vérifiée à ce moment, ou lorsque la condition se vérifie alors que l’étape est active. Si la condition est invalidée ou l’étape désactivée, la temporisation est remise à 0. Opérations sur les compteurs Plusieurs actions sont possibles sur des compteurs. Ce sont l’affectation, l’incrémentation et la décrémentation, et les opérations arithmétiques addition, soustraction et multiplication. La syntaxe de l’affectation est la suivante : <compteur> = <valeur> où <valeur> peut être un nombre ou un autre compteur. Ces actions peuvent être conditionnées par des expressions booléennes, dont la syntaxe est identique à celle des réceptivités des transitions. ___________________________________________________________________________ 2/2 Utilisation des grafcets mécanicien 2 Pour ce qui est de l’incrémentation/décrémentation, les syntaxes sont : <compteur> + et <compteur> S’il n’y a pas de condition associée à cette opération, elle est effectuée à l’activation de l’étape. Dans le cas où une condition est définie, l’incrémentation ou décrémentation est opérée lors du passage à l’état vrai du "et logique" formé par l’activité de l’étape et de cette condition : soit à l’activation de l’étape si la condition est vérifiée, ou à chaque passage à "1" de la condition tant que l’étape est active. Pour les opérations arithmétiques la syntaxe est : <compteur> <opérateur> <valeur> où <opérateur> peut être "+", "-" ou "*" et <valeur> est défini comme pour l’affectation. Ces opérations sont effectuées tant que l’étape est active - et non à l’activation comme c’est le cas pour l’incrémentation/décrémentation - et que la condition éventuellement associée est vérifiée. Si l’on définit dans une étape l’action "cpt1 + 1" et que l’activité de cette étape n’est pas "fugitive" dans un seul cycle d’exécution, on aura un débordement du compteur "cpt1". Conditions des transitions Également appelées "réceptivités", ces conditions de transition sont définies par des expressions "booléennes", où peuvent intervenir des prédicats portant sur la valeur de compteurs. Les tests sur la valeur des compteurs s’écrivent de la façon suivante : <compteur> <opérateur> <valeur> où : <compteur> est le compteur concerné, <opérateur> est un opérateur de comparaison qui peut être : < , >, < = ,> = , = ou <>. Les termes "Xi" permettent de prendre en compte l’activité d’une étape, en l’occurrence l’étape "n° i", dans une réceptivité. Les fronts sur les entrées ou les activités d’étapes peuvent être testés en préfixant les variables correspondantes d’un "+" ou d’un "-" selon qu’il s’agit du front montant ou descendant. ___________________________________________________________________________ 2/3 E 2.2 Interface d’édition des grafcets La fenêtre d’édition est composée d’une zone principale, dédiée au dessin du grafcet. Cette page graphique est en fait 25 fois plus grande que la partie qui en est affichée à l’écran, aussi se trouve-t-elle à l’intérieur d’un défileur permettant de déplacer la zone visualisée. E Dans la partie gauche de la fenêtre d’édition apparaissent d’une part 5 icônes symbolisant, de haut en bas, une étape initiale, une étape "normale", une transition, le lien entre deux éléments et une zone délimitée par des pointillés. D’autre part 5 boutons sont disposés dans la partie inférieure gauche de la fenêtre. Les 2 premiers permettent l’édition et la suppression des constituants d’un grafcet, c’està-dire les étapes et transitions mais aussi les liens entre ces éléments. Les 2 boutons suivants sont réservés à la création des compteurs et temporisations. ___________________________________________________________________________ 2/4 Utilisation des grafcets mécanicien 2 Création des étapes et transitions Pour créer une étape ou une transition, il faut d’abord sélectionner au moyen de la souris l’icône correspondante dans la partie gauche de la fenêtre : le passage en inverse vidéo de cette icône indique qu’on est en mode de création. On peut sortir de ce mode en dé-sélectionnant l’icône par le bouton droit de la souris. La création de l’élément s’effectue simplement en cliquant avec le bouton gauche dans la zone graphique à l’endroit où l’on veut faire apparaître une étape ou une transition. Ces éléments sont positionnés à intervalles réguliers dans la page graphique selon le pas d’une grille. L’élément qui vient d’être créé est rappelé dans la partie gauche de la fenêtre, audessus de la colonne de boutons. Il peut être déplacé dans la page graphique au moyen des flèches du clavier, ou directement à l’aide de la souris. Si une étape ou une transition a été créée par erreur, elle peut être supprimée, au moyen du bouton Del, après sélection de l’élément indésirable. Une confirmation est demandée avant la suppression effective de l’élément. Par défaut l’indice d’une étape ou d’une transition nouvellement créée est l’entier n+1, où n est le plus grand entier numérotant une étape ou une transition existante. Le bouton N° permet de choisir les indices à partir desquels les étapes et transitions créées vont être numérotées. Liens entre étapes et transitions Le lien entre les éléments peut être établi de deux façons, selon la représentation graphique choisie. Le lien peut être représenté par un arc : dans ce cas il faut d’abord sélectionner, dans la partie gauche de la fenêtre, l’icône représentant deux éléments reliés par une flèche. Le lien peut également être représenté par un renvoi : ceci est intéressant dans le cas où le tracé d’un arc dans la page graphique nuirait à la clarté du devoir. Dans ce cas il faut sélectionner l’icône représentant deux flèches, située sous celle évoquée précédemment. Le lien est alors établi en sélectionnant d’abord l’élément amont par un clic de la souris : celui-ci est alors identifié par un petit carré noir. On sélectionne ensuite l’élément aval, celui-ci est désigné par le marqueur comme étant l’élément amont pour le prochain lien. Si ceci n’est pas souhaité, il faut désélectionner l’élément au moyen d’un deuxième clic de la souris. Un lien entre deux éléments peut être détruit s’il a auparavant été sélectionné avec le bouton gauche de la souris : l’arc concerné est alors désigné dans la partie gauche de la fenêtre et le bouton Del permet de le supprimer. ___________________________________________________________________________ 2/5 E Zone de sélection L’interface graphique offre la possibilité de manipuler des ensembles d’étapes et de transitions. Pour cela il faut d’abord cliquer l’icône représentant un carré en pointillé dans la partie gauche de l’écran, celle-ci passe alors en inverse vidéo. E La désignation des étapes et transitions se fait en encadrant celles-ci à l’intérieur d’un rectangle. Le coin supérieur gauche de ce rectangle est positionné en cliquant dans la page graphique sans relâcher le bouton de la souris. En déplaçant la souris tout en maintenant le bouton enfoncé, on voit apparaître un rectangle dont le coin inférieur droit suit les mouvements de la souris. Quand on relâche le bouton, le rectangle se fixe à l’écran : un ensemble d’étapes et de transitions est alors désigné. Ce bloc peut être déplacé d’un seul tenant au moyen de la souris. Il peut également être supprimé au moyen du bouton Del, après une confirmation. Enfin un ensemble d’étapes et de transitions peut être dupliqué. Après avoir été sélectionné comme il vient d’être expliqué, il faut cliquer le bouton Copier se trouvant dans le haut de la fenêtre. Un clic de la souris dans la zone graphique permet alors de positionner le coin supérieur gauche du bloc à copier, ce qui est fait après confirmation. Zoom arrière Nous avons vu que la description du grafcet s’effectue dans une page graphique dont 1/25 ième est visualisé. Afin d’avoir une vue globale du grafcet, une fonction zoom arrière est proposée : elle est activable au moyen du bouton se trouvant en haut de la fenêtre. En zoom arrière, la zone visualisée en mode d’édition est représentée par un rectangle. Ce rectangle peut être déplacé à l’aide de la souris et la validation permet de revenir en mode d’édition. La fonction de gestion des blocs, décrite précédemment, est également accessible en zoom arrière. Edition des étapes et transitions La page graphique permet de décrire l’ossature du grafcet. Pour que celui-ci ait un intérêt, il faut pouvoir définir son "interprétation", c’est-à-dire associer des actions aux étapes et des conditions aux transitions. Ceci est réalisé au moyen de fenêtres prévues à cet effet, qui sont activées par le bouton Edi après sélection d’une étape ou d’une transition dans la zone graphique. Les boutons Précédent et Suivant de ces fenêtres permettent de passer en revue tous les éléments du grafcet appartenant au type sélectionné. ___________________________________________________________________________ 2/6 Utilisation des grafcets mécanicien 2 Description des étapes La partie supérieure de la fenêtre de description comporte une case de choix indiquant s’il s’agit d’une étape initiale ou non : cette caractéristique peut être modifiée en cliquant la case par la souris. Les actions associées à l’étape apparaissent dans un défileur à gauche de la fenêtre. Si l’on sélectionne une de ces actions, celle-ci est affichée dans l’éditeur Action, et la condition qui lui est éventuellement associée apparaît dans l’éditeur correspondant. On peut alors modifier cette action et sa condition, la substitution étant effectuée au moyen du bouton Remplacer. L’action sélectionnée peut également être supprimée par le bouton correspondant. Pour créer une nouvelle action, il faut définir celle-ci dans les éditeurs Action et Condition et agir sur le bouton Ajouter. Des aides sont apportées dans la définition des actions. Le bouton Aide action permet de sélectionner une action interne, une temporisation ou un compteur. Le bouton Aide condition permet quant à lui de sélectionner les termes susceptibles d’intervenir dans l’expression de la condition d’une action, soit les actions internes, compteurs et variables de fin de temporisation. ___________________________________________________________________________ 2/7 E Description des transitions Cette description consiste à définir la réceptivité associée à la transition. La syntaxe est identique à celle des conditions des actions des étapes, une aide analogue est donc proposée. E Création des compteurs et des temporisations Dans les étapes du grafcet, on peut activer des temporisations ou faire des opérations sur les compteurs. Dans les transitions, on peut prendre en compte des variables de fin de temporisation et tester la valeur des compteurs. Pour pouvoir être utilisées dans les actions et réceptivités, ces entités doivent être préalablement définies : c’est le rôle des boutons Cpt et Tmp. Les compteurs Le bouton Cpt permet d’ouvrir une fenêtre où sont affichés les compteurs définis pour le grafcet édité. Pour créer un nouveau compteur, il faut saisir un indice entier dans l’éditeur se trouvant dans la partie droite de la fenêtre et agir sur le bouton Ajouter. Un nom de compteur est donc toujours de la forme "Cpt<i>" où <i> est un entier. Si l’entier <i> est tel que le compteur "Cpt<i>" existe déjà, un message le signale et le premier entier non affecté est proposé dans l’éditeur. ___________________________________________________________________________ 2/8 Utilisation des grafcets mécanicien 2 Les temporisations La fenêtre permet de créer de nouvelles temporisations et de modifier la durée des temporisations existantes. Pour modifier la durée d’une temporisation, il faut sélectionner le terme "Lt<i>" correspondant à l’activation de cette temporisation. La durée de celle-ci est alors affichée dans un éditeur où on peut la modifier : celle-ci sera prise en compte par le bouton Modifier. Pour créer une temporisation, on peut agir sur le bouton Nouvelle temporisation : le plus petit indice entier ne correspondant pas à une temporisation existante, apparaît alors dans l’éditeur temporisation. La durée par défaut est 1, elle peut bien sûr être modifiée. L’indice de la temporisation à créer peut être saisi directement dans l’éditeur temporisation. Le bouton Ajouter permet de prendre en compte la nouvelle temporisation, à condition qu’une temporisation de même indice n’existe pas déjà. Une temporisation peut être ajoutée aux actions d’une étape par l’interface d’édition des étapes. Il suffit de saisir son nom, c’est à dire "lt" suivi de son numéro, ou de choisir parmi la liste de temporisations avec le bouton Aide action. La fin de temporisation dans une équation de transition est définie par la variable "ft" suivi du numéro de temporisation. Remarque : La suppression des compteurs et des temporisations n’est pas prévue dans l’interface. Celle-ci est en effet implicite, seules les temporisations et compteurs utilisés dans le grafcet étant sauvegardés quand on sort de l’édition. ___________________________________________________________________________ 2/9 E 2.3 Impression des grafcets SIMTSX permet l’impression d’un bloc de sélection quelconque créé au moyen de la souris. Le bouton Imprimer situé dans la partie supérieure de la fenêtre déclenche, après confirmation, l’impression du contenu de ce bloc. Toutefois, si les dimensions du rectangle représentant le bloc ne conviennent pas pour l’imprimante, un message d’erreur signale l’abandon de la commande. E Pour faciliter l’impression des grafcets, SIMTSX met à disposition de l’utilisateur une fonctionnalité de mise en page automatique. Celle-ci s’active au moyen du bouton Pagination situé en haut de la fenêtre. Le grafcet est alors présenté en zoom arrière en faisant apparaître chaque page créée par un rectangle "ombré". Les dimensions et les emplacements de ces rectangles sont calculés en fonction : • De l’emplacement et de la proximité des "sous-graphes", • De paramètres définis pour l’imprimante par défaut : dimensions et disposition du papier. L’impression, déclenchée par le bouton Imprimer, peut ensuite se dérouler de plusieurs manières : • Impression de toutes les pages : la totalité des pages créées est imprimée. • Impression des pages sélectionnées : la sélection d’une page s’effectue par simple "clic" dans son rectangle ; la page est alors grisée. • Impression d’une zone de sélection : l’utilisateur peut avoir recours à cette fonctionnalité lorsqu’un graphe est trop haut ou trop large pour figurer sur un seul feuillet d’imprimante. Dans ce cas, le graphe est imprimé de façon manuelle par sélections successives de zones à imprimer. Le document imprimé par SIMTSX est formé : • D’une page contenant le schéma graphique du GRAFCET dans lequel figurent les références des étapes et des transitions, • D’une ou plusieurs pages détaillant chaque étape et chaque transition de la partie sélectionnée du GRAFCET. ___________________________________________________________________________ 2/10 Chapitre Validation par simulation en mode local 33 3 Validation par simulation en mode local 3.1 Animation en mode local Si un grafcet est en cours d’exécution, un synoptique de même nom est visualisable. Il contient le grafcet tel qu’il a été décrit, en mode zoom arrière (réduction au 1/5e) avec les étapes, transitions et liens. Les étapes actives sont animées au fur et à mesure de l’évolution du grafcet. Lorsque la simulation est arrêtée, il est possible d’ouvrir directement la fenêtre d’examen pour une étape ou une transition en cliquant sur cette étape ou cette transition. E ___________________________________________________________________________ 3/1 E ___________________________________________________________________________ 3/2 Chapitre 44 Environnement de simulation 4 Environnement de simulation Les menus Fichier et Simulation de la fenêtre principale de SIMTSX permettent de définir l'environnement de simulation. E Le menu Fichier permet de charger l'application à simuler et le grafcet local de commande : Application - Sélection et chargement de l'application à simuler. Grafcet - Accessible dès qu'une machine est choisie pour la sélection du grafcet de simulation local ("Annuler" pour désélection). Le menu Simulation permet de démarrer la simulation en mode local ou connecté : Locale - Démarrage de la simulation en mode local. Si aucun grafcet n'est sélectionné, SIMTSX propose de choisir un grafcet ("Annuler" pour désélectionner). Connectée - Démarrage de la simulation en mode connecté, paramètre et choix du mode de communication. Si un grafcet est sélectionné, ce grafcet sera effectivement chargé et s'exécutera parallèlement aux échanges d'entrées/sorties. Dans le cas où un actionneur est à la fois piloté par une action du grafcet et par une sortie automate, c'est l'action du grafcet qui est effectivement propagée par SIMTSX. ___________________________________________________________________________ 4/1 4.1 E Fenêtre de fond de l’environnement de simulation La fenêtre principale de l’environnement de simulation comporte trois zones. Le bandeau regroupe les différentes commandes utilisables en simulation. La zone se trouvant sous ce bandeau est divisée en trois parties, dédiés respectivement aux modes de marche, à l’affichage de la date et au choix de la période, et enfin à l’indication de l’état de la simulation. Le bas de la fenêtre est réservé à la visualisation du synoptique de fond de l’application simulée. Les modes de marche du simulateur sont Pas à Pas, Périodique et Continu. Ils sont sélectionnés grâce aux cases à cocher correspondantes. • En mode Pas à Pas, la simulation est interrompue à chaque changement d’état des sorties. • Le mode Périodique permet d’arrêter la simulation en fonction d’un pas de temps machine. La valeur de ce pas est saisie au moyen d’une boîte de dialogue ouverte en cliquant le bouton Période. Cette fenêtre apparaît automatiquement si l’on sélectionne le mode périodique alors que la période n’est pas définie. • Le mode Continu : la simulation se déroule sans interruption tant qu’il y a des mouvements actifs. Si l’on est en mode périodique et que l’on sélectionne le mode continu, la période qui était saisie est perdue. Par contre, si l’on désélectionne le mode périodique, la période est conservée. Dans la partie centrale de la zone située sous le bandeau est affichée la Date de simulation. Par défaut celle-ci progresse en fonction des événements engendrés par l’évolution du modèle de la partie opérative. Pour des process relativement lents, cette "avance du temps" peut-être beaucoup plus rapide que la réalité. Le temps "réel" au rythme duquel s’effectue la simulation dépend en effet de la quantité de calculs à effectuer et non des temps des mouvements définis en configuration du modèle. Une possibilité de ralentir la simulation est de définir une période de faible valeur par le bouton Période. Un autre moyen est de sélectionner le Mode temporisé, en cochant la case se trouvant sous la date. Ceci permet de synchroniser, dans la mesure du possible, l’évolution de la date de simulation avec l’horloge du PC. C’est-à-dire que la date de simulation ne progresse dans ce cas pas plus vite que le temps "réel". Ceci n’est réalisable que si les calculs à effectuer - et les échanges avec l’automate - ne sont pas trop importants. Un signe "+" apparaît à gauche de la commande "mode temporisé” si ceci est le cas. Le bouton : <<>> Num permet d'introduire une période de rafraîchissement des registres d'entrée et des mots. Par défaut, l'écriture des registres d'entrées et des mots est faite à chaque changement de valeur par SIMTSX. Ceci peut conduire à un grand nombre d'échanges entre l'automate et le simulateur, qui ralentissement le déroulement de la simulation sans être pour autant significatifs pour la mise au point du programme automate. ___________________________________________________________________________ 4/2 Environnement de simulation 4 Cette période permet alors de cadencer l'écriture des registres d'entrée selon un pas de temps exprimé en "temps application" : • Si elle est positionnée à 0 (par défaut), les échanges numériques sont faits à chaque changement de valeur des %IW et des mots. • Sinon les rafraîchissements sont faits : - en même temps que les entrées TOR, - en l'absence de changement d'état d'entrées TOR, dès que la date de simulation avance de plus de la période d'échanges numériques (depuis le dernier échange), ou si la date de simulation ne bouge plus (blocage des mouvements…). La partie droite de la fenêtre informe de l’état de la simulation. Quand aucun mouvement ne se produit, le texte Blocage y est affiché sur fond noir. En cours de simulation, le bouton Interruption permet d’interrompre l’évolution du modèle, donc de la date. Quand la simulation est arrêtée - par exemple sur apparition d’une sortie alors que le mode Pas à Pas est sélectionné - le bouton Relance permet de reprendre le cours de celle-ci. ___________________________________________________________________________ 4/3 E Un état particulier de SIMTSX est l’Interruption sur Problème Modèle. Ceci se produit quand une incohérence dans la modélisation interdit la poursuite de la simulation. Les causes possibles sont précisées en Annexe dans la rubrique Messages d’erreur (voir chapitre 2 de l’intercalaire I). Le tableau ci-après renvoie, pour chacune des commandes de l’environnement de simulation, aux chapitres de la documentation les concernant. Commandes de l’environnement de simulation E Pupitres Voir E 4.2-2. Externes Voir E 4.2-1. Contextes Voir E 4.2-3. Synoptiques Voir E 4.3-2. Outils Evolutions Echéancier Examen Pages Pièges Forçages Description Défauts Ouvre une fenêtre affichant les échanges d’entrées/sorties. Ouvre une fenêtre affichant l’échéancier de SIMTSX. Voir E 4.5. Voir E 4.3-1. Voir E 4.6. Voir E 4.4. Voir E 4.11. Voir E 4.7. Scénarios Voir E 4.8. Trace Voir E 5. Aide Ouvre l’aide en ligne de la partie simulation. Initialisation Ré-initialise la simulation en proposant un contexte (voir E 4.9). Quitter Quitte la simulation en demandant si l’on souhaite sauvegarder l’état machine. (voir E 4.10). Entrées/sorties En mode connecté, faite apparaître le serveur de communication Voir F1.5 et F1.6. ___________________________________________________________________________ 4/4 Environnement de simulation 4 E 4.2 Actions sur les pupitres et les variables externes 4.2-1 Variables externes Sous le nom de "variables externes" on trouve les termes intervenant dans des équations du modèle et dont l’origine n’est pas spécifiée (les variables indéfinies de la partie description). Il s’agit généralement de variables représentant des conditions d’alimentation en énergie, les variables numériques, des capteurs non activés par des axes tels que les sécurités ou encore des présences de pièces en entrée d’une machine. Par la création d’entrées implicites rentrent également dans cette catégorie les variables internes du grafcet qui ne sont pas gérées : on peut ainsi les forcer. Les sorties intervenant dans le modèle et qui ne sont pas commandées par le grafcet en simulation interne passent en "variables externes". Le bouton Externes en haut à gauche de l’écran de simulation fait apparaître une fenêtre permettant de modifier l’état de ces variables. Les variables externes sont présentées dans la partie gauche de cette fenêtre avec leur état logique. ___________________________________________________________________________ 4/5 E Si l’on sélectionne une de ces variables dans la liste de gauche, elle passe dans la partie droite de la fenêtre. On peut retirer la variable de la partie droite en la cliquant de la même façon. Un autre moyen de sélectionner une variable pour en modifier l’état est de la taper dans l’éditeur présent dans la fenêtre ; si le nom saisi n’est pas celui d’une variable externe, la liste présentée dans la partie gauche de la fenêtre est défilée de façon à ce que la première variable externe de rang alphabétique supérieur à celui du nom tapé apparaisse au début de la zone présentée. Le bouton Valider permet d’envoyer les changements d’états sélectionnés au simulateur. ___________________________________________________________________________ 4/6 Environnement de simulation 4 4.2-2 Pupitres Dans l’environnement d’exploitation du simulateur, les pupitres apparaissent sous la forme de fenêtres. L’action sur les éléments composant ces pupitres se fait à l’aide de la souris. Manipulation des pupitres Le bouton Pupitres en haut à gauche de la fenêtre de simulation fait apparaître un menu permettant de choisir le pupitre que l’on veut afficher. L’item Tous active en une seule commande l’ensemble des pupitres configurés. Les pupitres sélectionnés sont disposés à l’endroit où ils avaient été positionnés lors de la dernière simulation. Par défaut, ils apparaissent dans la partie inférieure droite de l’écran. Le bouton Fin en haut à droite d’un pupitre permet de le retirer de l’écran. Actions sur les éléments des pupitres L’action de l’opérateur portera sur les boutons poussoirs et commutateurs destinés à la conduite du système automatisé. Boutons-poussoirs L’utilisation courante d’un bouton-poussoir est la génération d’une impulsion à destination de la Partie Commande du système automatisé. Ceci est réalisé simplement dans SIMTSX en cliquant le bouton-poussoir. Le bouton du pupitre reste alors enfoncé tant que l’on appuie sur le bouton de la souris. Le bouton-poussoir retourne à l’état de repos. Le bouton-poussoir à accrochage est un type particulier de bouton qui reste enfoncé quand on appuie dessus : c’est le cas par exemple des boutons d’arrêt d’urgence qui nécessitent parfois l’utilisation d’une clé pour être relâchés. Ce type de bouton existe dans SIMTSX : un clic de la souris les enclenche, et il faut une commande spéciale pour les relâcher. Ce relâchement peut être obtenu de deux façons différentes. D’une part, en cliquant la commande Relâchement en haut du pupitre : celle-ci passe alors en inverse vidéo et un clic sur le bouton concerné permet de le relâcher. D’autre part, le relâchement d’un bouton peut être obtenu en maintenant enfoncée la touche <Ctrl> du clavier et en cliquant le bouton. ___________________________________________________________________________ 4/7 E Il est possible de réaliser des appuis maintenus de boutons-poussoirs. Ceci peut être utile pour activer simultanément plusieurs boutons-poussoirs ou pour sélectionner une fonction du simulateur par la souris tout en maintenant un bouton appuyé. E Comme pour le relâchement, il y a deux façons de maintenir enfoncé un boutonpoussoir : • une première façon est de cliquer la commandeimpulsion en haut du pupitre : celleci est alors remplacée par l’indication maintien. Si l’on clique sur un bouton-poussoir celui-ci passera dans l’état maintenu qui est signalé par le dessin d’un doigt sur le bouton considéré, • un autre moyen de réaliser cette fonction est de cliquer sur le bouton concerné tout en appuyant la touche <Shift> du clavier. Le relâchement d’un bouton-poussoir maintenu se fait, comme pour les boutons à accrochage, au moyen de la commande relâchement du pupitre ou par l’action combinée de la touche <Ctrl> et du clic de la souris. Commutateurs Dans SIMTSX sont disponibles des commutateurs à 2, 3 ou n positions. Le positionnement des commutateurs se fait au moyen des boutons gauche et droit de la souris. Les commutateurs à 2 et 3 positions peuvent être munis d’une fonction de rappel automatique pour certaines positions : par exemple, la position gauche pour un commutateur à 2 positions. Dans ce cas, celle-ci est indiquée par une flèche et le commutateur se comporte comme un bouton poussoir pour cette position : un clic de la souris permet d’engendrer une impulsion suivie d’un retour en position de repos, c’est-à-dire la position gauche pour le commutateur à 2 positions ou la position centrale pour les 3 positions. De la même façon que pour les boutons-poussoirs, on peut maintenir un commutateur dans une position de rappel : la flèche indiquant le retour automatique n’apparaît plus. Roues codeuses La position sélectionnée est incrémentée en cliquant la case marquée "+", et décrémentée en agissant sur la case marquée "-". Analyse de l’état des voyants et des afficheurs Il est possible "d'interroger" ces composants des pupitres sur la raison de leur état. On peut savoir pourquoi un voyant est éteint (ou allumé) ou en fonction de quelles variables est affichée la valeur numérique dans un décodeur hexadécimal. Pour cela il faut positionner le curseur de la souris au niveau de l’élément considéré et cliquer simultanément les boutons gauche et droit. Pour un voyant, on aura un "examen" de la variable le commandant, dans le cas d’un afficheur hexadécimal l’état des 4 bits de donnée et de la variable de validation éventuelle sera affiché. Remarque Pour "interroger" un bouton poussoir à voyant, il faut joindre aux clics des 2 boutons de la souris l’appui sur la touche <Ctrl> du clavier pour éviter d’actionner la fonction bouton de cet élément. ___________________________________________________________________________ 4/8 Environnement de simulation 4 4.2-3 Notion de "contexte" Nous venons de voir comment manipuler les pupitres et agir sur les variables externes. La fonction contexte, accessible par le bouton se trouvant en haut de la fenêtre de simulation permet de sauvegarder un état courant des pupitres et variables externes : le contexte enregistré est restauré l'initialisation de la simulation. En cours de simulation, on peut utiliser cette fonction pour vérifier l’état dans lequel se trouvent les pupitres et les variables externes : en sélectionnant un contexte dans la fenêtre permettant de les créer, l’écart de la situation courante par rapport au contexte est indiqué dans la partie droite de cette fenêtre. Les variables dont l’état n’est pas conforme au contexte sont signalées et en cliquant une de ces variables, l’élément ainsi que le pupitre auquel elle est attachée sont affichés. Le bouton Restituer permet de remettre l’état de ces variables en conformité avec le contexte sélectionné. 4.2-4 Notion de "scénario" La notion de contexte est complétée par la possibilité d’enregistrer et de restituer une succession d’actions sur les variables externes booléennes et numériques et les éléments de pupitre afin d’automatiser des séquences de commande (séquence de démarrage, remises en cycles...). Il s’agit d’un cas particulier de l’utilisation des scénarios. La notion de scénario est détaillée au chapitre 4.8 de cet intercalaire. ___________________________________________________________________________ 4/9 E 4.3 Outils de visualisation Nous venons de voir dans le paragraphe précédent comment piloter le simulateur par le moyen des pupitres et de l’action sur les variables externes. Il est également important de pouvoir observer dans de bonnes conditions les évolutions du modèle simulé, autrement qu’au travers du simple échange d’entrées/sorties ou de l’échéancier des événements attendus. E Pour cela des fonctionnalités ont été développées : ce sont les "pages dynamiques" et les "synoptiques". La fonction examen participe également à l’observabilité de la simulation mais en raison de sa spécificité un paragraphe particulier lui est consacré (voir chapitre 2.5 de cet intercalaire). 4.3-1 Pages dynamiques Cet outil permet de visualiser en permanence l’état de variables que l’on a préalablement sélectionnées. L’accès à cette fonction se fait par action sur l’item Pages du menu Outils situé dans la partie inférieure de l’écran de simulation. Une première fenêtre est alors affichée, permettant de créer une nouvelle page, d’éditer, visualiser et détruire les pages déjà configurées. Le bouton Créer ouvre une fenêtre où l’on saisit le nom de la page à configurer. Après validation, la phase d’édition de la page commence. Edition d’une page La fenêtre d’édition comporte à sa droite une zone où apparaissent les variables constituant la page éditée. Cette zone est vide en création d’une nouvelle page. La partie centrale de la fenêtre permet de sélectionner le type de variable à faire voir figurer dans la page. Le choix est proposé parmi : • • • • les les les les entrées et sorties du bornier, relais et l’alimentation générale de la tête de filerie, variables de modélisation de la partie "mouvements", pièges d’exploitation. La sélection du type de variable en fait apparaître la liste dans la partie gauche de la fenêtre. La configuration de la page se fait très simplement en sélectionnant des variables dans cette liste à l’aide de la souris. ___________________________________________________________________________ 4/10 Environnement de simulation 4 Le retrait d’une variable de la page se fait de la même manière en cliquant celle-ci dans la partie droite de la fenêtre. L’éditeur, se trouvant au bas de la partie centrale de la fenêtre permet d'apporter une variable dans la page. Si la variable saisie est correcte, elle passe dans la partie droite de la fenêtre, à la validation. E En plus des variables proposées dans le choix décrit précédemment, des capteurs, bistables, des mouvements ou des variables externes peuvent être incorporés dans la page. Au cas où la saisie ne correspond pas à une des variables du type sélectionné, un défilement de la liste des variables présentées est effectué, correspondant à un positionnement alphabétique dans cette liste. Visualisation des pages dynamiques L’action sur le bouton Visualiser de la fenêtre principale de la fonction Pages fait apparaître dans la partie droite de la fenêtre de fond du simulateur, les variables constituant la page sélectionnée. Les variables sont disposées en colonne et leur état est indiqué par une icône du type "Bouton radio". La fenêtre de visualisation possède des boutons —> et <— afin de passer à la page suivante ou à la page précédente. Le bouton Editer permet de modifier la liste des variables formant la page. Il est également possible de créer une nouvelle page grâce au bouton prévu à cet effet. Remarque La fonction examen permet d'analyser la raison de l’état logique dans lequel se trouve une des variables visualisées. Cette fonctionnalité est accessible, quand le simulateur est à l’arrêt ou en blocage, en cliquant la variable considérée. ___________________________________________________________________________ 4/11 4.3-2 Les synoptiques Dans l’environnement de simulation, les synoptiques décrits au préalable apparaissent sous la forme de fenêtres (vues), sauf le synoptique intitulé Fond de plan qui apparaît dans la fenêtre principale de la simulation (voir chapitre 7 de l’intercalaire B). Les fenêtres de synoptique de grafcet se lance de la même façon que les autres synoptiques. Leur utilisation est décrite au chapitre 3 de cet intercalaire. Manipulation des synoptiques E Si des synoptiques ont été décrits, le bouton Synoptiques fait apparaître un menu permettant de choisir le ou les synoptiques à afficher. L’item Tous permet d’afficher l’ensemble des synoptiques en une seule commande. Le bouton Fin permet de supprimer le synoptique affiché. En quittant la simulation, les positions à l’écran des synoptiques sont conservées. Animation des synoptiques Animation des axes Un axe est représenté par un contour (rectangle vertical, horizontal ou cercle) dans lequel évolue la position courante soit par une came, soit par un barre-graphe. Les états des capteurs de l’axe sont "allumés" lors de leur passage à 1. Animation des variables Les variables d’un synoptique sont "allumées" lors de leur passage à 1 et "éteintes" lors de leur passage à 0. Animation des décodeurs Un calcul est fait en fonction de la valeur des bits du décodeur. Un chiffre indique la valeur courante recomposée. Examen des variables synoptiques Lors d’un arrêt du simulateur ou lors de blocage, il est possible d’accéder à un examen des variables des synoptiques, en double-cliquant sur l’élément graphique concerné. ___________________________________________________________________________ 4/12 Environnement de simulation 4.4 4 Forçage des variables de modélisation Ces variables sont équivalentes à des relais dans le fonctionnement interne de SIMTSX. Elles sont décrites dans la partie "Axes" de l’interface de configuration. D’autre part, elles ne peuvent être soumises à des défauts dans l’environnement de simulation. Le forçage permet d’agir directement sur l’état logique de ces variables qui est normalement défini par une expression booléenne. Ceci permet, par exemple, dans le cas où ces variables représentent des présences de pièces, d’injecter une pièce en un endroit quelconque de l’application simulée sans que cela ait été explicitement prévu. Ceci permet également de pouvoir remédier temporairement à une erreur de modélisation (équation erronée de la variable). Utilisés de façon incontrôlée, ces "forçages" risquent d’introduire des incohérences dans la modélisation. ___________________________________________________________________________ 4/13 E 4.5 Examen ou l’analyse des situations "L’examen" est une fonctionnalité accessible à différents niveaux. Elle est accessible quand la simulation est "arrêtée", c’est-à-dire lors d’un blocage, ou, lors d’un arrêt. E La fenêtre principale de cette fonction est activée par l’item Examen du menu Outils. Cette fenêtre comporte un certain nombre de boutons et un éditeur. L’action de la souris sur un de ces boutons affiche l’état logique des variables du type sélectionné. Un examen sur une des variables présentées se déclenche en la cliquant avec la souris. Un autre moyen d’accéder à l’examen d’une variable est de la saisir dans l’éditeur de la fenêtre examen. Une validation déclenche un examen de la variable si celle-ci est connue du simulateur. Sinon un défilement de la liste des variables présentées est effectué, correspondant à un positionnement alphabétique de la saisie dans cette liste. ___________________________________________________________________________ 4/14 Environnement de simulation 4 4.5-1 Examen des variables dont l’état est déterminé par une expression booléenne C’est le cas des entrées du bornier, les relais ou les variables des mouvements. Si la variable est dans l’état logique "0", les termes manquants pour vérifier l’équation de la variable sont présentés. Si la variable est à "1", l’explication de cet état à partir de l’analyse de l’équation est donnée. Le bouton Mise à 0 présente les conditions pour remettre à "0" cette variable. La liste des variables manquantes ou expliquant l’état "vrai" est reprise dans un défileur dans la partie droite de la fenêtre. En sélectionnant une de ces variables, l’examen en profondeur est poursuivi. 4.5-2 Examen des variables numériques Deux modes d’accès à l’examen des variables numériques sont possibles : • accès à partir de l’item du menu principal Examen, • double-clic dans un synoptique sur la case associée à la variable numérique voulue (elle doit avoir été déclarée en description des synoptiques). La valeur courante de la variable numérique est présentée. De plus le tableau associé à la variable est visualisé. Les affectations dont la condition associée est vérifiée sont affichées en caractères gras avec le résultat intermédiaire. L’examen peut être poursuivi en cliquant une variable intervenant dans une affectation ou dans la condition éventuellement associée à une affectation. ___________________________________________________________________________ 4/15 E 4.5-3 Examen des mouvements Lors de l’examen d’un mouvement, différents cas sont possibles : • Si l’axe auquel est associé le mouvement est linéaire et que le mouvement est en fin de course, ceci est indiqué et l’équation du mouvement n’est pas analysée. • Si, le mouvement étant inactif, un autre mouvement est actif pour l’axe associé, ce mouvement est indiqué et un examen de celui-ci est déclenché en quittant la fenêtre. • Si le mouvement examiné est inactif sans être en fin de course, l’analyse de l’équation donne les conditions manquantes. E L’examen indique "mouvement impossible" : quand interviennent des capteurs de l’axe associé dans les conditions manquantes. ___________________________________________________________________________ 4/16 Environnement de simulation 4 4.5-4 Examen des capteurs L'examen indique l’état d’un capteur. Dans la partie droite de la fenêtre sont indiqués le ou les mouvements permettant de quitter ou d’atteindre le capteur selon que celuici est actif ou inactif. E ___________________________________________________________________________ 4/17 4.6 Pièges d’exploitation Grâce aux pièges, le simulateur peut être arrêté quand une situation particulière se produit. Les pièges permettent également de compter les occurrences d’événements, de mesurer le temps écoulé entre deux occurrences successives ou la durée pendant laquelle une situation persiste. E 4.6-1 Caractérisation d’un piège Un piège est défini par un événement et/ou une condition. Les variables sur lesquelles portent ces termes sont les entrées/sorties, les relais et les variables de modélisation. Si la condition n’est pas définie, elle est toujours vraie. Le piège est vérifié si, quand l’événement se produit, la condition est validée. Si l’événement n’existe pas, la condition est testée systématiquement. Un libellé de 40 caractères permet de compléter le mnémonique du piège. Les variables numériques et les axes échantillonnés peuvent intervenir dans la condition de ces pièges au moyen de comparaisons portant sur leur valeur. Exemple : condition du piège seuil : (position > 150) Une flèche vers le haut (respectivement vers le bas) permet de sélectionner le passage à 1 (respectivement à 0) de la variable à piéger. ___________________________________________________________________________ 4/18 Environnement de simulation 4 4.6-2 Evaluation des pièges La définition des pièges implique des entrées, des sorties et éventuellement des relais. SIMTSX évalue les pièges après réception de sorties émises par l’API, et propagation dans les relais. 4.6-3 Action des pièges L’activation d’un piège est signalée par un message comprenant le mnémonique et le libellé du piège. La durée écoulée (cumul des temps d’évolution machine) depuis la dernière occurrence du piège est indiquée. Si le piège ne possède pas d’événement déclenchant, sa désactivation est également signalée, ainsi que la durée de cette activation (temps pendant lequel la condition a été vérifiée). Le seuil associé à un piège permet de ne déclencher l’action de celui-ci qu’après un certain nombre d’occurrences. Si l’option Raz a été sélectionnée, l’action se déclenchera toutes les n occurrences, n étant la valeur du seuil. L’arrêt de simulation provoqué par le piège peut être désactivé : son activation sera "silencieuse" mais ses occurrences seront tout de même cumulées : le piège peut donc servir de compteur. Remarque Un piège peut être incorporé dans une page de variables ; son état est alors visualisé dynamiquement. Lorsque le simulateur est arrêté, un "examen" peut être déclenché en cliquant le nom du piège. Si le piège possède une condition, l’examen correspond à l’analyse de celle-ci. ___________________________________________________________________________ 4/19 E 4.7 Les défauts Il existe trois types de défauts qui sont : • les collages à 0 ou à 1 des capteurs, relais et bistables : quand l’élément concerné passe dans l’état correspondant, il y reste jusqu’à suppression du défaut (ou forçage dans l’état contraire), • les forçages portant sur les mêmes éléments : le passage dans l’état sélectionné est immédiat, • les rebonds sur les capteurs, qui peuvent avoir lieu à l’activation ou à la désactivation. E Ces fonctions sont accessibles par l’item Défauts du menu Outils. 4.7-1 Collages et forçages Dans la partie gauche de la fenêtre permettant de positionner ce type de défaut, apparaît la liste des entités concernées. Après sélection d’une de ces variables, le défaut choisi est positionné à l’aide de l’un des boutons prévus à cet effet. L’éditeur se trouvant sous la liste dans la partie gauche de la fenêtre permet de sélectionner la variable à mettre en défaut. Un clic sur une variable affichée dans la zone de défaut supprime ce défaut. Remarque Le bouton Annuler, ne supprime pas les défauts positionnés mais rétablit dans la fenêtre l’état des défauts courants. Les collages affectant les capteurs sont pris en compte dans les équations des Entrées du bornier et les relais de la tête de filerie où interviennent ces éléments. Par contre, ils ne sont pas perçus dans les mouvements des axes et les "variables de modélisation" de la description mécanique de l’application. ___________________________________________________________________________ 4/20 Environnement de simulation 4 4.7-2 Rebonds sur les capteurs Le défaut "rebond" consiste à envoyer à l’automate, lors du changement d’état d’un capteur affecté par ce défaut, 3 évolutions successives des entrées où intervient le capteur, l’état de celui-ci étant inversé deux fois de suite après le passage dans l’état correct. Au moins un temps de cycle API s’écoule avant que ces évolutions d’entrées ne soient présentées sur le bus d’entrées/sorties : l’automate a donc le temps de les percevoir et de faire évoluer son programme. Les sorties ne sont envoyées au simulateur après que les trois évolutions successives aient été reçues. En sélectionnant les capteurs sur lesquels le défaut doit être positionné, soit en le positionnant sur tous les capteurs, sauf certains. La sélection des capteurs se fait par choix dans la liste des capteurs ou par saisie directe au moyen d’un éditeur. 4.7-3 Remarques • Il est possible de supprimer simultanément tous les défauts positionnés. Pour ce faire, utiliser l’item Tout supprimer du sous-menu Défauts. • Lors d’une initialisation, le simulateur demande si l’on veut supprimer les défauts éventuellement positionnés. ___________________________________________________________________________ 4/21 E 4.8 Les scénarios Un scénario permet de restituer automatiquement des séquences d’actions sur les pupitres et les variables externes. Ceci permet de faciliter les procédures de démarrage de l’automatisme - mise sous tension, mise en service - ou les changements de mode de marche en cours de fonctionnement. E Ces séquences sont créées par enregistrement et leur exécution peut être contrôlée au moyen "d'attentes". Un scénario permet de définir des pannes, très utiles, dans le cadre de la formation d’opérateurs. Ces scénarios, construits au moyen d’un outil d’édition, permettent de positionner des défauts automatiquement au cours d’une simulation, en fonction de certains événements. Pour répondre à ce besoin, le nombre d’activations de pièges dans une attente peut être testé. Ainsi un capteur peut être cassé après un certain nombre de passages d’une pièce, par exemple. Enfin, la notion de "réaction" permet de vérifier la conformité de l’évolution d’un sousensemble de l’automatisme à un modèle de référence. Cette référence est un scénario comportant des réactions. Elle est établie par enregistrement des changements d’état de variables que l’on associe au scénario. Au cours de l’exécution, ces changements d’état sont considérés comme des réactions qui doivent se reproduire. Il faut que le scénario soit exécuté dans les mêmes conditions : les attentes permettent de synchroniser celui-ci avec l’évolution de l’automatisme. 4.8-1 Séquences d’actions sur les pupitres et les variables externes. Enregistrement Il faut tout d’abord créer un scénario en lui attribuant un nom et éventuellement un commentaire. Sélectionner ce scénario et cliquer le bouton Enregistrer de la fenêtre de gestion des scénarios. Après confirmation, l’enregistrement est activé. Le bouton Scénarios de la fenêtre de Simulation est alors grisé, son texte est changé en Enregistr.. Simultanément une fenêtre de suivi apparaît. Quitter permet de retirer cette fenêtre de l’écran. Le bouton Enregistr. de la fenêtre de fond permet de la rappeler. Le bouton Sauvegarder permet de clore et de sauvegarder l’enregistrement. ___________________________________________________________________________ 4/22 Environnement de simulation 4 Au fur et à mesure que des actions sont effectuées sur les pupitres et les externes, les changements d’état concernant les variables correspondantes sont visualisés dans cette fenêtre. Les syntaxes sont les suivantes : - <var> <- 1 - <var> <- 0 pour le passage à 1 ou à 0 d’une variable. Dans le cas des impulsions sur les boutons-poussoirs, la syntaxe est la suivante, selon que le contact est à fermeture ou à ouverture : - <var> <> 1 ou - <var> <> 0 Dans le cas des commutateurs à n positions et des roues-codeuses, plusieurs changements d’état de variables sont susceptibles de se produire simultanément : il s’agit "d'actions synchrones" dont la syntaxe est la suivante : - <var1> <- 0 - <var2> <- 1 Si des actions sont effectuées à des dates de simulation différentes, l’indication de la durée écoulée depuis l’action précédente - ou depuis le début de l’enregistrement s’il s’agit de la première action - complète la ligne du scénario enregistré. La syntaxe, par exemple dans le cas du passage à 1 d’une variable est alors : - <var> <- 1 d: <durée> Dans le cas d’actions synchrones, l’indication de durée suit le premier changement d’état affiché. Une réaction portant sur une variable numérique peut être insérée dans un scénario. La syntaxe à respecter est la suivante : <variable numérique> <prédicat> <valeur> avec une indication éventuelle de durée s'il existe un délai d’apparition de la réaction. Remarque La capacité maximale d’enregistrement d’un scénario est de 150 lignes. Au-delà, l’enregistrement est interrompu et une confirmation de sauvegarde est demandée à l’utilisateur. ___________________________________________________________________________ 4/23 E Restitution de la séquence d’actions Il faut pour cela cliquer le bouton Exécuter de la fenêtre de gestion des Scénarios. Après confirmation, l’exécution est lancée. Le bouton Scénarios est grisé et son texte devient Exécution. Pendant l’exécution d’une séquence, les pupitres sont verrouillés, la modification de l’état des variables externes et le positionnement des défauts sont inhibés. E Les actions enregistrées sont restituées en respectant les écarts de durée éventuels, à moins qu’un blocage se produise : dans ce cas l’action est exécutée sans tenir compte du délai associé. La référence de temps utilisée est le "temps machine" et non "le temps réel", ceci rend inopérantes les séquences où interviennent des temporisations de l’automate. Si l’on clique le bouton Exécution, une fenêtre apparaît dans laquelle le contenu du scénario en cours d’exécution est visualisé. La prochaine action devant être effectuée est indiquée en inverse vidéo. Le bouton Arrêter de cette fenêtre permet d’interrompre l’exécution du scénario avant terme. Autres actions enregistrées Outre les changements d’états des variables externes et de pupitres, sont enregistrés, d’une part, les positionnements et suppression de défauts sur les capteurs, relais et bistables et d’autre part, les forçages de variables de modélisation booléennes. Le collage à 1 d’un capteur a par exemple la syntaxe suivante : - <capteur> : collé à 1 Enrichissement d'un scénario Le bouton Compléter permet d’ajouter des actions à un scénario existant. Le scénario existant est exécuté puis les nouvelles actions sont enregistrées à la suite. ___________________________________________________________________________ 4/24 Environnement de simulation 4 4.8-2 Edition d’un scénario Un scénario est formé d’une suite de lignes. Pendant l’exécution ces lignes sont traitées de façon séquentielle. Un scénario peut comporter, outre des actions, des attentes et des réactions. L’accès à la fonctionnalité d’édition s’effectue au moyen du bouton Editer de la fenêtre de gestion des scénarios. L’outil d’édition permet de modifier un scénario existant - obtenu par enregistrement mais également de construire un nouveau scénario. La suppression d’une ligne permet d’éliminer une action indésirable. Une ligne peut être modifiée. Enfin une nouvelle ligne peut être ajoutée à la fin du scénario ou insérée devant la ligne sélectionnée. Modification d’une ligne Il faut sélectionner la ligne à modifier et cliquer le bouton Modifier. Un éditeur, se trouvant dans la partie droite de la fenêtre, contient le texte représentant la ligne considérée. La modification peut se faire directement dans cet éditeur : sur validation, une vérification de la syntaxe est effectuée. La modification pourra être effective au moyen du bouton Valider. Le bouton Revenir de la fenêtre d’édition permet de remettre en cause les différents éléments constituant la ligne, en partant de la fin de celle-ci. Chaque fois qu’une action sur le bouton Revenir est effectuée, les choix substitutifs sont proposés dans la partie gauche de la fenêtre d’édition. Il suffit de sélectionner un élément dans cette liste pour reconstituer une ligne dont la syntaxe est naturellement correcte. ___________________________________________________________________________ 4/25 E Création d’une ligne E Il peut s’agir d’un ajout en fin de scénario ou d’une insertion : deux boutons sont prévus à cet effet. La fenêtre de création est la même que pour la modification. L’éditeur contenant le texte de la ligne est initialement vide et la liste de choix contient les différents types de lignes que l’on peut ajouter ou insérer dans le scénario, comptetenu du type de la ligne précédant et éventuellement suivant celle que l’on crée. La construction de la nouvelle ligne peut se faire, à l’instar de la modification, directement dans l’éditeur en respectant la syntaxe ou par choix successifs dans la liste, le contenu de celle-ci étant modifié au fur et à mesure de la construction. Remarque Après validation de la création d’une ligne, une autre ligne peut être ajoutée à sa suite sans quitter la fenêtre d’édition. 4.8-3 Notion d’attente Les séquences obtenues par enregistrement ne comportent pas de conditions de synchronisation permettant de contrôler leur exécution. Les "attentes" permettent de suspendre l’exécution d’un scénario, jusqu’à ce qu’un événement se produise, ou qu’une condition soit vérifiée. Insertion d’attentes par édition Editr le scénario obtenu par enregistrement, sélectionner l’action - ou la première d’un groupe d’actions synchrones - dont l’exécution doit être contrôlée par une attente, cliquer le bouton Insérer, et sélectionner l’item Attente. Sont ensuite proposés les différents types de variables pouvant intervenir dans une ligne d’attente. Pour les variables booléennes les attentes possibles sont le passage à 1 ou à 0 de la variable (événement) - et la vérification de l’état logique 1 ou 0 de la variable (condition). Les syntaxes correspondantes sont les suivantes : <- <var> -> 1 ou <- <var> -> 0 et <- <var> :: 1 ou <- <var> :: 0 Cas des Pièges : Une distinction est faite entre les pièges selon qu’ils possèdent un événement ou non. Dans le premier cas, c’est le passage à 1 du piège, dont l’activité est fugitive, qui peut être attendu. Par contre, si le piège n’a pas d’événement, son activité - représentée par sa condition - est traitée comme les autres variables booléennes. ___________________________________________________________________________ 4/26 Environnement de simulation 4 Une attente peut être formée en testant le compteur associé au piège, au moyen d’une comparaison à une valeur entière. Une action spécifique permettant la remise à 0 du compteur d’un piège est disponible : elle doit être insérée dans le scénario au moyen de l’outil d’édition. Enregistrement d’attentes Un autre moyen de prendre en compte une attente dans un scénario est de "préparer" celui-ci avant de l’enregistrer. La préparation d’un scénario consiste à lui associer des variables - qui ne peuvent être que booléennes - avant de procéder à son enregistrement. La fenêtre de préparation, accessible par le bouton Préparer, comprend dans sa partie supérieure un sélectionneur comportant les deux items Attente et Réaction. Par défaut la sélection est Attente. La partie centrale de la fenêtre permet de sélectionner le type de variable désiré : les variables concernées apparaissent à gauche. Sur sélection d'une variable, elle prend place dans la liste Attentes à droite de la fenêtre. Elle peut en être retirée par un clic de la souris. L’éditeur permet une saisie directe de la variable souhaitée. Il faut ensuite valider pour que les variables sélectionnées soient associées au scénario. Au cours de l’enregistrement de ce scénario, les changements d’états se produisant sur les variables qui lui sont associées seront automatiquement insérées, sous la forme d’attentes, parmi les actions effectuées. Exécution d’un scénario comportant des attentes Pendant l’exécution d’une séquence d’actions, les pupitres sont verrouillés et le positionnement de défauts est inhibé. Si le scénario comprend une ligne d’attente, la main est rendue à l’opérateur qui peut agir sur les interfaces tant que l’attente n’est pas satisfaite. Ceci permet de créer un scénario dont l’exécution reste latente, tant qu’une attente n’est pas vérifiée, puis déclenche une série d’actions. Enrichissement des scénarios avec attentes Le principe de l'enrichissement consiste à réenregistrer un scénario qui est d’abord exécuté. Si la ligne en cours d’exécution est une attente, elle est réinscrite dans le scénario et la main est rendue sur les pupitres et les défauts. Les actions effectuées ne sont pas enregistrées tant que l’attente n’est pas satisfaite. Ceci permet en particulier de conditionner un enregistrement en complétant un scénario formé d’une attente. ___________________________________________________________________________ 4/27 E 4.8-4 Vérifications de réactions L’utilisation des scénarios n’a jusqu’à présent été envisagée que sous la forme de séquences d’actions dont l’exécution peut être contrôlée au moyen d’attentes. Un autre emploi de cette fonctionnalité est la vérification du comportement de sousensembles de l’automatisme, au moyen de la notion de "réaction". Ces réactions sont les changements d’état, obtenus par enregistrement, de variables associées au scénario dans la phase de "préparation". E Pour qu’une exécution ultérieure de ce scénario soit correcte, il faudra que les changements d’états des variables ou "réactions" se produisent à nouveau, de la même façon qu’au cours de l’enregistrement. Enregistrement de réactions Il faut tout d’abord définir les variables dont les changements d’état sont considérés comme des réactions à surveiller. Ceci se fait au moyen de la fenêtre de préparation. Il faut sélectionner l’item Réaction dans la partie supérieure de la fenêtre. Remarque Une variable spéciale nommée "Blocage" peut être surveillée. Elle est vraie quand aucun mouvement ne se produit. Dès que l’enregistrement est lancé, la fenêtre de suivi permet de visualiser la constitution du scénario. Celui-ci comprend, outre les changements d’état de variables résultant d’actions sur les pupitres et externes, les changements d’état affectant les variables associées au scénario en tant que réactions. Les réactions comportent une indication de durée. Au cours de l’enregistrement, la durée qui est affichée dans la fenêtre de suivi correspond au temps écoulé depuis la dernière action ou le début de l’enregistrement. Après sauvegarde du scénario, seule la dernière ligne d’une série de réactions consécutives conserve cette indication de durée. La syntaxe d’une ligne "réaction" est, par exemple pour le passage à 1 d’une variable : => <var> -> 1 d:<durée> De façon analogue aux actions, des réactions peuvent être synchrones. C’est le cas si des variables, dont les changements d’états sont des conséquences immédiates les uns des autres, sont associées au scénario. Lors de l’apparition d’une sortie, l’enclenchement du relais et l’activation du mouvement qu’elle commande sont des événements synchrones du changement d’état de celle-ci. La syntaxe est : => <var1> -> 1 d:<durée> <var2> -> 1 ___________________________________________________________________________ 4/28 Environnement de simulation 4 Remarques • Une attente permet de conditionner le début d’un enregistrement, par complètement d’un scénario. Ceci est également vrai, si le scénario comporte des réactions, associées en préparation : la surveillance de l’évolution des variables correspondantes est suspendue tant que l’attente n’est pas satisfaite. • Les attentes peuvent être enregistrées, si elles sont associées au scénario au moyen de la fonctionnalité de préparation. Il y a dans ce cas, exclusion entre les variables "d'attente" et les variables de "réaction". Conformité des réactions L’exécution d’un scénario comportant des réactions peut être - ou ne pas être conforme selon des critères. Soit un scénario, débutant par une attente permettant de synchroniser son exécution, et ne comportant que des réactions. L’attente peut être un piège caractérisant le début de cycle d’un sous-ensemble de l’automatisme, les réactions les mouvements des axes formant ce module. Ce scénario pourra être constitué par enrichissement à partir de l’attente définie en édition. L’exécution du scénario consiste, une fois l’attente "début de cycle" satisfaite, à vérifier que les réactions - ici les changements d’état des mouvements des axes du module - réapparaissent dans le même ordre et avant une date limite correspondant à la durée associée à la dernière réaction enregistrée. Enchaînement d’actions et de réactions Si le scénario comporte des actions, le principe de son exécution est le suivant : • les actions sont exécutées en fonction du délai qui leur est éventuellement associé. Pendant qu’une ligne "action" est en cours de traitement - son délai d’exécution n’est pas encore atteint - il est vérifié qu’aucune évolution des variables associées au scénario ne se produit. • quand une réaction est en cours de traitement, SIMTSX vérifie qu’elle se produit avant le délai imparti et qu’aucune autre évolution de variable du scénario ne se produit. ___________________________________________________________________________ 4/29 E Compte-rendu d’exécution L’exécution du scénario peut être visualisée en cliquant le bouton Exécution de la fenêtre de simulation. Les lignes en cours de traitement apparaissent en inverse vidéo dans la fenêtre de suivi. Dans le cas des scénarios avec réactions, une fenêtre de compte-rendu d’exécution est systématiquement affichée, elle peut être retirée une fois le scénario terminé. E Si l’exécution du scénario n’est pas correcte, c’est-à-dire si des réactions n’apparaissent pas dans les délais prévus ou si des évolutions intempestives se manifestent, les "anomalies" sont signalées dans cette fenêtre. Dans ce cas la simulation est interrompue et le scénario terminé. La fenêtre de suivi permet de constater à quel niveau du scénario s’est produite la divergence. Enrichissement de scénarios comportant des réactions Dans ce cas l'enrichissement consiste à réenregistrer le scénario - actions et évolutions des variables associées comme attentes ou réactions - en exécutant dans un premier temps les actions du scénario initial. Si le scénario comportait des attentes, seules celles ne se trouvant pas après une réaction sont conservées pour l’exécution. En effet, l’enregistrement étant suspendu pendant le traitement d’une attente, ces réactions ne pourraient plus figurer dans le nouveau scénario. L’intérêt essentiel de l'enrichissement dans le cas de la surveillance de réactions est de pouvoir corriger un scénario : il suffit alors de modifier les variables et de "rejouer" le scénario grâce à la fonctionnalité d'enrichissement. 4.9 Initialisation La commande d’Initialisation permet de placer l’application telle qu’elle est au lancement de la simulation. Tout se passe comme si une nouvelle simulation débutait : la fenêtre de choix de contexte est donc proposée. Si aucun contexte n’est sélectionné, les variables de pupitres et externes restent dans leur état. Au cas où un état machine - ou "contexte mécanique" - aurait été sauvegardé lors d’une précédente simulation, sa restauration est possible. En mode connecté, une initialisation du programme de l’automate devra probablement être effectuée, afin que la simulation puisse reprendre correctement. ___________________________________________________________________________ 4/30 Environnement de simulation 4 4.10 Sauvegarde et Restitution d’état de l'application Quand une simulation est lancée locale ou connectée, les axes sont en position initiale. Toutes les variables décrites par des expressions booléennes sont à l’état logique "0". Ceci peut-être une contrainte pénalisante lors de la simulation, par exemple, un système de convoyage. La sauvegarde de l'état de l'application permet de pouvoir reprendre une simulation en retrouvant l’application dans l’état obtenu lors d’une précédente simulation. Le principe consiste à pouvoir sauvegarder, lors de la sortie de la simulation, la position des axes de l’application ainsi que l’état logique de l’ensemble des variables décrites dans la partie "mouvements" de l’application. Une simulation locale pouvant s’effectuer avec des grafcets, l’état de ceux-ci est sauvegardé : il s’agit des étapes actives, des actions internes positionnées et de la valeur des compteurs. L’état logique des variables externes ou activées par les pupitres est également conservé : la sauvegarde d’un état de l'application inclut donc la notion de contexte. Cette sauvegarde peut-être demandée lors de la sortie de la simulation : il faut pour cela cocher la case Sauver l’état machine apparaissant dans la fenêtre de confirmation. La sauvegarde faite précédemment est perdue. La restitution d’un état de l'application est effectuée si la case Restituer l’état sauvé se trouvant dans la fenêtre de choix de contexte est cochée. ___________________________________________________________________________ 4/31 E 4.11 Description La fonction "description" permet de visualiser en cours de simulation la description de l’application modélisée et de procéder à certaines modifications. Cette fonction est accessible par l’item correspondant du menu Outils. Il est possible de modifier les équations des entrées, relais et variables ainsi que les caractéristiques des mouvements E Ces modifications sont possibles dans leur intégralité en simulation locale puisqu’il s’agit d’une phase de la méthodologie visant à mettre au point le modèle. Par contre, en simulation connectée, les modifications permises sont limitées à la partie "électrique" de la modélisation, c’est-à-dire les équations des entrées et le relayage. Les capteurs associés aux axes ne peuvent être modifiés mais ils peuvent être visualisés, sous forme de chronogramme ou "d'évolutions". En simulation locale, il est également possible de modifier la description de la Partie Commande. Les actions associées aux étapes ou les réceptivités des transitions peuvent ainsi être corrigées. Les étapes initiales peuvent être également modifiées, ceci permet de tester des grafcets de façon indépendante. En fin de simulation, si des modifications ont été effectuées, le simulateur propose la sauvegarde des modifications. Les anciens fichiers de description sont alors renommés avec l’extension .BAK. ___________________________________________________________________________ 4/32 Chapitre 55 Edition des chronogrammes 5 Edition des chronogrammes 5.1 Configuration Avant d’exécuter une trace sur l’installation, la première opération à effectuer est de configurer les modules pour structurer la représentation de l'application. Pour ce faire, sélectionnez l’item Configurer du menu Trace de la fenêtre principale de l’environnement de simulation SIMTSX. En effet, une installation automatisée est souvent formée de sous-ensembles mécaniques auxquels peuvent correspondre des parties relativement indépendantes du programme d’animation. La fonction "modules" permet d’introduire une telle structuration au sein du simulateur. De fait, un module est un ensemble d’axes. Il est dit actif dès qu’un déplacement est en cours sur l’un des axes qui le composent. Il est dit inactif dans le cas contraire. La configuration de modules présente certaines analogies avec celle des pages de variables (voir sous-chapitre 2.3 de l’intercalaire B). Le bouton Créer permet de construire un module ; après avoir saisi le nom du module, on entre en édition. ___________________________________________________________________________ 5/1 E 5.1-1 Edition d’un module La fenêtre d’édition de modules comporte, dans sa partie gauche, l’ensemble des axes de l'application simulée. Dans la partie droite sont affichés les axes constituant le module édité. Si l’on sélectionne un axe dans une de ces deux listes, son libellé apparaît dans le haut de la partie centrale de la fenêtre et des boutons deviennent actifs. E Le bouton Aval permet de visualiser au centre de la fenêtre les variables se trouvant en "aval" de l’axe, c’est-à-dire celles sur lesquelles les évolutions de celui-ci sont susceptibles d’avoir un effet. Il s’agit des capteurs de l’axe, des combinaisons où apparaissent ces capteurs, éventuellement des relais ou variables de modélisation et enfin des entrées concernées par l’axe. De façon analogue, le bouton Amont fait apparaître les variables situées en "amont" de l’axe, c’est-à-dire celles intervenant dans les évolutions de l’axe : il s’agit des mouvements, relais, bistables et sorties pilotant celui-ci. Ces variables sont obtenues par un parcours du graphe existant entre les variables de la description, en excluant les relais faisant partie de l’alimentation générale. Le bouton Ajouter est également activé si l’on sélectionne un axe dans la partie gauche (ensemble des axes de l'application) : ce bouton permet d’ajouter l’axe au module. Si un axe du module est sélectionné (partie droite de la fenêtre), l’axe de l'application sera inséré devant cet axe dans le module, sinon il est simplement ajouté en fin de module. Si c’est un axe appartenant au module qui est sélectionné, le bouton permet au contraire de le supprimer du module. ___________________________________________________________________________ 5/2 Edition des chronogrammes 5.2 5 Eléments de présentation - Fonctions générales 5.2-1 Présentation générale Ce chapitre explique les principes de base nécessaires à la représentation des chronogrammes. Il décrit : • les éléments de la fenêtre de représentation, • comment ordonner la représentation. • comment imprimer une partie ou la totalité d’un chronogramme, • comment créer et utiliser les cycles de référence. Le premier diagramme présenté à l’utilisateur, lorsqu’il fait une consultation d’un enregistrement, est appelé Diagramme des axes. Ce diagramme offre une vue globale du fonctionnement en présentant les changements d’états des modules (actif, inactif), et, pour chacun d’eux, l’activité des axes associés. La première ligne, Toutes variables, permet de plus l’accès à un diagramme des évolutions de la totalité des entrées/sorties et des mouvements de l'application. Si aucun module n’a été créé avant l’enregistrement, le diagramme présente simplement l’activité des axes. Le déplacement dans ce chronogramme permet de sélectionner un instant précis de l’enregistrement (touches de déplacement horizontal) et un module ou un axe (touches de déplacement vertical). Si un module est sélectionné, l’appuie sur la touche <Entrée> bascule en visualisation du diagramme des mouvements du module. Si un axe est sélectionné, l’appuie sur la touche <Entrée> bascule en visualisation du diagramme des entrées/sorties de l’axe en rappelant en première ligne l’activité de l’axe lui-même. ___________________________________________________________________________ 5/3 E Des touches fonction permettront également de passer à une représentation de type fonctionnel, appelée représentation AF à partir des diagrammes des mouvements et des diagrammes des entrées/sorties (voir ci-dessous). E Outre le changement de base de temps, diverses fonctions permettent : • de calculer l’écart entre deux événements, • de hiérarchiser les capteurs/actionneurs mis en jeu selon un critère numérique, chronologique ou structurel, • de modifier l’origine des diagrammes présentés, • d’imprimer les diagrammes. ___________________________________________________________________________ 5/4 Edition des chronogrammes 5 5.2-2 Principe général Le principe général du dialogue opérateur et les fonctions accessibles à chaque niveau sont résumés dans le tableau suivant : Type de Touches diagramme de fonctions type Fx Touches de fonctions type Maj+ Fx Touches de fonctions type Alt + Fx Diagramme des axes F1: Information F2: Format Horaire/Mécanicien F3: Zoom F4: Changement d’origine F6: Mémorisation du curseur F8: Impression écran F9: Impression continue Tab: Fenêtre menu Aucune Aucune Diagramme mouvements Diagramme des E/S F2: E/S ou Sorties F3: Changement d’échelle F4: Ordre Num/Chronologique F6: Mémorisation du curseur F7: Label E/S F8: Impression écran F9: Impression continue Tab : Fenêtre menu Maj+F1: Représentation AF Alt+F1: Sauve référence Maj+F2: Change format heure Alt+F2: Comparaison active Maj+F3: Couleur entrées Alt+F3: Durées cycle réf. Maj+F4: Chgt d’origine Alt+F4: Activer dépl. réf. Maj+F5: Zoom 1 mn Maj+F8: Dépl. cont/évolution Représentation AF F2: Capteur/Act. ou Actionn. F3: Avec ou sans filtrage F4: Filtrer /ajouter l’E/S pointée F6: Mémorisation du curseur F8: Impression écran F9: Impression continue Tab : Fenêtre menu Maj+F1: Représentation AF Alt+F1: Sauve référence Maj+F2: Change format heure Alt+F2: Comparaison active Maj+F3: Couleur entrées Alt+F3: Durées cycle réf. Maj+F4: Chgt d’origine Alt+F4: Activer dépl. réf. Maj+F5: Zoom 1 mn Alt+F5: Activer resynchro Maj+F8: Dépl. cont/évolution Alt+F6: Rech. divergence Alt+F7: Chgt origine réf. Alt+F8: Info cycle de réf. E A tout moment, l’appui sur la touche <Tab> fait apparaître un menu qui regroupe toutes les fonctions disponibles pour la représentation en cours. Chaque fonction est donc accessible soit par une touche fonction (exemple <F2>) ou une combinaison (exemple <Alt+F2>), soit par le menu décrit ci-dessous : Ce menu est composé de 2 parties : • la première partie contient l’intitulé des touches de fonction, • la deuxième contient des indications concernant les pages du menu. Dans notre exemple : - ← indique que l’appui sur la touche de positionnement GAUCHE affichera la page précédente du menu, - → indique que l’appui sur la touche de positionnement DROIT affichera la page suivante du menu, - Les fenêtres du menu sont définies en rouleau comme indiqué à la figure suivante (Après affichage de la dernière fenêtre, on revient à la première). Le nombre de fenêtre dans un menu diffère selon le type de représentation. ___________________________________________________________________________ 5/5 E Une fois ce menu à l’écran, il est possible de : - Sélectionner une fonction : en choisissant une touche fonction (ex : en appuyant sur <F3> pour le changement d’échelle), en amenant le curseur (représenté par une flèche située à droite du libellé du menu) devant la fonction choisie avec les touches de positionnement haut ou bas (↑ ↓) puis en validant par <Entrée>.(↵) Le menu se fermera et l’action sélectionnée sera exécutée. Au prochain appui sur <Tab>, le menu réapparaîtra, le curseur étant positionné en face de la dernière fonction choisie. - Visionner une autre page du menu en : appuyant sur les touches de positionnement gauche ou droite (← →). - Visionner une page spéciale du menu en : <Maj> : pour afficher les fonctions de type <Maj+Fx>, <Alt> : pour faire afficher les fonctions de type <Alt+Fx>, <FIN> : pour afficher les touches type flèches, <Ctrl>, <Esc>… - Effacer la fenêtre du menu en : appuyant sur <Esc> ou <Tab>. (aucune action n’est alors réalisée), sélectionnant une fonction comme expliqué ci-dessus. F1 : Description d'axes F2 : Entrées/sorties ou sorties F3 : Changement échelle F4 : Ordre chronologique F5 : Visualiser axes E/S F6 : Mémorisation du curseur F7 : Labels ou commentaire F8 : Impression écran F9 : Impression continue 4 1/4 2 Zoom du menu F1 F2 F3 F4 F5 F6 F7 F8 F9 : : : : : : : : : Description d'axes Entrées/sorties ou sorties Changement échelle Ordre chronologique Visualiser axes E/S Mémorisation du curseur Labels ou commentaire Impression écran Impression continue 4 1/4 2 ___________________________________________________________________________ 5/6 Edition des chronogrammes 5 5.2-3 Entête de la page Le haut de la page écran regroupe les éléments suivants : • l’indication de l’échelle de temps courante, • le nom de l'application dans le diagramme des axes, le label du module dans le diagramme des mouvements du module, le nom de l’axe dans le diagramme des entrées/sorties de l’axe, • les dates et heures de début et fin d’enregistrement, • le type de diagramme présenté, • l’indication du format courant des durées : • FH : Format Horaire (hh : mn’ ss» xx), • FM : Format Mécanicien (hh: mm’ yyy), • les indications concernant l’origine et la position courante du curseur. Par défaut, l’origine correspond à l’heure de début d’enregistrement. L’écart représente la différence entre la position courante du curseur et une position préalablement mémorisée (par défaut cette position correspond à l’origine). 5.2-4 Déplacement dans le chronogramme • Le curseur Un curseur est matérialisé par une barre verticale que l’on peut déplacer dans la page à l’aide des touches de positionnement gauche et droite d’1/5 d’unité de temps dans le diagramme des axes. Dans le diagramme des mouvements et le diagramme des entrées/sorties, l’appui sur une touche de positionnement gauche ou droite permet de déplacer le curseur d’évolution en évolution (toutes les évolutions de toutes les entrées/sorties et de tous les mouvements sont prises en compte). A chaque déplacement, les indications d’écart et de position courante dans l'en-tête de la page sont mises à jour. Touches : <Maj+F8> : permet de passer d’un mode continu (1/5 d’unité de temps) à un mode par évolution (déplacement d’évolution en évolution). <Ctrl+¬> ou <Ctrl+®> : provoque un déplacement plus rapide de 10 unités. <Ctrl+Début> ou <Ctrl+Fin> : place le curseur au début ou à la fin du chronogramme. • Saut de page Une page représente 100 unités de temps d’enregistrement (6 s, 1 mn, 10 mn, 100 mn selon l’échelle). Lorsque le curseur est amené à 5 unités de temps d’une extrémité de page, un saut de page est généré provoquant un décalage de la fenêtre matérialisée à l’écran par 50 unités de temps. ___________________________________________________________________________ 5/7 E 5.2-5 Précision du diagramme La précision du diagramme est directement liée à la modélisation de la partie opérative. Les temps affichés dans les chronogrammes et les représentations AF sont calculés à partir des distances et vitesses déclarées dans SIMTSX. Les échelles de temps disponibles sont : E • dans le diagramme des axes : - 1 mn soit 60 s, - 1/10 mn soit 6 s, - 1 / 100 mn soit 600 ms. • dans le diagramme des mouvements et le diagramme des entrées/sorties : - 1 mn soit 60 s, - 1/10 mn soit 6 s, - 1/100 mn soit 600 ms, - 1/1000 mn soit 60 ms. Le positionnement du graphique à l’écran est réalisé avec une précision de 1/5 d’unité de temps soit 12 ms maximum. Touches : <F3> changement de l’échelle des temps. <Maj+F5> changement pour l’échelle des temps 1 mn dans les diagrammes des mouvements et des entrées/sorties. 5.2-6 Indications de temps • Indication de la durée Le principe de construction du diagramme consiste à tracer des segments horizontaux représentant les périodes d’activation de chaque entrée, sortie ou mouvement, ou de maintien d’un état actif, inactif d’un module. Sur chaque segment, l’indication de durée est portée en respectant le format en cours. Par défaut, le format horaire est utilisé et seuls les chiffres significatifs sont présentés. Deux types de format de durée sont possibles : • Format Horaire (FH) hh : mn’ ss» xx, (exemple: 2’7"38), • Format Mécanicien (FM) hh: mm’ yyy, (exemple: 2’138). L’indication > suivie d’une durée au dessus d’un segment (exemple : > 2"38) signifie que l’élément correspondant était déjà dans l’état indiqué avant l’origine ou reste dans cet état après la fin de l’enregistrement. ___________________________________________________________________________ 5/8 Edition des chronogrammes 5 L’indication X au dessus d’un segment (exemple : X) indique que l’activation est inférieure ou égale à : • 10 ms en format horaire, • 1/100ème de minute en format mécanicien. La précision de la durée est toujours la même quelle que soit l’échelle de temps utilisée. Touches : <F2> : changement du format de date dans le diagramme des modules, <Maj+F2> : changement du format de date dans le diagramme des mouvements et des entrées/sorties. • Instant de début et de fin d’activation Lorsqu’on amène le curseur sur le début ou la fin du segment, l’indication d’écart dans l’entête correspond à l’instant d’occurrence de l’événement concerné depuis l’origine. L’indication de position correspond à l’heure exacte d’apparition de l’événement. L’origine dans le diagramme des axes représente l’heure du début d’enregistrement par défaut. Elle peut être modifiée par la fonction "changement d’origine" : Touches : <F4> changement d’origine d’un enregistrement dans le diagramme des axes. <Maj+F4> changement d’origine d’un enregistrement dans le diagramme des mouvements et des entrées/sorties. • Ecart entre deux événements La touche <F6> permet de mémoriser la position courante du curseur. L’appui sur cette touche provoque le positionnement d’un repère triangulaire sur l’échelle des temps à la position courante du curseur. Le déplacement du curseur provoque alors automatiquement le calcul de l’écart entre la position mémorisée et la position courante. Exemple : Origine: 15:37’53"32 Courant: 15:47’26"11 Ecart: 3"10/15:47’23"1 Touche : <F6> mémorise la position du curseur. • Déplacement vertical La fenêtre matérialisée par l’écran peut être déplacée verticalement d’une ligne à l’aide des touches de positionnement haut et bas. Touches : <PgDn> et <PgUp> permettent de déplacer la fenêtre de module en module dans le diagramme des axes ou de 10 lignes dans les autres diagrammes. <Début> et <Fin> permettent de se positionner sur la première ou dernière ligne. ___________________________________________________________________________ 5/9 E 5.3 Diagramme des axes 5.3-1 Nature des éléments présentés Une page écran regroupe 16 lignes représentant l’activité des modules et des axes sur une même plage de temps. L’activité d’un axe est représenté par un trait épais (sens avance) ou d’un triple trait (sens recul) surmonté d’un temps représentant la durée. E • Le module "toutes variables" Le premier module nommé "toutes variables" est fictif. Il regroupe toutes les entrées/ sorties déclarées dans SIMTSX. Il permet de visualiser toutes les entrées/sorties dans le même diagramme. 5.3-2 Changement d’origine Si un enregistrement regroupe plus de 3000 changements d’état dans un module, le diagramme représente les 3000 premiers à partir de l’origine, ce qui constitue un secteur. Le changement d’origine consiste à déplacer l’origine du diagramme jusqu’à la position courante du curseur, donc à déplacer le secteur visualisé dans l’enregistrement global. Remarque Un changement d’origine, effectué lorsque le curseur est placé sur l’origine, repositionne celle-ci au début de l’enregistrement. Le diagramme des entrées/ sorties est limité aux 3000 premiers changements d’état des entrées/sorties du module sélectionné à partir de l’instant correspondant à la position courante du curseur. Pour visualiser la suite de l’enregistrement, il suffit de se placer à la fin du secteur puis de faire un changement d’origine. Touches : <F4> changement d’origine dans le diagramme des axes. ___________________________________________________________________________ 5/10 Edition des chronogrammes 5 5.3-3 Sélection d’un module La sélection d’un module permet de visualiser les mouvements correspondant au module sélectionné, présentés axe par axe. La position du curseur dans le diagramme des axes fixera l’origine du curseur dans le diagramme des mouvements du module. Touches : <↑>, <↓> déplacement haut ou bas, <Début> et <Fin> déplacement au premier ou au dernier module, <Entrée> sélection du module. 5.3-4 Sélection d’un axe La sélection d’un axe permet de visualiser les entrées/sorties et les mouvements de l’axe, ceux-ci étant placés en fin de liste. La première ligne rappelle l’activité des mouvements de l’axe. La position du curseur dans le diagramme des axes fixera l’origine du curseur dans le diagramme des entrées/sorties de l’axe. Touches : <↑>, < ↓> déplacement haut ou bas, <Début> et <Fin> déplacement au premier ou au dernier module, <Entrée> sélection de l’axe. 5.3-5 Quitter le diagramme des axes L’appui sur la touche <Esc> permet de quitter le diagramme des axes. De plus, cette action permet de sortir du logiciel de représentation. ___________________________________________________________________________ 5/11 E 5.4 Diagramme des mouvements d’un module A partir du diagramme des axes, la sélection d’un module et d’un instant d’enregistrement provoque la présentation du diagramme des mouvements du module. L’origine de ce diagramme correspond alors à la position courante du curseur dans le diagramme des axes au moment de la validation. Inversement, tout déplacement du curseur sera répercuté dans le diagramme des axes. E 5.4-1 Nature des éléments présentés • Ligne d’état de l’axe Le haut du chronogramme présente la ligne d’état du module, telle qu’elle apparaît dans le diagramme des axes. L’utilisateur peut ainsi mettre directement en rapport l’activité du module avec l’activité des mouvements. 5.4-2 Choix des éléments présentés L’ordre dans lequel les éléments sont présentés sur un chronogramme peut être sélectionné par l’utilisateur. La nature des éléments présentés est toujours rappelé dans l’entête de la page. Le tri par ordre chronologique s’effectue en comparant les temps d’apparition des premiers fronts de chaque élément à partir de la position mémorisée (touche <F6>). Les éléments jamais actifs ou qui sont déjà actifs à l’instant correspondant sont présentés en fin de liste. Touche : <F4> permet de passer de l’ordre numérique à l’ordre chronologique et inversement. 5.4-3 Quitter le diagramme des mouvements L’appui sur la touche <Esc > permet de quitter le diagramme des mouvements. De plus, cette action permet de revenir au diagramme des axes. ___________________________________________________________________________ 5/12 Edition des chronogrammes 5.5 5 Diagramme des entrées/sorties d'un axe A partir du diagramme des axes, la sélection d’un axe et d’un instant d’enregistrement provoque la présentation du diagramme des entrées/sorties de l’installation. L’origine de ce diagramme correspond alors à la position courante du curseur dans le diagramme des axes au moment de la validation. Inversement, tout déplacement du curseur sera répercuté dans le diagramme des axes. E 5.5-1 Nature des éléments présentés • Choix entrées ou entrées/sorties Par défaut, les éléments présentés à l’écran sont les entrées/sorties puis les mouvements et les axes à surveiller pour le module. Les entrées/sorties sont triées dans l’ordre numérique de leur dénomination automate. Touche : <F2> permet de basculer de la représentation du diagramme des sorties à celui des entrées/sorties et réciproquement. • Différencier les couleurs des évolutions des entrées et des sorties Par défaut, les évolutions des entrées/sorties sont représentées en jaune. Toutefois, afin de faciliter la lecture du chronogramme, il est possible de modifier les couleurs des évolutions des entrées. Trois couleurs sont disponibles : jaune, bleu, blanc. Touche : <Maj+F3> permet de modifier les couleurs des évolutions des entrées en les faisant passer respectivement de jaune à bleu, de bleu à blanc puis de blanc à jaune. • Ligne d’état de l’axe Le haut du chronogramme présente la ligne d’état de l’axe, telle qu’elle apparaît dans le diagramme des axes. L’utilisateur peut ainsi mettre directement en rapport l’activité des mouvements de l’axe avec les évolutions des entrées/sorties. ___________________________________________________________________________ 5/13 5.5-2 Choix des éléments présentés L’ordre dans lequel les éléments sont présentés sur un chronogramme peut être sélectionné par l’utilisateur. La nature des éléments présentés est toujours rappelé dans l’entête de la page. E Le tri par ordre chronologique s’effectue en comparant les temps d’apparition des premiers fronts de chaque élément à partir de la position mémorisée (touche <F6>). Les éléments jamais actifs ou qui sont déjà actifs à l’instant correspondant sont présentés en fin de liste. Touche : <F4> permet de passer de l’ordre numérique à l’ordre chronologique et inversement. 5.5-3 Quitter le diagramme des entrées/sorties L’appui sur la touche <Esc > permet de quitter le diagramme des entrées/sorties. De plus, cette action permet de revenir au diagramme des axes. ___________________________________________________________________________ 5/14 Edition des chronogrammes 5.6 5 Représentation en tableau d’analyse fonctionnelle 5.6-1 Accès L’accès à la représentation de type tableau structuré s’effectue par appui sur les touches <Maj+F1> à partir du diagramme des entrées/sorties ou du diagramme des mouvements. E 5.6-2 Présentation Cette représentation restitue sous forme de tableaux structurés les mêmes informations que le chronogramme. Elle permet de suivre de façon chronologique les évolutions des entrées/sorties et de repérer instantanément les évolutions synchrones. 5.6-3 Fonctionnalités La position courante du curseur correspond au temps d’apparition de la première évolution affichée à l’écran (repérée par une flèche) et peut être mémorisée par appui sur la touche <F6>. Tous les changements effectués en représentation AF restent valables dans le chronogramme. Il est à noter que la plupart des touches utilisables en représentation des mouvements ou des entrées/sorties sont utilisables pour la représentation AF. Touches : <↑>ou <↓> déplacement du curseur évolution par évolution, <PgUp>, <PgDn> déplacement page par page dans la liste des évolutions. ___________________________________________________________________________ 5/15 5.6-4 Filtrage Si les évolutions d’une ou plusieurs entrées/sorties "gênent" l’analyse ou ne sont pas utiles la compréhension du séquencement des évolutions, l’utilisateur peut les éliminer temporairement de la représentation. Cette opération constitue le filtrage. Pour effectuer un filtrage, il suffit de se positionner en mode "Représentation AF avec filtrage" (indication figurant dans l’en-tête) à l’aide de la touche <F3>. E En mode "Représentation AF", si le filtrage n’est pas actif, les entrées/sorties préalablement filtrées sont marquées du signe *. Dans ce cas, l’appui sur la touche <F4>, permet de faire réapparaître les évolutions de l’entrées/sorties pointée dans la représentation avec filtrage. Le filtrage ne fonctionne que lors de la représentation AF. Toutefois, il est possible d’utiliser ce filtrage dans le diagramme des entrées/sorties. Touches : <F3> : active ou désactive la représentation avec filtrage, <F4> : permet de filtrer de la représentation l’entrée/sortie pointée par la flèche, ou permet de restituer une entrée/sortie filtrée au préalable (repérée par le signe *). 5.6-5 Quitter la représentation AF L’appui sur la touche <Esc> permet de quitter la représentation AF. Cette action permet de revenir au mode "standard" du diagrammes des mouvements ou des entrées/ sorties. ___________________________________________________________________________ 5/16 Edition des chronogrammes 5.7 5 La comparaison de cycles 5.7-1 Principe Cette fonction permet de présenter sur l’écran deux chronogrammes enregistrés à des instants différents. La représentation simultanée de ces deux enregistrements permet de visualiser les divergences du fonctionnement d’une installation à un instant donné, par rapport à un fonctionnement de référence. La mémorisation d’un chronogramme de référence s’effectue au vu du chronogramme par sélection de la globalité ou d’une partie de ce chronogramme et par une demande de sauvegarde. La comparaison peut être ensuite activée à tout moment. Le chronogramme de référence vient alors se juxtaposer au chronogramme présent à l’écran. Il est possible de déplacer un chronogramme par rapport à l’autre pour faire coïncider les changements d’états d’entrées/sorties. Durant les phases de comparaison de chronogrammes, toutes les fonctionnalités restent disponibles : changement de base de temps, tri chronologique, sélection entrées ou entrées/sorties... Cette comparaison de cycles est utilisable en mode "diagramme des entrées/sorties", "diagramme des mouvements" ou en mode "représentation AF". ___________________________________________________________________________ 5/17 E 5.7-2 Création d’un cycle de référence Le cycle de référence est délimité par la position mémorisée d’une part (accessible par la touche <F6>), et la position courante du curseur d’autre part. Si les deux sont confondues, l’ensemble de l’enregistrement est sauvegardé (1500 évolutions maximum). La création d’un cycle de référence peut se faire soit au vu du chronogramme des entrées/sorties, soit au vu de la représentation en tableau structuré. E Les étapes à suivre pour créer un cycle de référence sont résumées dans le tableau suivant : Action Touches Positionner le curseur à l’endroit où l’on désire que débute le cycle de référence. Par exemple, à l’instant de "DEBUT DE CYCLE" <←>,<→>,<Ctrl+←>, <Ctrl+→> en mode représentation des entrées/sorties, <↑>, <↓>, <PgUp> ou <PgDn> en mode AF, Effectuer une mémorisation de cette position Positionner le curseur à l’endroit où l’on désire que se termine l’enregistrement de référence. Par exemple, à l’instant de "FIN DE CYCLE" <F6> (mémo curseur) <←>,<→>,<Ctrl+←>, <Ctrl+→> en mode représentation des entrées/sorties, <↑>, <↓>, <PgUp> ou <PgDn> en mode AF, Sauvegarder l’enregistrement de référence pour les 2 positions indiquées <Alt+F1> Confirmer l’enregistrement du cycle de référence <O> pour confirmer <N> pour annuler la création. Le cycle de référence va alors se resynchroniser automatiquement sur les mêmes conditions de début de cycle suivantes trouvées dans l’enregistrement. Automatique Une fois la confirmation faite, le cycle de référence est automatiquement sauvegardé. Il est possible d’en recréer un à tout moment. ___________________________________________________________________________ 5/18 Edition des chronogrammes 5 Un enregistrement de cycle de référence comprend : • les évolutions de toutes les entrées/sorties (dans la limite de 1500 évolutions), • les informations caractéristiques de l’instant de début d’enregistrement, • le premier changement d’état d’entrées/sorties (parmi l’ensemble des entrées/ sorties de l’axe), • l’état logique des entrées/sorties présentées à l’écran à l’instant de ce changement d’état. Ces informations sont visibles par appui sur les touches <Alt+F7>. On peut créer autant de cycle de référence qu’il y a d’élément représentés au niveau du diagramme des axes. Un seul cycle de référence peut être créé par élément. Touches agissant sur les cycles de référence : • <Alt+F2> désactiver ou activer (s’il existe) l’affichage du cycle de référence, • <Alt+F3> afficher les durées du cycle de référence, • <Alt+F4> déplacer dans le temps le cycle de référence, • <Alt+F5> effectuer une recherche de divergence automatique, • <Alt+F6> changer l’origine du cycle de référence dans le temps, • <Alt+F7> visualiser les informations de synchronisation du cycle de référence, • <+> (plus) effectuer une resynchronisation du cycle de référence. ___________________________________________________________________________ 5/19 E 5.7-3 Activation de la comparaison Le chronogramme de référence est présenté en bleu avec un motif différent pour le distinguer en mode chronogramme, ou à droite en mode tableau structuré. En mode comparaison, il est toujours possible de modifier la base de temps (touche <F3>), de visionner les sorties seules ou les entrées/sorties (touche <F2>).... Touche : <Alt+F2> lance la superposition des cycles de référence et en cours. E 5.7-4 Affichage des durées des évolutions du cycle de référence Par défaut, les durées des évolutions affichées sont celles du cycle courant. Il est possible toutefois d’afficher les durées des évolutions du cycle de référence en mode chronogramme. Touches : <Maj+F2> affiche les durées des évolutions du cycle de référence au format horaire ou mécanicien, <Alt+F3> permet d’alterner les indications de durée de l’enregistrement courant avec celles de l’enregistrement de référence. 5.7-5 Affichage des divergences temporelles en tableau structuré Le temps indiqué pour chaque évolution de l’enregistrement courant (celui de gauche) correspond à la différence calculée entre le temps courant et le temps de référence. Considérons les cas suivants pris sur la figure suivante : • l’entrée %I2,5 : active au bout de 4’10’’45 sur l’enregistrement courant (figure précédente) et active au bout de 4’10’’35 sur l’enregistrement de référence (figure suivante et précédente) affichera une divergence temporelle positive de 10 centième de seconde (signifiant que l’enregistrement au moment de cette évolution, à un retard de 10 centième de seconde sur le cycle de référence). • l’entrée %I2,3 : active au bout de 4’13’’05 sur l’enregistrement courant (figure précédente) et active au bout de 4’13’’10 sur l’enregistrement de référence (figure suivante et précédente) affichera une divergence temporelle négative de (-5) centième de seconde (signifiant que l’enregistrement au moment de cette évolution, a une avance de 5 centième de seconde sur le cycle de référence). Touche : <Alt+F3> permet d’afficher les divergences temporelles. ___________________________________________________________________________ 5/20 Edition des chronogrammes 5 5.7-6 Déplacement de l’enregistrement de référence Pour faciliter la comparaison, il est possible de déplacer, dans le diagramme, l’enregistrement de référence. Ce déplacement peut s’effectuer de trois façons différentes : • à chaque déplacement du curseur, il suffit d’appuyer sur les touches <Alt+F4> et d’utiliser les touches <←> ou <→> en mode chronogramme, <↑> ou <↓> en mode tableau structuré, l’enregistrement de référence se déplace alors dans le diagramme avec le curseur. • de cycle en cycle, l’appui sur les touches <+> (plus) ou <-> (moins) provoque la recherche du cycle suivant ou précédent à partir de la position du curseur. Si le début de l’enregistrement de référence correspond à un début de cycle, l’enregistrement de référence est ainsi déplacé de cycle en cycle dans le chronogramme. • par décalage de l’enregistrement de référence à la position courante du curseur par appui sur les touches <Alt+F6>. Concernant le déplacement du cycle de référence de cycle en cycle à l’aide des touches <+> ou <->, cela consiste à retrouver dans l’enregistrement courant les mêmes conditions qu’à l’instant du début de l’enregistrement de référence. C’est-à-dire le changement d’état correspondant à la première évolution avec les mêmes états logiques des entrées/sorties affichées lors de la sauvegarde. Toutes les évolutions de l’enregistrement courant ne correspondant pas à une évolution du cycle de référence sont considérées comme une divergence. Les divergences fonctionnelles sont directement affichées en rouge et marquées par le symbole "#". 5.7-7 Affichage des informations de synchronisation du cycle de référence Les informations affichées sont les suivantes : • la date et l’heure de l’enregistrement, • les informations caractéristiques de l’instant de début d’enregistrement , • le premier changement d’état d’entrées/sorties (parmi l’ensemble des entrées/ sorties du module), • l’état logique des entrées/sorties présentées à l’écran à l’instant de ce changement d’état. Touche : <Maj+F7> provoque l’affichage des informations du cycle de référence. ___________________________________________________________________________ 5/21 E 5.7-8 Recherche de divergence Une recherche de divergence peut être opérée automatiquement afin de comparer l’enregistrement complet par rapport au cycle de référence préalablement créé. La recherche s’effectue à partir de la position courante du curseur et se termine à la fin de l’enregistrement. A chaque divergence trouvée, la recherche s’arrête et affiche le type de divergence trouvée. E Touches : <Maj+F5> lance la recherche de divergence automatique, <Esc> met fin à la recherche de divergence automatique en cours. • Principe de recherche d’une divergence A chaque resynchronisation sur un cycle, la liste des évolutions du cycle courant est comparée à la liste des évolutions du cycle de référence. En représentation AF on tient compte aussi du filtrage, la divergence visualisée peut alors être différente de celle dans le chronogramme. • 1ere Etape A partir du premier changement d’état du cycle, on compare évolution par évolution le cycle courant et le cycle de référence. Le premier changement d’état différent appartenant au cycle de référence est recherché dans le cycle courant parmi les évolutions suivantes. Sur un changement d’état d’une sortie La recherche s’arrête au premier changement d’état d’une entrée OU à la première évolution d’une sortie séparée de plus de 200 ms EXEMPLE 2 EXEMPLE 1 courant zone de recherche de S2 ∆T< 200 ms référence S2 S1 S3 S4 S5 E1 courant zone de recherche de S2 S1 référence S2 E1 Comparaison de cycle évolution par évolution pour une sortie Sur une entrée La recherche s’arrête au premier changement d’état d’une sortie ou au premier temps différent. EXEMPLE 1 courant zone de recherche de E2 E1 E3 E4 EXEMPLE 2 référence E2 courant zone de recherche de E2 ∆T = 0 référence E2 E1 S1 S2 S1 Comparaison de cycle évolution par évolution pour une entrée ___________________________________________________________________________ 5/22 Edition des chronogrammes 5 • 2ème Etape Si la recherche de l’évolution aboutit, on considère qu’il n’y a aucune divergence. On s’intéresse alors au changement d’état correspondant dans le cycle courant que l’on recherche de la même façon dans le cycle de référence. De même, si l’évolution est trouvée, aucune divergence n’est signalée et on passe à l’évolution divergente suivante. Pour un groupe de divergence, la zone de recherche commence à la première évolution divergente. • Visualisation des divergences La divergence ainsi trouvée est signalée par un message en bas de l’écran. "Divergence : %I2,4 - TOURELLE MILIEU ==> front ↑ non attendu" ou "Divergence : %I2,4 - TOURELLE MILIEU ==> front ↓ manquant" Il s’agit soit d’un front non attendu dans le cycle courant, soit d’un front du cycle de référence manquant dans le cycle courant. La divergence est marquée dans le chronogramme par le symbole "DIV" en rouge ou "div" en bleu. En représentation AF, la ligne correspondante à la divergence trouvée est signalée en violet. ___________________________________________________________________________ 5/23 E 5.8 Impression des diagrammes A tout moment, un chronogramme peut être imprimé, que ce soit le diagramme des axes, le diagramme des mouvements, le diagramme des entrées/sorties ou la représentation AF. L’impression peut se faire sur 2 types d’imprimantes, les imprimantes EPSON ou compatibles, et les imprimantes HP LaserJet. E Le début de la zone d’impression est caractérisé par l’origine de l’enregistrement, et la fin de la zone d’impression correspond à la position du curseur courant. L’impression se fait à partir du premier élément indiqué dans la liste. Une feuille A4 permet d’imprimer 32 éléments. Pour réaliser l’impression d’une partie ou de l’ensemble d’un chronogramme, il faut : Action Touches Positionner le curseur à l’endroit où l’on désire que débute l’impression <←>,<→>,<Ctrl+←>, <Ctrl+→> en mode diagramme des axes, diagramme des mouvements ou diagramme des E/S <↑>, <↓>, <PgUp> ou <PgDn> en mode AF Effectuer le changement d’origine pour marquer le début de l’impression <F4> dans le diagramme des axes, <Maj+F4> dans le diagramme des mouvements, le diagramme des E/S ou en représentation AF, Pour imprimer une partie : positionner le curseur à l’endroit où l’on désire que se termine l’impression <←>,<→>,<Ctrl+←>, <Ctrl+→> en mode représentation des mouvements, des E/S, ou diagramme des axes. <↑>, <↓>, <PgUp> ou <PgDn> en mode AF Pour imprimer l’ensemble : ne pas déplacer le curseur (le laisser à l’origine de l’enregistrement) Lancer l’impression <F9> Sélectionner le type d’imprimante <1> : imprimante EPSON <2> : imprimante type HP LaserJet <Esc> : annuler l’impression L’impression peut être arrêtée à tout moment par appui sur <Esc>. Le choix de l’imprimante n’est demandé que pour la première impression. Touches : <F8> imprime l’écran, <F9> imprime tout ou partie du chronogramme. ___________________________________________________________________________ 5/24 Edition des chronogrammes 5.9 5 Synthèse des touches utilisées 5.9-1 Description du clavier La figure ci-dessous illustre les différentes touches utilisées lors de la représentation des chronogrammes. Ces touches sont repérées par un contour grisé et un libellé (la disposition et les libellés des touches peuvent être différents selon le type de clavier utilisé). E 5.9-2 Diagramme des axes Touches de fonctions type Fx Fonctions Explications F1 F2 F3 F4 F6 F8 F9 Donne la version du logiciel Format horaire (HH:MM’SS" XX) ou mécanicien (HH:MM’XXX) Echelle : 1 mn (60 s.), 1/10 mn (6s.), 1/100 mn (600 ms) Changement de l’origine du diagramme Mémorisation de la position du curseur Impression de la partie affichée à l’écran Impression du diagramme (entre la position mémorisée et le curseur courant) : Informations logiciel : Change format HMS ou HM : Changement échelle : Changement d’origine : Mémorisation du curseur : Impression écran : Impression continue Touches clavier Touches clavier Explications Home, End Ctrl+Home Ctrl+End PgUp,PgDn ← → Ctrl ← → ↑ ↓ Return : 1er/dernier module : Début enreg. : Fin enregistrement : Défilement haut/bas : Instant préc./suivant : Défilement rapide : Module préc./suivant : Sélection module ou axe Tab Esc : Affichage fen. menu : Quitter Accès au premier ou au dernier module du diagramme Accès au premier module du diagramme Accès au dernier module du diagramme Déplace la fenêtre de 10 lignes vers le haut ou le bas Déplacement d’1/5 d’unité de tps vers l’instant précédent ou suiv. Déplacement rapide (10 unit. de temps) vers l’instant préc. ou suiv. Module précédent ou suivant Afficher le diagramme des E/S correspondantes au module sélectionné. Affichage des menus dans une fenêtre Quitter le diagramme des modules ___________________________________________________________________________ 5/25 5.9-3 Diagramme des Mouvements Touches de fonctions type Fx E Fonctions Explications F3 F4 F6 F7 F8 F9 Ech. : 1 mn, 1/10 mn (6s), 1/100 mn (600 ms), 1/1000 mn(60 ms) Visualisation des mvts dans l’ordre numérique ou chronologique Mémorisation de la position courante du curseur Label complet ou partie du label Impression de la partie affichée à l’écran Impression du diagramme (entre la position mémorisée et le curseur courant) : Changement échelle : Ordre num./Ordre chronolog. : Mémo. position curseur : Label entrées/sorties : Impression écran : Impression continue Touches de fonctions type Maj+Fx Fonctions Explications SF1 SF2 SF3 SF4 SF5 SF8 Accès au mode ANALYSE FONCTIONNELLE Format horaire (HH:MM’SS" XX) ou mécanicien (HH:MM’XXX) Changement de la couleur des mvts (jaune, blanc ou bleu) Déplacement de l’origine du diagramme jusqu’à la position courante Zoom 1 minute Mode de déplacement du curseur vertical continu ou par évolution : Représentation AF : Change format HMS ou HM : Change couleur entrées : Changement origine : ZOOM 1 mn : Dépl. continu / par évolution Touches de fonctions type Alt+Fx Fonctions Explications AF1 AF2 AF3 AF4 AF5 AF6 AF7 AF8 Accès au mode ANALYSE FONCTIONNELLE Format horaire (HH:MM’SS»XX) ou mécanicien (HH:MM’XXX) Changement de la couleur des mvts (jaune, blanc ou bleu) Déplacement de l’origine du diagramme jusqu’à la position courante Zoom 1 minute Mode de déplacement du curseur vertical continu ou par évolution Permet de modifier l’origine du cycle de référence Affiche les informations sur le cycle de référence : Sauve référence : Comparaison active : Durée cycle référence : Changement origine : Activer resynchro. : Recherche divergence : Chgt origine référence : Info cycle de référence Touches clavier Touches clavier Explications Home, End Ctrl+Home Ctrl+End PgUp,PgDn -, + ← → Ctrl ← → ↑ ↓ Maj, Alt Tab Esc Accès au premier ou au dernier mvt du chronogramme Accès au premier mouvement du chronogramme Accès au dernier mouvement du chronogramme Déplace la fenêtre de 10 lignes vers le haut ou le bas Vers le cycle précédent ou suivant (en comparaison seulement) Déplacementd’1/5d’unitédetpsversl’instantprécédentousuivant Déplacement rapide (10 unit. de temps) vers l’instant préc. ou suiv. Mouvement précédent ou suivant Affichage des menus pour les fonctions en Maj+Fx ou Alt+Fx Affichage des menus dans une fenêtre Quitter le diagramme des Mouvements : 1ère/dernière E/S. : Début enreg. : Fin enregistrement : .Défilement haut/bas : Cycle préc./suivant : Instant préc./suivant : Défilement rapide : E/S préc./suivante : Autres menus : Affichage fen. menu : Quitter ___________________________________________________________________________ 5/26 Edition des chronogrammes 5 5.9-4 Diagramme des entrées/sorties Touches de fonctions type Fx Fonctions Explications F2 F3 F4 F6 F7 F8 F9 Visualisation des E/S ou des sorties uniquement Ech. : 1 mn, 1/10 mn (6s), 1/100 mn (600 ms), 1/1000 mn(60 ms) Visualisation des E/S dans l’ordre numérique ou chronologique Mémorisation de la position courante du curseur Label complet ou partie du label + adresse des E/S Impression de la partie affichée à l’écran Impression du diagramme (entre la position mémorisée et le curseur courant) : E/S ou Sorties : Changement échelle : Ordre num./Ordre chronolog. : Mémo. position curseur : Label E/S : Impression écran : Impression continue Touches de fonctions type Maj+Fx Fonctions Explications SF1 SF2 SF3 SF4 SF5 SF8 Accès au mode ANALYSE FONCTIONNELLE Format horaire (HH:MM’SS" XX) ou mécanicien (HH:MM’XXX) Changement de la couleur des entrées (jaune, blanc ou bleu) Déplacement de l’origine du diagramme jusqu’à la position courante Zoom 1 minute Mode de déplacement du curseur vertical continu ou par évolution : Représentation AF : Change format HMS ou HM : Change couleur entrées : Changement origine : ZOOM 1 mn : Dépl. continu / par évolution Touches de fonctions type Alt+Fx Fonctions Explications AF1 AF2 AF3 AF4 AF5 AF6 AF7 AF8 Accès au mode ANALYSE FONCTIONNELLE Format horaire (HH:MM’SS»XX) ou mécanicien (HH:MM’XXX) Changement de la couleur des entrées (jaune, blanc ou bleu) Déplacement de l’origine du diagramme jusqu’à la position courante Zoom 1 minute Mode de déplacement du curseur vertical continu ou par évolution Permet de modifier l’origine du cycle de référence Affiche les informations sur le cycle de référence : Sauve référence : Comparaison active : Durée cycle référence : Changement origine : Activer resynchro. : Recherche divergence : Chgt origine référence : Info cycle de référence Touches clavier Touches clavier Explications Home, End Ctrl+Home Ctrl+End PgUp,PgDn -, + ← → Ctrl ← → ↑ ↓ Maj, Alt Tab Esc Accès à la première ou à la dernière E/S du chronogramme Accès à la première E/S du chronogramme Accès à la dernière E/S du chronogramme Déplace la fenêtre de 10 lignes vers le haut ou le bas Vers le cycle précédent ou suivant (en comparaison seulement) Déplacementd’1/5d’unitédetpsversl’instantprécédentousuivant Déplacement rapide (10 unit. de temps) vers l’instant préc. ou suiv. E/S précédente ou suivante Affichage des menus pour les fonctions en Maj+Fx ou Alt+Fx Affichage des menus dans une fenêtre Quitter le diagramme des E/S : 1ère/dernière E/S. : Début enreg. : Fin enregistrement : Défilement haut/bas : Cycle préc./suivant : Instant préc./suivant : Défilement rapide : E/S préc./suivante : Autres menus : Affichage fen. menu : Quitter ___________________________________________________________________________ 5/27 E 5.9-5 Diagramme Analyse Fonctionnelle Touches de fonctions type Fx E Fonctions Explications F2 F3 F4 F6 F7 F8 F9 Visualisation des E/S ou des sorties uniquement Permet de rendre le filtre actif ou non Filtre ou ajoute l’E/S pointée Mémorisation de la position courante du curseur Label complet ou partie du label + dénomination des E/S Impression de la partie affichée à l’écran Impression du diagramme (entre la position mémorisée et le curseur courant) : E/S ou Sorties : avec ou sans filtrage : Filtrer/ajouter l’E/S pointée : Mémo. position curseur : Label E/S ou commentaire : Impression écran : Impression continue Touches de fonctions type Maj+Fx Fonctions Explications SF2 : Change format HMS ou HM SF4 : Changement origine Format horaire (HH:MM’SS" XX) ou mécanicien (HH:MM’XXX) Déplacement de l’origine du diagramme jusqu’à la position courante Touches de fonctions type Alt+Fx Fonctions Explications AF1 AF2 AF3 AF4 AF5 AF6 AF7 AF8 Accès au mode ANALYSE FONCTIONNELLE Format horaire (HH:MM’SS" XX) ou mécanicien (HH:MM’XXX) Changement de la couleur des entrées (jaune, blanc ou bleu) Déplacement de l’origine du diagramme jusqu’à la position courante Zoom 1 minute Mode de déplacement du curseur vertical continu ou par évolution Permet de modifier l’origine du cycle de référence Affiche les informations sur le cycle de référence : Sauve référence : Comparaison active : Durée cycle référence : Changement origine : Activer resynchro. : Recherche divergence : Chgt origine référence : Info cycle de référence Touches clavier Touches clavier Explications Home,End PgUp,PgDn -, + ↑ ↓ Maj, Alt Tab Esc Accès à la première ou à la dernière évolution Déplace la fenêtre de 10 lignes vers le haut ou le bas Vers le cycle précédent ou suivant (en comparaison seulement) Evolution précédente ou suivante Affichage des menus pour les fonctions en Maj+Fx ou Alt+Fx Affichage des menus dans une fenêtre Quitter la représentation AF : 1ère/dernière E/S. : Défilement haut/bas : Cycle préc./suivant : Evol. préc./suivante : Autres menus : Affichage fen. menu : Quitter ___________________________________________________________________________ 5/28 Validation du programme automate Sommaire Intercalaire F Chapitre Page 1 Validation du programme automate 1.1 1.2 1.3 1/1 Principes d’échange Automate/SIMTSX 1.1-1 Introduction pour Micro/Premium 1.1-2 Principe de base pour Micro/Premium 1.1-3 Introduction pour Quantum 1.1-4 Principe de base pour Quantum 1/1 1/1 1/1 1/2 1/2 Mise en œuvre 1.2-1 Mise en œuvre matérielle 1.2-2 Simulation des modules d’entrées/sorties sur Micro/Premium 1/3 1/3 Les modules de simulation 1.3-1 Fonctionnement du module de simulation sur Micro/Premium 1.3-2 Limites de l’utilisation des modules de simulation sur Micro/Premium 1.3-3 Fonctionnement de l’EFB de simulation sur Quantum 1/3 1/4 1/4 1/5 1/6 1.4 Paramètres de communication 1/7 1.5 Visualisation des entrées/sorties TOR 1/7 1.6 Les commandes disponibles 1/10 ___________________________________________________________________________ F/1 F Validation du programme automate Chapitre Sommaire Intercalaire F Page F ___________________________________________________________________________ F/2 1 Validation du programmeChapitre automate 1 1 Validation du programme automate 1.1 Principes d’échange Automate/SIMTSX 1.1-1 Introduction pour Micro/Premium En mode connecté, SIMTSX échange des entrées/sorties avec l’automate pour simuler le comportement des équipements industriels. Ces échanges sont réalisés à l’aide de deux modules logiciels : le serveur de communication, installé dans le PC de simulation avec SIMTSX, et le module de simulation installé dans l’automate avec le programme PL7. SIMTSX dialogue avec le serveur de communication qui échange les entrées/ sorties avec le module de simulation, ce dernier étant chargé de fournir à l’automate les évolutions d’entrées/sorties. Le schéma ci-dessous présente les échanges d’entrées/sorties entre SIMTSX et l’automate : Micro/Premium P.C + Windows 95 ou NT4.0 F DDE X-Way SIMTSX Serveur de communication module de simulation Programme automate 1.1-2 Principe de base pour Micro/Premium Lorsque SIMTSX fait évoluer le modèle de simulation, les évolutions des entrées qu’il déduit sont communiquées au serveur. Le serveur les communique à son tour au module de simulation qui se charge de les recopier dans l’automate. Les évolutions des sorties résultant de la réaction du programme automate sont ensuite fournies en retour à SIMTSX par le module de simulation et par le serveur. Pour fournir à l’automate les changements d’état des entrées, le module dispose de commandes d’écriture directe dans la mémoire de l’API. Le recueil des évolutions de sorties s’opère, quant à lui, par une commande de lecture directe de la mémoire-image automate des sorties. En comparant celle-ci à son contenu antérieur préalablement mémorisé, le module déduit les sorties dont l’état s’est modifié. Le module maintient donc sa propre mémoire-image des entrées/sorties. ___________________________________________________________________________ 1/1 1.1-3 Introduction pour Quantum En mode connecté, SIMTSX échange des entrées/sorties avec l’automate pour simuler le comportement des équipements. Ces échanges sont réalisés à l’aide de deux modules logiciels : le serveur de communication installé dans le PC de simulation avec SIMTSX et l’EFB de simulation intégré au programme CONCEPT. SIMTSX dialogue avec le serveur de communication qui échange les entrées/sorties avec l’EFB de simulation. Ce dernier étant chargé de fournir à l’automate les évolutions d’entrées/ sorties. P.C + Windows 95 ou NT4.0 Quantum F Modbus, Modbus Plus, Ethernet/Modbus DDE SIMTSX Serveur de communication EFB de simulation Programme automate 1.1-4 Principe de base pour Quantum Lorsque SIMTSX fait évoluer le modèle de simulation, les évolutions des entrées qu’il déduit sont communiquées au serveur. Le serveur les communique à son tour à l’EFB (par l’intermédiaire de registres 4x) qui se charge de les recopier dans l’automate. Les évolutions des sorties résultant de la réaction du programme automate sont ensuite fournies en retour à SIMTSX par le serveur. Pour fournir à l’automate les changements d’état des entrées, l’EFB dispose de commandes d’écriture directe dans la mémoire de l’API. Le recueil des évolutions de sorties s’opère, quant à lui, par une commande de lecture directe de la mémoire-image automate des sorties par le serveur de communication. En comparant celle-ci à son contenu antérieur préalablement mémorisé, le serveur de communication déduit les sorties dont l’état s’est modifié. Le serveur de communication maintient donc sa propre mémoire-image des entrées/sorties. ___________________________________________________________________________ 1/2 Validation du programme automate 1.2 1 Mise en œuvre 1.2-1 Mise en œuvre matérielle Connexion Micro/Premium La simulation sur Micro ou Premium nécessite la mise en œuvre d’une communication Automate-SIMTSX s’appuyant intégralement sur les services X-Way. Tous les services X-Way sont compatibles (Prise console, Uni-Telway, Fipway, Ethway) moyennant la mise en place des supports physiques correspondants (port UC, Coupleur automate, Carte PC…). Connexion Quantum La simulation sur Quantum nécessite la mise en oeuvre d’une communication Automate-SIMTSX en Modbus, Modbus plus ou Ethernet Modbus. Tous ces services sont disponibles moyennant la mise en place des supports physiques correspondants (port UC, coupleur automate, carte PC…). La simulation en mode connecté sur Quantum peut aussi se faire entièrement sur PC en se connectant à l'IEC/SIMULATOR de CONCEPT. 1.2-2 Simulation des modules d’entrées/sorties sur Micro/Premium Lors d’une simulation avec SIMTSX, l’utilisateur peut choisir différents modules d’entrées/sorties en bac et d’entrées/sorties déportées. Il peut ensuite déterminer les modules à simuler par SIMTSX. Les différentes possibilités de configuration ainsi que les contrôles de celle-ci sont détaillés ci-après. • Modules d’entrées/sorties simulés par SIMTSX : ce type de configuration est le plus utilisé et permet à SIMTSX de simuler les entrées/sorties de ces modules. SIMTSX vérifie la présence de ces modules dans la configuration API et bloque le démarrage de la simulation si les modules n’existent pas ou s’ils sont différents de ceux déclarés dans SIMTSX. Les modules peuvent être ou pas présents physiquement. • Modules d’entrées/sorties non simulés par SIMTSX et déclarés comme tels dans SIMTSX : ce cas est surtout utilisé avec des modules de sorties car il peut être nécessaire, lors d’une mise en route sur site, de câbler certains modules. Cela permet de récupérer dans SIMTSX l’état de leurs sorties pour faire évoluer le modèle de simulation. SIMTSX vérifie la présence de ces modules dans la configuration API et bloque le démarrage de la simulation si les modules n’existent pas. Il affiche un message non bloquant pour la simulation, si les modules non simulés sont présents dans la configuration API mais ne sont pas présents physiquement (pour les modules sur Bus X uniquement). • Modules d’entrées/sorties non déclarés dans SIMTSX mais présents dans la configuration API : ce cas permet de laisser des modules d’entrées/sorties physiquement câblés qui n’interviennent pas dans l’évolution du modèle de simulation. SIMTSX affiche un message non bloquant pour la simulation si les modules ne sont pas présents physiquement (pour les modules sur Bus X uniquement). ___________________________________________________________________________ 1/3 F Attention Pour la simulation des entrées/sorties, deux cas se présentent : • Tous les modules d’entrées/sorties déclarés dans PL7 sont simulés par SIMTSX : dans ce cas, le driver qui permet le rafraîchissement des entrées/sorties est inhibé. Cela entraîne un gain de performance sur les temps des tâches utilisés. • Pour tous les autres cas, le driver qui permet le rafraîchissement des entrées/sorties n’est pas inhibé. Cela entraîne un rafraîchissement des sorties simulées si le module correspondant est physiquement câblé. Remarque sur la simulation "mixte : connecté + grafcet local F Il est possible de faire une simulation connectée à l'automate en conservant un grafcet SIMTSX, pour tout ou partie de l'application SIMTSX. Par exemple lorsque le programme n'est pas complètement terminé, ou dans le cas d'une application multi automate, une partie de l'application est commandée par le programme automate, l'autre partie par un grafcet. Dans ce cas, l'application ou partie d'application concernée par les transitions et actions du grafcet SIMTSX évoluera en fonction de ce grafcet, l'autre partie évoluera en fonction des entrées/sorties automate. En cas de conflit sur des actions communes automate/grafcet SIMTSX, c'est le grafcet SIMTSX qui est "prioritaire" sur les évolutions générées par les sorties (cas d'une sortie automate câblé sur un relais, correspondant à une action du grafcet). 1.3 Les modules de simulation 1.3-1 Fonctionnement du module de simulation sur Micro/Premium Avant de commencer une simulation, il faut charger le module de simulation dans le programme automate. Pour cela, il suffit d’ajouter à la configuration côté PL7 et côté simulateur un module fictif simulation. Important Si au moins une entrée ou une sortie déportée est à simuler, le module simulation doit être positionné après le dernier point de connexion Fipio. Dans le cas contraire, il doit être positionné sur un emplacement en bac. Dans tous les cas, le module de simulation doit être situé sur le même emplacement côté configuration PL7 et côté configuration simulateur. Le module Simulation est disponible dans la boîte de dialogue "Ajouter un module" dans la famille Simulation. Lorsque le module de simulation est chargé dans le programme automate, il est inactif tant que la simulation n’a pas commencé. Il est donc possible de le laisser résident dans le programme API si d’autres opérations que la simulation doivent être exécutées. ___________________________________________________________________________ 1/4 Validation du programme automate 1 Lorsque la simulation débute, le module de simulation s’active pour gérer les échanges d’entrées/sorties entre l’automate et SIMTSX. A la fin de la simulation et jusqu’à la prochaine, il redevient inactif. Cependant, dans certain cas, le module de simulation peut rester actif (cas d’une coupure secteur pendant la simulation par exemple). Dans ce cas, un rechargement complet du programme automate permet de retrouver des conditions initiales et donc un module de simulation inactif. Les différents modes de marche du module de simulation sont détaillés ci-après. Début simulation (réception Conf) F module de simulation ACTIF Coupure secteur, reprise à chaud module de simulation INACTIF (reconf et reprise à froid) ou (arrêt de la simulation) 1.3-2 Limites de l’utilisation des modules de simulation sur Micro/Premium Le module de simulation à ajouter dans la configuration PL7 utilise de la mémoire automate. Il faudra donc s’assurer de disposer de suffisamment de place pour l’intégrer. Il est à noter que le module de simulation Bus X est deux fois moins important que le module de simulation Fipio. En conséquence, il faudra ajouter le module Simulation sur Bus X dans le cas où l’application à simuler ne possède que des entrées/ sorties sur Bus X. ___________________________________________________________________________ 1/5 1.3-3 Fonctionnement de l’EFB de simulation sur Quantum Avant de commencer une simulation, il faut insérer un certain nombre d’EFB de simulation dans le programme automate. Pour cela, suivre les étapes suivantes : • Créer dans CONCEPT une variable SIMAC_PARAM. • Renseigner cette variable avec le registre 4x correspondant à la première zone d’entrées contiguës à simuler (information à trouver dans l’onglet Lien EFB du configurateur d’entrées/sorties du simulateur). • Recommencer les deux opérations pour toutes les zones d’entrées contiguës à simuler (tous les EFB SIMTSX de l'onglet Lien EFB du configurateur d'entrées/ sorties). F • Créer une nouvelle section SIMTSX en langage FBD. • Dans l’ordre d’exécution des sections, mettre la section SIMTSX en premier. • Ouvrir la section SIMTSX. • Insérer un EFB SIMTSX disponible dans la librairie des EFB. • Renseigner le champ supérieur par la première variable SIMAC_PARAM créée. • Renseigner le champ inférieur par la valeur directe 1 ou 3 selon que la zone d’entrées contiguës correspondante traite des entrées TOR ou ANA (information à trouver dans l'onglet Lien EFB du configurateur d'entrées/sorties). • Recommencer l’opération d’insertion d’EFB pour toutes les zones d’entrées contiguës à simuler. Chaque EFB sera alors chargé de recopier à chaque début de cycle le contenu des registres 4x de travail sur les zones d’entrées TOR ou ANA correspondantes. ___________________________________________________________________________ 1/6 Validation du programme automate 1.4 1 Paramètres de communication Deux paramètres sont nécessaires à l’établissement de la communication entre SIMTSX et l’automate : • l’adresse de l’automate de dialogue avec le simulateur, • le type de driver utilisé pour la communication. Ces deux paramètres sont à renseigner dans SIMTSX au lancement de la simulation. Lors d’une simulation, un ou plusieurs synoptiques représentant le ou les automates en cours de simulation sont affectés. A partir de ce synoptique, différentes fonctionnalités sont offertes. F 1.5 Visualisation des entrées/sorties TOR Lorsque l’on place la souris sur l’afficheur du bloc Alim/CPU sur Micro ou sur un module d’entrées/sorties TOR sur Premium ou Quantum, une loupe apparaît après quelques instants permettant la visualisation de l’état des voies TOR. ___________________________________________________________________________ 1/7 La loupe Bus X F Pour visualiser les entrées ou les sorties 32 à 63 des modules 64 voies, il suffit d’activer dans le menu contextuel du module la commande "+32". La loupe Fipio ___________________________________________________________________________ 1/8 Validation du programme automate 1 La loupe Micro F Pour visualiser les voies de l’extension, il suffit de désactiver dans le menu contextuel du bloc Alim/CPU la commande "Base". Pour visualiser les voies 16 à 31 des modules 32 voies, il suffit d’activer dans le menu contextuel du bloc Alim/CPU la commande "+16". La loupe Quantum ___________________________________________________________________________ 1/9 1.6 Les commandes disponibles Le menu Outils Le menu Outils comprend les commandes suivantes : • Historique : Affiche l’historique des entrées/sorties. • Courbes : Affiche une fenêtre permettant la visualisation des entrées/sorties analogiques sous forme de courbes. F Commande Historique La commande Historique permet d’afficher une fenêtre de suivi qui fait défiler la succession des évolutions d’entrées/sorties TOR en cours de simulation. Ces évolutions sont datées de deux façons différentes : pour les envois d’entrées par SIMTSX, le temps depuis le début de la simulation est affiché devant chaque série. Pour les réceptions d‘évolutions de sorties, on indique dans le cas du Micro et du Premium le nombre de cycle automate nécessaire à l’apparition de ces sorties depuis le dernier envoi d’entrées. Dans le cas du Micro et du Premium, le signe (a) devant certaines sorties signifie que ce sont des sorties qui sont apparues dans l’automate entre une remontée de sorties mais avant un envoi d’évolutions d’entrées par le simulateur. Les entrées/sorties sont affichées grâce à la commande Editer du menu Services ; elles appartiennent aux modules configurés dans la partie supérieure. Elles sont présentées par leur adresse ou par leur mnémonique grâce à la commande Mnémoniques du menu Services. La partie supérieure de la fenêtre permet de configurer l’historique. La liste de gauche représente les modules visualisables et la liste de droite les modules visualisés. La liste de droite représente les modules d’entrées/sorties à visualiser sur la fenêtre Historique du serveur lorsque la commande Editer est active. Par défaut, aucun module d’entrées/sorties n’est affiché. ___________________________________________________________________________ 1/10 Validation du programme automate 1 Pour enlever ou ajouter des modules, les différentes possibilités sont les suivantes : • Bouton gauche de la souris pour sélectionner un élément puis bouton >> ou supprimer. • Double click sur un élément pour l’ajouter ou l’enlever. • SHIFT + bouton gauche de la souris pour sélectionner plusieurs modules contigus puis bouton >> ou supprimer. • CTRL + bouton gauche de la souris pour sélectionner plusieurs modules non contigus puis bouton >> ou supprimer. F ___________________________________________________________________________ 1/11 Commande Courbes Cette commande permet d’afficher une fenêtre pour visualiser les entrées/sorties analogiques sous forme de courbes. La liste de gauche représente les entrées/sorties visualisables et la liste de droite les entrées/sorties visualisées. A côté de chaque voie analogique, un pavé de couleur permet de repérer sur la courbe la voie correspondante. La couleur peut être modifiée en réalisant un double clic sur le pavé. L’échelle peut être modifiée par la commande Echelle du menu Services et l’affichage des voies peut se faire sous forme de symboles en utilisant la commande Symboles du menu Services. Il est possible de passer d’un affichage décimal à un affichage hexadécimal par la commande Hexa du menu Services. F L’échelle de temps pour le tracé des courbes est donnée par le simulateur. Lors d’un cycle de simulation (envoi d’entrées, réception de sorties), deux évolutions apparaissent sur la courbe. ___________________________________________________________________________ 1/12 Validation du programme automate 1 Le menu Services Le menu Services est affiché lorsque la fenêtre de l’historique est active ou lorsque la fenêtre des courbes est active. Le menu Services comprend des commandes relatives à l’outil actif : Les commandes suivantes sont disponibles avec l’outil Historique : • Editer : Affiche les échanges d’entrées/sorties sélectionnées entre SIMACTEL et l’automate. • Mnémoniques : Permet de choisir le mode d’affichage des entrées/sorties. Les commandes suivantes sont disponibles avec l’outil Courbes : • Echelle : Permet de choisir l’échelle sur l’axe des ordonnées. • Mnémoniques : Permet de choisir le mode d’affichage des entrées/sorties. • Hexa. : Permet de visualiser les valeurs en décimal ou en hexadécimal. Visualisation des valeurs des entrées/sorties En réalisant un double clic sur un module d’entrées/sorties, une grille représentant la liste des entrées/sorties avec leurs symboles, commentaires et valeurs apparaît. Elle permet de connaître à tout moment l’état d’une variable TOR ou Analogique. Il est possible de rechercher les occurrences d’une chaîne de caractères en utilisant l’éditeur et le bouton Rechercher. ___________________________________________________________________________ 1/13 F F Visualisation des valeurs des mots internes simulés En réalisant un double clic sur le processeur de l’automate, une grille représentant la liste des mots internes simulés avec leurs valeurs apparaît. Elle permet de connaître à tout moment la valeur d’un mot interne. Il est possible de rechercher les occurrences d’une chaîne de caractères en utilisant l’éditeur et le bouton Rechercher. ___________________________________________________________________________ 1/14 Validation du programme automate 1 Défauts voies et défauts modules sur Micro et Premium Lors d'une simulation sur automate Micro et Premium, les défauts voies et les défauts modules sont gérés par SIMTSX. Lorsque la simulation en mode connecté débute, ces défauts sont mis à jour par SIMTSX pour les modules simulés (positionnement sur nondéfaut). En cours de simulation, ils peuvent être positionnés à 1 ou à 0 à partir du serveur de communication. A partir de la grille de correspondance entrées/sorties, symboles, commentaires et valeurs, il est possible d’accéder aux défauts voies ou aux défauts modules. Cela permet de positionner l’état de ces variables dans l’automate concerné et ainsi de tester les réactions du programme automate devant ce type de défauts. Cliquer sur le bouton radio pour afficher la liste des défauts voies ou des défauts modules. Sélectionner la ligne correspondant à la voie ou au module qui doit être mis en défaut. Appuyer sur le bouton "mise à 1" ou "mise à 0" selon l’action désirée. Dans le cas des défauts modules, il est possible de tous les positionner à un ou à zéro par les boutons correspondants. Attention Pour un bon fonctionnement de la mise à jour des défauts voies et des défauts modules, il est interdit de toucher aux cartes d'entrées/sorties présentes physiquement pendant la simulation en mode connecté. En effet, cela aurait pour conséquence de faire monter les défauts voies et les défauts modules des cartes simulées et ce pendant un cycle automate (le temps que SIMTSX les rafraîchissent). ___________________________________________________________________________ 1/15 F F ___________________________________________________________________________ 1/16 Utilitaires SIMTSX Sommaire Intercalaire G Chapitre Page 1 Outil de transfert d'une application en modèle 1/1 1.1 Présentation 1/1 1.2 Définition des modèles 1.2-1 Edition d’un modèle générique 1.2-2 Paramétrage 1.2-3 Exemple de modèle 1/1 1/2 1/4 1/5 1.3 Définition d’un modèle à partir d’une application 1.3-1 Transfert d’une application en modèle 1.3-2 Réduction du modèle 1.3-3 Paramétrage du modèle 1/6 1/6 1/7 1/8 2 Transferts de fichiers 2/1 2.1 Présentation 2/1 2.2 Sauvegarde sur une disquette 2/2 2.3 Chargement à partir d’une disquette 2/3 3 Documentation des applications et modèles SIMTSX 3.1 Présentation 3.2 Le menu Fichier 3.2-1 Commande 3.2-2 Commande 3.2-3 Commande 3.2-4 Commande 3.2-5 Commande 3.2-6 Commande 3.2-7 Commande 3/1 3/1 Nouveau Ouvrir Enregistrer Enregistrer sous Imprimer Aperçu avant impression Mise en page 3/6 3/6 3/7 3/8 3/8 3/9 3/10 3/11 ___________________________________________________________________________ G/1 G Utilitaires SIMTSX Sommaire Intercalaire G Chapitre 3.2-8 Dernier fichier ouvert 3.2-9 Quitter Page 3/12 3/12 3.3 Le menu Dossier 3.3-1 Commande Ouvrir une Application 3.3-2 Commande Ouvrir un modèle 3/13 3/13 3/14 3.4 Le menu Format 3.4-1 Commande 3.4-2 Commande 3.4-3 Commande 3.4-4 Commande 3.4-5 Commande 3.4-6 Commande 3.4-7 Commande Général Table des matières Bornier Relayage Axe Pupitre Paragraphes 3/15 3/15 3/18 3/19 3/20 3/21 3/22 3/23 3.5 Menu Affichage 3.5-1 Commande Barre d’outils 3.5-2 Commande Barre d’information 3/25 3/25 3/26 3.6 Le menu Aide 3.6-1 Commande Contenu de l’aide 3.6-2 Commande Aide sur l’aide 3.6-3 Commande A propos de SIMTSX 3/27 3/27 3/27 3/27 3.7 Conseils et problèmes d’impression 3/28 G ___________________________________________________________________________ G/2 1 Outil de transfert d'une applicationChapitre en modèle 1 1 Outil de transfert d'une application en modèle 1.1 Présentation Les parties semblables d'une application, la sauvegarde du savoir-faire de description d'éléments incitent à disposer d'une bibliothèque de modèles génériques. L’utilisation de cette fonctionnalité comporte deux aspects : • d’une part la définition d’un modèle, similaire à la description d’une application (détaillée dans ce chapitre), • et d’autre part la copie d’une application en modèle archivé dans une bibliothèque (voir intercalaire C, chapitre 1). 1.2 Définition des modèles Pupitres Relais Axes Un modèle est constitué des mêmes composantes qu’une machine : axes, relais, pupitres, synoptiques, à l’exception toutefois des entrées/sorties. Un modèle peut cependant comporter la définition d’équations d’entrées, la désignation de ces entrées étant totalement libre. Un modèle ne comprend pas la définition explicite de sorties, ces variables sont donc des "variables indéfinies". Lors de l’incorporation du modèle dans une machine, ces variables pourront être identifiées à des sorties définies. ___________________________________________________________________________ 1/1 G Au cas où la nature du modèle impose que certaines des variables indéfinies soient obligatoirement identifiées à des sorties, il est possible d’obliger leur identification lors de l’incorporation. Le modèle générique est tout d’abord décrit dans SIMTSX pour pouvoir le valider en simulation locale. Puis, lorsqu’il est au point, il suffit de le transformer en modèle afin de le stocker en bibliothèque avec éventuellement des paramètres et des commentaires (menu Outils > Transfert d’une application en modèle). Le transfert étant effectué, il faut charger le modèle de la bibliothèque (menu Fichier > Modèle), pour l’éditer. 1.2-1 Edition d’un modèle générique G L’édition d’un modèle générique se fait par les mêmes interfaces que la description d’une application. La seule différence est la possibilité de commenter les variables de la description afin de garantir la lisibilité du modèle lors d’une utilisation ultérieure. Un commentaire général peut aussi être associé au modèle sous la forme d’un texte accessible par le bouton Commentaire. ___________________________________________________________________________ 1/2 Outil de transfert d'une application en modèle 1 Comme les autres entités formant la description d’un modèle, les "variables indéfinies" peuvent être commentées, au niveau de la fenêtre d’accès à ces variables. G C’est également dans cette fenêtre que peut être introduite la contrainte imposant d’identifier certaines de ces variables à des sorties. Ceci se fait en cochant la case Sortie, quand une variable indéfinie est sélectionnée. ___________________________________________________________________________ 1/3 1.2-2 Paramétrage Un modèle peut être paramétré, c’est-à-dire que le nom des variables du modèle peut comporter un (ou plusieurs) paramètres. Un paramètre est désigné par le caractère "$", suivi ou non d’un nombre compris entre 0 et 9 (soit jusqu’à 11 paramètres différents utilisables dans 1 modèle). Outre le nom des variables, les paramètres peuvent intervenir dans le libellé des axes, les mnémoniques et commentaires des entrées, dans les titres et étiquettes des éléments de pupitre ainsi que dans les commentaires associés. Certaines variables indéfinies peuvent être identifiées à des sorties lors de l’incorporation de ce modèle dans une application. Le nom de la variable indéfinie dans le modèle et son commentaire deviendront le mnémonique et commentaire de la sortie de l'application (à condition toutefois que celle-ci ne soient pas déjà définie). G Cette affectation a lieu après que les paramètres aient été substitués. Pour cette raison le commentaire associé à une variable indéfinie dans un modèle peut également être paramétré. Le bouton Paramètres permet d'accéder aux paramètres utilisés dans le modèle. Les paramètres peuvent être commentés et vérifier dans quelles entités de la description ils interviennent. ___________________________________________________________________________ 1/4 Outil de transfert d'une application en modèle 1 1.2-3 Exemple de modèle Considérons le modèle d’un vérin piloté par un distributeur bistable. • L’axe décrivant la course de ce vérin est l’axe "Ax-1", son libellé est "Vérin $0". • Les capteurs de début et fin de course sont respectivement Sq$00 et Sq$01. Le distributeur bistable a pour nom D$0. • Les mouvements de sortie et rentrée sont respectivement SV$0 et RV$0, leurs équations sont D$0 et /D$0. Le terme d’enclenchement du bistable D$0 est YV$01, son terme de déclenchement YV$00, conditionné par la variable pression. • Ces électrovannes ont pour équations : YV$01 = Sortie-$0 . Alim-Elec YV$00 = Rentrée-$0 . Alim-Elec Ax-$0 = vérin $0 RV$0 = /DS$0 SV$0 = DS$0 G Sq$00 YV$01 Sq$01 YV$00 DS$0 Pression Le paramètre (ici $0) met en évidence un lien existant entre les noms des différentes variables, lien qui sera propagé dans l’application où le modèle sera incorporé. Seules les variables significatives du modèle sont donc paramétrées. Dans l’exemple ci-dessus, il s’agit des capteurs, du bistable et des électrovannes. Le nom de l’axe lui-même n’est pas paramétré. Le modèle du vérin présente des variables indéfinies qui sont Sortie-$0, Rentrée-$0 et Alim-Elec. Cette dernière représente une condition d’alimentation électrique des électrovannes pilotant le distributeur du vérin. Les deux autres variables pourront être identifiées à des sorties de l’application où ce modèle sera incorporé. ___________________________________________________________________________ 1/5 1.3 Définition d’un modèle à partir d’une application C’est souvent après avoir décrit une application particulière qu’apparaît l’intérêt de sauvegarder une partie de celle-ci sous la forme d’un modèle générique. Il est possible d’extraire une partie d’une application pour en faire un modèle réutilisable. Cette opération s’effectue en plusieurs étapes. 1. TRANSFERT Modèle Menu Outils Transfert d'une application en modèle Application entrées /sorties Relais Axes Synop Pupitres • Transformation d'une partie d'application en modèle. • 1er tri où l'on choisit les axes, relais, entrées/sorties, pupitres, synoptiques. 2. REDUCTION Modèle Entrées/sorties Relais Axes Synop Pupitres G Modèle Axes/relais/entrées Entrées/sorties Relais Axes • Transformation du modèle en fonction des éléments que l'on souhaite conserver. 3. PARAMETRAGE Modèle Entrées/sorties Relais Axes Modèle $0, $1, … , $9 Yv$1 Yv$2 sortie-$0 rentrer-$0 Venn$0 RV$0 SV$0 Sq$00 Sq$01 1.3-1 Transfert d’une application en modèle Ceci consiste à recopier en tant que modèle les différents sous-ensembles constituant une application : axes, relayage, entrées/sorties et pupitres. Cette fonctionnalité est accessible à partir du menu Outils de l’interface de description. ___________________________________________________________________________ 1/6 Outil de transfert d'une application en modèle 1 1.3-2 Réduction du modèle A moins que l’application ait été décrite pour valider un modèle, par exemple au moyen d’une simulation locale, seuls certains éléments figurant dans la description de celleci formeront le modèle. Il faut donc éliminer une grande partie de la description afin d’en extraire le modèle. Pour faciliter cette opération, des fonctionnalités de "réduction" sont disponibles dans l’interface de description des modèles au niveau des menus axes, relais et entrées/ sorties. Réduction des axes Le bouton Réduire de la fenêtre principale d’édition des axes d’un modèle permet de sélectionner les axes que l’on souhaite conserver dans le modèle. Les axes considérés sont sélectionnés dans la partie gauche de la fenêtre de réduction, ils apparaissent alors dans la partie droite de cette fenêtre. La réduction des axes entraîne l’élimination des axes non sélectionnés et des variables associées spécifiquement à ces axes. Sont donc conservées les variables figurant dans les liens amont/aval des axes sélectionnés d’une part, et les variables qui ne sont associées à aucun axe de la description d’autre part. Par défaut, cette réduction est appliquée aux relais et aux entrées. Cette option peut être désélectionnée, dans ce cas la réduction n’est appliquée qu’aux variables décrites dans la partie axes/mouvements. Réduction du relayage Pour l’alimentation générale, la réduction consiste simplement à pouvoir la supprimer totalement. Pour les autres relais, la réduction permet de ne conserver que ceux d’entre eux qui sont liés aux axes du modèle, ou en relation avec les pupitres. Les relais intervenant dans la commande des axes ou affectés par leurs évolutions sont conservés : ce sont ceux figurant dans les liens "amont" et "aval". Sont également conservés les relais où interviennent des variables activées par les boutons poussoirs et commutateurs ou participant à la commande des voyants et afficheurs. Réduction des entrées Ceci consiste à éliminer les entrées qui ne sont pas connectées à des éléments de la description : les entrées dans les équations desquelles n’interviennent que des relais de "l'Alimentation générale" ou des variables "indéfinies" non utilisées sont supprimées. ___________________________________________________________________________ 1/7 G 1.3-3 Paramétrage du modèle Afin que ce sous-ensemble puisse être archivé comme modèle réutilisable, des variables devront encore être éliminées. Les variables conservées pourront être commentées et éventuellement paramétrées en recourant à la fonction Renommer. G ___________________________________________________________________________ 1/8 Transferts Chapitre de fichiers 22 2 Transferts de fichiers 2.1 Présentation Les fonctions décrites ci-dessous permettent de transférer des applications. Pour y accéder, il faut choisir le bouton Outils dans la fenêtre principale de l’interface de description. G ___________________________________________________________________________ 2/1 2.2 Sauvegarde sur une disquette Sélectionnez l'application à sauvegarder dans le défileur se trouvant en haut à gauche de la fenêtre. Son nom s’inscrit dans l’éditeur se trouvant en haut à droite. Choisissez le lecteur de disquette sur lequel vous souhaitez recopier l'application en cliquant l’un des boutons radio A: ou B:. Le bouton Valider lance la commande. Un message d’erreur Windows apparaît si vous ne disposez pas d’une place suffisante sur votre disquette ou s’il n’y a pas de disquette présente dans le lecteur sélectionné. Dans ce cas, remédiez au problème rencontré et relancez la commande. G ___________________________________________________________________________ 2/2 Transferts de fichiers 2.3 2 Chargement à partir d’une disquette Choisissez le lecteur de disquette depuis lequel vous souhaitez recopier l'application en cliquant l’un des boutons radio A: ou B:. Sélectionnez l'application à charger dans le défileur se trouvant en haut à droite de la fenêtre. Ce défileur contient l’ensemble des applications se trouvant sur la disquette. Le bouton Valider lance la commande. G ___________________________________________________________________________ 2/3 G ___________________________________________________________________________ 2/4 Chapitre 3 Documentation des applications et modèles SIMTSX 3 3 Documentation des applications et modèles SIMTSX 3.1 Présentation L' impression des applications et des modèlesSIMTSX peut être lancée à partir de l'item Impression du menu Fichier de l’interface de description. Les dossiers des applications ou modèle, à imprimer, sont personnalisables sur la forme et sur le contenu. Il est possible de mémoriser cette personnalisation pour une utilisation ultérieure. Les commandes de personnalisation des formats sont réparties de la façon suivante : • le menu Fichier regroupe les commandes de gestion des formats personnalisés, • le menu Format regroupe les commandes d'édition d'un format, • les commandes Général, Relayage, Axe et Pupitre permettent de définir le contenu du dossier à imprimer, • le menu Dossier permet d'ouvrir un dossier d'une application. Le dossier imprimé est structuré en paragraphes auxquels un style est associé. Pour chaque style, les caractéristiques suivantes sont paramétrables : • saut de page : insertion de saut de page avant le paragraphe, • retrait : configuration de l’espace libre à gauche du paragraphe, • avant : configuration de l’espace libre au-dessus du paragraphe, • après : configuration de l’espace libre en dessous du paragraphe, • fonte : choix de la police de caractère utilisée pour le paragraphe. Marge gauche Marge droite ... Texte de paragraphe précédent, texte de paragraphe précédent, Texte de paragraphe précédent, Texte de paragraphe précédent, Espace avant Retrait Texte du paragraphe Espace après Texte de paragraphe suivant Texte de paragraphe suivant ... ___________________________________________________________________________ 3/1 G Les styles utilisés sont les suivants : • Titre principal. • Identification. • Section. • Sous-section. • Section niv 3. • Elément. • Chronogramme. • Texte normal. • En-tête. • Pied de page. • Pupitre & Synoptique. • TdM niv. 1. • TdM niv. 3. • TdM niv. 3. G Titre principal Ce style définit l’édition du titre du dossier d’impression (la première ligne du dossier). Identification Ce style définit l’édition des libellés des champs de la première page. Les champs édités sont ceux que vous avez remplis dans la fenêtre principale de l’application. Les champs vides sont ignorés. Section, Sous-section, Section niv 3 Ces styles définissent l’édition des différents titres contenus dans le dossier. Les sections sont les différentes parties du dossier d’édition (borniers, alimentations, relais, axes, variables, bistables, variables de pupitre, pupitres et synoptiques). Les sous-sections et les sections de niveau 3 correspondent à des sous-parties de ces sections. Les correspondances entre texte et styles sont dépendantes des options d’édition que vous avez choisies. Elément Utilisez ce style pour configurer l’édition des noms des éléments de description (une variable, un relais...). Chronogramme Ce style définit l’édition des chronogrammes des capteurs des axes. Texte normal Ce style définit l’édition du texte normal du dossier d’édition. En-tête Ce style défini l’édition du texte faisant partie de l'en-tête de chaque page du dossier. Le seul paramètre utile de ce style est la fonte de caractères choisie. ___________________________________________________________________________ 3/2 Documentation des applications et modèles SIMTSX 3 Pied de page Ce style définit l’édition du texte faisant partie du pied de page de chaque page du dossier. Le seul paramètre utile de ce style est la fonte de caractères choisie. Pupitre & Synoptique Ce style définit l’espace souhaitée autour des dessins des pupitres et des synoptiques. Le choix de la police de caractères est sans effet pour ce style. TdM niv. 1 Ce style définit l’aspect des titres de niveau 1 de la table des matières. Les titres de niveau 1 pour la table des matières sont les titres des sections du dossier d’impression. TdM niv. 2 Ce style définit l’aspect des titres de niveau 2 de la table des matières. Les titres de niveau 2 pour la table des matières sont les titres des sous-sections du dossier d’impression. TdM niv. 3 Ce style définit l’aspect des titres de niveau 3 de la table des matières. Les titres de niveau 3 pour la table des matières sont les titres des sections de niveau 3 du dossier d’impression. Zone d'entrée cadre Zone de texte Zone de pied de page ___________________________________________________________________________ 3/3 G Pour lancer l’impression d’un dossier, utilisez l'item Impression du menu Fichier de l'interface de description. Dans la fenêtre Utilitaires, sélectionnez l’item impression de l'application sélectionnée. Si la fenêtreImpression sur <imprimante par défaut> n’apparaît pas directement, cliquez sur le bouton Valider de cette fenêtre. La fenêtre Impression sur <imprimante par défaut> permet de positionner les options d’ouverture suivantes : Bornier Imprimer la configuration des borniers et des entrées/sorties. Relais Imprime les relais et les alimentations. Axes Imprime les axes, les capteurs, les mouvements et tous les autres éléments de description associés aux axes. Pupitres Imprime les pupitres. Synoptique Imprime les synoptiques. Impression Si cette case n’est pas cochée, l’impression sera effectuée avec personnalisée le format d’édition par défaut sur l’imprimante par défaut. G ___________________________________________________________________________ 3/4 Documentation des applications et modèles SIMTSX 3 Les contenus des champs de la fenêtre permettent d'identifier le dossier. Ils sont imprimés en première page, s’ils sont remplis, et enregistrés dans les formats d’édition. Seul le champ Application est rempli automatiquement lorsqu’une application ou qu’un modèle SIMTSX est ouvert. Leurs significations sont les suivantes : • Société : Nom de la société ayant réalisé le dossier original. • Service : Service de la société chargé de la réalisation. • Date : Date de création du dossier machine. • Auteur : Nom de l’auteur de la description. • Application : Champ en lecture seule. Le nom de la machine s’y inscrit automatiquement. • Secteur : Nom du secteur de la machine ou du processus industriel. • Code client : Numéro de codification du client. • Code classement : Numéro d’archivage, support informatique. • Version : Indice de la version courante du dossier. Le bas de la fenêtre principale de l’application est une zone de commentaire que l’utilisateur peut exploiter pour ajouter des informations complémentaires sur la description de la machine. Cette zone est imprimée à la suite des champs. ___________________________________________________________________________ 3/5 G 3.2 Le menu Fichier Le menu fichier regroupe toutes les commandes de gestion des formats personnalisés. Il comprend les commandes suivantes : Nouveau Ouvrir... Enregistrer G Crée un nouveau format d'édition. Ouvre un fichier format d’édition existant. Enregistre les modifications apportées au format d’édition actif. Enregistrer sous... Enregistre le format d’édition actif sous un nouveau nom. Imprimer... Imprime le dossier d’édition. Aperçu avant impression Affiche le dossier à l’écran tel qu’il apparaîtra une fois imprimé. Mise en page... Sélectionne une imprimante et son mode de connexion. Dernier fichier ouvert Permet d’ouvrir l’un des quatre formats d’édition les plus récemment utilisés. Quitter Quitte. 3.2-1 Commande Nouveau Cette commande crée un nouveau format d’édition avec les options par défaut de l’application. La police de caractères utilisée par défaut est "Courrier New". Si cette police n’est pas installée, SIMTSX utilise la fonte système de votre ordinateur. La commande Ouvrir permet d’ouvrir un format d’édition existant . Raccourcis : Barre d’outils : Touches : CTRL+N ___________________________________________________________________________ 3/6 Documentation des applications et modèles SIMTSX 3 3.2-2 Commande Ouvrir Cette commande ouvre un format d’édition existant à partir de la boîte de dialogue Ouvrir. Le nom du format d’édition sélectionné apparaît dans le bandeau de titre. Vous pouvez également créer un nouveau format d’édition à l’aide de la commande Nouveau. Raccourcis : Barre d’outils : Touches : CTRL+O • Boîte de dialogue Ouvrir Dans la boîte de dialogue, les options suivantes vous permettent de choisir le format d’édition à ouvrir : Nom de fichier Contient le nom du fichier à ouvrir. Cette liste n’affiche que les fichiers dont l’extension est identique à celle choisie (voir ci-dessous). Liste des fichiers de type Sélectionne le type des fichiers que vous souhaitez ouvrir. Les formats d’édition ont par convention l’extension *.fmt. Répertoires Sélectionne le répertoire d'archivage du format d’édition à ouvrir. Lecteurs Sélectionne le lecteur d'archivage du format d’édition à ouvrir. Réseau (1) Connecte à un autre nœud du réseau. (1) Cette option n’apparaît que si l’ordinateur est connecté à un réseau local. ___________________________________________________________________________ 3/7 G 3.2-3 Commande Enregistrer Cette commande sauvegarde le format d’édition actif avec son nom et sa localisation courante. Lorsqu’un format d’édition est sauvegardé pour la première fois, ouvre la boîte de dialogue Enregistrer sous qui permet de nommer le format d’édition. Cette commande apparaît grisée tant qu’aucune modification n’a été faite sur le format d’édition actif. La commande Enregistrer sous change le nom et la localisation d’un format d’édition. Raccourcis : Barre d’outils : Touches: CTRL+S 3.2-4 Commande Enregistrer sous G Cette commande enregistre le format d’édition actif sous un nouveau nom et/ou à une autre localisation. Elle ouvre la boîte de dialogue Enregistrer sous. La commande Enregistrer permet de sauvegarder les modifications du format d’édition actif. • Boîte de dialogue Enregistrer sous La boîte de dialogue Enregistrer sous contient les options suivantes : Nom de fichier Contient le nouveau nom du fichier d’archivage pour le format d’édition actif. Un nom de fichier comporte jusqu’à huit caractères de dénomination et trois caractères pour l’extension. SIMTSX ajoute automatiquement au nom du fichier l’extension spécifiée dans la liste des formats. Lecteurs Sélectionne le lecteur sur lequel le format d’édition est archivé. Répertoires Sélectionne le répertoire sous lequel le format d’édition est archivé. Réseau (1) Connecte à un autre nœud du réseau. (1) Cette option n’apparaît que si l’ordinateur est connecté à un réseau local. ___________________________________________________________________________ 3/8 Documentation des applications et modèles SIMTSX 3 3.2-5 Commande Imprimer Cette commande imprime un dossier SIMTSX à partir de la boîte de dialogue Imprimer. Cette boîte de dialogue permet de choisir les pages à imprimer, le nombre de copies, l’imprimante, et d’accéder à toutes les autres options d’impression. Cette commande apparaît grisée lorsque aucun dossier application ou qu’aucun modèle SIMTSX n’est chargé. Raccourcis : Barre d’outils : Touches : CTRL+P • Boîte de dialogue Imprimer La boîte de dialogue contient les options suivantes : Imprimante Indique l’imprimante sélectionnée et le mode de connexion utilisé. L’optionConfigurer modifie ces paramètres. Configurer Ouvre la boîte de dialogue Configuration de l’impression atteignable directement par la commande Mise en page (Voir sous-chapitre 3.2-7 de cet intercalaire). Cette option permet de choisir une imprimante et son mode de connexion. Etendue Détermine les pages à imprimer : Tout Imprime le dossier complet. Sélection Option non compatible. Pages Imprime les pages dont le numéro est compris entre le nombre saisi dans le champ De et celui saisi dans le champ A. Copies Indique le nombre de copies à effectuer. Copies triées Imprime les copies dans l’ordre au lieu d’imprimer plusieurs copies de la même page à la suite. Qualité d’impression Sélectionne la qualité d’impression. Généralement, une qualité d’impression faible demande moins de temps de calcul. ___________________________________________________________________________ 3/9 G • Boîte de dialogue Impression en cours Cette boîte de dialogue est affichée pendant que SIMTSX envoie le dossier à l’imprimante. Le numéro de page indique la progression de l’impression. Le bouton annuler sert à quitter l’impression avant qu’elle ne soit terminée. G 3.2-6 Commande Aperçu avant impression Cette commande affiche le dossier sur écran tel qu’il apparaîtrait une fois imprimé. La fenêtre principale est remplacée par une fenêtre dans laquelle sont affichées une ou deux pages dans le format d’impression choisi. La Barre d’outils de l’aperçu avant impression permet d’afficher une ou deux pages à la fois, de se déplacer vers l’arrière et vers l’avant dans le dossier affiché, de zoomer sur une page et de lancer l’impression. Cette commande apparaît grisée lorsque aucun dossier machine ou qu’aucun modèle SIMTSX n’est chargé. Raccourcis : Barre d’outils : Touches : ALT+V • Barre d’outils de l’aperçu avant impression La barre d’outils de l’aperçu avant impression offre les options suivantes : Imprimer Ouvre la boîte de dialogue Imprimer afin de lancer l’impression du dossier. Page suiv. Affiche la page suivante du dossier. Page préc. Affiche la page précédente du dossier. ___________________________________________________________________________ 3/10 Documentation des applications et modèles SIMTSX 3 Une page/Deux pages Affiche une ou deux pages à la fois. Zoom + Change l’affichage pour une vision plus fine de la page affichée. Zoom Change l’affichage pour une vision plus large de la page affichée. Fermer Ferme l’aperçu avant impression et affiche de nouveau la fenêtre principale. 3.2-7 Commande Mise en page Cette commande sélectionne l’imprimante et son mode de connexion. Elle ouvre une boîte de dialogue Configuration de l’impression. • Boîte de dialogue Configuration de l’impression Les options suivantes vous permettent de choisir une imprimante et un mode de connexion : Imprimante Sélectionne l’imprimante à utiliser. Soit l’imprimante par défaut, soit une autre imprimante de la liste. Le panneau de configuration de Windows permet d’installer de nouvelles imprimantes. Orientation Sélectionne le mode portrait ou le mode paysage. Taille Choisi la taille du papier sur lequel le dossier sera imprimé. Alimentation Certaines imprimantes possèdent plusieurs sources d’alimentation en papier. Cette option sélectionne la source désirée. Options Affiche une boîte de dialogue permettant de modifier d’autres options. Cette boîte de dialogue est spécifique de l’imprimante utilisée. ___________________________________________________________________________ 3/11 G Réseau (1) Utiliser cette option pour atteindre un autre nœud du réseau. (1) Cette option n’apparaît que si l’ordinateur est connecté à un réseau local. G 3.2-8 Dernier fichier ouvert Les nombres et les noms des fichiers listés en bas du menu fichier servent à ouvrir l’un des quatre derniers formats d’édition les plus récemment utilisés. 3.2-9 Quitter Cette commande permet de quitter les fonctionnalités documentaires. L'enregistrement des modifications apportées au format d’édition actif est proposé. Raccourcis : Souris : Double-clic sur le bouton de contrôle de l’application Touches : ALT+F4 ___________________________________________________________________________ 3/12 Documentation des applications et modèles SIMTSX 3.3 3 Le menu Dossier Le menu dossier regroupe les commandes d’ouverture des dossiers applications et des modèles de SIMTSX. Ces commandes sont les suivantes : • Ouvrir une application Ouvre le dossier d’une application SIMTSX. • Ouvrir un modèle Ouvre un modèle SIMTSX. 3.3-1 Commande Ouvrir une Application Cette commande ouvre un dossier application parmi ceux listés dans la boîte de dialogue Ouvrir un dossier application. Si un dossier application est déjà ouvert, une marque est positionnée devant la Commande Ouvrir une application du menu. Remarque : Le nom de l'application SIMTSX chargée à l’aide de cette commande est affiché dans le champ application de la fenêtre principale. Si l'application n’a pas été préalablement ouverte à partir de SIMTSX, il est possible que les images représentant les pupitres et les synoptiques de l'application ne soient pas à jour ou soient absentes. Cette commande n’est pas disponible si l’édition d’un modèle est en cours. • Boîte de dialogue Ouvrir un dossier application La liste de la boîte de dialogue contient l’ensemble des dossiers présents sur votre ordinateur. Pour ouvrir un dossier, il faut le sélectionner dans la liste et cliquer sur le bouton OK ou double-cliquer directement sur l’élément. Le bouton Annuler permet d’abandonner cette commande. ___________________________________________________________________________ 3/13 G 3.3-2 Commande Ouvrir un modèle Cette commande ouvre un modèle SIMTSX parmi ceux listés dans la boîte de dialogue Ouvrir un modèle. Si un modèle SIMTSX est déjà ouvert, une marque est positionnée devant la Commande Ouvrir un modèle du menu. Remarque : Le nom du modèle chargé à l’aide de cette commande s’affiche dans le champ application de la fenêtre principale. Si le modèle n’a pas été préalablement ouvert à partir de SIMTSX, il est possible que les images représentant les pupitres et les synoptiques du modèle ne soient pas à jour ou soient absentes. Cette commande n’est pas accessible si l’édition d’une application est en cours. G • Boîte de dialogue Ouvrir un modèle La liste de la boîte de dialogue contient l’ensemble des modèles SIMTSX se trouvant dans le même répertoire que celui chargé. Pour ouvrir un modèle, il faut le sélectionner dans la liste et cliquer sur le bouton OK, ou double-cliquer directement sur l’élément. Le bouton Annuler permet d’abandonner cette commande. ___________________________________________________________________________ 3/14 Documentation des applications et modèles SIMTSX 3.4 3 Le menu Format Le menu format regroupe les options d’impression des dossiers d’édition de l’application. • Général Positionne les marges, l'en-tête et le pied de page du format d’édition. • Table des matières Configure l’édition de la table des matières. • Bornier Configure l’édition des entrées et des sorties. • Relayage Configure l’édition des relais et des alimentations. • Axe Configure l’édition des axes. • Pupitre Configure l’édition des éléments de pupitre. • Paragraphes Sélectionne le style de chacun des types de paragraphe. 3.4-1 Commande Général Cette commande accède aux paramètres d’ensemble de la configuration. Elle ouvre une boîte de dialogue Configuration générale qui permet de positionner les différentes options proposées. • Boîte de dialogue Configuration générale Les options de la boîte de dialogue permettent de configurer l’impression réalisée. Vous pouvez immédiatement visualiser le résultat obtenu en utilisant la commande Aperçu avant impression du menu Fichier (Voir sous-chapitre 3.2-6 de cet intercalaire) du menu fichier. Marges Chacune des cases de ce groupe contient la valeur d’une des marges en centimètres. L'en-tête sera imprimé au-dessus de la marge haute. Le pied de page sera imprimé en dessous de la marge basse. Les marges gauche et droite correspondent à l’espace libre souhaité de chaque côté des pages du dossier. Eléments Chaque case à cocher de ce groupe correspond à une partie du dossier d’impression. Si la case est cochée, la partie correspondante du dossier d’impression est éditée. Pour changer l’état d’une case, il suffit de cliquer dessus avec la souris. ___________________________________________________________________________ 3/15 G G Les options accessibles sont les suivantes : Instances Imprime les instances de modèle. Bornier(s) Imprime la configuration des borniers et les entrées/sorties. Relais/Alim. Imprime les relais et les alimentations. Axes Imprime les axes, les capteurs, les mouvements et tous les autres éléments de description associés aux axes. Pupitres Imprime les pupitres. Table des matières Imprime la table des matières. Cadre Imprime un cadre autour de chaque page du dossier. Le cadre est coupé en trois zones : la zone de l’en-tête, une zone centrale où le dossier est édité et celle de pied de page. En-tête Imprime l’en-tête en haut de chaque page. Pied de page Imprime le pied de page en bas de chaque page. Synoptique Imprime les synoptiques. En-tête et Pied de page L’en-tête et le pied de page des dossiers d’impression sont découpés en trois zones (droite, centre et gauche). Pour chacune de ces zones vous pouvez taper un texte qui sera édité avec l’ensemble du dossier. Ces zones de texte peuvent également contenir les commandes suivantes : &P Cette séquence de caractères est remplacée à l’édition par le numéro de la page. &M Cette séquence de caractères est remplacée à l’édition par le nom de l'application ou du modèle. &D Cette séquence de caractères est remplacée par la date courante. && Cette séquence de caractères est remplacée par le caractère &. ___________________________________________________________________________ 3/16 Documentation des applications et modèles SIMTSX 3 Remarque : Les commandesTable des matières, Bornier, Relayage, Axe et Pupitre agissent sur les cases à cocher de la configuration générale. Par exemple, si vous choisissez une configuration de Pupitre telle qu’aucun élément de pupitre ne soit imprimé, la case à cocher Pupitre de la boîte de dialogue Configuration générale sera automatiquement désactivée. Inversement, si vous désactivez la case à cocher dans la boîte de dialogue Configuration générale, l’item Pupitre du menu ne sera plus accessible (affichage grisé). G ___________________________________________________________________________ 3/17 3.4-2 Commande Table des matières Cette commande accède directement aux paramètres relatifs à l’impression de la table des matières. Elle ouvre la Boîte de dialogue "Configuration de la table des matières". G • Boîte de dialogue Configuration de la table des matières Cette boîte de dialogue contient les options suivantes : Niveau de détail Cette liste déroulante permet de sélectionner le niveau de détail de la table des matières. Niveau 1 : table des matières contenant la liste des titres de section. Niveau 2 : table des matières contenant la liste des titres de section et des titres de sous-section. Niveau 3 : table des matières contenant la liste des titres de section, de soussection et de section niv. 3. Position Sélectionne la position de la table des matières par rapport à l’ensemble du dossier. Début de dossier : Positionnement de la table des matières en début de dossier. Fin de dossier : Positionnement de la table des matières en fin de dossier. Numéros de page alignés à droite Lorsque cette case est sélectionnée les numéros de pages seront alignés à droite dans la table des matières. Points de suite Sélectionnez le type des caractères de suite entre les titres et les numéros de page. Cette liste n’est active que si la case à cocher Numéros de page alignés à droite est sélectionnée. Aucun : Pas de caractères de suite dans la table des matières. Ligne pleine : Trace une ligne pleine entre le titre et le numéro de page. Ligne pointillée : Trace une ligne pointillée entre le titre et le numéro de page. ___________________________________________________________________________ 3/18 Documentation des applications et modèles SIMTSX 3 3.4-3 Commande Bornier Cette commande accède directement aux paramètres relatifs à l’impression des entrées/sorties. Elle ouvre la Boîte de dialogue Configuration des Entrées/sorties. • Boîte de dialogue Configuration des entrées/sorties Cette boîte de dialogue contient les options suivantes: Carte d’entrées/sorties Lorsque cette case est cochée, la liste des cartes d’entrées/sorties est ajoutée au dossier d’impression. Entrées Sélectionnez l’un des trois boutons radio du groupe pour choisir le niveau d’édition des entrées que vous souhaitez. Non Pas d’édition des entrées. Liste Seul les noms des entrées avec leur mnémonique et leur commentaire sont édités. Complète Inclus l’équation des entées au dossier d’édition. Sorties Sélectionnez l’un des deux boutons radio du groupe pour choisir le niveau d’édition des sorties que vous souhaitez. Non Pas de sorties dans le dossier d’édition Oui Ajoute le nom de chaque sortie accompagnée de son mnémonique et de son commentaire au dossier d’édition. Remarque : Si toutes ces options sont désactivées (pas d’impression des cartes d’entrées/ sorties et pas d’impression des entrées ni des sorties), la case à cocher Bornier de la boîte de dialogue Configuration générale est automatiquement désactivée. Cette fonction n’est accessible que si la case Bornier est cochée dans la boîte de dialogue Configuration générale (voir sous-chapitre 3.4-1 de cet intercalaire). ___________________________________________________________________________ 3/19 G 3.4-4 Commande Relayage Cette commande accède directement aux paramètres relatifs à l’impression du relayage. Elle ouvre la Boîte de dialogue Configuration du relayage. G • Boîte de dialogue Configuration du relayage Cette boîte de dialogue configure l’édition du relayage Alim. Sélectionnez l’un des trois boutons radios dans le groupe pour choisir le niveau d’édition des alimentations souhaité. Relais Sélectionnez l’un des trois boutons radios dans le groupe pour choisir le niveau d’édition des relais souhaité. Options des groupes de bouton radio Non Pas d’édition de ce type d’élément. Liste Imprime uniquement la liste des noms des éléments de ce type. Complète Inclus l’édition complète des éléments au dossier d’impression. Remarque : Les commentaires de modèle sont imprimés à côté du nom des éléments (mode liste et complet). Si toutes les options de la boîte de dialogue sont désactivées (pas d’impression des alimentations ni des relais), la case à cocher Relayage de la boîte de dialogue Configuration générale est automatiquement désactivée. Cette fonction n’est accessible que si la case Relais/Alim. est cochée dans la boîte de dialogue Configuration générale (voir sous-chapitre 3.4-1 de cet intercalaire). ___________________________________________________________________________ 3/20 Documentation des applications et modèles SIMTSX 3 3.4-5 Commande Axe Cette commande accède directement aux paramètres relatifs à l’impression des axes. Elle ouvre la Boîte de dialogue Configuration des axes. • Boîte de dialogue Configuration des axes Cette boîte de dialogue configure l’impression des axes et des autres éléments de description mécanique dans SIMTSX. Plusieurs niveaux d’édition sont proposés pour chacun des types d’élément suivant : Capteur Sélectionne le niveau d’édition des capteurs. Les capteurs sont imprimés à la suite de l’axe auquel ils sont attachés. Mouvement Sélectionne le niveau d’édition des mouvements. Les mouvements sont imprimés à la suite de l’axe auquel ils sont attachés. Variable Sélectionne le niveau d’édition des variables. Bistable Sélectionne le niveau d’édition des bistables. Axe Sélectionne le niveau d’édition des axes. Options des groupes de boutons radio Non Pas d’impression des éléments de ce type. Liste Ajouter la liste des noms des éléments de ce type au dossier imprimé. Complète Ajouter la description complète des éléments de ce type au dossier imprimé. Chronogramme Lorsque cette case est cochée le chronogramme des capteurs de chaque axe est ajouté au dossier d’impression. Remarque : Les commentaires de modèle sont imprimés à côté des noms des éléments. Cette fonction n’est accessible que si la case Axes est cochée dans la boîte de dialogue Configuration générale (voir sous-chapitre 3.4-1 de cet intercalaire). ___________________________________________________________________________ 3/21 G 3.4-6 Commande Pupitre Cette commande accède directement aux paramètres relatifs à l’impression des pupitres. Elle ouvre la boîte de dialogue Configuration des pupitres. G • Boîte de dialogue Configuration des pupitres Cette boîte de dialogue permet de configurer l’impression des pupitres. Dessin des pupitres La sélection de cette case à cocher ajoute les dessins des pupitres au dossier d’impression. Variables Ce groupe de bouton radio permet de sélectionner le niveau d’édition des variables du pupitre. Eléments Ce groupe de bouton radio permet de sélectionner le niveau d’édition des éléments du pupitre. Options des groupes de boutons radio Non Ne pas imprimer les éléments de description mécanique. Liste Ajouter la liste des noms des éléments de ce type au dossier imprimé. Complète Ajouter la description complète des éléments de ce type au dossier imprimé. ___________________________________________________________________________ 3/22 Documentation des applications et modèles SIMTSX 3 3.4-7 Commande Paragraphes Cette commande accède directement aux paramètres relatifs à l’impression des paragraphes. Elle ouvre la Boîte de dialogue Configuration des paragraphes. • Boîte de dialogue Configuration des paragraphes Cette boîte de dialogue change la police de caractère et les autres options pour chaque type de paragraphe. Boîte à liste déroulante (Titre...) Les éléments de la liste déroulante sont les différents styles de paragraphe utilisés. A chaque style correspondent des lignes de texte dans le dossier d’impression. Les styles définis sont les suivants : Titre principal Ce style défini l’édition du titre du dossier d’impression (la première ligne du dossier). Identification Ce style définit l’édition des libellés des champs de la première page. Les champs édités sont ceux que vous avez remplis dans la fenêtre principale de l’application. Les champs vides sont ignorés. Section Sous-section Section niv 3 Ces styles définissent l’édition des différents titres contenus dans le dossier. Les sections sont les différentes parties du dossier d’édition (borniers, alimentations, relais, axes, variables, bistables, variables de pupitre, pupitres et synoptiques). Les sous-sections et les sections de niveau 3 correspondent à des sous-parties de ces sections. Les correspondances entre texte et styles sont dépendantes des options d’édition que vous avez choisies. Elément Utilisez ce style pour configurer l’édition des noms des éléments de description (une variable, un relais...). Chronogramme Ce style définit l’édition des chronogrammes des capteurs des axes. Texte normal Ce style définit l’édition du texte normal du dossier d’édition. En-tête Ce style défini l’édition du texte faisant partie de l’en-tête de chaque page du dossier. Le seul paramètre utile de ce style est la fonte de caractères choisie. Pied de page Ce style définit l’édition du texte faisant partie du pied de page de chaque page du dossier. Le seul paramètre utile de ce style est la fonte de caractères choisie. Pupitre & Synoptique Ce style définit l’espace souhaité autour des dessins des pupitres et des synoptiques. Le choix de la police de caractères est sans effet pour ce style. ___________________________________________________________________________ 3/23 G Saut de page avant Insère un saut de page avant chaque paragraphe utilisant ce style si cette case est cochée. Cette option est sans effet pour les styles En-tête et Pied de page. Espacement Retrait Tapez la taille du retrait souhaitée par rapport à la marge gauche pour tous les paragraphes utilisant ce style. La taille doit être donnée en centimètres. Avant Tapez la taille de l’espace souhaitée au-dessus de la première ligne de texte de chaque paragraphe utilisant ce style. La taille doit être donnée en centimètres. Après Tapez la taille de l’espace souhaitée en dessous de la dernière ligne de texte de chaque paragraphe utilisant ce style. La taille doit être donnée en centimètres. Fonte Ouvre la boîte de dialogue Windows de choix d’une police de caractères. G ___________________________________________________________________________ 3/24 Documentation des applications et modèles SIMTSX 3.5 3 Menu Affichage Le menu affichage regroupe les commandes suivantes : • Barre d’outils Affiche ou masque la barre d’outils • Barre d’information Affiche ou masque la barre d’information. 3.5-1 Commande Barre d’outils Cette commande affiche ou masque la barre d’outils qui contient des boutons d’accès aux commandes les plus usuelles. Une marque apparaît à côté de l’élément du menu lorsque la barre d’outil est affichée. La barre d’outil est affichée sur toute la largeur de l’application, juste en dessous de la barre de menus. La barre d’outil offre un accès rapide aux principales commandes. Ouvre un nouveau format d’édition. Ouvre un format d’édition existant. Enregistre le format d’édition avec son nom courant. Si le format d’édition n’est pas encore nommé, la boîte de dialogue Enregistrer sous est ouverte. Affiche un aperçu avant impression du dossier avec le format d’édition actif. Imprime le dossier avec le format d’édition actif. Ouvre la boîte de dialogue A propos de SIMTSX. Change le pointeur de la souris pour le pointeur d’aide contextuelle. ___________________________________________________________________________ 3/25 G 3.5-2 Commande Barre d’information Cette commande affiche et masque la barre d’information. Une marque apparaît à côté de la commande du menu si la barre d’information est affichée. La partie gauche de la barre d’information explique, lorsque vous vous déplacez dans les menus avec les touches flèche, les actions associées aux éléments de menu. De la même manière, cette zone affiche des messages relatifs aux boutons de la barre d’outils lorsque vous appuyez sur ces boutons sans les relâcher. Si après avoir lu le message associé à un bouton de la barre d’outil, vous ne souhaitez pas exécuter la commande, libérez le bouton de la souris en dehors de la zone du bouton. La partie droite informe l’utilisateur sur l’état des touches clavier suivantes : CAP La touche "capitales" est verrouillée (Caps Lock). NUM Le pavé numérique est activé (Num Lock). SCRL Le défilement est activé (Scroll Lock). G ___________________________________________________________________________ 3/26 Documentation des applications et modèles SIMTSX 3.6 3 Le menu Aide Le menu aide regroupe les commandes d’accès à l’aide en ligne de l’application : • Contenu de l’aide Ouvre l’aide en ligne à la page contenant l’index. • Aide sur l’aide Ouvre l’aide générale de Windows sur l’utilisation de l’aide. • A propos de SIMTSX Ouvre la boîte de dialogue à propos de SIMTSX. 3.6-1 Commande Contenu de l’aide Cette commande ouvre le premier écran d’aide. A partir de cet écran, il vous sera possible d’accéder à l’ensemble de l’aide en ligne de l’application. Ou que vous vous trouviez dans l’aide en ligne, vous pouvez cliquer sur le bouton Index pour revenir à ce premier écran. 3.6-2 Commande Aide sur l’aide Cette commande ouvre l’aide en ligne générale de Windows. 3.6-3 Commande A propos de SIMTSX Cette commande ouvre la boîte de dialogue A propos de SIMTSX contenant le numéro de version ainsi que le copyright ® de l’application SIMTSX. ___________________________________________________________________________ 3/27 G 3.7 Conseils et problèmes d’impression 1. Si l’impression est lente. La qualité de l’impression dépend de nombreux paramètres. Suivant les polices de caractères utilisés et le type d’imprimante, le temps nécessaire peut varier dans une fourchette de un à dix ; de même, pour la taille du fichier envoyé au gestionnaire d’impression. Par exemple, les imprimantes PostScript envoient des primitives graphiques pour dessiner un trait là ou d’autres imprimantes sont obligées d’envoyer des bitmaps. Il n’est pas possible de définir de règles simples. L’utilisateur doit configurer des formats d’édition en fonction de son matériel et de ses attentes. 3. Si le dernier caractère (le caractère le plus à droite) des cases droites de l’entête et/ou du pied de page n’est pas imprimé. Ceci est dû à des problèmes Windows de calcul de la taille d’une chaîne de caractères en fonction de la police utilisée. Pour remédier à ce problème, il suffit de rajouter un caractère d’espace après le dernier caractère de la chaîne considérée. G ___________________________________________________________________________ 3/28 Exemples Sommaire Intercalaire H Chapitre Page 1 Bibliothèque de modèles SIMTSX 1/1 1.1 Modèles de vérins 1.1-1 Modèle de vérin simple effet : m-vrin1 1.1-2 Modèle de vérin double effet: m-vrin2 1.1-3 Modèle de vérin bistable double effets : m-vrin2b 1.1-4 Exemple : Interverouillage mécanique 1.2 Modèles de convoyage de pièces 1.2-1 Modèle de convoyage 1 pièce 1 sens : m-tp1p 1.2-2 Modèle de convoyage 2 pièces 1 sens : m-tp2p 1.2-3 Modèle de convoyage 3 pièces 1 sens : m-tp3p 1.2-4 Modèle de convoyage 10 pièces 1 sens : m-tp10p 1.2-5 Principe de description du convoyage 1.2-6 Exemple : Marche avant simple 1.2-7 Exemple : Marche avance et recul 1.2-8 Exemple : Prise en compte de la longueur de pièce 1/6 1/7 1/8 1/9 1/10 1/11 1/13 1/17 1/19 1.3 Modèle de niveau cuve 1.3-1 Modèle d’une cuve 2 vannes : m-cuve2v 1.3-2 Modèle d’un niveau : m-niveau 1.3-3 Exemple : Cuve simple 1/21 1/21 1/22 1/23 1.4 Modèle de vannes proportionnelles 1.4-1 Modèle de vanne proportionnelle simple : m-vanne1 1.4-2 Modèle de vanne proportionnelle à ouverture variable : m-vanne2 1.4-3 Exemple : cuve simple avec 1 vanne proportionnelle aval 1/24 1/24 1/25 1/26 Fiche vierge de description d’un modèle 1/27 1.5 2 Machine à trois postes d'usinage 1/2 1/2 1/3 1/4 1/5 2/1 ___________________________________________________________________________ H/1 H Exemples Sommaire Intercalaire H Chapitre Page 2.1 Description SIMTSX 2.1.1 Présentation 2.1.2 Modélisation 2/1 2/1 2/2 2.2 Dossier électrique et mécanique 2/7 H ___________________________________________________________________________ H/2 Chapitre 1 Bibliothèque de modèles SIMTSX 1 1 Bibliothèque de modèles SIMTSX SIMTSX dispose d’une bibliothèque de modèles génériques représentatifs des éléments de description des installations automatisées couramment rencontrées : • plusieurs modèles de vérins : simple effet, double effet, bistable (évolution de la position de la came), • plusieurs modèles de convoyeurs, tapis, tables à rouleaux (évolution de la position des pièces), • modèle de cuve (évolution du niveau en fonction du débit régulé par 1 vanne amont et 1 vanne aval), • modèle de niveau générique (évolution du niveau en fonction de la somme des débits rentrants, et débits sortants), • plusieurs modèles de vannes proportionnelles (évolution de l’ouverture de la vanne). Ces modèles peuvent être utilisés tels quels ou être copiés et adaptés à un contexte particulier avant leur incorporation dans une application. La bibliothèque peut aussi être enrichie de nouveaux modèles standards spécifiques à un métier ou issus d’applications développées avec SIMTSX (voir intercalaire G, Outil de transfert d'une application en modèle). A la fin de ce chapitre, nous proposons une fiche type vierge pour la description des modèles. ___________________________________________________________________________ 1/1 H 1.1 Modèles de vérins 1.1-1 Modèle de vérin simple effet : m-vrin1 Modèle : m-vrin1 Config. E/S pas d'E/S Paramètres : RELAIS pas de relais $1 = numéro du vérin AXES ax-v$1 : vérin $1 fcd-v$1 PUPITRES SYNOPTIQUES pas de pupitre fond d'écran fcf-v$1 vérin $1 0 linéaire rotatif début fin L=100 Capteur fcd-v$1 Position : début Logique : impulsion Activation : 1 fcf-v$1 Position : fin Logique : impulsion Activation : 1 sortir-v$1 Mouvement mvt-v$1+ = pression*sortir-v$1 sens : positif, vitesse : 10 mvt-v$1- = /sortir-v$1 + /pression sens : négatif, vitesse : 10 H La description mécanique et pneumatique d’un vérin simple effet est réalisée par un axe linéaire simple. La sortie du vérin est autorisée si l’électrovanne de sortie sortir-v$1 est active. Le retour de l’axe est autorisé soit lorsque l’électrovanne de sortie sortir-v$1 est inactive ou lorsque la pression est insuffisante. Instanciation : Paramètre à renseigner lors de l'instanciation du modèle dans une application SIMTSX : $1 = numéro axe et vérin Une fois instancié, • longueur modifiable dans menu axe, champ "longueur", • vitesse d’évolution modifiable dans menus axe>mouvement, champ "vitesse", • des capteurs début et fin de course peuvent être reliés à des entrées automate, • la variable "sortir" correspond au relais de commande de sortie du vérin. ___________________________________________________________________________ 1/2 Bibliothèque de modèles SIMTSX 1 1.1-2 Modèle de vérin double effet: m-vrin2 Modèle : m-vrin2 Config. E/S Paramètres : RELAIS pas d'E/S $1 = numéro du vérin AXES PUPITRES SYNOPTIQUES ax-v$1 : vérin $1 pas de pupitre fond d'écran fcd-v$1 fcf-v$1 vérin $1 0 linéaire rotatif début L=300 fin Capteur fcd$1 Position : début Logique : impulsion Activation : 1 fcf$1 Position : fin Logique : impulsion Activation : 1 entrer-v$1 sortir-v$1 Mouvement mvt-v$1+ = pression*sortir-v$1 sens : positif, vitesse : 10 mvt-v$1- = pression*entrer-v$1 sens : négatif, vitesse : 10 La description mécanique et pneumatique d’un vérin double effet est réalisée par un axe linéaire simple. La sortie ou l’entrée du vérin est autorisée s’il y a de la pression et une des électrovannes de sortie sortir-v$1 ou d’entrée entrer-v$1 est active. Si les 2 électrovannes sont actives en même temps, avec la pression, aucune évolution ne se produira et un message signalera un problème de modélisation des mouvements. Instanciation : Paramètre à renseigner lors de l'instanciation du modèle dans une application SIMTSX : $1 = numéro axe et vérin Une fois instancié, • longueur modifiable dans menu axe, champ "longueur", • vitesse d’évolution modifiable dans menus axe > mouvement, champ "vitesse", • des capteurs début et fin de course peuvent être reliés à des entrées automate, • les variables "sortir" et "entrer" correspondent aux relais de commande du vérin. ___________________________________________________________________________ 1/3 H 1.1-3 Modèle de vérin bistable double effets : m-vrin2b Modèle : m-vrin2b Config. E/S pas d'E/S RELAIS pas de relais Paramètres : $1 = numéro du vérin AXES ax-v$1 : vérin $1 fcd-v$1 PUPITRES SYNOPTIQUES pas de pupitre fond d'écran fcf-v$1 vérin $1 0 linéaire rotatif début fin L=300 Capteur fcd-v$1 Position : début Logique : impulsion Activation : 1 fcf-v$1 Position : fin Logique : impulsion Activation : 1 Bistable Bis-v$1 Enclenchement : sortir-v$1 Déclenchement : entrer-v$1 Mouvement mvt-v$1+ = pression*Bis-v$1 sens : positif, vitesse : 10 mvt-v$1- = pression*/Bis-v$1 sens : négatif, vitesse : 10 H sortir-v$1 entrer-v$1 bis-v$1 La description mécanique et pneumatique d’un vérin bistable est réalisée par un axe linéaire simple avec un bistable Bis-v$1. La sortie ou l’entrée du vérin est autorisée s’il y a de la pression et une impulsion sur une des électrovannes de sortie sortir-v$1 ou d’entrée entrer-v$1. Si les 2 électrovannes sont actives en même temps, avec la pression, aucune évolution ne se produira et un message signalera un problème de modélisation du bistable. Instanciation : Paramètre à renseigner lors de l'instanciation du modèle dans une application SIMTSX : $1 = numéro axe et vérin Une fois instancié, • longueur modifiable dans menu axe, champ "longueur", • vitesse d’évolution modifiable dans menus axe > mouvement, champ "vitesse", • des capteurs début et fin de course peuvent être reliés à des entrées automate, • les variables "sortir" et "entrer" correspondent aux relais de commande du vérin. ___________________________________________________________________________ 1/4 Bibliothèque de modèles SIMTSX 1 1.1-4 Exemple : Interverouillage mécanique Description mécanique et pneumatique de l’installation réelle VERIN UNITE 50 Ø Piston: 28 Ø Tige: 40 Course totale: 40 Course utile: 50 Pression: cm2 mm/s l/mn 13,5 40 3,1 sortie 40 4,2 rentrée 18,5 FCG1 FCD1 FCG2 FCD2 yv31 yv32 p1 r1 VERIN UNITE Ø Piston: Ø Tige: Course totale: Course utile: Pression: 50 28 40 40 50 cm2 mm/s 13,5 40 18,5 40 l/mn 3,1 4,2 sortie rentrée H yv41 yv42 Unité 10 Butée La description de cet exemple est faite au moyen de deux axes simples où l’un sert de verrou mécanique pour l’autre. Cette interaction est prise en compte en ajoutant deux capteurs fictifs (décrits comme des capteurs) représentant la course libre des vérins (axe 1 et axe 2) et en les intégrant dans les équations des mouvements mvt-v1+ et mvt-v2+. Ces capteurs sont internes à la description, ils n’existent donc pas vis-àvis de l’automate (cet exemple ne prend pas en compte de problèmes lors du recul des vérins). Pour cet exemple, on utilisera 2 fois le modèle «m-vrin2b» : instances 1 et 2. Il faudra ensuite éditer les axes pour y ajouter 2 capteurs fictifs FC1 et FC2, et modifier les équations de mouvements pour prendre en compte la collision. ___________________________________________________________________________ 1/5 Description SIMTSX de l’application Application : UNITE-BUTEE Config. E/S RELAIS AXES PUPITRES pas d'E/S pas de relais ax-v1 : Unité fcdv1 fond d'écran CF1 (fictif) fcfv1 10 0 SYNOPTIQUES Yv11 linéaire rotatif Yv21 Bistable : Bis1 E: Yv31 , D: Yv32 Mouvement Mvt-v1+ = p1*bis1* (/cf1+cf1*/cf2) positif, vitesse = 4 Mvt-v1- = p1*/bis1 négatif, vitesse = 1 Unité Yv10 Butée Unité début L=40 fin Butée Yv20 yv21 bis2 yv20 yv11 bis1 yv10 Ajout pour la simulation ax-v2 : Butée fcdv2 10 H 0 CF2 (fictif) linéaire rotatif fcfv2 début L=40 fin Bistable : Bis2 E: Yv41 , D: Yv42 Mouvement Mvt-v2+ = p1*bis2* (/cf2+cf2*/cf1) positif, vitesse = 4 Mvt-v2- = p1*/bis2 négatif, vitesse = 1 Remarques Les commandes yv31, yv32, yv41 et yv42 activant les mouvements mvt-v1+, mvt-v1, mvt-v2+ et mvt-v2- sont des relais SIMTSX. pneu est un terme d’alimentation générale SIMTSX. Pour la simulation, il est possible d’ajouter 2 commutateurs pour piloter manuellement les mouvements. Il est aussi possible de décrire un piège de description pour signaler l’instant de collision. 1.2 Modèles de convoyage de pièces Ces modèles génériques de convoyage sont prévus pour être utilisés ensemble. Le paramètrage prend en compte l’arrivée des pièces en amont et l’évacuation des pièces en aval du tapis. Pour instancier ces modèles l’un derrière l’autre, il suffit de renseigner les paramètres amont-aval avec les numéros des tapis correspondants. ___________________________________________________________________________ 1/6 Bibliothèque de modèles SIMTSX 1 1.2-1 Modèle de convoyage 1 pièce 1 sens : m-tp1p Modèle : m-tp1p Config. E/S Paramètres : $0 = dépose pièce ou tapis précédent $1 = numéro tapis et moteur $9 = évacuer pièce ou tapis suivant RELAIS pas d'E/S AXES PUPITRES dx$1 0 fx$1 linéaire rotatif SYNOPTIQUES pas de pupitre ax-t$1-0 : Tapis $1 début fin L=1 Tapis $1 pp$1 mav$1 Capteur dx$1 = début, impulsion Activation : 1 fx$1 = fin, impulsion Relais Mouvement mav$1 = av-t$1 = mav$1 * 380v * q$1 * km$1 (pp$1 * /fx$1+ fx$1 * /pp$1) sens : positif, vitesse : 1 Variable pp$1 : présence pièce tronçon 1 = (dx$1 *fx$0 + pp$1) * / (fx$1 * dx$9) H Description de l’évolution d’une seule pièce sur un tapis ou une table à rouleaux. La pièce occupe tout le tapis. Instanciation : Paramètres à renseigner lors de l'instanciation du modèle dans une application SIMTSX : $0 = dépose pièce ou tapis précédent $1 = numéro du tapis et moteur $9 = évacuer pièce ou tapis suivant Une fois instancié, • longueur modifiable dans menu axe, champ "longueur", • vitesse modifiable dans menus axe>mouvement, champ "vitesse", • la variable "mav" correspond au relais de commande d’avance du moteur. ___________________________________________________________________________ 1/7 1.2-2 Modèle de convoyage 2 pièces 1 sens : m-tp2p Modèle : m-tp2p Paramètres : $0 = dépose pièce ou tapis précédent $1 = numéro tapis et moteur $9 = évacuer pièce ou tapis suivant Config. E/S pas d'E/S RELAIS AXES Relais ax-t$1-0 : (0) mav$1 = 380v * q$1 * km$1 dx$1 linéaire rotatif Mouvement 0 PUPITRES SYNOPTIQUES pas de pupitre fx$1-0 début fin L=1 Tapis$1 pp$1-0 pp$1-1 mav$1 av-t$1-0 = mav$1 * (pp$1-0 * /fx$1-0+ fx$1-0 * /pp$1-0) sens : positif, vitesse : 1 Variable pp$1-0 :présence pièce tronçon 0 = (dx$1 *fx$0 + pp$1-0) * / (fx$1-0 * dx$1-1) ax-t$1-1 : (1) dx$1-1 0 H fx$1 linéaire rotatif début L=1 fin Mouvement av-t$1-1 = mav$1 * (pp$1-1 * /fx$1+ fx$1 * /pp$1-1) sens : positif, vitesse : 1 Variable pp$1-1 :présence pièce tronçon 1 = (dx$1-1 *fx$1-0 + pp$1-1) * / (fx$1- * dx$9) Description de l’évolution de 2 pièces sur un tapis ou une table à rouleaux. Le tapis a une capacité de 2 pièces maximum, occupant tout le tapis. Instanciation : Paramètres à renseigner lors de l'instanciation du modèle dans une application SIMTSX : $0 = dépose pièce ou tapis précédent $1 = numéro du tapis et moteur $9 = évacuer pièce ou tapis suivant Une fois instancié, • longueur modifiable dans menu axe, champ "longueur", • vitesse modifiable dans menus axe>mouvement, champ "vitesse", • la variable "mav" correspond au relais de commande d’avance du moteur. ___________________________________________________________________________ 1/8 Bibliothèque de modèles SIMTSX 1 1.2-3 Modèle de convoyage 3 pièces 1 sens : m-tp3p Modèle : m-tp3p Paramètres : $0 = dépose pièce ou tapis précédent $1 = numéro tapis et moteur $9 = évacuer pièce ou tapis suivant Config. E/S pas d'E/S RELAIS AXES PUPITRES Relais ax-t$1-0 : (0) mav$1 = 380v * q$1 * km$1 dx$1 SYNOPTIQUES pas de pupitre fx$1-0 pp$1-0 pp$1-1 pp$1-2 0 linéaire rotatif début fin L=1 mav$1 ax-t$1-1 : (1) fx$1-1 dx$1-1 linéaire rotatif ax-t$1-2 : (2) 0 début fin L=1 fx$1 dx$1-2 Tapis$1 pp$1-0 pp$1-1 pp$1-2 mav$1 0 linéaire rotatif début fin L=1 Mouvements av-t$1-0 = mav$1 * (pp$1-0 * /fx$1-0+ fx$1-0 * /pp$1-0) av-t$1-1 = mav$1 * (pp$1-1 * /fx$1-1+ fx$1-1 * /pp$1-1) av-t$1-2 = mav$1 * (pp$1-2 * /fx$1+ fx$1 * /pp$1-2) sens : positif, vitesse : 1 Variables pp$1-0 :présence pièce tronçon 0 = (dx$1 *fx$0 + pp$1-0) * / (fx$1-0 * dx$1-1) pp$1-1 :présence pièce tronçon 1 = (dx$1-1 *fx$1-0 + pp$1-1) * / (fx$1-1 * dx$1-2) pp$1-2 :présence pièce tronçon 2 = (dx$1-2 *fx$1-1 + pp$1-2) * / (fx$1 * dx$9) Description de l’évolution de 3 pièces sur un tapis ou une table à rouleaux. Le tapis a une capacité de 3 pièces maximum, occupant tout le tapis. Instanciation : Paramètres à renseigner lors de l'instanciation du modèle dans une application SIMTSX : $0 = dépose pièce ou tapis précédent $1 = numéro du tapis et moteur $9 = évacuer pièce ou tapis suivant Une fois instancié, • longueur modifiable dans menu axe, champ "longueur", • vitesse modifiable dans menus axe>mouvement, champ "vitesse", • la variable "mav" correspond au relais de commande d’avance du moteur. ___________________________________________________________________________ 1/9 H 1.2-4 Modèle de convoyage 10 pièces 1 sens : m-tp10p Modèle : m-tp1p Paramètres : $0 = dépose pièce ou tapis précédent $1 = numéro tapis et moteur $9 = évacuer pièce ou tapis suivant Config. E/S pas d'E/S RELAIS AXES PUPITRES Relais ax-t$1-0 : (0) mav$1 = 380v * q$1 * km$1 dx$1 SYNOPTIQUES pas de pupitre fx$1-0 pp$1-0 pp$1-i pp$1-9 0 linéaire rotatif début fin L=1 mav$1 ax-t$1-i : (i) avec i = 1 à 8 fx$1-i dx$1-i 0 linéaire rotatif ax-t$1-9 : (9) fx$1 dx$1-9 0 début fin L=1 Tapis$1 pp$1-0 pp$1-i pp$1-9 mav$1 linéaire rotatif début fin L=1 Mouvements H av-t$1-0 = mav$1 * (pp$1-0 * /fx$1-0+ fx$1-0 * /pp$1-0) ... av-t$1-i = mav$1 * (pp$1-i * /fx$1-i+ fx$1-i * /pp$1-i) avec i = 1 à 8 ... av-t$1-9 = mav$1 * (pp$1-9 * /fx$1+ fx$1 * /pp$1-9) sens : positif, vitesse : 1 Variables pp$1-0 :présence pièce tronçon 0 = (dx$1 *fx$0 + pp$1-0) * / (fx$1-0 * dx$1-1) pp$1-i :présence pièce tronçon i = (dx$1-i *fx$1- [i-1]+ pp$1-i) * / (fx$1-i * dx$1-[i-1]) avec i = 1 à 8 pp$1-9 :présence pièce tronçon 9 = (dx$1-9 *fx$1-8+ pp$1-9) * / (fx$1 * dx$9) Description de l’évolution de 10 pièces sur un tapis ou une table à rouleaux. Le tapis a une capacité de 10 pièces maximum, occupant tout le tapis. Instanciation : Paramètres à renseigner lors de l'instanciation du modèle dans une application SIMTSX : $0 = dépose pièce ou tapis précédent $1 = numéro du tapis et moteur $9 = évacuer pièce ou tapis suivant Une fois instancié, • longueur modifiable dans menu axe, champ "longueur", • vitesse modifiable dans menus axe>mouvement, champ "vitesse", • la variable "mav" correspond au relais de commande d’avance du moteur, • 2 modèles de synoptiques sont proposés : visualisation de l’évolution des pièces uniquement ou visualisation des axes modélisés. ___________________________________________________________________________ 1/10 Bibliothèque de modèles SIMTSX 1 1.2-5 Principe de description du convoyage Dans les procédés de manutention, l’automate reçoit de la machine des informations sur la présence et le déplacement des pièces. Une application est représentée, dans SIMTSX, par des axes et variables booléennes. Les pièces ne sont pas explicitement représentées. La description SIMTSX simule la présence des pièces en calculant leurs actions sur les entrées automate en fonction des sorties automate et du temps écoulé. Le paragraphe suivant est consacré à la présentation du principe de modélisation d’un système de convoyage. Des exemples de transfert dans un, puis dans deux sens de marche sont ensuite détaillés. Enfin la détection des pièces convoyées, en tenant compte de leur longueur, est expliquée. Les modèles proposés sont basés sur ce principe. Principe de modélisation La modélisation d’un système de convoyage consiste à découper celui-ci en zones où une seule pièce peut se trouver : c’est la notion de "canton". La présence d’une pièce dans une zone est caractérisée par une variable booléenne "PPi". Le déplacement prend un certain temps, un axe associé à chaque "canton" permet de représenter ce temps : la position dans l’axe est le "front avant" de la pièce en déplacement. Le mouvement de cet axe représente le déplacement de la pièce dans la zone décrite par l’axe. L’équation de ce mouvement fait donc intervenir la variable "PPi" et un terme - par exemple "KMVTi" représentant la rotation du moteur entraînant le convoyeur. Le déplacement de la pièce dans la zone décrite par l’axe est considéré comme un processus possédant trois états. L’état initial correspond à la disponibilité du convoyeur pour une pièce arrivant en amont. Le deuxième état est le déplacement - et également l’arrêt en une position donnée - de la pièce sur le canton. Le dernier état caractérise la fin du transfert dans cette zone, la pièce est mise à disposition pour le canton suivant. Ce processus est cyclique, l’axe est donc rotatif. Un capteur fictif "DXi" de largeur nulle, placé en début d’axe représente la disponibilité du canton. Symétriquement un capteur "FXi", également de largeur d’activation nulle, est placé en fin de l’axe rotatif pour caractériser la mise à disposition de la pièce pour la suite du transfert. ___________________________________________________________________________ 1/11 H L’évolution du processus de transfert est décrite au moyen de l’équation du mouvement. Le déplacement de la pièce est effectif quand le moteur est en marche et que : • soit une pièce est présente et la fin du canton n’est pas atteinte, • soit la fin du canton est atteinte et la pièce est prise en charge par le canton suivant, ou évacuée. On obtient l’équation suivante pour le mouvement : MVTi = KMVTi * (PPi * /FXi + FXi * /PPi) Une fois arrivé en "FXi" et la pièce emportée - "PPi" est remis à 0 - l’axe rotatif retourne ainsi en position initiale - sur " DXi " - et est de ce fait disponible pour une nouvelle pièce. Une pièce entre dans le canton si celui-ci est dans son état initial et que le canton précédent met à sa disposition une pièce. Compte-tenu de la représentation des états du canton au moyen des capteurs "DXi" et "FXi", le terme d’enclenchement de la variable de présence pièce "PPi" est donc : DXi * PPi-1 * FXi-1 * KMVTi-1 la présence de "KMVTi-1" a pour effet de maintenir la pièce sur le canton précédent si le moteur de celui-ci n’est pas en marche - ce qui a priori ne devrait pas se produire. H Une fois le transfert terminé sur un canton - l’axe correspondant est alors en "FXi" - la pièce peut passer sur le canton suivant si celui-ci est disponible - l’axe le décrivant y est en "DXi+1". Il faut cependant vérifier qu’une pièce ne s’y trouve pas déjà. En effet, si le moteur du canton suivant n’est pas piloté, l’axe a pu rester en "DXi+1" bien qu’une pièce soit présente sur ce canton. Dans ces conditions, le terme de déclenchement de la variable "PPi" a pour expression : RPPi = FXi * DXi+1 * /PPi+1 * KMVTi L’équation de la variable de présence pièce "PPi" a donc finalement pour expression : PPi = (DXi * PPi-1 * FXi-1 * KMVTi-1 + PPi) * /RPPi ___________________________________________________________________________ 1/12 Bibliothèque de modèles SIMTSX 1 1.2-6 Exemple : Marche avant simple L’exemple suivant présente le passage de pièces sur trois tapis en marche avant. La largeur des pièces est considérée négligeable, il n’y a qu’une seule pièce par tapis et les moteurs des tapis sont en fonctionnement permanent. Les tapis sont représentés par des axes rotatifs. Les présences de pièce sont représentées par des variables booléennes. Les mouvements ont lieu lorsque les deux conditions suivantes sont réunies : • il y a une pièce sur l’axe, • le moteur du tapis fonctionne en marche avant. Pour qu’une pièce passe d’un tapis à l’autre, il faut que l’installation réponde également aux deux critères suivants : • l’axe en aval doit être à l’origine (attente de pièces), • il n’y a aucune pièce sur l’axe aval (empêcher les collisions). SQ1 SQ2 SQ3 H M1 M2 SQ1 dx1 M3 SQ2 1 fx1 dx12 SQ3 2 fx2 dx3 3 fx3 ___________________________________________________________________________ 1/13 Description du premier tapis Le premier tapis se trouvant à l’entrée du système de convoyage, une variable "BPP1" permet d’injecter une pièce sur celui-ci. La pièce apparaît sur l’axe 1 lorsqu’il y a appui sur un bouton poussoir et que l’axe se trouve en début de course. Cet état est maintenu jusqu’à ce que RPP1 (variable booléenne de RAZ présence pièce) soit vraie. RPP1 est vrai lorsque l’axe 1 est en fin de course, l’axe 2 en début de course, qu’il n’y a pas de pièce sur le tapis suivant et que le moteur du tapis 1 est actif. Le mouvement MVT1 est actif tant que le moteur est actif, que PP1 est vrai ou pour passer automatiquement de la position fin de course à la position début de course. Equations du premier tapis • PP1 = (+BPP1 * DX1 + PP1) * /RPP1 • RPP1 = FX1 * DX2 * /PP2 * KMVT1 • MVT1 = (PP1 * /FX1 + FX1 * /PP1) * KMVT1 avec : H • PP1 : présence pièce sur le tapis 1, • PP2 : présence pièce sur le tapis 2, • DX1 : capteur de début de course de l’axe 1, • DX2 : capteur de début de course de l’axe 2, • FX1 : capteur de fin de course de l’axe 1, • +BPP1 : front montant du bouton poussoir fictif servant à positionner des pièces sur le premier tapis, • RPP1 : raz de la présence pièce, • KMVT1 : commande du moteur du tapis 1. ___________________________________________________________________________ 1/14 Bibliothèque de modèles SIMTSX 1 Description du second tapis La pièce est considérée présente sur l’axe 2 lorsque l’axe 2 se trouve en début de course, que l’axe 1 se trouve en fin de course, qu’il y a une pièce sur l’axe 1 et que le moteur de l’axe 1 est actif. La présence pièce sur l’axe 2 est maintenue comme la présence pièce de l’axe 1. Les autres équations sont similaires à celles de l’axe 1. Equations du second tapis • PP2 = (DX2 * FX1 * PP1 * KMVT1 + PP2) * /RPP2 • RPP2 = FX2 * DX3 * /PP3 * KMVT2 • MVT2 = (PP2 * /FX2 + FX2 * /PP2) * KMVT2 avec : • PP1 : présence pièce sur le tapis 1, • PP2 : présence pièce sur le tapis 2, • DX2 : capteur de début de course de l’axe 2, • DX3 : capteur de début de course de l’axe 3, • FX1 : capteur de fin de course de l’axe 1, • FX2 : capteur de fin de course de l’axe 2, • RPP2 : raz de la présence pièce, • KMVT1 : commande du moteur du tapis 1, • KMVT2 : commande du moteur du tapis 2. ___________________________________________________________________________ 1/15 H Description du troisième tapis On considère que les pièces disparaissent automatiquement en fin de tapis 3 (évacuation vers une partie non simulée de l’installation par exemple). Pour le reste les équations sont similaires à celles décrites précédemment. Equations du troisième tapis • PP3 = (DX3 * FX2 * PP2 * KMVT2 + PP3) * /RPP3 • RPP3 = FX3 * KMVT3 • MVT3 = (PP3 * /FX3 + FX3 * /PP3) * KMVT3 avec : • PP2 : présence pièce sur le tapis 2, • PP3 : présence pièce sur le tapis 3, • DX3 : capteur de début de course de l’axe 3, • FX2 : capteur de fin de course de l’axe 2, • FX3 : capteur de fin de course de l’axe 3, H • RPP3 : Raz de la présence pièce, • KMVT2 : commande du moteur du tapis 2, • KMVT3 : commande du moteur du tapis 3. ___________________________________________________________________________ 1/16 Bibliothèque de modèles SIMTSX 1 1.2-7 Exemple : Marche avance et recul Cet exemple reprend la description ci-dessus en ajoutant le fonctionnement en marche arrière des tapis. Les équations des mouvements d’avance restent identiques. Description SIMTSX Dans les équations de présence pièce, par rapport au cas précédent, un terme supplémentaire est ajouté. Il faut en effet vérifier, lors du passage d’une pièce d’un tapis à l’autre, que le tapis censé recevoir la pièce tourne bien dans le même sens que le tapis qui la lui apporte. Dans le cas contraire, la pièce ne doit pas changer de canton. Les éléments de description SIMTSX sont les suivants : • PP1 : variable booléenne de présence pièce sur le tapis 1, • PP2 : variable booléenne de présence pièce sur le tapis 2, • PP3 : variable booléenne de présence pièce sur le tapis 3, • DX1 : capteur de début de course de l’axe 1, • DX2 : capteur de début de course de l’axe 2, • DX3 : capteur de début de course de l’axe 3, • FX1 : capteur de fin de course de l’axe 1, • FX2 : capteur de fin de course de l’axe 2, • FX3 : capteur de fin de course de l’axe 3, • +BPP1 : front montant du bouton poussoir fictif servant à positionner des pièces sur le premier tapis, • RPP1 : variable booléenne raz de la présence pièce sur le tapis 1, • RPP2 : variable booléenne raz de la présence pièce sur le tapis 2, • RPP3 : variable booléenne raz de la présence pièce sur le tapis 3, • MTAV1 : commande du moteur d’avance du tapis 1, • MTAV2 : commande du moteur d’avance du tapis 2, • MTAV3 : commande du moteur d’avance du tapis 3, • MTAR1 : commande du moteur de recul du tapis 1, • MTAR2 : commande du moteur de recul du tapis 2, • MTAR3 : commande du moteur de recul du tapis 3, • MVAV1 : mouvement d’avance de l’axe 1, • MVAV2 : mouvement d’avance de l’axe 2, • MVAV3 : mouvement d’avance de l’axe 3, • MVAR1 : mouvement de recul de l’axe 1, • MVAR2 : mouvement de recul de l’axe 2, • MVAR3 : mouvement de recul de l’axe 3. ___________________________________________________________________________ 1/17 H Equations du premier tapis • PP1 = (+BPP1 * DX1 + FX1 * DX2 * PP2 * MTAR2 * /MTAV1 + PP1) * /RPP1 • RPP1 = FX1 * DX2 * /PP2 * MTAV1 * /MTAR2 + DX1 * MTAR1 • MVAV1 = (PP1 * /FX1 + FX1 * /PP1) * MTAV1 • MVAR1 = (PP1 * /DX1 + DX1 * /PP1) * MTAR1 Equations du second tapis • PP2 = (DX2 * FX1 * PP1 * MTAV1 * /MTAR2 + FX2 * DX3 * PP3 * MTAR3 * /MTAV2 + PP2) * /RPP2 • RPP2 = FX2 * DX3 * /PP3 * MTAV2 * /MTAR3 + DX2 * FX1 * /PP1 * /MTAV1 * MTAR2 • MVAV2 = (PP2 * /FX2 + FX2 * /PP2) * MTAV2 • MVAR2 = (PP2 * /DX2 + DX2 * /PP2) * MTAR2 Equations du troisième tapis H • PP3 = (DX3 * FX2 * PP2 * MTAV2 * /MTAR3 + PP3) * /RPP3 • RPP3 = FX3 * MTAV3 + DX3 * FX2 * /PP2 * /MTAV2 * MTAR3 • MVAV3 = (PP3 * /FX3 + FX3 * /PP3) * MTAV3 • MVAR3 = (PP3 * /DX3 + DX3 * /PP3) * MTAR3 ___________________________________________________________________________ 1/18 Bibliothèque de modèles SIMTSX 1 1.2-8 Exemple : Prise en compte de la longueur de pièce L’exemple décrit ici comprend trois éléments. Il s’agit de tables à rouleaux de longueur 6000 mm sur lesquelles se déplace des luges de longueur 5000 mm. sq4a sq45a sq4b sq45b sq4c sq45c La présence des pièces est représentée par des variables booléennes, la position dans un axe décrivant un canton correspondant au front avant de la pièce. Dans cette modélisation il n’est donc pas fait mention de la longueur de la pièce, la seule contrainte imposée est de n’avoir qu’une pièce par canton. Cependant ces pièces signalent leur passage à l’automate au moyen de détecteurs. A ce niveau au moins il faut tenir compte de la longueur de ces pièces : en effet les détecteurs sont activés pendant tout le passage des pièces. Ceci ne peut donc se faire simplement en plaçant les capteurs réels dans les axes. En particulier, quand une pièce commence à pénétrer sur le canton suivant, elle continue un moment à être détectée au niveau du canton qu’elle quitte, en raison de sa longueur. Pour cela les détecteurs doivent être modélisés par des équations du type "relais" faisant intervenir des capteurs fictifs placés dans les axes, conditionnés par les variables de présence afin de reproduire, en fonction du déplacement des pièces, les chronogrammes d’activation des détecteurs présentés ci-dessous. sq4a axe A axe B axe C sq45a sq4b sq45b sq4c sq45c ___________________________________________________________________________ 1/19 H Description SIMTSX La description de l’installation faite avec SIMTSX est similaire à celle réalisée précédemment dans ce chapitre. Du fait de la largeur des pièces, l’activation des capteurs réels SQ45A et SQ45B se poursuit d’un axe sur l’autre. Ces capteurs sont représentés par des relais activés par les variables de présence pièce et des capteurs fictifs sur les axes. dq45a fq45a dq45b fq45b sq45c sq4a sq4b sq4c table A table B table C Equations des relais représentant les capteurs : • SQ45A = DQ45A * PPA + FQ45A * PPB • SQ45B = DQ45B * PPB + FQ45C * PPC H ___________________________________________________________________________ 1/20 Bibliothèque de modèles SIMTSX 1.3 1 Modèle de niveau cuve 1.3-1 Modèle d’une cuve 2 vannes : m-cuve2v Modèle : m-cuve2v Config. E/S Paramètres : $0 = numéro vanne amont $1 = numéro cuve $9 = numéro vanne aval RELAIS pas d'E/S AXES PUPITRES Lal$1 Lsl$1 0 linéaire rotatif SYNOPTIQUES pas de pupitre ax-c$1 : Niveau cuve Lsh$1 Lah$1 qv$0 début fin L=100 Lah Lsh Lsl Lal Qcuve$1 Sv1 Niveau cuve Niveau$1 Sv2 qv$9 échantillonné, pas = 1 Capteurs Lal$1 = 10, enclenchement Lsl$1 = 20, enclenchement Lsh$1 = 80, enclenchement Lah$1 = 90, enclenchement c$1-vide = début, impulsion Mouvement Relais Sv$0 (indéfini) Sv$9 (indéfini) r&v-c$1 = () positif, vitesse = Qcuve$1 Variable numérique niv-c$1 : niveau dans la cuve ax-c$1 qcuve$1 : vitesse évolution niveau 0 + qv$0 -qv$9 si /c$1-vide qv$0 : débit de remplissage cuve 0 10 si /sv$0 qv$9 : débit de vidage cuve 0 5 si /sv$9 * /c$1-vide Description de l’évolution du niveau d’une cuve, capacité de la cuve = 100 litres, débit remplissage = 2 fois débit vidage. Instanciation : Paramètres à renseigner lors de l'instanciation du modèle dans une application SIMTSX : $0 = numéro de vanne amont $1 = numéro de cuve $9 = numéro de vanne aval • La variable "niv-c$1" correspond à la valeur du niveau dans la cuve. • Capacité de la cuve modifiable en éditant l’axe de la cuve ("longueur"). Attention au choix de l’échantillonnage de l’axe : éviter les pas de 1 pour des axes de longueur 1000. • Débits vannes amont et aval modifiables (constantes, variables externes, consignes automate), il suffit d’éditer les variables numériques "Qv$0" pour le remplissage et "Qv$9" pour le vidage : remplacer "10" et "5" par les débits correspondants. • Ajout de vannes possible dans le tableau d’affectation des variables numériques "Qv$0" et "Qv$9" (exemple : cas de plusieurs débits entrants). ___________________________________________________________________________ 1/21 H 1.3-2 Modèle d’un niveau : m-niveau Modèle : m-niveau Config. E/S pas d'E/S Paramètres : $1 = numéro cuve, niveau n débit remplissage-vidage RELAIS AXES PUPITRES ax-c$1 : Niveau cuve $1 Lal$1 Lsl$1 0 linéaire rotatif Lsh$1 Lah$1 SYNOPTIQUES pas de pupitre q-rempl$1 début fin L=100 Niveau cuve Qcuve$1 Lah Lsh Niveau$1 Lsl Lal q-vidag$1 échantillonné, pas = 1 Capteurs Lal$1 = 10, enclenchement Lsl$1 = 20, enclenchement Lsh$1 = 80, enclenchement Lah$1 = 90, enclenchement c$1-vide = début, impulsion Mouvement r&v-c$1 = () positif, vitesse = Qcuve$1 H Variable numérique niv-c$1 : niveau dans la cuve ax-c$1 q-rempl$1 : somme des débits remplissage q-vidag$1 : somme des débits vidage qcuve$1 : vitesse évolution niveau cuve 0 + q-rempl$1 - q-vidag$1 si /c$1-vide Description de l’évolution du niveau d’une cuve capacité cuve = 100 litres, débit de remplissage = somme des débits amonts, débit de vidage = somme des débits avals. Instanciation : Paramètre à renseigner lors de l'instanciation du modèle dans une application SIMTSX : $1 = cuve, niveau, débit remplissage-vidage La variable "niv-c$1" correspond à la valeur du niveau dans la cuve. Capacité de la cuve modifiable en éditant l’axe de la cuve ("longueur"). Attention au choix de l’échantillonnage de l’axe : éviter les pas de 1 pour des axes de longueur 1000. Débits remplissage et vidage définis comme variables externes par défaut, modifiables en simulation ou, pour l’adapter à l’application cible, en éditant les tableaux d’affectation des débits "Q-rempl$1" et "Q-vidag$1". ___________________________________________________________________________ 1/22 Bibliothèque de modèles SIMTSX 1 1.3-3 Exemple : Cuve simple Modélisation du niveau dans une cuve comportant 2 vannes amont en parallèle (sv1, débit = 5 et sv2, débit = 10), 1 vanne aval (sv3, débit = 3). Pour créer cette application, il suffit d’instancier 1 fois le modèle "m-niveau" (paramètre à instancier : $1 = "1"). Modifications à faire dans l’application, une fois le modèle instancié : Editer la variable numérique Q-rempl1 et le compléter comme ci-dessous : 0 +5 + 10 < sv1 < sv2 affecter 0 sans condition pour RAZ la valeur opération (Q-rempl1 + 5) si commande vanne sv1 opération (Q-rempl1 + 10) si commande vanne sv2 Editer la variable numérique Q-vidag1 et le compléter comme ci-dessous : 0 +3 < sv3 affecter 0 sans condition pour RAZ la valeur opération (Q-vidag1 + 3) si commande vanne sv3 H ___________________________________________________________________________ 1/23 1.4 Modèle de vannes proportionnelles 1.4-1 Modèle de vanne proportionnelle simple : m-vanne1 Modèle : m-vanne1 Config. E/S Paramètres : $1 = numéro vanne, commande, consigne RELAIS pas d'E/S AXES PUPITRES SYNOPTIQUES pas de pupitre ax-v$1 : vanne AN $1 Vanne AN $1 Sv$1 cons-v$1 0 linéaire rotatif début fin L=100 Qv$1 échantillonné, pas = 1 Relais Sv$1 (indéfini) Mouvement o&f-v$1 = Sv$1 positif, vitesse = ouv-v$1 Variable numérique Qv$1 : débit courant de la vanne ax-v$1 ouv-v$1 : vitesse évolution vanne 0 + 5 si ax-v$1 < cons-v$1 - 5 si ax-v$1 > cons-v$1 consv$1 : consigne ouverture vanne H Description de l’évolution de la position d’ouverture d’une vanne : ouverture = 0-100%, vitesse d’ouverture = 5 mm/s (si les unités de l’application développée sont les millimètres et les secondes). Instanciation : Paramètres à renseigner lors de l'instanciation du modèle dans une application SIMTSX : $1 = numéro vanne, commande, consigne. • La variable "Qv$1" correspond au débit de la vanne, fonction de sa position d’ouverture, à relier à une entrée numérique API. • La consigne d’ouverture "cons-v$1" est une variable numérique externe à relier à une sortie numérique API. • Le temps d’ouverture et de fermeture de la vanne est modifiable dans le tableau d’affectation de "ouv-v$1" (ici = 5mm/s). ___________________________________________________________________________ 1/24 Bibliothèque de modèles SIMTSX 1 1.4-2 Modèle de vanne proportionnelle à ouverture variable : m-vanne2 Modèle : m-vanne2 Config. E/S Paramètres : $1 = numéro vanne, commande, consigne RELAIS pas d'E/S AXES PUPITRES SYNOPTIQUES pas de pupitre ax-v$1 : vanne AN $1 Vanne AN $1 Sv$1 cons-v$1 0 linéaire rotatif début fin L=100 Qv$1 v-ouv-v$1 v-fer-v$1 échantillonné, pas = 1 Relais Sv$1 (indéfini) Mouvement o&f-v$1 = Sv$1 positif, vitesse = ouv-v$1 Variable numérique Qv$1 : débit courant de la vanne ax-v$1 ouv-v$1 : vitesse évolution vanne 0 + v-ouv--v$1 si ax-v$1 < cons-v$1 - v-fer-v$1 si ax-v$1 > cons-v$1 consv$1 : consigne ouverture vanne v-ouv-v$1 : vitesse ouverture vanne v-fer-v$1 : vitesse fermeture vanne Description de l’évolution de la position d’ouverture d’une vanne : ouverture = 0-100%, temps ouverture et de fermeture modifiable par une variable externe. Instanciation : Paramètres à renseigner lors de l'instanciation du modèle dans une application SIMTSX : $1 = numéro vanne, commande, consigne. • La variable "Qv$1" correspond au débit de la vanne, fonction de sa position d’ouverture, à relier à une entrée numérique API. • La consigne d’ouverture "cons-v$1" est une variable numérique externe à relier à une sortie numérique API. • Le temps d’ouverture et de fermeture de la vanne est modifiable en simulation avec les variables externes "v-ouv-v$1" et "v-fer-v$1". Ces variables numériques peuvent aussi être fixées ou calculées avec un tableau d’affectation. ___________________________________________________________________________ 1/25 H 1.4-3 Exemple : cuve simple avec 1 vanne proportionnelle aval Modélisation du niveau dans une cuve comportant 2 vannes amont en parallèle (sv1, débit = 5 et sv2, débit = 10), 2 vannes aval en série (sv3, débit = 3 et sv4, débit = 0-100%). Pour créer cette application, il suffit d’instancier 1 fois le modèle "m-niveau" (paramètre à instancier : $1 = "1"), et 1 fois le modèle de vanne proportionnelle "m-vanne1" (paramètre à instancier : $1 = "4"). Modifications à faire dans l’application, une fois les modèles instanciés : Editer la variable numérique Q-rempl1 et le compléter comme ci-dessous : 0 +5 + 10 < sv1 < sv2 affecter 0 sans condition pour RAZ la valeur opération (Q-rempl1 + 5) si commande vanne sv1 opération (Q-rempl1 + 10) si commande vanne sv2 Editer la variable numérique Q-vidag1 et le compléter comme ci-dessous : H 0 +3 + Qv4 / 100 < sv3 < sv4 affecter 0 sans condition pour RAZ la valeur opération (Q-vidag1 + 3) si commande vanne sv3 opération (Q-vidag1 * valeur débit vanne proportionnelle v4) opération (Q-vidag1 / 100). ___________________________________________________________________________ 1/26 Bibliothèque de modèles SIMTSX 1.5 1 Fiche vierge de description d’un modèle Modèle : Config. E/S Paramètres : RELAIS AXES 0 PUPITRES linéaire rotatif SYNOPTIQUES début fin L=… sur … échantillonné, pas = … H ___________________________________________________________________________ 1/27 H ___________________________________________________________________________ 1/28 2 Machine à trois postesChapitre d'usinage 2 2 Machine à trois postes d'usinage 2.1 Description SIMTSX 2.1.1 Présentation L’environnement logiciel SIMTSX est fourni avec un exemple d’application illustrant les diverses notions exposées dans ce manuel : MaquTSX. H Cette maquette est composée de trois postes d’usinage disposés en ligne. Devant chaque poste est disposé un tapis sur lequel circule la pièce à usiner. Ces tapis permettent le transfert des pièces d’un poste au suivant, depuis l’alimentation jusqu’à l’évacuation en fin de ligne. Les pièces déposées au chargement sont amenées sur le premier tapis, en l’occurrence celui de la perceuse, au moyen d’un poussoir. ___________________________________________________________________________ 2/1 2.1.2 Modélisation Ce paragraphe est consacré à la modélisation qui en a été faite sur SIMTSX. • La configuration des entrées/sorties L’application proposée ne comprend pas de configuration d’entrées/sorties, elle fonctionne en simulation local avec un grafcet simple. Il est ainsi possible de la connecter aux automates Micro, Premium et Quantum en reliant les relais, capteurs et variables pupitres aux entrées/sorties correspondantes. • Le relayage Le relayage représente l’intermédiaire de puissance entre les sorties et la commande des actionneurs, et le câblage électrique des voyants. • Description des axes H La modélisation de la maquette compte 12 axes. Les axes 1 à 7 correspondent aux actionneurs des 3 postes. Ainsi l’axe 1 représente la montée/descente de la perceuse. Cet axe est pourvu de 3 capteurs : FCH1 correspond à la position haute de la perceuse, FCM1 à la position intermédiaire et FCB1 à la position basse. “ Dperc ” est le mouvement de descente de la perceuse, commandé par le relais Km15, et le relais Km14 pilote le mouvement de montée “ Mperc ” tous deux par l’intermédiaire du moteur MLP1. L’axe 2 représente de façon analogue la montée/descente de la tourelle tri-broches. La rotation de la tourelle est décrite par l’axe 3. Cet axe rotatif active 2 capteurs au moyen de cames différentes. Le capteur “ FCA1 ” est activé une seule fois par tour, tandis que “ FCA2 ” est activé 3 fois lors d’une rotation complète de la tourelle. La description du poste de fraisage est constituée de 2 axes, l’axe 4 correspondant à la montée/descente, l’axe 5 à la translation. L’axe 6 représente le poussoir permettant l’alimentation en pièces. Comme il n’y a que 2 capteurs disposés en début et en fin, c’est un axe “ standard ”, son évolution est commandée au moyen des électrovannes “ YV31 ” et “ YV32 ”. L’axe 7 est, comme l’axe 6, un axe “ standard ”. Il décrit un verrou mécanique permettant de bloquer la tourelle pendant l’usinage. Ce verrouillage mécanique est réalisé en interdisant le mouvement “ RTOUR ” de rotation de la tourelle si le capteur “ FCVE ” est activé. Les axes suivants, numérotés de t1-0 à t5-0 correspondent à la modélisation des tapis assurant le déplacement des pièces entre les postes. Il sont issus des modèles de la bibliothèque SIMTSX : 5 instanciations du modèle “ mtp1p ”. ___________________________________________________________________________ 2/2 Machine à trois postes d'usinage 2 • Modélisation des tapis La modélisation des transferts de pièces dans SIMTSX est expliquée dans le chapitre 1, lors de la présentation de modèles standards de convoyage. Ce principe de description du convoyage est appliqué à la maquette pour décrire le tapis de la tourelle et celui de la fraiseuse. La modélisation du tapis de la perceuse est un peu différente : en amont de celui-ci se trouve en effet le poussoir, et non un autre tapis. Si l’équation du mouvement est encore valable pour décrire l’évolution de la pièce sur ce tapis, l’équation décrivant la présence de la pièce doit être adaptée. Une pièce est disponible pour le tapis de la perceuse quand, ayant été déposée au chargement (le poussoir doit être en position gauche), le poussoir l’a amenée à droite. Ce dernier peut alors revenir en position gauche, alors que le tapis de la perceuse n’est pas forcément libre et n’a donc pas “ pris en charge ” la pièce. On voit donc que la disponibilité d’une pièce pour le tapis de la perceuse est une information qui doit être mémorisée : ce rôle est joué par la variable “ Mem-pp0 ”. ___________________________________________________________________________ 2/3 H Dans ces conditions, l’équation de la présence de pièce sur le tapis de la perceuse s’écrit : pp1 = (dx1 . Mem-pp0 + pp1) . /(fx1 . dx2) Le poussoir est représenté par un axe “ standard ”. Les deux capteurs extrêmes dont est muni cet élément sont “ Fcg0 ” et “Fcd0 ”, correspondant respectivement aux positions gauche et droite du poussoir. La variable correspondant à la présence d’une pièce sur le poussoir est “ pp0 ”. Une pièce peut être déposée au chargement si le poussoir est en position gauche. Le terme d’enclenchement de pp0 sera donc : fcg0 . pièce, où “ pièce ” est une variable externe représentant la présence d’une pièce au chargement. La pièce sera disponible pour le tapis de la perceuse si le poussoir l’a amenée en position droite. Cette pièce disponible sera effectivement prise en charge par le tapis quand l’axe représentant ce dernier sera en “ dx7 ”, l’équation de la variable Mem-pp0 est donc : Mem-pp0 = fcd0 . pp0 + Mem-pp0 . /dx1 H La variable pp0, représentant la présence d’une pièce au chargement, sera également déclenchée, à condition que la disponibilité pour le tapis de la perceuse ait été mémorisée, ou que le tapis de la perceuse soit disponible quand le poussoir arrive en position droite. L’équation de cette variable est donc : pp0 = (fcg0 . pièce + pp0) . /[(fcd0 + Mem-p0) . dx1] Quand les pièces arrivent au bout du tapis de la fraiseuse, qui est le dernier poste de la ligne, elles entrent dans une zone d’évacuation. La variable correspondant à la présence d’une pièce à l’évacuation est PP10, dont l’équation est : pp4 = (dx4 . fx3 + pp4) . /(fx4 . evac) où “ evac ” est une variable externe permettant le retrait des pièces présentes à l’évacuation. Afin d’informer la Partie Commande de la présence d’une pièce sur un des tapis, des capteurs sont placés en face de chacun des postes. L’activation de ces capteurs apparaît donc dans les axes t1-0, t2-0 et t3-0 qui représentent l’évolution d’une pièce sur ces tapis. Le capteur de la zone d’évacuation est quant à lui disposé en fin de l’axe t4-0. Le capteur correspondant à la présence d’une pièce au chargement, Fcp0 est décrit par une équation : Fcp0 = (fcg0 * pp0 + fcp0) . /pp1 pp0 est la variable représentant la présence d’une pièce au chargement, elle intervient donc logiquement dans l’expression de fcp0. Remarques La description présentée est complétée par un axe t5-0 permettant de reboucler les pièces parvenant à l’évacuation au niveau du chargement. Le rebouclage est effectué quand la variable externe “ Retour ” à l’état logique “ 1 ”. ___________________________________________________________________________ 2/4 Machine à trois postes d'usinage 2 • Le pupitre H Le pupitre permet de piloter cette maquette : outre les boutons de mise sous/hors tension/puissance hydraulique, on y trouve les commutateurs de mode auto-manu, les boutons départ cycle (nécessaire pour chaque cycle d’usinage), arrêt cycle et remise en cycle. Y figure également un commutateur fictif “ Pièces ” permettant d’injecter des pièces dans la ligne d’usinage et permettant le rebouclage des pièces en entrée. Le commutateur “ Evacu.piece ” permet d’évacuer les pièces de la ligne une fois usinées. ___________________________________________________________________________ 2/5 • Les grafcets Le fichier MGRAF1 contient des grafcets permettant d’animer la maquette en mode local. H Les 4 premiers grafcets gèrent le poussoir d’alimentation et les 3 tapis. Les 3 autres grafcets pilotent chacun des postes. Les 4 autres grafcets gèrent le poussoir d’alimentation et les 3 tapis. Remarques Ces grafcets dits “de Mécanicien ” ne gèrent que les modes de marche simple. En simulation mode local, avec MGRAF1, il suffit de mettre sous tension et sous puissance l’installation, introduire une pièce au chargement au moyen du commutateur “ pièces ” du pupitre de conduite, puis autoriser le cycle par le bouton “ départ cycle ” pour activer le modèle. A noter que le contexte “ init ” permet d’initialiser toutes les variables au démarrage de l’installation et que 3 scénarios de fonctionnement sont proposés : Production : mise en production de pièces en continu sur l’installation, puis évacuation une fois usinées. Retour-p : usinage d’une pièce puis retour en entrée. 1pièce : usinage d’une pièce, puis attente action opérateur pour évacuation ou retour. ___________________________________________________________________________ 2/6 Machine à trois postes d'usinage 2.2 2 Dossier électrique et mécanique H ___________________________________________________________________________ 2/7 H ___________________________________________________________________________ 2/8 Machine à trois postes d'usinage 2 H ___________________________________________________________________________ 2/9 H ___________________________________________________________________________ 2/10 Machine à trois postes d'usinage 2 H ___________________________________________________________________________ 2/11 H ___________________________________________________________________________ 2/12 Machine à trois postes d'usinage 2 H ___________________________________________________________________________ 2/13 H ___________________________________________________________________________ 2/14 Machine à trois postes d'usinage 2 H ___________________________________________________________________________ 2/15 H ___________________________________________________________________________ 2/16 Machine à trois postes d'usinage 2 H ___________________________________________________________________________ 2/17 H ___________________________________________________________________________ 2/18 Annexes Sommaire Intercalaire I Chapitre Page 1 Performances 1/1 1.1 Présentation 1/1 1.2 Impact de la simulation sur la taille de l'application PL7 1/1 1.3 Impact de la simulation sur le temps de cycle d’un automate Premium 1/1 1.4 Cycle de simulation 1/3 1.5 Simulation d'une application ayant une entrée configurée en Run/Stop 1/4 2 Messages d'erreur 2/1 2.1 Messages liés à l’environnement 2/1 2.2 Messages liés à la modélisation 2/2 2.3 Messages liés aux échanges automates 2/3 2.4 Messages liés à l’impression 2/4 3 Principe des "axes" 3/1 3.1 Démarche d’utilisation de SIMTSX 3/1 3.2 Principe de description des équipements dans SIMTSX 3.2-1 Principe des "axes" 3.2-2 Description des systèmes câblés 3/1 3/1 3/3 ___________________________________________________________________________ I/1 I Annexes Sommaire Intercalaire I Chapitre Page 4 Précautions d’utilisation 4/1 4.1 Simulation par événements 4.1-1 Principe général 4/1 4/1 4.2 Précautions d’utilisation 4/2 5 La simulation multi-automate 5.1 La simulation multi-automate 5/1 5/1 6 Liaisons D.D.E. 6/1 6.1 Informations générales 6/1 6.2 Liste des échanges D.D.E. 6/2 6.3 Information sur la simulation 6.3-1 Etat de la simulation : status 6.3-2 Mode de simulation : mode 6.3-3 Période de la simulation : mode:période 6.3-4 Mode temporisé : tempsréel 6.3-5 Impulsion de sortie : impulsion 6.3-6 Date de la simulation : date 6/4 6/4 6/4 6/5 6/5 6/5 6/6 I ___________________________________________________________________________ I/2 Annexes Sommaire Intercalaire I Chapitre Page 6.4 Information sur les éléments de description 6.4-1 Alimentation 6.4-2 Axe 6.4-3 Bistable 6.4-4 Capteur 6.4-5 Entrée 6.4-6 Externe 6.4-7 Mouvement 6.4-8 Piège 6.4-9 Relais 6.4-10 Sortie 6.4-11 Variable 6.4-12 Numérique 6/7 6/7 6/8 6/9 6/10 6/11 6/12 6/13 6/14 6/15 6/16 6/17 6/18 6.5 Exemple de communication D.D.E. avec Excel 6/19 6.6 Conseils et problèmes de liaisons D.D.E. 6/20 I ___________________________________________________________________________ I/3 Annexes Chapitre Sommaire Intercalaire I Page I ___________________________________________________________________________ I/4 Chapitre 11 Performances 1 Performances 1.1 Présentation Pour réaliser une simulation en mode connecté sur les automates Micro ou Premium, il est nécessaire d'ajouter un module simulation dans la configuration PL7 de l'application. Ce module logique permet de réaliser les échanges entre SIMTSX et les automates. La simulation présente les impacts suivants : • augmentation de la taille de l'application, • influence sur le temps de cycle automate. 1.2 Impact de la simulation sur la taille de l'application PL7 Micro Premium 1.3 Delta code Delta données 10,5 Ko 1,25 Ko Simulation E/S bus X Simulation E/S bus X et Fipio Delta code Delta données Delta code Delta données 15 Ko 11,6 Ko 23,1 Ko 20,4 Ko Impact de la simulation sur le temps de cycle d’un automate Premium L'impact de la simulation sur le temps de cycle automate est limité dans le cas où tous les modules d'entrées/sorties sont simulés. Lorsqu'il y a mixité entre modules simulés et modules non simulés, l'impact est plus sensible. Les graphiques présentés à la suite donnent des indications chiffrées de ces impacts sur le temps de cycle automate. Le contexte des mesures présentées est : Premium SIMTSX • Recopie systématique d’entrées/sorties I I en nombre croissant sur la totalité des entrées/sorties configurées O O ___________________________________________________________________________ 1/1 I • Toutes les entrées/sorties sont configurées dans la tâche MAST. Principe de mesure : comparaison du temps de cycle %SW30 avec et sans l’IOB de simulation. Rappelons que le temps de cycle mesuré grâce à SW30 représente le temps réel d’exécution du cycle automate et non pas le temps configuré lors de la création de l’application. Les résultats obtenus sont les suivants : SW 30 moyen avec et sans la simulation 16 14 Tps en ms 12 10 8 simulation non active simulation active 6 4 (mode connecté) 2 48 0E /4 80 S 38 4E /3 84 S 32 0E /3 20 S 25 6E /2 56 S 19 2E /1 92 S 12 8E /1 28 S 64 E/ 64 S 32 E/ 32 S 0 Nombre d'entrées/sorties échangées I Dans le graphique ci-dessus, il faut signaler que le temps de cycle moyen sans simulation a été relevé alors que les entrées/sorties configurées n’étaient pas présentes réellement dans les racks automates. Ceci a pour conséquence de ne pas tenir compte des temps de circulation sur le bus pour la mise à jour des modules d’entrées/sorties. Dans la réalité, le temps de cycle sera donc plus important que celui relevé lors de ce test. • Pour se rapprocher du contexte réel de la simulation par événement, on recopie systématiquement 5% des entrées et 10% des sorties configurées. Le principe de mesure reste identique. Il apparaît que l’influence sur le temps de cycle est la même que dans le cas précédent. Par contre, le temps d’un cycle de simulation est beaucoup plus rapide compte tenu du nombre d’entrées/sorties échangées à chaque cycle. Recommandation : Lors d'une simulation en mode connecté, le module de simulation perturbe légèrement le temps de cycle automate. Dans certains cas, on pourra constater un débordement du chien de garde et donc un blocage de l'automate. Dans ce cas, il sera nécessaire d'augmenter le ou les temps de cycle (MAST, FAST) de manière à éviter ce débordement. Pour diagnostiquer un débordement du chien de garde, il suffit, après avoir réinitialisé l'automate, de visualiser dans PL7 que le mot système %sw124 vaut 128 (80H). Il sera nécessaire d'augmenter les temps de cycle des tâches configurées pour éviter ce déclenchement. ___________________________________________________________________________ 1/2 Performances 1.4 1 Cycle de simulation Le temps d'un cycle de simulation intègre : • le temps des échanges des données entre SIMTSX et l'automate, • le temps de traitement des données dans l'automate, • le temps de traitement des données dans SIMTSX (ex : évolution de l'installation). Le graphique suivant fournit une indication des temps de cycles de simulation, en fonction du nombre d'entrées/sorties échangées à chaque cycle (connexion UniTelway). Note : Le temps d'un cycle de simulation dépend principalement du nombre de requêtes de données entre SIMTSX et l'automate. Temps moyen d'un cycle de simulation Tps en ms 4 3 cycle de simulation 2 1 48 0E /4 80 S 38 4E /3 84 S 32 0E /3 20 S 25 6E /2 56 S 19 2E /1 92 S 12 8E /1 28 S 64 E/ 64 S 32 E/ 32 S 0 Nombre d'entrées/sorties échangées à chaque cycle Le nombre de requêtes peut être évalué selon la règle suivante : (Nombre d'entrées/sorties TOR évoluant dans un cycle de simulation x 2 + Nombre d'entrées/sorties Numériques évoluant dans un cycle de simulation x 4) / 116 = Nombre de requêtes Dans la plupart des applications, 2 requêtes sont échangées par cycle de simulation. Le temps de ce dernier est de l'ordre de 300 ms. ___________________________________________________________________________ 1/3 I 1.5 Simulation d'une application ayant une entrée configurée en Run/ Stop Dans ce cas, la simulation en mode connecté n'est possible que si l'entrée peut être forcée à 1 ou à 0 dans PL7. Dans le cas contraire, la simulation en mode connecté n'est pas possible à moins de déconfigurer cette entrée. En effet, lors d'une simulation en mode connecté, SIMTSX demande une mise en Stop de l'automate en début de connexion et une mise en Run de l'automate dès la connexion réalisée. SIMTSX propose une fenêtre pour la gestion de ces états automate. Si une entrée est configurée en Run/Stop, SIMTSX est alors incapable de modifier l'état automate. Si cet état ne peut être modifier alors par PL7, la simulation est impossible si l'automate n'est pas en Run. I ___________________________________________________________________________ 1/4 Chapitre 2 Messages d'erreur 2 2 Messages d'erreur 2.1 Messages liés à l’environnement Ces messages ont trait à la disponibilité de ressources nécessaires au bon fonctionnement de SIMTSX. • Message "Problème de ressources Windows fermer des fenêtres" - L’affichage des Pupitres et des Synoptiques nécessite l’utilisation de fenêtres Windows, en fonction en particulier du nombre d’éléments représentés dans les Synoptiques. Lors de la demande d’affichage de Pupitres ou de Synoptiques, un test des ressources disponibles est effectué. Si celles-ci sont insuffisantes - ce qui peut être vérifié au moyen de la fenêtre "A propos" du Gestionnaire de Programmes - ce message est affiché. Il faut alors choisir de retirer un ou plusieurs des Synoptiques ou Pupitres déjà présents à l’écran. • Messages "Copie (ou Sauvegarde ou Chargement) mal effectué(e)" - Ces messages sont susceptibles d’apparaître lors de l’utilisation des Outils permettant la copie d’une application ou d’un modèle, le transfert d’une application en modèle et la sauvegarde ou le chargement d’une application ou d’un modèle vers - respectivement depuis - une disquette. La cause la plus probable est le manque de place disponible sur le disque de l’ordinateur ou sur la disquette dans le cas d’une sauvegarde. Un mauvais formatage de la disquette peut également être en cause. I ___________________________________________________________________________ 2/1 2.2 Messages liés à la modélisation Ces messages sont susceptibles d’apparaître lors d’une simulation locale ou connectée. Leur origine provient d’une anomalie dans la modélisation, interdisant la poursuite de la simulation qui est donc interrompue. • Message "Indétermination sur l’état de variables" - Ce message apparaît lorsque SIMTSX n’est pas en mesure de déterminer l’état de relais ou de variables de modélisation. Un exemple trivial est l’équation suivante : a = /a Ce phénomène apparaît par exemple si l’on a décrit une bascule Reset/Set dans SIMTSX au moyen de deux équations logiques et que l’on en active de façon synchrone les entrées Set et Reset ! Le moyen de résoudre l’anomalie est de corriger les expressions des variables incriminées ou de rétablir un état stable en agissant sur un des termes des équations. • Message "Activités simultanées pour l”axe : .." - Ce message signale une anomalie due au caractère non exclusif des équations de mouvements associées à un même axe. Il faut dans ce cas modifier les équations des mouvements concernés afin de les rendre incompatibles. I • Message "Evolution infinie de :" - Ce message apparaît lorsqu’un bouclage se produit dans un axe rotatif évoluant à une vitesse infinie. Le problème est que l’équation n’est jamais invalidée au cours du déplacement. Il faut donc corriger cette équation afin que le mouvement auquel on a donné une vitesse infinie puisse être désactivé par le changement d’état d’un des capteurs se trouvant dans l’axe. • Message "Instabilité du Grafcet" - Ce message signale qu’une "situation stationnaire" apparaît dans un Grafcet. C’est-à-dire qu’un cycle fermé de transitions dont les réceptivités sont simultanément vérifiées s’est établi. Il faut donc verrouiller certaines des transitions impliquées dans la boucle. Une autre possibilité est qu’un débordement de compteur se produit : il s’agit d’une anomalie concernant une opération arithmétique - qu’il faut éventuellement remplacer par une incrémentation - effectuée dans une Etape. ___________________________________________________________________________ 2/2 Messages d'erreur 2.3 2 Messages liés aux échanges automates Les différents messages d’erreur liés aux échanges entre SIMTSX et l’automate, ainsi que leurs causes sont présentés ci-dessous. • Message "Ouverture de la liaison non réussie" - SIMTSX n’a pas réussi à lancer le serveur de communication. • Message "CONNEXION ECHOUEE" Ce message est accompagné sur Micro/Premium par d’autres messages complémentaires du serveur de communication. La liste des messages complémentaires est présentée ci-dessous : - "Le module de simulation dans PL7 ne permet pas de simuler des entrées/ sorties fipées". - "Vérifiez que les drivers utilisés sont bien chargés et que le ou les automates sont connectés". - "Vérifiez la présence du module de SIMULATION dans le programme PL7. Assurez-vous que le module de SIMULATION est présent au même emplacement dans PL7 et SIMTSX". - "Le module de SIMULATION est absent de la configuration SIMTSX". - "Modules Non Simulés Absents : Rack i, Empl j" : cela signifie que des modules d'entrées/sorties n'étant pas déclarés dans la configuration SIMTSX (modules non simulés) mais étant déclarés dans la configuration PL7 ne sont pas physiquement présents dans le rack automate. - "Conf SIMTSX <> Conf API : Rack i, Empl j" : cela signifie que pour les emplacements signalés, la configuration réalisée dans SIMTSX ne correspond pas à la configuration décrite dans le programme automate. ___________________________________________________________________________ 2/3 I 2.4 Messages liés à l’impression Les différents messages d’erreur liés à l’impression, ainsi que leurs causes sont présentés ci-dessous. • Message "Impossible d'ouvrir le dossier application". - SIMTSX n’a pas réussi à ouvrir le dossier application demandé. Ce message survient lorsque le logiciel n’a pas réussi à lire les informations contenues dans les fichiers de description de l'application. Si ce message apparaît, contactez votre centre de support technique. • Message "Impossible d'ouvrir le modèle". - SIMTSX n’a pas réussi à ouvrir le modèle demandé. Ce message survient lorsque le logiciel n’a pas réussi à lire les informations contenues dans les fichiers de description du modèle. Si ce message apparaît, contactez votre centre de support technique. • Message "Incompatibilité entre le format d'édition, le dossier application et les caractéristiques de l’imprimante. SIMTSX ne peut pas imprimer votre dossier application ! VEUILLEZ MODIFIER VOTRE FORMAT D’EDITION..." - Ce message apparaît lorsque SIMTSX n’est pas capable d’imprimer le document avec le format d’édition demandé. Ceci se produit lorsqu’un des paragraphes du document est d’une taille telle qu’il ne puisse pas être imprimé sur une seule page. Pour corriger ce problème, il faut choisir une police de caractères suffisamment petite pour que tous les paragraphes soient positionnables sur une seule page. I • Message "Mémoire insuffisante ! Fermer le plus possible d'applications pour libérer de la mémoire." - Lorsque trop d’applications WINDOWS sont lancées en même temps, l’ordinateur ne dispose plus de suffisamment de mémoire libre pour exécuter correctement SIMTSX. Fermer le plus possible d’applications pour libérer de la mémoire lorsque ce message apparaît. • Message "Une autre instance d'impression est déjà lancée ! Fermez d'abord cette autre instance avant d’utiliser à nouveau l’outil d’impression" - Ce message apparaît lorsque l’on ouvre l’outil d’impression alors que l’application d'impression est déjà active. Pour corriger ce problème, fermer l’application d'impression active, puis utiliser de nouveau l’outil d’impression. • Message "Impossible de lancer l'impression." - Ce message apparaît lorsque survient une erreur d’impression WINDOWS. Pour corriger ce problème, reportez-vous au guide d’utilisation de WINDOWS. • Messages "Le fichier *.dib est trop important pour être ouvert par l'application d'impression !" et "Impossible d'ouvrir le fichier *.dib !" - Ces messages apparaissent lorsque SIMTSX rencontre des problèmes pour l’impression des pupitres et des synoptiques. Veuillez contacter votre centre de support technique pour corriger ce problème. ___________________________________________________________________________ 2/4 Principe Chapitre des "axes" 33 3 Principe des "axes" 3.1 Démarche d’utilisation de SIMTSX On peut résumer la démarche d’utilisation de SIMTSX en trois étapes : • description des équipements dans SIMTSX pour constituer le modèle de simulation, • validation du modèle obtenu par un premier niveau de simulation, en "mode local", c’est-à-dire sans connexion à l'automate, • une fois validé le modèle de simulation, raccordement de SIMTSX à l'automate, et déroulement des scénarios de simulation en "mode connecté", selon les finalités recherchées. 3.2 Principe de description des équipements dans SIMTSX Le principe général de modélisation dans SIMTSX est de décrire les équipements aussi objectivement que possible, en suivant au plus près la conception mécanique, pneumatique, électromécanique... Il ne s’agit donc en aucun cas de programmer le comportement attendu à l’aide d’un langage quelconque (informatique ou d’automatisme), ce qui se traduirait par une description subjective, privilégiant les fonctionnements normaux. Une méthode de description nouvelle et spécifique a donc été introduite, s’appuyant sur la notion d’"Axe" (Voir intercalaire D, chapitre 1). Un axe représente une évolution élémentaire possible d'un système automatisé. Un système automatisé peut donc être décrit par un ensemble d'axes. 3.2-1 Principe des "axes" Au cours du fonctionnement d’un système automatisé, l’automate pilote et contrôle des évolutions, qu’il s’agisse de : • déplacements mécaniques : aller/retour d’un vérin, ouverture d’une vanne, déplacement d’une charge sur un système transitique... • évolutions des grandeurs physiques : température, pression, débit, niveau de produit dans une cuve... Pour cela, le concepteur des équipements a prévu les actionneurs et préactionneurs nécessaires au pilotage, et les moyens de détection (capteurs, cellules...) nécessaires au contrôle. ___________________________________________________________________________ 3/1 I Le principe de SIMTSX est donc, pour chacun de ces équipements ou grandeurs élémentaires, de créer un objet "Axe" capable de reproduire les évolutions associées. Un "axe" est caractérisé par : • sa longueur, • des capteurs, • un ou des mouvements : - sens - vitesse - condition d'activation. Précisions sur les caratéristiques d'un "axe" : • La longueur correspond à l’amplitude des évolutions possibles : par exemple un vérin sera décrit par un axe dont la longueur correspond à la course de tige. • Les capteurs associés (exemple : capteurs de début et fin de course) : ils sont placés à une position donnée sur l’axe, et sont décrits par leur comportement logique : - les capteurs à fermeture, ou à logique positive : leur état logique passe à 1 lorsque l’élément mécanique en mouvement est positionné sur le capteur. - les capteurs à ouverture, ou à logique négative : leur état logique passe à 0 lorsque l’élément mécanique en mouvement est positionné sur le capteur. I - les capteurs à "enclenchement" passent à l’état "1" quand la grandeur physique dont ils rendent compte est supérieure à la valeur donnée par leur position dans l’axe. - les capteurs à "déclenchement" ont un fonctionnement symétrique de celui des capteurs à enclenchement. Remarque Il est parfois nécessaire cependant de suivre "en continu" les évolutions d’une grandeur, et pas seulement au travers de l’évolution de capteurs raccordés à des entrées "Tout ou Rien" de l’automate (exemple : suivi de position d’un mobile par un codeur, suivi d’un poids de produit sur une entrée analogique de l’automate...). Dans ce cas, l’axe créé dans SIMTSX peut être déclaré en tant qu’axe "échantillonné" auquel il faut associer une valeur de "pas" : il s’agira de la précision avec laquelle SIMTSX fera évoluer la grandeur (exemple : niveau de produit dans une cuve, longueur de l’axe : 200 cm, pas de 10 cm). Pour minimiser les traitements de SIMTSX, le nombre de pas sur un axe échantillonné doit être minimum. ___________________________________________________________________________ 3/2 Principe des "axes" 3 • Les mouvements associés à l’axe décrivent les évolutions elles-mêmes de la grandeur physique, en terme de : - sens d’évolution, - vitesse : c’est une valeur constante, ou une variable numérique qui – décrite simplement par un tableau de calcul – permettra de reproduire des vitesses d’évolution spécifiques sur l’axe (rampe d’accélération, consigne de vitesse issue de l’API…), - conditions d’activation : c’est une équation booléenne qui regroupe les conditions nécessaires au mouvement. Très souvent, il s’agit d’y indiquer la présence d’énergie et le préactionneur de commande (exemple : électrovanne de pilotage de distributeur associé à un vérin). Plusieurs mouvements peuvent être décrits sur un même axe, mais seul l’un d’entreeux peut être activé à un instant donné en cours de simulation : si les équations associées à deux mouvements différents ne sont pas exclusives, ou si l’automate pilote deux sorties antagonistes, un message est alors délivré à l’utilisateur. 3.2-2 Description des systèmes câblés Le principe des axes permet de décrire chaque sous-ensemble "préactionneurs – actionneurs – capteurs" de l’installation, et par extension toute grandeur pouvant évoluer. L’interface entre l’automate et SIMTSX se faisant au niveau des entrées/sorties, il est donc nécessaire d’établir les liens entre : • les sorties de commande et les préactionneurs, • les capteurs et les entrées automate. Ces liens sont décrits dans SIMTSX au moyen d’équations booléennes permettant de faire intervenir les composants électriques intermédiaires (contacteurs, alimentations, sectionneurs…) et – par extension – l’ensemble des systèmes câblés dans l’armoire de commande (notamment pour la gestion des sécurités, ainsi que les pupitresopérateurs de commande locale). Cette description s’appuie directement sur les schémas électriques de l’installation ; elle permet d’accroître les possibilités de test sur la plate-forme SIMTSX puisqu’il devient possible d’agir et de positionner des défauts sur l’ensemble des équipements câblés. ___________________________________________________________________________ 3/3 I Il est à noter que : • des équations booléennes permettent également de décrire des comportements de variables, pour reproduire par exemple la logique d’évolution des "présence pièces" sur des systèmes transitiques. • que ces équations booléennes sur les relais et les variables de modélisation sont évaluées "en parallèle" dans SIMTSX, c’est-à-dire qu’une évolution de variable affecte de façon synchrone les équations où elle intervient : la propagation des changements d’état se fait par "couches" d’équations successives. • que les temps de commutation des relais sont considérés comme étant négligeables par rapport aux évolutions des axes : les équations représentant les relais sont donc évaluées à une date de simulation fixée, jusqu’à ce que l’on obtienne un état stable de ces éléments. • qu’il est possible de faire intervenir des "fronts" de variables dans ces équations (désignés par le préfixe "+" ou "-" devant le nom de la variable). I ___________________________________________________________________________ 3/4 Chapitre 44 Précautions d’utilisation 4 Précautions d’utilisation 4.1 Simulation par événements Les aspects logiques et séquentiels sont prépondérants dans le fonctionnement des systèmes pilotés par automate programmable, par opposition aux procédés continus que l’on rencontre dans l’industrie chimique par exemple. Ceci permet de décrire l’évolution d’un automatisme comme une suite d’événements "discrets". Les événements sont en particulier les changements d’état des entrées/sorties assurant le dialogue entre la Partie Commande et la "Partie Opérative" du système automatisé. 4.1-1 Principe général A partir de la déclaration des entrées/sorties, de la description des systèmes câblés (relayage, sécurités...) et des axes, SIMTSX – une fois raccordé à l’API – est capable de donner vie au modèle et de reconstituer sa dynamique d’évolution. En effet : • connaissant à chaque instant l’état des sorties de commande, il en déduit l’activité des mouvements associés aux axes, • il est alors capable de projeter dans le temps et d’ordonner tous les futurs événements qui se produiront dans l’installation, • cet échéancier, qui peut d’ailleurs être remis en cause à chaque instant par une action de l’opérateur : appui sur un "BP", positionnement d’un défaut..., permet à SIMTSX de réagir sur les entrées API en garantissant de manière absolue le respect de l’ordre chronologique des événements réels. • L’envoi d’un événement daté sur une entrée API fait progresser d’autant la date de simulation (exemple : si seul un vérin est en cours de sortie, et que le capteur fin de course apparaîtra au bout de 30 secondes selon le modèle, l’envoi d’entrée à l’API revient à faire "vieillir" la machine simulée de 30 secondes, et ce indépendamment de la date "vraie" à laquelle SIMTSX envoie l’information). • SIMTSX étant en général plus rapide que l’installation réelle, le mode "temporisé" permet de cadencer l’envoi des événements en respectant les dates de simulation (exemple : SIMTSX attendrait effectivement 30 secondes avant d’envoyer l’information "fin de course du vérin", bien qu’il dispose de cette information quelques millisecondes après avoir détecté l’ordre de sortie du vérin). ___________________________________________________________________________ 4/1 I 4.2 Précautions d’utilisation Échange des entrées/sorties entre SIMTSX et l'automate Le principe de la Simulation par Événements appliqué dans SIMTSX consiste à prévoir l’évolution des entrées en fonction de l’état des sorties. Les sorties reçues de l'automate sont stabilisées afin de : • respecter les événements, provoqués par les évolutions de ces sorties, sur l'installation, • ne pas propager dans le modèle de l'installation des évolutions transitoires d'une sortie ; ce qui ne correspondrait pas à la réalité en raison de l'inertie des actionneurs. • Dialogue SIMTSX-Automate en Simulation en mode local SIMTSX offre la possibilité de vérifier le modèle de la machine à simuler en pilotant celle-ci à l’aide d’un grafcet mécanicien : c’est la "Simulation en mode local". Cette simulation est réalisée en respectant la norme du grafcet. En particulier l’exécution du grafcet est effectuée avec recherche de stabilité lors d’un changement d’état des entrées : seul l’état final, et donc stable, des sorties est perçu par le modèle de la machine simulée. • Echange d’entrées/sorties avec un automate I Pour que la simulation s’effectue correctement, la prédiction des évolutions d’entrées doit se faire en fonction d’un état stable des sorties. Aussi le dialogue se passe-t-il de la façon suivante : chaque fois que le simulateur envoie des entrées au bloc fonction, celui-ci les fournit à l’automate, et recueille les évolutions de sorties résultant de la réaction du programme automate, pendant un temps correspondant à quelques cycles. A chaque cycle de simulation, SIMTSX envoie des entrées à l'automate. Ce dernier les applique au programme sur plusieurs cycles automate. A l'issue de chaque traitement du programme, l'automate mémorise les évolutions des sorties résultantes. Le temps correspondant au traitement de plusieurs cycles automate avec les mêmes valeurs d'entrées permet de présenter un état stable des sorties. Les sorties recueillies sont envoyées au simulateur qui peut alors poursuivre son traitement. Si des sorties continuent à évoluer, elles sont mémorisées dans l'automate. Ce dernier (nouveau cycle de simulation) les fournira au simulateur lorsque celui-ci enverra les changements d’état d’entrées suivants. ___________________________________________________________________________ 4/2 Précautions d’utilisation 4 • Prise en compte des temporisations de l’automate Le dialogue entre le simulateur et l’automate programmable repose sur l’hypothèse que, lorsque l’automate perçoit un changement d’état d’entrées, les sorties qu’il fait évoluer atteignent un état stable après quelques cycles d’exécution de son programme. Cependant l’utilisation de temporisations dans le programme de l’automate peut mettre en défaut cette hypothèse. Les différents usages des temporisations : - Certaines sont utilisées pour effectuer des actions en "boucle ouverte", n’engendrant pas de compte-rendu de la Partie Opérative. C’est le cas par exemple des fonctions auxiliaires telles que le clignotement des voyants. Ces temporisations n’engendrent pas de problème dans le dialogue, si ce n’est que la période de clignotement ne doit pas être trop petite afin que les états actifs/inactifs de la sortie impliquée soient perçus correctement. - Des temporisations peuvent également être employées pour générer des créneaux de sortie de durée suffisante pour vaincre l’inertie d’un préactionneur, tel qu’un distributeur. L’émission de ces commandes impulsionnelles peut être retardée par rapport à la réception des entrées par l’automate. Le problème est alors d’éviter que ces sorties soient filtrées par le dialogue entre le simulateur et l’automate. I E S E S Impulsion retardée non perçue par le simulateur ___________________________________________________________________________ 4/3 En effet, si l’échange d’entrées/sorties se passe de façon telle que les fronts montant et descendant d’une sortie impulsionnelle soient envoyées par l'automte dans le même groupe de sorties, le passage temporaire à l’état actif de la sortie concernée ne sera pas pris en compte et n’aura pas l’effet escompté sur l’application simulée. Pour remédier à ce problème, il faut que l’impulsion ne se produise pas entre deux échanges d’entrées/sorties successifs, ce qui peut se passer si le passage à 1 de la sortie est retardée par rapport à la réception des entrées. Il faudrait en fait que la durée de l’impulsion soit plus importante que le temps d'un cycle de simulation (intervalle de temps séparant deux échanges d’entrées/ sorties). Comme ce temps dépend du traitement effectué par le simulateur et peut être très variable, il est en pratique plus judicieux d’annuler le retard éventuel entre la réception des entrées et l’émission des sorties en modifiant les temporisations du programme de l’automate. E S E S Adaptation pour avoir un fonctionnement correct I - Un dernier usage des temporisations est la surveillance des évolutions de l’installation. Elles sont utilisées en tant que "chien de garde" de mouvements ou de parties de cycle, permettant de détecter des collages à 0 de capteurs ou des blocages d’actionneurs par exemple. Bien qu’en général la simulation soit "accélérée" par rapport à la machine réelle, il peut arriver, pour certains mouvements rapides, que le simulateur soit plus lent que la réalité. Il vaut mieux, dans un premier temps, majorer la valeur de ces temporisations en "chien de garde". On pourra alors valider la partie séquentielle du programme d’animation indépendamment des aspects temporels de la surveillance. La vérification du bon fonctionnement des temporisations de surveillance pourra ensuite être réalisée en ajustant leur valeur en fonction du temps de réponse effectif du simulateur. ___________________________________________________________________________ 4/4 Précautions d’utilisation 4 Simulation analogique et régulation Le principe des axes échantillonnés permet de simuler de manière "continue" les évolutions de certaines grandeurs : position mécanique d’un mobile, niveau d’une cuve, poids de produit, grandeurs physiques de température, pression... Le principe de simulation reste celui de la simulation par événements : tout franchissement d’un pas sur un axe est assimilé à un événement du type changement d’état d’un capteur. Il est clair que, pour des raisons de performance, l’emploi des axes échantillonnés doit se faire avec précaution. Il est recommandé notamment de réduire au maximum le nombre de pas sur un axe, en considérant dans chaque cas quel est le besoin réel de l’automaticien chargé de la mise au point de l’application. Les axes échantillonnés et les variables numériques peuvent permettre de reproduire fidèlement le comportement de certaines grandeurs physiques, moyennant un effort d’analyse préalable. Dans le cas d’une grandeur "d’ordre 2", il est possible par exemple de créer un axe simulant la variable, dont la vitesse du mouvement d’évolution soit elle-même donnée par la position d’un second axe correspondant à la "dérivée" de la variable ! Sur ce second axe, la vitesse correspondante est la "dérivée seconde". Dans le cas d’une modélisation par fonction de transfert (cas des systèmes linéaires), l’utilisation de transformées (notamment la "transformée en Z") permet d’obtenir des équations simples (à transcrire dans les tableaux d’affectations) déduisant les échantillons successifs d’une variable, un axe rotatif pouvant alors générer des "tops" correspondant à la période d’échantillonnage. SIMTSX restant basé sur un principe de simulation par événements, et non sur un principe de simulation en temps réel, ces méthodes de modélisation sont à utiliser avec beaucoup de précaution, pour la simple raison qu’il est impossible de garantir dans tous les cas une fréquence d’échantillonnage des variables calculées. En conséquence, il est exclus, sur le principe, de vouloir utiliser SIMTSX pour tester en plateforme le comportement de boucles de régulation complexes. L’expérience montre de plus que les gains obtenus ne sont pas en rapport avec les efforts de modélisation nécessaires car : • d’une part, il est souvent difficile d’obtenir suffisamment de connaissance pour une modélisation détaillée, • d’autre part, les réglages des régulations restent toujours à effectuer sur site avec le process réel. ___________________________________________________________________________ 4/5 I Comme pour le choix du pas sur un axe échantillonné, il incombe à l’utilisateur de SIMTSX d’analyser le besoin réel de la mise au point sur plate-forme pour définir le niveau nécessaire et suffisant de modélisation des grandeurs physiques. Limitations SIMTSX SIMTSX permet la mise au point d'application pour tous les types d'architecture automates Micro, Premium et Quantum. Les limites spécifiques de SIMTSX sont : • nombre de Mots Internes (%MW) pouvant être simulés : 128 en écriture et 128 en lecture, • nombre de voies analogiques d'équipements Fipio pouvant être simulées : ≤ 1920, • restriction sur la mise au point d'une application contenant des traitements événementiels PL7. Pour Micro : • nombre de Mots Internes (%MW) pouvant être simulés : 32 en écriture et 32 en lecture. Pour Micro (version logicielle 3.0 uniquement) : • si plus de 58 sorties évoluent simultanément dans un cycle de simulation, certaines évolutions de sorties peuvent ne pas être prises en compte par le simulateur. I Simulation avec des entrées/sorties déclarées dans une tâche PL7 mais utilisées dans une autre Si une entrée/sortie est configurée dans une tâche PL7 mais utilisée dans une tâche différente du programme, la valeur de cette entrée/sortie risque de ne pas être cohérente avec la simulation. Pour cela, il est recommandé d'utiliser les entrées/sorties dans les tâches où elles sont configurées. ___________________________________________________________________________ 4/6 Chapitre 55 La simulation multi-automate 5 La simulation multi-automate 5.1 La simulation multi-automate La simulation multi-automate consiste à développer une seule application SIMTSX pilotée par une architecture de commande répartie sur plusieurs automates. Elle se justifie : • lorsque les programmes de chaque automate sont très interdépendants (échanges de mots COM, gestion de redondance, stratégie de pilotage de flux de production...), • lorsqu’il existe dans l’architecture des fonctions de "niveau 2" qui interagissent avec les automates et que l’on souhaite également valider (supervision, gestion de production), • lorsqu’il y a des interactions fortes entre des zones de partie opérative pilotées par des automates différents (flux de production, systèmes de manutention...). Sur le plan méthodologique, il est fortement recommandé : • de faire d’abord une simulation mono-automate, automate par automate, • de réserver ensuite la simulation multi-automate pour des tests complémentaires spécifiques, liés à l’architecture, qui auront été définis au préalable. Cette démarche structurée s’avère indispensable pour ne pas être confronté à une multitude de non-qualités de natures très diverses dès le démarrage d’une simulation multi-automate, et pour garantir par ailleurs une bonne exhaustivité des tests en multiautomate (qui supposent des scénarios bien particuliers selon les tests à réaliser). I ___________________________________________________________________________ 5/1 Simulation multi-automate sur bus Uni-Telway Pour réaliser une simulation multi-automate en utilisant un bus de terrain Uni-Telway s'inspirer du schéma suivant : API Premium avec coupleur Uni-Telway Maître API Premium avec coupleur Uni-Telway Esclave N°7 Convertisseur RS 232/BC Adresse = 0.254.0 Adresse = 0.254.5.254.7 PC avec SIMTSX et driver UniTelway configuré en esclave N°8 I Le driver Uni-Telway du poste de simulation SIMTSX est à configurer en esclave (configuration par défaut) avec le numéro d'esclave désiré (Base = N° d'esclave, Nombre = nombre d'esclaves auxquels doit répondre le PC à partir de Base). Dans la page de paramètres de SIMTSX, choisir pour les deux automates le driver Uni-Telway et saisir l'adresse 0.254.0 pour simuler sur l'automate maître et l'adresse 0.254.5.254.i pour accéder à l'automate esclave N°i (N°7 dans l'exemple ci-dessus). Remarque Pour simuler une application SIMTSX, en passant par la prise console de l'automate maître, l'adressage de l'automate esclave dans SIMTSX est le suivant : 0.254.5.<RackModule>.<VoieAd0> - Le champ <RackModule> désigne l'automate maître. Il doit être renseigné de la façon suivante : (Numéro de rack du maître*16) + Numéro de module du maître. - Le champ <VoieAd0> désigne l'automate esclave. Il doit être renseigné de la façon suivante : (Numéro de la voie du maître*100) + Numéro Ad0 de l'esclave. ___________________________________________________________________________ 5/2 Présentation Chapitre 66 6 Liaisons D.D.E. 6.1 Informations générales L’échange dynamique de données (D.D.E.) est un mode de communication interprocessus qui permet d’échanger des données entre logiciels, qu’il s’agisse du transfert d’une information, ou de tenir informé un logiciel des évolutions des données d’un autre logiciel. SIMTSX est un "serveur D.D.E.". C’est-à-dire, qu’il est possible pour toute application "client D.D.E." de connaître l’état des variables SIMTSX, de suivre leurs évolutions, et de changer leurs valeurs. Le serveur D.D.E. SIMTSX est disponible pour les logiciels WINDOWS clientes uniquement lorsque que la fenêtre principale de la simulation est activée (simulation en mode local ou simulation connectée à l’automate). Le nom du sujet pour lequel une liaison peut être ouverte est le nom de l’application sur laquelle la simulation est effectuée (ex : Maqutsx). La syntaxe du nom de sujet est celle des noms d’application SIMTSX ; la première lettre du nom de l’application doit être en majuscule et les lettres suivantes doivent être en minuscules. Environnement de simulation de SIMTSX Exemple d’imagerie de supervision Echanges D.D.E. < > I Les requêtes comprises par le serveur D.D.E. de SIMTSX sur ses données sont de trois types : • lire la valeur de la donnée (noté LECTURE), • être informé de chaque modification de la donnée (noté INFORMATION), • changer la valeur de la donnée (noté ECRITURE). Selon les données, seules une ou plusieurs de ces requêtes sont disponibles. Pour chaque donnée, les requêtes possibles sont détaillées dans la suite de cette section. Remarques : Pour respecter au plus près le standard D.D.E., SIMTSX différencie les majuscules et les minuscules. De même, les caractères accentués sont différenciés des caractères non accentués. Seul le format CF_TEXT est actuellement reconnu par le serveur SIMTSX. ___________________________________________________________________________ 6/1 6.2 Liste des échanges D.D.E. Le tableau ci-dessous dresse la liste des données qui peuvent être échangées avec le serveur D.D.E. de SIMTSX. Le nom de serveur D.D.E. de SIMTSX est : SIMAC. Syntaxe standard de la requette D.D.E. : SIMAC|Application!requête. La colonne "Requête" donne la syntaxe correspondant aux différentes données d’échange, "elt" doit être remplacé par le nom utilisé dans l’application SIMTSX pour la variable correspondante. Exemple : SIMAC|Maqutsx!axe:ax-1:position -> suivi de l’évolution de l’axe 1 I Requête Lect. ALIMENTATIONS alimentations alimentations:nb alimentation:elt:état alimentation:elt:défaut oui oui oui oui AXES axes axes:nb axe:elt:état axe:elt:longueur axe:elt:position oui oui oui oui oui BISTABLES bistables bistables:nb bistable:elt:état bistable:elt:défaut oui oui oui oui CAPTEURS capteurs capteurs:nb capteur:elt:état capteur:elt:défaut capteur:elt:rebonds oui oui oui oui Ecrit. Info. oui oui oui oui oui Voir chapitre 6.4-1 liste des alimentations nombre d’alimentations état d’une alimentation elt défauts positionné sur une alimentation oui Voir chapitre 6.4-2 liste des axes nombre d’axes état d’un axe longueur d’un axe position d’un axe oui oui Voir chapitre 6.4-3 liste des bistables nombre de bistables état d’un bistable défauts positionnés sur un bistable oui oui Commentaire oui oui Voir chapitre 6.4-4 liste des capteurs nombre de capteurs état d’un capteur défaut positionnés sur un capteur rebonds positionnés sur un capteur DATE date date:unité oui oui Voir chapitre 6.3-6 évolution de la date de simulation unité de temps ENTREES entrées entrée:elt:état entrées:nb oui oui oui Voir chapitre 6.4-5 liste des entrées état d’une entrée nombre d’entrées variables EXTERNES externes externes:nb externe:elt:état oui oui oui oui oui oui oui Voir chapitre 6.4-6 liste des variables externes nombre de variables externes état d’une variable externe ___________________________________________________________________________ 6/2 Présentation Requête Lect. Ecrit. Info. Commentaire IMPULSION impulsion oui oui Voir chapitre 6.3-5 option arrêt sur impulsion de sortie MODE de simulation mode mode:période oui oui oui oui Voir chapitre 6.3-2 le mode de simulation courant la période MOUVEMENTS des axes mouvements oui mouvements:nb oui mouvement:elt:état oui NUMERIQUES numériques numériques:nb numériques:elt:valeur oui oui oui PIEGES de simulation pièges pièges:nb piège:elt:état piège:elt:maxi piège:elt:mini piège:elt:moyenne piège:elt:nombre oui oui oui oui oui oui oui RELAIS relais relais:nb relais:elt:état relais:elt:défaut oui oui oui oui SORTIES sorties sorties:nb sortie:elt:état oui oui oui STATUS de simulation status oui tempsréel oui VARIABLES variables variables:nb variable:elt:état variable:elt:défaut oui oui oui oui oui oui Voir chapitre 6.4-7 liste des mouvements nombre de mouvements état d’un mouvement oui Voir chapitre 6.4-12 liste des variables numériques nombre de variables numériques valeur d’une variable numérique oui oui oui oui oui Voir chapitre 6.4-8 liste des pièges de simulation nombre de pièges de simulation état d’un piège de simulation écart max. entre deux activations écart min. entre deux activations écart moyen entre deux activations nombre d’activation d’un piège oui oui Voir chapitre 6.4-9 liste des relais nombre de relais état d’un relais défauts positionnés sur un relais oui Voir chapitre 6.4-10 liste des sorties nombre de sorties état d’une sortie oui oui oui 6 Voir chapitre 6.3-1 l’état de la simulation option temps réel Voir chapitre 6.4-11 liste des variables nombre de variables état d’une variable défauts positionnés sur une variable ___________________________________________________________________________ 6/3 I 6.3 Information sur la simulation 6.3-1 Etat de la simulation : status Requêtes : LECTURE, INFORMATION, ECRITURE. Etat de fonctionnement du serveur D.D.E. de SIMTSX. La valeur retournée appartient à l’ensemble de chaînes de caractères suivant : • "en cours" si la simulation est en cours, • "interrompue" si la simulation est interrompue, • "bloquée" si la simulation est bloquée. Pour modifier l’état de la simulation, la valeur à envoyer au serveur SIMTSX est l’une des chaînes de caractères suivantes : • "interruption" : interrompt la simulation, • "relance" : relance la simulation. Remarque Il n’est pas possible de modifier l’état de la simulation lorsque l’état courant est "bloqué". I 6.3-2 Mode de simulation : mode Requêtes : LECTURE, ECRITURE. Mode de fonctionnement de la simulation. La valeur retournée par le serveur D.D.E. de SIMTSX est l’une des chaînes de caractères suivantes : • "pas à pas" si le mode de simulation pas à pas est le mode de simulation courant, • "périodique" si le mode de simulation courant est le mode périodique, • "continu" si le mode de simulation courant est le mode continu. Pour modifier la donnée mode, la valeur à envoyer au serveur D.D.E. de SIMTSX est l’une des trois chaînes de caractères listées ci-dessus. Remarque Pour sélectionner le mode de simulation périodique, il faut préalablement définir une période. ___________________________________________________________________________ 6/4 Présentation 6 6.3-3 Période de la simulation : mode:période Requêtes : LECTURE, ECRITURE. Période associée au mode de fonctionnement périodique. La valeur retournée par le serveur SIMTSX est une chaîne de caractères contenant la valeur de la période (ex : "0.001"). De même, pour changer la valeur de la période de simulation, l’application cliente envoie au serveur SIMTSX une chaîne de caractères contenant un nombre (les formats de nombre compréhensibles par SIMTSX sont ceux acceptés par l’interface de simulation). La valeur retournée est la chaîne de caractères "INCONNU" si aucune période n’est positionnée dans le serveur SIMTSX. 6.3-4 Mode temporisé : tempsréel Requêtes : LECTURE, ECRITURE. Indique si la simulation est en mode temporisé ou non. La valeur retournée (respectivement à transmettre au serveur SIMTSX) est l’une des chaînes de caractères suivantes : • "1" si l’option temporisé est active, "0" sinon I 6.3-5 Impulsion de sortie : impulsion Requêtes : LECTURE, ECRITURE. Retourne l’état de la case à cocher "arrêt si Impulsion de Sortie". La valeur retournée (respectivement à transmettre au serveur SIMTSX) est l’une des chaînes de caractères suivantes : • "1" si l’option est active, "0" sinon. ___________________________________________________________________________ 6/5 6.3-6 Date de la simulation : date Requêtes : LECTURE, INFORMATION. Retourne la valeur courante de la date sous la forme d’une chaîne de caractères. Suivant le type de représentation choisi la valeur retournée est soit : • "HH:MM:SS.XX" (HH : heures, MM : minutes, SS : secondes, XX : reliquat), • "MM:SS.XX" (MM : minutes, SS : secondes, XX : reliquat) si date envoyée < 1 heure. Remarque Si le modèle SIMTSX est calculé en centièmes de minutes, la date envoyée par liaison D.D.E. est automatiquement convertie au format heures, minutes,secondes. «date:unité» retourne l’unité utilisée pour le calcul de la date sous la forme d’une chaîne de caractères (requête de LECTURE). La valeur retournée appartient à l’ensemble de chaînes de caractères suivant : • "1/100 mn.", ou "sec.". I ___________________________________________________________________________ 6/6 Présentation 6.4 6 Information sur les éléments de description 6.4-1 Alimentation Alimentations Requête : LECTURE. Retourne la liste des alimentations de l’application sous la forme d’une chaîne de caractères. Chaque nom d’alimentation est délimité par les caractères séparateurs "CR" et "LF" (\r\n). La chaîne de caractères renvoyée est la chaîne de caractères vide si le serveur SIMTSX ne contient aucun élément de ce type. Alimentations:nb Requête : LECTURE. Retourne le nombre d’alimentations de l’application sous la forme d’une chaîne de caractères contenant un nombre. Alimentation:elt:état Requêtes : LECTURE, INFORMATION. Etat de l’alimentation elt, où elt est le nom d’une alimentation SIMTSX écrit en minuscules. Les valeurs obtenues auprès du serveur SIMTSX appartiennent à l’ensemble de chaînes de caractères suivant : • "1" si l’alimentation est active, "0" sinon. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas une alimentation SIMTSX. Alimentation:elt:défaut Requêtes : LECTURE, INFORMATION, ECRITURE. Défauts positionnés sur l’alimentation elt, où elt est le nom d’une alimentation SIMTSX écrit en minuscules. Les valeurs obtenues auprès du serveur SIMTSX appartiennent à l’ensemble de chaînes de caractères suivant : • • • • • "collage à 0", "collage à 1", "forçage à 0", "forçage à 1", "" (chaîne de caractères vide) si aucun défaut n’est positionné sur l’alimentation elt. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas une alimentation SIMTSX. Pour positionner un défaut, l’application client envoie l’une des chaînes de caractères ci-dessus. Pour retirer tous les défauts positionnés sur l’alimentation elt, l’application client envoie au serveur SIMTSX la chaîne de caractères "aucun". Remarque La requête d’écriture est sans effet si la fenêtre de l’interface SIMTSX de positionnement des défauts sur les alimentations est ouverte. ___________________________________________________________________________ 6/7 I 6.4-2 Axe Axes Requête : LECTURE. Retourne la liste des axes de l’application sous la forme d’une chaîne de caractères. Chaque nom d’axe est délimité par les caractères séparateurs "CR" et "LF" (\r\n). La chaîne de caractères renvoyée est la chaîne de caractères vide si le serveur SIMTSX ne contient aucun élément de ce type. Axes:nb Requête : LECTURE. Retourne le nombre d’axes de l’ application sous la forme d’une chaîne de caractères contenant un nombre. Axe:elt :état Requêtes : LECTURE, INFORMATION. Etat de l’axe elt, où elt est le nom d’un axe SIMTSX écrit en minuscules. Les valeurs obtenues auprès du serveur SIMTSX appartiennent à l’ensemble de chaînes de caractères suivant : • "1" si l’axe est actif (un mouvement est en cours d’exécution). • "0" si l’axe est inactif (aucun mouvement de cet axe n’est en cours), La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas un axe SIMTSX. I Requêtes : LECTURE, INFORMATION. Axe:elt:position Position courante de l’axe elt, où elt est le nom d’un axe SIMTSX écrit en minuscules. La valeur est renvoyée sous la forme d’une chaîne de caractères contenant un nombre compris entre 0 et 1. La valeur retournée est le pourcentage de sortie de l’axe elt. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas un axe SIMTSX. Axe:elt:longueur Requête : LECTURE. Longueur de l’axe elt, où elt est le nom d’un axe SIMTSX écrit en minuscules. La valeur est renvoyée sous la forme d’une chaîne de caractères contenant un nombre. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas un axe SIMTSX. ___________________________________________________________________________ 6/8 Présentation 6 6.4-3 Bistable Bistables Requête : LECTURE. Retourne la liste des bistables de l’application sous la forme d’une chaîne de caractères. Chaque nom de bistable est délimité par les caractères séparateurs "CR" et "LF" (\r\n). La chaîne de caractères renvoyée est la chaîne de caractères vide si le serveur SIMTSX ne contient aucun élément de ce type. Bistables:nb Requête : LECTURE. Retourne le nombre de bistables de l’application sous la forme d’une chaîne de caractères contenant un nombre. Bistable:elt :état Requêtes : LECTURE, INFORMATION. Etat du bistable elt, où elt est le nom d’un bistable SIMTSX écrit en minuscules. Les valeurs obtenues auprès du serveur SIMTSX appartiennent à l’ensemble de chaînes de caractères suivant : • "1" si le bistable est actif, "0" sinon. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas un bistable SIMTSX. Bistable:elt:défaut Requêtes : LECTURE, INFORMATION, ECRITURE. Défauts positionnés sur le bistable elt, où elt est le nom d’un bistable SIMTSX écrit en minuscules. Les valeurs obtenues auprès du serveur SIMTSX appartiennent à l’ensemble de chaînes de caractères suivant : • "collage à 0", • "collage à 1", • "forçage à 0", • "forçage à 1", • "" (chaîne de caractères vide) si aucun défaut n’est positionné sur le bistable elt. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas un bistable SIMTSX. Pour positionner un défaut, l’application client envoie l’une des chaînes de caractères ci-dessus. Pour retirer tous les défauts positionnés sur le bistable elt, l’application client envoie au serveur SIMTSX la chaîne de caractères "aucun". Remarque La requête d’écriture est sans effet si la fenêtre de l’interface SIMTSX de positionnement des défauts sur les bistables est ouverte. ___________________________________________________________________________ 6/9 I 6.4-4 Capteur Capteurs Requête : LECTURE. Retourne la liste des capteurs de l’application sous la forme d’une chaîne de caractères. Chaque nom de capteur est délimité par les caractères séparateurs "CR" et "LF" (\r\n). La chaîne de caractères renvoyée est la chaîne de caractères vide si le serveur SIMTSX ne contient aucun élément de ce type. Capteurs:nb Requête : LECTURE. Retourne le nombre de capteurs de l’application sous la forme d’une chaîne de caractères contenant un nombre. Capteur:elt :état Requêtes : LECTURE, INFORMATION. Etat du capteur elt, où elt est le nom d’un capteur SIMTSX écrit en minuscules. Les valeurs obtenues auprès du serveur SIMTSX appartiennent à l’ensemble de chaînes de caractères suivant : • "1" si le capteur est actif, "0" sinon. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas un capteur SIMTSX. I Capteur: elt:défaut Requêtes : LECTURE, INFORMATION, ECRITURE. Défauts positionnés sur le capteur elt, où elt est le nom d’un capteur SIMTSX écrit en minuscules. Les valeurs obtenues auprès du serveur SIMTSX appartiennent à l’ensemble de chaînes de caractères suivant : • • • • • • • "collage à 0", "collage à 1", "forçage à 0", "forçage à 1", "rebonds à l’activation", "rebonds à la désactivation", "" (chaîne de caractères vide) si aucun défaut n’est positionné sur le capteur elt. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas un capteur SIMTSX. Le résultat de la requête peut être plusieurs chaînes de caractères concaténées si, par exemple, il y a, à la fois, un forçage et des rebonds positionnés. Pour modifier les défauts positionnés sur le capteur elt, l’application client envoie l’une des chaînes de caractères suivantes : • • • • • "collage à 0", "collage à 1", "forçage à 0", "forçage à 1", "aucun". Remarque La requête d’écriture est sans effet si la fenêtre de l’interface SIMTSX de positionnement des défauts sur les capteurs est ouverte. ___________________________________________________________________________ 6/10 Présentation 6 Pour positionner des rebonds depuis l’application client il faut utiliser la requête "rebonds". Capteur:elt:rebonds Requête : ECRITURE. Positionne des rebonds sur elt, où elt est le nom d’un capteur SIMTSX écrit en minuscules. Les valeurs transmises au serveur SIMTSX appartiennent à l’ensemble de chaînes de caractères suivant : • "rebonds à l’activation", • "rebonds à la désactivation", • "aucun" pour retirer tous les rebonds positionnés sur le capteur elt. Remarque La requête d’écriture est sans effet si la fenêtre de l’interface SIMTSX de positionnement des rebonds sur les capteurs est ouverte. 6.4-5 Entrée Entrées Requête : LECTURE. Retourne la liste des entrées de l’ application sous la forme d’une chaîne de caractères. Chaque nom d’entrée est délimité par les caractères séparateurs "CR" et "LF" (\r\n). La chaîne de caractères renvoyée est la chaîne de caractères vide si le serveur SIMTSX ne contient aucun élément de ce type. Entrées:nb Requête : LECTURE. Retourne le nombre d’entrées de l’application sous la forme d’une chaîne de caractères contenant un nombre. Entrée:elt:état Requête : LECTURE, INFORMATION. Etat de l’entrée elt, où elt est le nom d’une entrée SIMTSX écrit en minuscules. Les valeurs obtenues auprès du serveur SIMTSX appartiennent à l’ensemble de chaînes de caractères suivant : • "1" si l’entrée est active, "0" sinon. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas une entrée SIMTSX. ___________________________________________________________________________ 6/11 I 6.4-6 Externe Externes Requête : LECTURE. Retourne la liste des variables externes de l’application sous la forme d’une chaîne de caractères. Chaque nom de variable externe est délimité par les caractères séparateurs "CR" et "LF" (\r\n). La chaîne de caractères renvoyée est la chaîne de caractères vide si le serveur SIMTSX ne contient aucun élément de ce type. Externes:nb Requête : LECTURE. Retourne le nombre de variables externes sous la forme d’une chaîne de caractères contenant un nombre. Externe:elt:état Requêtes : LECTURE, INFORMATION, ECRITURE. Etat de la variable externe elt, où elt est le nom d’une variable externe SIMTSX écrit en minuscules. Les valeurs obtenues auprès du serveur SIMTSX appartiennent à l’ensemble de chaînes de caractères suivant : • "1" si la variable externe est active, "0" sinon. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas une variable externe SIMTSX. Pour positionner la valeur d’une variable externe, l’application client envoie l’une des deux chaînes de caractères définies ci-dessus. Remarque I La requête d’écriture est sans effet si la fenêtre de l’interface SIMTSX de modification des variables externes est ouverte. ___________________________________________________________________________ 6/12 Présentation 6 6.4-7 Mouvement Mouvements Requête : LECTURE. Retourne la liste des mouvements de l’ application sous la forme d’une chaîne de caractères. Chaque nom de mouvement est délimité par les caractères séparateurs "CR" et "LF" (\r\n). La chaîne de caractères renvoyée est la chaîne de caractères vide si le serveur SIMTSX ne contient aucun élément de ce type. Mouvements:nb Requête : LECTURE. Retourne le nombre de mouvements de l’ application sous la forme d’une chaîne de caractères contenant un nombre. Mouvement:elt :état Requêtes : LECTURE, INFORMATION. Etat du mouvement elt, où elt est le nom d’un mouvement SIMTSX écrit en minuscules. Les valeurs obtenues auprès du serveur SIMTSX appartiennent à l’ensemble de chaînes de caractères suivant : • "1" si le mouvement est actif, "0" sinon. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas un mouvement SIMTSX. I ___________________________________________________________________________ 6/13 6.4-8 Piège Pièges Requête : LECTURE. Retourne la liste des pièges de l’application sous la forme d’une chaîne de caractères. Chaque nom de piège est délimité par les caractères séparateurs "CR" et "LF" (\r\n). La chaîne de caractères renvoyée est la chaîne de caractères vide si le serveur SIMTSX ne contient aucun élément de ce type. Pièges:nb Requête : LECTURE. Retourne le nombre de pièges de simulation de l’application sous la forme d’une chaîne de caractères contenant un nombre. Piège: elt:état Requêtes : LECTURE, INFORMATION. Etat de elt, où elt est le nom d’un piège de simulation SIMTSX écrit en minuscules. Les valeurs obtenues auprès du serveur SIMTSX appartiennent à l’ensemble de chaînes de caractères suivant : • "1" si le piège est actif, "0" sinon. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas un piège de simulation SIMTSX. I Requête : LECTURE. Piège:elt:nombre Nombre d’activations enregistrées de elt, où elt est le nom d’un piège de simulation SIMTSX écrit en minuscules. La valeur obtenue est une chaîne de caractères contenant un nombre. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas un piège de simulation SIMTSX. Piège: elt:moyenne Requête : LECTURE. Ecart moyen enregistré entre deux activations de elt, où elt est le nom d’un piège de simulation SIMTSX écrit en minuscules. La valeur obtenue est une chaîne de caractères contenant un nombre. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas un piège de simulation SIMTSX. Piège:elt:mini Requête : LECTURE. Ecart minimal enregistré entre deux activations de elt, où elt est le nom d’un piège de simulation SIMTSX écrit en minuscules. La valeur obtenue est une chaîne de caractères contenant un nombre. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas un piège de simulation SIMTSX. Piège:elt :max Requête : LECTURE. Ecart maximal enregistré entre deux activations de elt, où elt est le nom d’un piège de simulation SIMTSX écrit en minuscules. La valeur obtenue est une chaîne de caractères contenant un nombre. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas un piège de simulation SIMTSX. ___________________________________________________________________________ 6/14 Présentation 6 6.4-9 Relais Relais Requête : LECTURE. Retourne la liste des relais de l’ application sous la forme d’une chaîne de caractères. Chaque nom d’alimentation est délimité par les caractères séparateurs "CR" et "LF" (\r\n). La chaîne de caractères renvoyée est la chaîne de caractères vide si le serveur SIMTSX ne contient aucun élément de ce type. Relais:nb Requête : LECTURE. Retourne le nombre de relais de l’ application sous la forme d’une chaîne de caractères contenant un nombre. Relais:elt :état Requêtes : LECTURE, INFORMATION. Etat du relais elt, où elt est le nom d’un relais SIMTSX écrit en minuscules. Les valeurs obtenues auprès du serveur SIMTSX appartiennent à l’ensemble de chaînes de caractères suivant : • "1" si le relais est actif, "0" sinon. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas un relais SIMTSX. Requêtes : LECTURE, INFORMATION, ECRITURE. Relais: elt:défaut Défauts positionnés sur le relais elt, où elt est le nom d’un relais SIMTSX écrit en minuscules. Les valeurs obtenues auprès du serveur SIMTSX appartiennent à l’ensemble de chaînes de caractères suivant : • "collage à 0", • "collage à 1", • "forçage à 0", • "forçage à 1", • "" (chaîne de caractères vide) si aucun défaut n’est positionné sur le relais elt. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas un relais SIMTSX. Pour positionner un défaut, l’application client envoie l’une des chaînes de caractères ci-dessus. Pour retirer tous les défauts positionnés sur le relais elt, l’application client envoie au serveur SIMTSX la chaîne de caractères "aucun". Remarque La requête d’écriture est sans effet si la fenêtre de l’interface SIMTSX de positionnement des défauts sur les relais est ouverte. ___________________________________________________________________________ 6/15 I 6.4-10 Sortie Sorties Requête : LECTURE. Retourne la liste des sorties de l’application sous la forme d’une chaîne de caractères. Chaque nom de sortie est délimité par les caractères séparateurs "CR" et "LF" (\r\n). La chaîne de caractères renvoyée est la chaîne de caractères vide si le serveur SIMTSX ne contient aucun élément de ce type. Sorties:nb Requête : LECTURE. Retourne le nombre de sorties de l’application sous la forme d’une chaîne de caractères contenant un nombre. Sortie:elt:état Requêtes : LECTURE, INFORMATION. Retourne la valeur de la sortie elt, où elt est le nom d’une sortie SIMTSX écrit en minuscules. La valeur appartient à l’ensemble suivant : • "1" si la sortie est à l’état haut, "0" sinon. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas une sortie SIMTSX. I ___________________________________________________________________________ 6/16 Présentation 6 6.4-11 Variable Variables Requête : LECTURE. Retourne la liste des variables de l'application sous la forme d’une chaîne de caractères. Chaque nom de variable est délimité par les caractères séparateurs "CR" et "LF" (\r\n). La chaîne de caractères renvoyée est la chaîne de caractères vide si le serveur SIMTSX ne contient aucun élément de ce type. Variables:nb Requête : LECTURE. Retourne le nombre de variables de l’application sous la forme d’une chaîne de caractères contenant un nombre. Variable:elt:état Requêtes : LECTURE, INFORMATION. Retourne la valeur de la variable elt, où elt est le nom d’une sortie SIMTSX écrit en minuscules. La valeur appartient à l’ensemble suivant : • "1" si la variable est à l’état haut, "0" sinon. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas une variable SIMTSX. Requêtes : LECTURE, INFORMATION, ECRITURE. Variable:elt:défaut Défauts positionnés sur la variable elt, où elt est le nom d’une variable SIMTSX écrit en minuscules. Les valeurs obtenues auprès du serveur SIMTSX appartiennent à l’ensemble de chaînes de caractères suivant : • "forçage à 0", • "forçage à 1", • "" (chaîne de caractères vide) si aucun défaut n’est positionné sur la variable elt. La chaîne de caractères renvoyée est "INCONNU" si elt n’est pas une variable SIMTSX. Pour positionner un défaut, l’application client envoie l’une des chaînes de caractères ci-dessus. Pour retirer tous les défauts positionnés sur la variable elt, l’application client envoie au serveur SIMTSX la chaîne de caractères "aucun". Remarque La requête d’écriture est sans effet si la fenêtre de l’interface SIMTSX de positionnement des défauts sur les variables est ouverte. ___________________________________________________________________________ 6/17 I 6.4-12 Numérique Numériques Requête : LECTURE. Retourne la liste des variables numériques de l'application sous la forme d’une chaîne de caractères. Chaque nom de variable est délimité par les caractères séparateurs "CR" et "LF" (\r\n). La chaîne de caractères renvoyée est la chaîne de caractères vide si l'application SIMTSX ne contient aucun élément de ce type. Numériques:nb Requête : LECTURE. Retourne le nombre de variables numériques de l’application sous la forme d’une chaîne de caractères contenant un nombre numérique:elt.valeur. Requêtes : LECTURE, ECRITURE, INFORMATION. Etat de elt, où elt est le nom d’une variable numérique SIMTSX écrit en minuscules. La valeur est renvoyée par SIMTSX sous la forme d'une chaîne de caractères. Il s'agit de "INCONNU" si elt n'est pas une variable numérique. Remarque La requête en écriture ne fonctionne que pour les variables numériques externes. Numériques:elt:valeur I Requêtes : LECTURE, ECRITURE, INFORMATION. Etat de elt, où elt est le nom d’une variable numérique SIMTSX écrit en minuscules. La valeur est renvoyée par SIMTSX sous la forme d'une chaîne de caractères. Il s'agit de "INCONNU" si elt n'est pas une variable numérique. Remarque La requête en écriture ne fonctionne que pour les variables numériques externes. ___________________________________________________________________________ 6/18 Présentation 6.5 6 Exemple de communication D.D.E. avec Excel L’exemple ci-dessous présente un tableau d’échange D.D.E. avec l’application SIMTSX «maqutsx». Pour activer les échanges D.D.E., il suffit de saisir ce tableau sous Excel et de faire évoluer l’application SIMTSX «maqutsx» en simulation locale ou connectée. Les valeurs de la deuxième colonne vont évoluer en fonction de la simulation. Pour des échanges avec une autre application, un superviseur par exemple, il suffit de saisir les liens D.D.E. dans la base de donnée ou le tableau d’échanges correspondant. Commentaire Lien D.D.E. Syntaxe à saisir dans les champs de la colonne lien D.D.E. état d’une axe longueur d’un axe position courante d’un axe liste des axes nombre d’axes défaut sur capteur état d’un capteur liste des capteurs nombre de capteurs date unité de date état d’une entrée liste des entrées nombre d’entrées état variable externe liste des variables externes nombre de variables externes mode de simulation courant valeur de la période état d’un mouvement 0 20 0.125 ax-1 11 0 1 a1 31 1.2540625 sec. 0 %i2.0 71 0 a4 31 continu INCONNU 0 =SIMAC|’Maqutsx’!’axe:ax-1:état’ =SIMAC|’Maqutsx’!’axe:ax-1:longueur’ =SIMAC|’Maqutsx’!’axe:ax-1:position’ =SIMAC|’Maqutsx’!axes =SIMAC|’Maqutsx’!’axes:nb’ =SIMAC|’Maqutsx’!’capteur:a1:défaut’ =SIMAC|’Maqutsx’!’capteur:a1:état’ =SIMAC|’Maqutsx’!capteurs =SIMAC|’Maqutsx’!’capteurs:nb’ =SIMAC|’Maqutsx’!date =SIMAC|’Maqutsx’!’date:unité’ =SIMAC|’Maqutsx’!’entrée:%i2.0:état’ =SIMAC|’Maqutsx’!entrées =SIMAC|’Maqutsx’!’entrées:nb’ =SIMAC|’Maqutsx’!’externe:a4:état’ =SIMAC|’Maqutsx’!externes =SIMAC|’Maqutsx’!’externes:nb’ =SIMAC|’Maqutsx’!mode =SIMAC|’Maqutsx’!’mode:période’ =SIMAC|’Maqutsx’!’mouvement:arfrai:état’ liste des mouvements nombre de mouvements liste des relais défaut sur relais état d’un relais nombre de relais état d’une sortie liste des sorties nombre de sorties défaut sur variable arfrai 16 km22 0 0 25 0 %q5.0 48 0 =SIMAC|’Maqutsx’!mouvements =SIMAC|’Maqutsx’!’mouvements:nb’ =SIMAC|’Maqutsx’!relais =SIMAC|’Maqutsx’!’relais:km22:défaut’ =SIMAC|’Maqutsx’!’relais:km22:état’ =SIMAC|’Maqutsx’!’relais:nb’ =SIMAC|’Maqutsx’!’sortie:%q5.0:état’ =SIMAC|’Maqutsx’!sorties =SIMAC|’Maqutsx’!’sorties:nb’ =SIMAC|’Maqutsx’!’variable:mem-pp0:défaut’ état d’une variable 0 =SIMAC|’Maqutsx’!’variable:mem-pp0:état’ variables nombre de variables mem-pp0 8 =SIMAC|’Maqutsx’!variables =SIMAC|’Maqutsx’!’variables:nb’ ___________________________________________________________________________ 6/19 I 6.6 Conseils et problèmes de liaisons D.D.E. 1. La requête «mode» ne fonctionne pas lorsque les modes continu et périodique sont sélectionnés en même temps. Seul un des modes courants est renvoyé par la liaison D.D.E. 2. Il existe deux modes de liaison D.D.E., les liaisons synchrones et les liaisons asynchrones. Durant une liaison synchrone, les processus clients et serveurs s’exécutent au même rythme, l’un attendant l’autre. Toutes les évolutions du serveur apparaissent chez le client. De ce fait, l’exécution de SIMTSX serveur est ralentie par la connexion. Ce mode est le mode utilisé par Microsoft EXCEL client D.D.E., par exemple. Par contre, lors d’une liaison asynchrone, client et serveur évoluent à leurs propres rythmes. Dans cette configuration, il est possible que le client "rate" certaines évolutions trop rapides du serveur. Ce mode de connexion est celui de NetD.D.E. pour Windows pour WorkGroups. I ___________________________________________________________________________ 6/20