▼
Scroll to page 2
of
326
Généralités A ___________________________________________________________________________ Mise en œuvre et méthodologie B OSI-LOADER C PL7-OSI D PL7-MMS E Blocs fonctions MMS F Annexes générales G Exemple d'application H ___________________________________________________________________________ A ___________________________________________________________________________ ________________________________________________________ A Généralités A ___________________________________________________________________________ Chapitre Page __________________________________________________________________________________________________ 1 Présentation générale de MMS _________________________________________________________________________________________ 1.1 Introduction à MMS 1/1 _______________________________________________________________________________ 1.2 Les services MMS 12 _______________________________________________________________________________ 1.3 Modèle Client-Serveur 1/2 _______________________________________________________________________________ 1.4 Services confirmés et non confirmés 1/2 _______________________________________________________________________________ 1.5 Le modèle fonctionnel MMS 1/3 _______________________________________________________________________________ 1.5-1 L'équipement virtuel de production VMD 1/3 1.5-2 Les objets MMS 1/3 __________________________________________________________________________________________________ 2 MMS et les automates TSX7 __________________________________________________________________________________________________________________ 2.1 Présentation 2/1 _______________________________________________________________________________ 2.1-1 Fonction Client 2/1 2.1-2 Fonction Serveur 2/1 2.2 Profil de communication 2/2 _______________________________________________________________________________ 2.3 Fonction Client MMS 2/3 _______________________________________________________________________________ 2.3-1 Services MMS supportés 2/3 2.3-2 Variables MMS supportées 2/4 2.4 Fonction Serveur MMS 2/5 _______________________________________________________________________________ 2.4-1 Services MMS supportés 2/5 2.4-2 Objets MMS supportés 2/6 __________________________________________________________________________________________________ 3 Modélisation MMS de l'automate TSX7 __________________________________________________________________________________________________________________ 3.1 Le VMD 3/1 _______________________________________________________________________________ 3.1-1 Description de l'objet VMD 3/1 3.1-2 Services MMS supportés 3/4 3.2 Le Domaine 3/5 _______________________________________________________________________________ 3.2-1 Description de l'objet Domaine 3/5 3.2-2 Services MMS supportés 3/6 3.3 Le Programme 3/7 _______________________________________________________________________________ 3.3-1 Description de l'objet PI (Program Invocation) 3/7 3.3-2 Services MMS supportés 3/8 ___________________________________________________________________________ A/1 ________________________________________________________ A ___________________________________________________________________________ Chapitre Page __________________________________________________________________________________________________ 3.4 Les Variables 3/9 _______________________________________________________________________________ 3.4-1 Objets associés à la station automate 3/10 3.4-2 Objets associés à l'application station 3/11 3.4-3 Description de l'objet variable anonyme 3/12 3.4-4 Description de l'objet variable nommée 3/13 3.4-5 Services MMS supportés 3/15 __________________________________________________________________________________________________ 4 Conventions __________________________________________________________________________________________________________________ 4.1 Paramètre "Argument" 4/1 _______________________________________________________________________________ 4.2 Paramètre "Result(+)" 4/1 _______________________________________________________________________________ 4.3 Paramètre "Result(-)" 4/1 _______________________________________________________________________________ 4.4 Procédure 4/1 _______________________________________________________________________________ __________________________________________________________________________________________________ 5 Gestion de contexte __________________________________________________________________________________________________________________ 5.1 Service Initiate 5/1 _______________________________________________________________________________ 5.1-1 Mode appelant MMS 5/1 5.1-2 Mode appelé MMS 5/3 5.2 Service Conclude 5/5 _______________________________________________________________________________ 5.2-1 Mode appelant MMS 5/5 5.2-2 Mode appelé MMS 5/5 5.3 Service Abort 5/6 _______________________________________________________________________________ 5.3-1 Mode appelant MMS 5/6 5.3-2 Mode appelé MMS 5/6 5.4 Service Reject 5/7 _______________________________________________________________________________ 5.4-1 Mode Client MMS 5/7 5.4-2 Mode Serveur MMS 5/8 ___________________________________________________________________________ A/2 ________________________________________________________ A Généralités A ___________________________________________________________________________ Chapitre Page __________________________________________________________________________________________________ 6 Gestion de l'équipement _________________________________________________________________________________________ 6.1 Service Status 6/1 _______________________________________________________________________________ 6.1-1 Mode Client MMS 6/1 6.1-2 Mode Serveur MMS 6/2 6.2 Service Unsollicited Status 6/3 _______________________________________________________________________________ 6.2-1 Mode Client MMS 6/3 6.2-2 Mode Serveur MMS 6/3 6.3 Service Identify 6/4 _______________________________________________________________________________ 6.4 Service GetNameList 6/5 _______________________________________________________________________________ _______________________________________________________________________________________________________________________________________________________________________________________________ 7 Gestion du domaine __________________________________________________________________________________________________________________ 7.1 Service InitiateDownLoadSequence 7/1 _______________________________________________________________________________ 7.2 Service DownLoadSegment 7/3 _______________________________________________________________________________ 7.3 Service TerminateDownLoadSequence 7/4 _______________________________________________________________________________ 7.4 Service InitiateUpLoadSequence 7/6 _______________________________________________________________________________ 7.5 Service UpLoadSegment 7/7 _______________________________________________________________________________ 7.6 Service TerminateUpLoadSegment 7/9 _______________________________________________________________________________ 7.7 Service DeleteDomain 7/10 _______________________________________________________________________________ 7.8 Service GetDomainAttributes 7/12 _______________________________________________________________________________ _______________________________________________________________________________________________________________________________________________________________________________________________ 8 Gestion de programme __________________________________________________________________________________________________________________ 8.1 Service CreateProgramInvocation 8/1 _______________________________________________________________________________ 8.2 Service DeleteProgramInvocation 8/3 _______________________________________________________________________________ 8.3 Service Start 8/5 _______________________________________________________________________________ 8.4 Service Stop 8/6 _______________________________________________________________________________ 8.5 Service Resume 8/7 _______________________________________________________________________________ 8.6 Service Reset 8/8 _______________________________________________________________________________ 8.7 Service GetProgramInvocationAttributes 8/9 _______________________________________________________________________________ ___________________________________________________________________________ A/3 ________________________________________________________ A ___________________________________________________________________________ Chapitre _ __________________________________________________________________________________________________________________________________________________________________________________Page ____________ 9 Gestion des variables __________________________________________________________________________________________________________________ 9.1 Paramètres "Variable Access Specification" 9/1 _______________________________________________________________________________ 9.2 Paramètres "Access Result" 9/3 _______________________________________________________________________________ 9.2-1 Paramètres 9/3 9.2-2 Codes d'erreur 9/4 9.3 Service Read 9/6 _______________________________________________________________________________ 9.3-1 Mode Client MMS 9/6 9.3-2 Mode Serveur MMS 9/7 9.4 Service Write 9/9 _______________________________________________________________________________ 9.4-1 Mode Client MMS 9/9 9.4-2 Mode Serveur MMS 9/10 9.5 Service InformationReport 9/11 _______________________________________________________________________________ 9.5-1 Mode Client MMS 9/11 9.5-2 Mode Serveur MMS 9/12 9.6 Service GetVariableAccessAttributes 9/12 _______________________________________________________________________________ _______________________________________________________________________________________________________________________________________________________________________________________________ 10 Annexes __________________________________________________________________________________________________________________ 10.1 Codes d'erreurs 10/1 _______________________________________________________________________________ 10.2 Codes d'erreurs émis par un serveur MMS distant Telemecanique 10/2 _______________________________________________________________________________ ___________________________________________________________________________ A/4 Présentation générale de MMS 1 __________________________________________________________________________________________ Ce chapitre s'adresse à des utilisateurs souhaitant prendre connaissance des concepts généraux de MMS. L'objectif n'est pas de faire une description de la norme MMS, mais plutôt d'en rappeler les points clés. Important La description des graphes d'états des objets MMS ainsi que le détail des procédures d'exécution des services MMS ne sont pas rappelés dans ce manuel. Pour les obtenir, il convient de se référer à la norme MMS. Si le lecteur est déjà familiarisé avec ces concepts, il peut passer directement au chapitre 2 de l'intercalaire A sur le support de MMS par les automates TSX7. 1.1 Introduction à MMS Le Service de Messagerie Industrielle MMS (Message Manufacturing Specification) définit les services (ISO 9506-1) et le protocole (ISO 9506-2) de la couche Application du profil de communication MAP3.0 pour l’inter-fonctionnement des équipements de l’usine. MMS s’appuie sur les services et protocoles du réseau retenus par MAP3.0 pour l’interconnexion des équipements. MMS est conçu pour répondre aux besoins requis par les échanges entre équipements qui participent à la fabrication industrielle (automates programmables, commandes numériques, robots...) et ceux qui participent à la gestion de production (calculateurs, superviseurs...). MMS définit un modèle fonctionnel qui répond à la diversité des fonctionnements, des types d’échanges et des éléments à manipuler. __________________________________________________________________________________________ 1/1 A A __________________________________________________________________________________________ 1.2 Les services MMS La norme MMS définit 86 services regroupés en sous-ensembles fonctionnels. On trouve : • la gestion de contexte MMS, • la gestion d’équipement, • la gestion des domaines, • la gestion des programmes, • la gestion des variables, • la gestion des événements, • la gestion des sémaphores, • la gestion des fichiers, • la gestion des commandes opérateurs, • la gestion de journal. __________________________________________________________________________________________ 1.3 Modèle Client-serveur __________________________________________________________________________________________ MMS utilise le modèle Client-Serveur, où l’équipement Client émet des demandes de services et où l’équipement Serveur exécute le service demandé et répond à l’équipement Client. Un équipement peut supporter uniquement le mode Serveur (répondeur à des demandes de services), ou uniquement le mode Client (émission des demandes de services), ou bien les deux à la fois, Client et Serveur. La plupart des services MMS sont de type confirmé. __________________________________________________________________________________________ 1.4 Services confirmés et non confirmés __________________________________________________________________________________________ Un service est dit confirmé lorsque l’échange (la transaction) nécessite une confirmation du répondeur. Un service non confirmé est traité sans confirmation de l’équipement receveur. __________________________________________________________________________________________ 1/2 Présentation générale de MMS 1 __________________________________________________________________________________________ 1.5 Le modèle fonctionnel MMS 1.5-1 L’équipement virtuel de production (VMD) MMS définit un équipement virtuel de production VMD (Virtual Manufacturing Device) de façon à représenter le comportement d’une grande variété d’équipements de fabrication. Le VMD modélise l’équipement Serveur (automate programmable, commande numérique...). Les services associés au VMD sont ceux de la famille "gestion d’équipement". Le VMD contient un certain nombre d’autres objets MMS qui sont présentés ci-dessous. 1.5-2 Les objets MMS Les objets MMS du VMD sont définis par leurs caractéristiques et par les opérations que les services MMS peuvent effectuer sur eux. Ces objets représentent, vis-à-vis des services MMS, le fonctionnement du VMD. On trouve les objets MMS suivants : • les domaines, • les programmes, • les variables, • les événements, • les sémaphores • les fichiers, • la station opérateur, • les journaux. __________________________________________________________________________________________ 1/3 A A __________________________________________________________________________________________ __________________________________________________________________________________________ 1/4 MMS et les automates TSX7 2 __________________________________________________________________________________________ 2.1 Présentation Ce chapitre décrit l’ensemble des fonctionnalités MMS supportées par les coupleurs OSI pour l’intégration des automates TSX7 dans une architecture MMS. Ces fonctionnalités sont assurées par le logiciel STACK OSI 3.0 qui doit être téléchargé dans les coupleurs OSI (Voir intercalaire C de la documentation PL7 OSI). L’automate TSX7 se comporte comme équipement Client et Serveur MMS. Il peut communiquer avec tout équipement MMS connecté sur le réseau. 2.1-1 Fonction Client Les services implémentés en mode Client MMS permettent d’effectuer les opérations suivantes : • lire et écrire les variables d'une application distante, • recevoir des variables non sollicitées, • lire l'état d'un équipement distant, • recevoir l'état non sollicité d'un équipement distant Pour l'utilisateur, le support des services en mode Client MMS est traité par des blocs fonctions OFBs programmés dans l'application PL7-3 (Cf chapitre 3, intercalaire F). 2.1-2 Fonction Serveur Les services implémentés en mode Serveur MMS permettent de supporter les opérations suivantes : • identifier l’automate (modèle, version), • surveiller l’état de fonctionnement de l’automate, • télécharger et archiver l’application station de l’automate, • contrôler l’exécution du programme séquentiel PL7-3, • lire et écrire les variables de l’application automate. Pour l’utilisateur, le support de ces services MMS ne nécessite aucune programmation dans l’application. L’automate est vu comme un répondeur automatique MMS. De plus, en mode Serveur MMS, le programme PL7-3 peut être à l'initiative des services suivants : • émission de variables non sollicitées, • émission de l'état de fonctionnement de la station TSX7. __________________________________________________________________________________________ 2/1 A A __________________________________________________________________________________________ Ces services sont déclenchés par des blocs fonction OFBs programmés dans l'application PL7-3 (Cf chapitre 3, intercalaire F). Par ailleurs, tous les services sont supportés simultanément avec les services X-WAY Telemecanique (messagerie UNI-TE, mots communs, gestion de réseau NETDIAG, pont...) décrits dans le manuel utilisateur des coupleurs OSI. 2.2 Profil de communication Les services et protocoles de communication supportés sont ceux retenus par MAP3.0. COUCHES NORMES SERVICES PROTOCOLES Application MMS IS MMS DIS ACSE ISO 9506/1 ISO 9506/2 ISO 8649 ISO 8650 Présentation Kernel ASN1 ISO 8822 ISO 8824 ISO 8825 ISO 8823 Session BCS ISO 8326 ISO 8327 Transport TP4 ISO 8072 ISO 8073 Réseau IP ES/IS ISO 8348 ISO 8473 ISO 9542 Liaison LLC1 ISO 8802.2 ISO 8802.2 MAC Token Bus CSMA-CD ISO 8802.4 ISO 8802.3 ISO 8802.4 ISO 8802.3 Physique CSMA-CD BaseBand (10Mb/s) Le profil de communication est paramétrable, ce qui permet l'adaptation du coupleur OSI à différents types de configuration (voir intercalaire D). __________________________________________________________________________________________ 2/2 MMS et les automates TSX7 2 __________________________________________________________________________________________ 2.3 Fonction Client MMS Cette fonction permet à l'application PL7-3/MMS de la station TSX7 d'être à l'initiative d'échanges MMS vers tout équipement distant du réseau. Ces échanges MMS sont supportés sur une association MMS version DIS ou IS négociée dynamiquement à l'ouverture d'association. Les associations MMS peuvent être ouvertes par la station TSX7 ou par l'équipement distant. 2.3-1 Services MMS supportés Gestion de contexte MMS : • Initiate • Conclude • Abort • Reject Gestion du VMD : • Status • Unsollicited status Gestion des VARIABLES : • Read • Write • Information Report __________________________________________________________________________________________ 2/3 A A __________________________________________________________________________________________ 2.3-2 Variables MMS supportées Les caractéristiques des variables MMS accédées par le programme PL7-3 Client MMS sont les suivantes : PORTEE TYPE MMS VMD/DOMAIN/AA TYPE SIMPLE : Boolean, Integer16, Integer32 Unsigned16, Unsigned32 FloatingPoint (simple précision), VisibleString2N (N =1..2048), OctetString2N (N = 1..2048) BitStringN (N = 1..2048) ARRAY [1..1024] : Boolean Integer16, Integer32 Unsigned16, Unsigned32 FloatingPoint (simple précision), VisibleString2, OctetString2, BitString1 BitString16 Structure (type simple) (*) STRUCTURE [1..16] : Type simple Array (type simple) (*) Le codage de ces variables est décrit dans l'intercalaire Fconcernat les OFB MMS. (*) : Type string limité à VisibleString2, OctetString2, BitString1 et BitString16. __________________________________________________________________________________________ 2/4 MMS et les automates TSX7 2 __________________________________________________________________________________________ 2.4 Fonction Serveur MMS Cette fonction permet à la station TSX7 d'être vu comme un répondeur automatique MMS pour tout équipement distant du réseau. Les cas d'émissions non sollicitées de variables et d'état de la station TSX7 (InformationReport, UnsollicitedStatus) doivent être programmés par les OFBs MMS dans l'application PL7-3/MMS. Ces échanges MMS sont supportés sur une association MMS version DIS ou IS négociée dynamiquement à l'ouverture d'association. Les associations MMS peuvent être ouvertes par la station par l'équipement distant ou par le TSX7. 2.4.1 Services MMS supportés Gestion de contexte MMS : • Initiate • Conclude • Abort • Reject Gestion du VMD : • Status • Unsollicited Status • GetNameList • Identify Gestion du DOMAIN : • InitiateDownLoadSequence • DownLoadSegment • TerminateDownLoadSequence • InitiateUpLoadSequence • UpLoadSequence • TerminateUpLoadSequence • GetDomainAttributes • DeleteDomain Gestion du PROGRAM (PI) : • CreateProgramInvocation • DeleteProgramInvocation • GetProgramInvocationAttributes • Start • Stop • Resume • Reset __________________________________________________________________________________________ 2/5 A A __________________________________________________________________________________________ Gestion des VARIABLES : • Read • Write • Information Report • GetVariableAccessAttributes 2.4.2 Objets MMS supportés On trouve dans le tableau suivant, les objets MMS supportés et la correspondance automate pour chaque type d’objet. Objet MMS Signification TSX7 VMD Station automate TSX7 DOMAIN L’application station .APP (intégrant tous les constituants de l'application automate pour automate de version V4) .APP plus autres constituants de l'application automate pour automate de version V5. PROGRAM (PI) Le programme PL7-3 (fonction commande séquentiel) VARIABLE de portée VMD/AA VARIABLE de portée VMD/DOMAIN/AA Bits (SYi) systèmes Horodateur Mots (SWi) systèmes Bits (Bi), Mots (Wi) et Double Mots (DWi) internes Bit d’un Mot (Wij) interne Mots (CWi) et Double Mots (CDWi) constants Suite de mots (Wi), Double Mots (DWi), Mots (CWi) et Double Mots (CDWi) constants, Bits (Bi) internes. __________________________________________________________________________________________ 2/6 Modélisation MMS de l'automate TSX7 3 __________________________________________________________________________________________ 3.1 Le VMD Le VMD représente la station automate TSX7 qui supporte le coupleur OSI. 3.1-1 Description de l'objet VMD Cette description est issue de la norme MMS. Executive fonction Elle permet de réaliser l’interface entre le modèle MMS et la station automate pour l’accès aux objets réels. Elle correspond au Serveur MMS. Vendor Name = TELEMECANIQUE Cet attribut définit le nom du vendeur de l’équipement. La valeur de cet attribut est fournie en réponse au service MMS Identify. Model Name = TSX/PMX 47.420/455 107.420/455 pour les automates V5 TSX/PMX 47.400 107.420 pour les automates V4 Cet attribut définit le modèle de l’équipement VMD. La valeur de cet attribut est fournie en réponse au service MMS Identify. Revision = Version du processeur TSX7 Cet attribut définit la version de l’équipement VMD. La valeur de cet attribut est fournie en réponse au service MMS Identify. List of Abstract Syntaxes Supported Non utilisé. Logical Status = STATE_CHANGES_ALLOWED ou SUPPORT_SERVICES_ALLOWED Cet attribut définit les services accessibles sur la station automate (mode de marche logiciel). La valeur de cet attribut est fournie en réponse au service MMS Status. __________________________________________________________________________________________ 3/1 A A __________________________________________________________________________________________ * STATE_CHANGES_ALLOWED Tous les services MMS supportés par le VMD peuvent être exécutés. * SUPPORT_SERVICES_ALLOWED Ce cas correspond à une mémoire UC non exécutable (pas d'application en mémoire TSX7). Tous les services MMS supportés par le VMD peuvent être exécutés sauf les services de gestion des Programmes. Les services d'accès aux variables sont restreints (pas d'accès aux variables de portée DOMAIN, pas d'accès aux variables nommées). List of Capabilities Non utilisé. Physical Status = OPERATIONAL ou NEEDS-COMMISSIONING ou PARTIALLY OPERATIONAL Cet attribut définit l’état opérationnel de la station automate (mode de marche matériel). La valeur de cet attribut est fournie en réponse au service MMS Status. OPERATIONAL La station automate est totalement opérationnelle si : • la mémoire est exécutable • il n’y a pas d’erreur logicielle • il n’y a pas de défaut I/O NEEDS-COMMISSIONING L’état de la station automate nécessite l’intervention d’un opérateur (assistance) si : • la mémoire est non exécutable • la cartouche n’est pas présente PARTIALLY-OPERATIONAL Tous les autres cas de défauts correspondent à cet état. Local Detail Cet attribut (16 bits) subdivisé en deux champs (2*8 bits) permet de spécifier plus finement l'état de la station automate. Chaque bit est associé à une information qui est vrai si le bit est à 1. La valeur de cet attribut est fournie en réponse au service MMS Status. __________________________________________________________________________________________ 3/2 Modélisation MMS de l'automate TSX7 3 __________________________________________________________________________________________ * PHYSICAL LOCAL DETAIL (8 bits de poids faible) b0 : Mémoire non exécutable b1 : Cartouche absente b2 : Software failure b3 : Défaut I/O * LOGICAL LOCAL DETAIL (8 bits de poids forts) b8 : Table des symboles MMS présente dans le coupleur OSI b9 : Répertoire OSI présent dans le coupleur OSI List of Program Invocations (PI) = Programme PL7-3 Cet attribut contient la liste des programmes (tâches) du VMD. Dans la version actuelle, il y a un seul programme, c’est-à-dire le programme PL7-3. Le nom du PI est définit au chapitre 3.3-1. La valeur de l’attribut "List Of PI" est fournie en réponse au service MMS GetNameList. List of Domains = L’application station automate Cet attribut contient la liste des domaines du VMD. Dans la version actuelle, il y a un seul domaine, c’est-à-dire l’application station automate. Le nom du domaine est défini au chapitre 3.2-1. La valeur de l’attribut "List Of Domains" est fournie en réponse au service MMS GetNameList. List of Transaction Objects Cet attribut contient la liste des objets Transaction en cours. Un objet Transaction est créé à la réception de toute primitive d’indication d’un service confirmé. Cet attribut est traité localement dans le Serveur MMS. List of Upload State Machines (ULSM) Cet attribut contient la liste des objets ULSM créés lors de la réception d’une indication du service d’initialisation de téléchargement du Domain. Cet attribut est traité localement dans le Serveur MMS. List of Other VMD Specific Objects Cet attribut contient la liste des autres objets du VMD. Ce sont les variables de la station automate (VMD) visibles par MMS et définies au chapitre 3.4-1. Additionnal details Non utilisé. __________________________________________________________________________________________ 3/3 A A __________________________________________________________________________________________ 3.1-2 Services MMS supportés Le tableau suivant présente les services MMS associés à l’objet VMD station automate TSX7. Services MMS Identification du VMD station automate TSX7 (Service MMS Identify) Lecture des états du VMD station automate TSX7 (Service MMS Status) Accès à la liste des noms d’une classe d’objets (domaine, PI, variable) associé au VMD à un domaine du VMD ou à une portée AA (Service MMS GetNameList) Emission non sollicitée de l'état du VMD station automate TSX7 (Service MMS UnsollicitedSatus) (1) (1) : La programmation de ce service dans l'application PL7-3 est expliquée au chapitre concernant les OFBs MMS au chapitre 3 de l'intercalaire F. __________________________________________________________________________________________ 3/4 Modélisation MMS de l'automate TSX7 3 __________________________________________________________________________________________ 3.2 Le Domaine Le domaine représente l’application station automate. 3.2-1 Description de l’objet Domaine Cette description est issue de la norme MMS. Domain Name = MMS ou PU_MEM (nom par d faut) Cet attribut identifie sans ambiguïté l’objet Domain dans le VMD. List of Capabilities Non utilisé. State Cet attribut spécifie l’état du domaine. Cinq états sont définis par la norme MMS (LOADING, COMPLETE, UNCOMPLETE, READY, IN_USE). Ces états sont traités localement dans le Serveur MMS. Assigned Application Association Cet attribut désigne l’association MMS utilisée pour la création du domaine (téléchargement). Il est traité localement dans le Serveur MMS. MMS Deletable = TRUE Cet attribut spécifie si le Domain est destructible par le service MMS DeleteDomain. La valeur de cet attribut est fournie sur la réponse au service MMS GetDomainAttributes. Sharable = FALSE Cet attribut indique que le domaine est utilisé uniquement par le programme PL7-3 dans le modèle MMS de l’automate TSX7. Domain Content Non utilisé. __________________________________________________________________________________________ 3/5 A A __________________________________________________________________________________________ List of Subordinate Objects Cet attribut contient la liste des références aux objets MMS appartenant au Domain. Cette liste contient les variables de l’application station (DOMAIN) accessibles par MMS et définies au chapitre 3.4-2, intercalaire A. List of Program Invocation References Cet attribut contient la liste des références aux programmes (tâches) qui utilisent le Domain. Cette liste contient le PI correspondant au nom du programme PL7-3 défini au chapitre 3.3-1, intercalaire A. Upload In Progress Cet attribut spécifie le nombre de sauvegardes du domaine en cours. Il est traité localement dans le Serveur MMS. Additional Detail Non utilisé. 3.2-2 Services MMS supportés Le tableau suivant présente les services MMS associés à l’objet DOMAIN application station automate. Services MMS Archivage du DOMAIN application station Services MMS : InitiateUploadSequence UploadSegment TerminateUploadSequence Destruction du DOMAIN application station Service MMS : DeleteDomain Téléchargement du DOMAIN application station Services MMS : InitiateDownloadSequence DownloadSegment TerminateDownloadSequence Accès aux caractéristiques du DOMAIN application station Services MMS : GetDomainAttributes __________________________________________________________________________________________ 3/6 Modélisation MMS de l'automate TSX7 3 __________________________________________________________________________________________ 3.3 Le programme Le programme représente la fonction commande séquentielle, c’est-à-dire le programme PL7-3. 3.3-1 Description de l’objet PI (Program Invocation) Cette description est issue de la norme MMS. PI Name = MMS ou PI_PL73 (nom par d faut) Cet attribut identifie sans ambiguïté l’objet PI. State Cet attribut spécifie l’état du PI. Neuf états sont définis par la norme MMS (IDLE, STARTING, RUNNING, STOPPED, RESUMING, RESETTING, UNRUNNABLE, NON EXISTENT et STOPPING) Ces états sont traités localement dans le Serveur MMS. List of Domains Reference = MMS ou PU_MEM Cet attribut contient la liste des références des domaines associés au PI. Le domaine associé au PI PL7-3 est l’application station automate. MMS Deletable = TRUE Cet attribut indique que le programme peut être détruit par le service MMS DeleteProgramInvocation. La valeur de cet attribut est fournie sur la réponse au service MMS GetProgramInvocationAttributes. Reusable = TRUE Cet attribut indique que le programme s’exécute de façon permanente sans nécessité de relance. Monitor = FALSE Cet attribut indique que l’exécution du PI ne sera pas scrutée par les mécanismes de gestion d’événements quand il quitte l’état RUNNING. __________________________________________________________________________________________ 3/7 A A __________________________________________________________________________________________ Start Arguments Non utilisé. Additional Detail Non utilisé. 3.3-2 Services MMS supportés Le tableau suivant présente les services MMS associés à l’objet PI programme PL7-3. Services MMS Création du PI PL7-3 Service MMS : CreateProgramInvocation Destruction du PI PL7-3 Service MMS : DeleteProgramInvocation Lancement de l’exécution du PI PL7-3 Service MMS : Start Arrêt de l’exécution du PI PL7-3 Service MMS : Stop Reprise de l’exécution du PI PL7-3 Service : MMS Resume Repositionnement au début du PI PL7-3 Service : MMS Reset Accès aux caractéristiques du PI PL7-3 Service MMS : GetPIAttributes __________________________________________________________________________________________ 3/8 Modélisation MMS de l'automate TSX7 3 __________________________________________________________________________________________ 3.4 Les variables Ils représentent les objets de l’équipement qui sont accessibles en lecture/écriture. Les variables supportées par le Serveur MMS sont : Objet MMS Accès NamedVariable (Variables Nommées) Par le nom de la variable UnnamedVariable (Variables Anonymes) Par l’adresse de la variable Une variable nommée est associée à une portée (Scope). Le Serveur MMS supporte les portées suivantes : Portée MMS Objets TSX7 VMD_specific Variables associées à la station automate TSX7 DOMAIN_specific Variables associées à l’application station AA_specific Variables associées à une association/application MMS Les règles de rangement des variables MMS en mémoire automate sont décrites dans le tableau chapitre 3.2-2, intercalaire F. Elles sont identiques aux règles de rangement des variables MMS distantes dans les objets PL7-3. A une variable nommée est associé un attibut "Automatique/Programmé". Variable programmée Une variable programmé supporte les Services de Gestion de Cohérence et de Séquencement : • Le Service Cohérence garantit un accès cohérent aux variables MMS/PL7-3 par les services MMS Read ou Write Serveur quelle que soit la longueur de la variable. • Le Service Séquencement garantit une synchronisation entre un accès à une variable MMS/PL7-3 par les services MMS Read ou Write Serveur et son utilisation dans PL7-3. L'accès à une variable "programmée" nécessite la programmation d'un OFB MSEMA dans l'application PL7-3. __________________________________________________________________________________________ 3/9 A A __________________________________________________________________________________________ Variable "Automatique" Une variable "Automatique" ne supporte pas le Service de Gestion de Séquencement mais supporte la Gestion de Cohérence uniquement si le nombre d'objet PL7-3 constituant la variable MMS est inférieur ou égal aux valeurs données dans le tableau ci-dessous : Objets Bit système Bit - mot interne Mot système Horodateur Nombre maximum d'objets PL7-3 constituant la variable 1 Double mot interne Double mot constant 30 Mot interne Mot constant 60 Bit interne 496 L'accès à une variable "Automatique" ne nécessite pas la programmation d'un OFB MSEMA dans l'application PL7-3. 3.4-1 Objets associés à la station automate Par défaut, les objets suivants, non présents dans le mode CONFIGURATION de PL7-3, sont associés à la station automate (Portée VMD) : Objets Repère automate Horodateur Bit_système SW50 à SW57 SY0 à SY128 La portée des bits système peut être modifiée grâce à l'outil PL7-MMS (Cf chapitre 3.3, intercalaire E). __________________________________________________________________________________________ 3/10 Modélisation MMS de l'automate TSX7 3 __________________________________________________________________________________________ 3.4-2 Objets associés à l’application station Par défaut, les objets suivants, configurables dans le mode CONFIGURATION de PL7-3, sont associés à l’application station (Portée DOMAIN) : Objets Repère automate Bit_interne B0 à B3935 (1) Mot_interne W0 à W32596 Double_mot_interne DW0 à DW32595 Mot_constant CW0 à CW26206 Double_mot_constant CDW0 à CDW26205 Mot_système SW0 à SW127 Bit_mot_interne Wi,j (j: O à F) Suite de mot_interne (2048 mots maximum) W0 à W32596 Suite de mot_constant (2048 mots maximum) CW0 à CW26206 Suite de double mot_interne (1024 double_mots maximum) DW0 à DW32595 Suite de double mot_constant (1024 double_mots maximum) CDW0 à CDW26205 Suite de bit_interne (2048 bits maximum) B0 à B3935 (1) La limite en indice des objets dépend de la configuration faite en mode CONFIGURATION sous PL7-3. La portée de ces objets peut être modifiée grâce à l'outil PL7-MMS (Cf chapitre 3.3, intercalaire E) en portée VMD et AA. __________________________________________________________________________________________ 3/11 A A __________________________________________________________________________________________ 3.4-3 Description de l’objet variable anonyme Une variable anonyme est désignée dans l’automate par une référence "repère automate" (ex : W10, B7...). Cette référence est utilisée pour désigner la variable anonyme MMS. C’est l’adresse symbolique de la variable MMS. La description suivante est issue de la norme MMS. Address = rep re automate Cet attribut désigne l’emplacement de la variable réelle dans l’équipement. MMS Deletable = FALSE Cet attribut indique qu’une variable anonyme est non destructible. Access Method = PUBLIC Cet attribut spécifie qu’une variable anonyme est toujours d’accès public. Type Description Cet attribut désigne le type de la variable anonyme pour son accès MMS. Les types MMS correspondant aux objets accédés sont les suivants : Variable anonyme Type MMS SYi Boolean Bi Boolean Wi,j Boolean Wi Integer16 DWi Integer32 CWi Integer16 CDWi Integer32 SWi Integer16 __________________________________________________________________________________________ 3/12 Modélisation MMS de l'automate TSX7 3 __________________________________________________________________________________________ 3.4-4 Description de l’objet variable nommée Une variable nommée est désignée dans l’automate par un symbole MMS de 32 caractères au maximum. Celui-ci est défini dans l’application automate et géré dans la base des symboles de la station sous X-TEL. La table des symboles de l’application est construite par PL7-MMS (Cf chapitre intercalaire E). La description suivante est issue de la norme MMS. Variable Name = Nom de la variable Cet attribut désigne le nom de la variable nommée. MMS Deletable = FALSE Cet attribut indique que la variable nommée est non destructible. Type Description Cet attribut désigne le type de la variable nommée pour son accès MMS. Les types MMS par défaut et autorisés correspondants aux objets accédés sont les suivants : __________________________________________________________________________________________ 3/13 A A __________________________________________________________________________________________ Type Variable Nommée Type MMS Bit_système Boolean (défaut) BitString1 Boolean (défaut) BitString1 Boolean (défaut) BitString1 Integer16 (défaut) Unsigned16, BitString16, OctetString2, VisibleString2 Integer32(défaut) Unsigned32, FloatingPoint Integer16 (défaut) Unsigned16, BitString16, OctetString2, VisibleString2 Integer32(défaut) Unsigned32, FloatingPoint Integer16 (défaut) Unsigned16, BitString16, OctetString2, VisibleString2 Generalized_time (1) OctetString2N (N=1..2048), VisibleString2N (N=1..2048), ARRAY [1..1024] : Integer16, Unsigned16, BitString16, VisibleString2 OctetString2, STRUCTURE [1..16] : Type simple, Array (type simple) (*) ARRAY [1..1024] : Integer32(défaut) Unsigned32, FloatingPoint BitStringN (N=1..2048), ARRAY [1..1024] : Boolean, BitString1 Bit_interne Bit_mot_interne Mot_interne Double_mot_interne Mot_constant Double_mot_constant Mot_système Date_heure Suite de mot_interne Suite de mot_constant (2048 mots maximum) Suite de double_mot_interne Suite de double_mot_constant (1024 double_mots maximum) Suite de bit_interne (2048 bits maximum) __________________________________________________________________________________________ 3/14 Modélisation MMS de l'automate TSX7 3 __________________________________________________________________________________________ (1) Le type generalized_time est conforme aux recommandations MMS. La variable nommée a pour nom pré-défini M_DAYTIME. (*) Type string limité à VisibleString2, OctetString2, BitString1 et BitString16. Access Method = PUBLIC Cet attribut spécifie qu'une variable nommée est toujours d'accès public. 3.4-5 Services MMS supportés Le tableau suivant présente les services MMS associés aux objets Variables. Services Serveur MMS Lecture d’une ou plusieurs variables (16 max) Service MMS : Read Ecriture d’une ou plusieurs variables (16 max) Service MMS : Write Accès aux caractéristiques d’une ou plusieurs variables (16 max) Service MMS : GetVariableAccessAttributes Emission non sollicitée d'une ou plusieurs variables Service MMS : InformationReport (1) (1) : La programmation de ce service dans l'application PL7-3 est expliquée au chapitre concernant les OFBs MMS au chapitre 3.8, intercalaire F. __________________________________________________________________________________________ 3/15 A A __________________________________________________________________________________________ __________________________________________________________________________________________ 3/16 Conventions 4 __________________________________________________________________________________________ 4. Conventions Les chapitres suivants vont permettre de décrire pour chaque service les éléments suivants : • Les paramètres du service, • La procédure de traitement du service dans le coupleur OSI et l’automate. 4.1 Paramètre "Argument" Il définit les paramètres de la requête (REQ) et de l’indication (IND) du service. Les valeurs décrites sont celles émises par le TSX7 CLIENT MMS (REQ) et attendues (ou possibles) par le TSX7 Serveur MMS. Pour les services dont les requêtes (REQ) peuvent être à l’initiative du Serveur MMS (Abort, Reject, DownloadSegment, TerminateSequence, UnsollicitedStatus, InformationReport) les valeurs décrites sont celles fournies par le Serveur MMS à l’utilisateur MMS distant. 4.2 Paramètre "Result(+)" Il définit les paramètres de la réponse (RSP) et de la confirmation (CNF) en cas de succès du service demandé. Les valeurs décrites sont celles fournies par le TSX7 Serveur MMS à l’utilisateur MMS distant et attendues (ou possibles) par le TSX7 Client MMS. 4.3 Paramètre "Result(-)" Il définit les causes et les codes d’erreur associés à une réponse négative sur une demande de service. Seuls les codes d’erreurs additionnels spécifiques à l’implémentation sont renseignés. Pour les autres cas d’erreurs, se reporter à la norme MMS. 4.4 Procédure Chaque service met en jeu des fonctions exécutives dans le Serveur MMS qui entraînent des actions dans le coupleur OSI et l’automate TSX7. Cette description permet de renseigner l’utilisateur sur les comportements attendus du Serveur MMS vis-à-vis de l’automate pour chaque service MMS (fonctionnement nominal). Les procédures mises en œuvre par l'application PL7-3/MMS grâce aux OFBs MMS sont décrits dans le chapitre 3, intercalaire F. __________________________________________________________________________________________ 4/1 A A __________________________________________________________________________________________ __________________________________________________________________________________________ 4/2 Gestion de contexte 5 __________________________________________________________________________________________ 5. Gestion de contexte La communication MMS se déroule en trois phases : • Phase d’ouverture de la connexion (association), • Phase d’échange de messages, • Phase de fermeture de la connexion. Les services de gestion de contexte s’appliquent à la première et la dernière de ces phases. 5.1 Service Initiate Le service Initiate permet à un appelant MMS de construire un environnement pour les communications avec un appelé MMS en fonction de leurs ressources et disponibilités respectives. Ce service doit être réalisé avec succès avant que les applications MMS puissent invoquer ou traiter des services MMS dans cet environnement. 5.1-1 Mode appelant MMS Ce service permet à l'application PL7-3/MMS d'ouvrir une association vers une application MMS distante. a. Argument Local Detail Calling = 7168 Taille maximum en octets proposée pour les PDUs MMS (Protocol Data Unit). Proposed Max Serv Outstanding Calling = M (M compris entre 2 et 5) Nombre maximum de transactions par association que l'application locale peut gérer en mode Serveur suite à la réception d'indications de services confirmés. Proposed Max Serv Outstanding Called = M (M compris entre 2 et 5) Nombre maximum de transactions par association que l'application locale propose de devoir gérer par le Serveur MMS distant sur réception d'indications de services confirmés. La valeur de M est fonction du nombre d'associations configurées sous PL7-OSI (voir PICS annexes G, chapitre 1.4). __________________________________________________________________________________________ 5/1 A A __________________________________________________________________________________________ Proposed Data Structure Nesting Level = 2 Profondeur maximum de la récursivité de la définition de tout type de données : • type simple (Nest=0), • type tableau d'éléments de type simple (Nest=1), • type structure dont les champs sont de type simple (Nest=1), • type tableau de structures dont les champs sont de type simple (Nest=2), • type structure dont les champs sont de type tableaux d'éléments de type simple (Nest=2). Proposed Version Number = 1 (IS) Version du protocole MMS. Proposed Parameter CBB = VNAM-STR1-STR2 Ensemble des blocs de conformité négociés pour les variables supportées. VNAM correspond au support des variables nommées. STR1 correspond au support des tableaux. STR2 correspond au support des structures. Services Supported Calling = Services support s par l’application locale MMS. Ensemble des services que l'application locale MMS supporte sur cette association. Un service MMS est dit "supporté" par une application MMS si celle-ci peut recevoir la primitive (IND) et générer une réponse (RSP) dans le cas d'un service confirmé. Ce paramètre est représenté par une chaîne de bits (85) ou chaque bit représente un service. Les services "supportés" par l'application locale MMS sont définis au chapitre 2.4 intercalaire A. b. Result(+) Le paramètre RESULT(+) n'est pas décrit dans ce cas spécifique car tous les paramètres étant négociés, il n'y a donc pas d'autre contrainte que le respect des règles de négociation de la norme MMS. c. Result(-) Cf Norme MMS. Tous les types d'erreur sont remontés à l'application PL7-3/MMS. __________________________________________________________________________________________ 5/2 Gestion de contexte 5 __________________________________________________________________________________________ 5.1-2 Mode appelé MMS Ce service permet à un utilisateur MMS d'ouvrir une association MMS avec le TSX7. a. Argument Le paramètre ARGUMENT n'est pas décrit dans ce cas spécifique car tous les paramètres étant négociés, il n'y a donc pas de contrainte particulière. b. Result(+) L'utilisateur MMS appelant a proposé ses valeurs de fonctionnement en argument du service INITIATE INDICATION. Le tableau qui suit donne les valeurs des paramètres négociées par le Serveur MMS et émises dans l'INITIATE RESPONSE(+) après réception de la demande de connexion par le Serveur MMS. Local Detail Called = Minimum (7168, Proposed Max Segment Size) Taille négociée des PDUs MMS (Protocol Data Unit). Si le paramètre Local Detail Calling n'est pas présent dans la demande de connexion, la valeur retournée est 7168 (octets). Negociated Max Serv Outstanding Calling = Proposed Max Serv Outstanding Calling Nombre maximum de transactions que l'utilisateur MMS appelant est capable de gérer à tout instant sur cette association suite à la réception d'indications de services confirmés. Negociated Max Serv Outstanding Called = Minimum (M, Proposed Max Serv Outstanding Called) Nombre maximum de transactions que le Serveur MMS local est capable de gérer à tout instant sur cette association suite à la réception d'indications de services confirmés. La valeur de M est fonction du nombre d'associations configurées sous PL7-OSI (voir intercalaire D p. 3/13). Negociated Data Structure Nesting Level = Minimum (2, Proposed Data Structure Nesting Level) __________________________________________________________________________________________ 5/3 A A __________________________________________________________________________________________ Profondeur maximum de la récursivité de la définition de tout type de données : • type simple (Nest=0), • type tableau d'éléments de type simple (Nest=1), • type structure dont les champs sont de type simple (Nest=1), • type tableau de structures dont les champs sont de type simple (Nest=2), • type structure dont les champs sont de type tableaux d'éléments de type simple (Nest=2). Negociated Version Number = Minimum (0,1) (DIS,IS) Version du protocole MMS. Negociated Parameter CBB = Intersection (VNAM-VADR-STR1-STR2-VALT, Proposed Parameter CBB) Ensemble des blocs de conformité négociés pour les variables supportées. VNAM correspond au support des variables nommées. VADR correspond au support des variables anonymes. STR1 correspond au support des tableaux. STR2 correspond au support des structures. VALT correspond à l'accès alterné pour les variables STR1 et STR2. Services Supported Called = Services support s par l’application locale Ensemble des services que le SERVEUR MMS local supporte sur cette association. Un service MMS est dit "supporté" par une application MMS si celle-ci peut recevoir la primitive (IND) et générer une réponse (RSP) dans le cas d'un service confirmé. Ce paramètre est représenté par une chaîne de bits (86) ou chaque bit représente un service. Cf chapitre 2.4, intercalaire A pour la liste des services supportés par le Serveur MMS. c. Result(-) Cf Norme MMS. d. Procédure Le traitement de ce service est entièrement local au Serveur MMS du coupleur OSI. __________________________________________________________________________________________ 5/4 Gestion de contexte 5 __________________________________________________________________________________________ 5.2 Service conclude Le service Conclude réalise la suppression négociée de l’environnement MMS de la communication entre l’appelant et l'appelé MMS. Ce service garantit l’absence de perte d’information en cours de transmission au moment de la fermeture. Ce service étant réalisé avec succès, aucun nouveau service MMS ne peut être invoqué sur cette association. 5.2-1 Mode appelant MMS Ce service permet à l'application PL7-3/MMS de fermer une association MMS ouverte avec une application MMS distante. a. Argument Néant. b. Result(+) Néant. c. Result(-) Cf Norme MMS. Tous les types d'erreur sont remontés à l'application PL7-3/MMS. 5.2-2 Mode appelé MMS Ce service permet à un utilisateur MMS de fermer une association MMS ouverte sur le TSX7. a. Argument Néant. b. Result(+) Néant. c. Result(-) Cf Norme MMS. d. Procédure Le traitement de ce service est entièrement local au Serveur MMS du coupleur OSI. __________________________________________________________________________________________ 5/5 A A __________________________________________________________________________________________ 5.3 Service Abort Le service Abort provoque la suppression brutale sans négociation de l’environnement MMS de communication entre l’appelant et l'appelé MMS. Ce service peut entraîner la perte d’information en cours de transmission. Ce service est non confirmé. Une fois réalisé avec succès, aucun nouveau service MMS ne peut être invoqué sur cette association. 5.3-1 Mode appelant MMS Ce service permet à l'application PL7-3/MMS d'interrompre impérativement une association MMS ouverte avec une application MMS distante. a. Argument Locally Generated = TRUE or FALSE Ce paramètre indique si la requête Abort est locale (TRUE), c'est-à-dire générée par le TSX7, ou distante (FALSE), c'est-à-dire générée par l'application distante. 5.3-2 Mode appelé MMS Ce service permet à un utilisateur distant MMS d'interrompre impérativement une association MMS ouverte sur le TSX7. a. Argument Locally Generated = TRUE or FALSE Ce paramètre indique si la requête Abort a été invoquée par le système local (TRUE), ou distant (FALSE). Dans le cas où c'est le Serveur MMS qui émet ce service, la valeur du paramètre reçu par l'utilisateur MMS sur l'ABORT INDICATION est donc égale à FALSE. b. Procédure Le traitement de ce service est entièrement local au Serveur MMS du coupleur OSI. __________________________________________________________________________________________ 5/6 Gestion de contexte 5 __________________________________________________________________________________________ 5.4 Service Reject Le service Reject est un service invoqué par le fournisseur de service MMS qui notifie à un utilisateur MMS l’occurrence d’une erreur de protocole détectée par le protocole de communication. Ce service est non confirmé. 5.4-1 Mode Client MMS a. Argument Detected Here = TRUE or FALSE Ce paramètre indique si l’erreur de protocole a été détectée par le système local TSX7 (TRUE) ou par l'application MMS distante (FALSE). Original Invoke ID Ce paramètre indique (si c’est possible) le numéro d’invocation du PDU (Protocol Data Unit) en erreur. Reject PDU Type Spécifie le type du PDU qui a été trouvé erroné. Cette valeur est remontée à l'application PL7-3/MMS. Cf Norme MMS. Reject Code Raison du rejet du PDU en fonction de son type. Cette valeur est remontée à l'application PL7-3/MMS. Cf Norme MMS. __________________________________________________________________________________________ 5/7 A A __________________________________________________________________________________________ 5.4-2 Mode Serveur MMS a. Argument Detected Here = TRUE or FALSE Ce paramètre indique si l'erreur de protocole a été détectée par le système local TSX7 (TRUE) ou par l'application MMS distante (FALSE). Original Invoke ID Ce paramètre indique (si c'est possible) le numéro d'invocation du PDU (Protocol Data Unit) en erreur. Reject PDU Type Spécifie le type du PDU qui a été trouvé erroné. Cf Norme MMS. Reject Code Raison du rejet du PDU en fonction de son type. Cf Norme MMS. b. Procédure Le traitement de ce service est entièrement local au Serveur MMS du coupleur OSI. __________________________________________________________________________________________ 5/8 Gestion de l'équipement 6 __________________________________________________________________________________________ 6. Gestion de l'équipement Les services de gestion du VMD permettent à l'utilisateur MMS : • de connaître l'état (sollicité et non sollicité) de la station TSX7, • de connaître l'identité et les caractéristiques de l'automate TSX7, • d'acquérir la liste des noms des différents objets MMS de l'automate TSX7. En mode Client MMS, l'application PL7-3/MMS peut : • demander l'état d'un équipement distant, • recevoir l'état non sollicité d'un équipement distant. 6.1 Service Status 6.1-1 Mode Client MMS Le service Status permet à l'application PL7-3/MMS de connaître l'état d'un équipement distant. a. Argument Extended Derivation = FALSE La méthode demandée à l'application MMS distante pour déterminer l'état de l'équipement est de type simple (pas de test étendu, type d'auto-diagnostic demandé). b. Result(+) VMD Logical Status VMD Physical Status Les valeurs attendues pour ces paramètres sont celles définies comme possible dans la norme MMS. Ces valeurs sont remontées à l'application PL7-3/MMS. Local Detail La valeur de cette chaîne de 128 bits dépend de l'implémentation de l'équipement distant. Cette valeur est remontée à l'application PL7-3/MMS. c. Result (-) Cf Norme MMS. Tous les types d'erreur sont remontés à l'application PL7-3/MMS. __________________________________________________________________________________________ 6/1 A A __________________________________________________________________________________________ 6.1-2 Mode Serveur MMS Le service Status permet à un utilisateur MMS appelant de connaître l'état de la station automate TSX7. a. Argument Extended Derivation Non utilisé. b. Result(+) VMD Logical Status VMD Physical Status Ces paramètres sont décrits au chapitre 3.1, intercalaire A. Local Detail Ce paramètre est décrit au chapitre 3.1, intercalaire A. c. Result(-) Cf Norme MMS. d. Procédure Le Serveur MMS émet une requête UNI-TE READ_CPU vers l’automate pour connaître l’état de la station automate TSX7. __________________________________________________________________________________________ 6/2 Gestion de l'équipement 6 __________________________________________________________________________________________ 6.2 Service Unsollicited Status 6.2-1 Mode Client MMS Le service Unsollicited Status permet à l'application PL7-3/MMS de recevoir l'état non sollicité d'un équipement distant. Ce service est non confirmé. a. Argument VMD Logical Status VMD Physical Status Les valeurs attendues pour ces paramètres sont celles définies comme possible dans la norme MMS. Ces valeurs sont remontées à l'application PL7-3/MMS. Local Detail La valeur de cette chaîne de 128 bits dépend de l'implémentation de l'équipement distant. Cette valeur est remontée à l'application PL7-3/MMS. 6.2-2 Mode Serveur MMS Le service Unsollicited Status permet au Serveur MMS d'émettre l'état non sollicité de la station automate TSX7. Ce service est non confirmé. a. Argument VMD Logical Status VMD Physical Status Ces paramètres sont décrits au chapitre 3.1, intercalaire A. Local Detail Ce paramètre est décrit au chapitre 3.1, intercalaire A. __________________________________________________________________________________________ 6/3 A A __________________________________________________________________________________________ 6.3 Service Identify Le service Identify permet à un utilisateur MMS appelant d’acquérir des informations sur l’identité et les caractéristiques de la station automate TSX7. Ce service n'est supporté qu'en mode Serveur MMS. a. Arguments Néant. b. Result(+) Vendor Name Model Name Revision Ces paramètres sont décrits au chapitre 3.1-1, intercalaire A. List of Abstract Syntaxes Non utilisé. c. Result(-) Cf Norme MMS. d. Procédure Le Serveur MMS émet une requête UNI-TE READ_CPU pour connaître l’identification de la station automate TSX7. __________________________________________________________________________________________ 6/4 Gestion de l'équipement 6 __________________________________________________________________________________________ 6.4 Service GetNameList Le service GetNameList permet à un utilisateur MMS appelant d’acquérir tout ou partie de la liste des noms d’objets MMS définis dans l’automate TSX7. Ce service n'est supporté qu'en mode Serveur MMS. a. Argument Extended Object Class = Object-Class Ce paramètre spécifie la classe "élargie" des noms d’objets devant être renvoyés par le Serveur MMS. La valeur attendue désigne la classe "Norme MMS 9506". Object Class = Named Variable ou Domain ou Program Invocation Spécifie la classe des noms d’objets devant être renvoyés par le Serveur MMS. Ces objets sont décrits au chapitre 3, intercalaire A. CS Object Class Non utilisé. Object Scope = VMD-specific ou DOMAIN-specific ou AA-specific Portée des noms d’objets dont les noms doivent être renvoyés. La portée des objets automates est décrite au chapitre 3.4, intercalaire A. Domain Name Nom du domaine dans le cas où Object Scope est égale à DOMAIN-specific. Le nom du domaine est décrit au chapitre 3.2-1, intercalaire A. Continue After Désigne le nom de l’objet à partir duquel les noms de la liste doivent être renvoyés. b. Result(+) List of Identifier __________________________________________________________________________________________ 6/5 A A __________________________________________________________________________________________ Ce paramètre contient la liste des noms d’objets de la classe et de la portée spécifiée par les paramètres Object Class et Object Scope dans la limite définie par le paramètre Continue After. Si aucun objet n’existe, la liste sera vide. More Follows = TRUE or FALSE Ce paramètre indique s’il est nécessaire (TRUE) d’effectuer d’autres demandes du service GetNameList pour obtenir la liste complète des noms demandés. c. Result(-) Error Class = VMD-STATE Error Code = VMD-STATE-CONFLICT Additional Code TEMPORARILY_UNAVAILABLE(1) Table des symboles en cours de chargement Error Class = ACCESS Error Code = OBJECT_NON_EXISTENT Additional Code INVALID_DOMAIN_NAME (1) Nom du domaine ne désigne pas un domaine existant. Error Code = OBJECT_ACCESS_UNSUPPORTED Additional Code INVALID_EXTENDED_OBJECT_CLASS (1) Valeur du paramètre «Extended Object Class» incorrect INVALID_OBJECT_CLASS (2) Valeur du paramètre «ObjectClass» incorrect INVALID_OBJECT_SCOPE (3) Valeur du paramètre «Object Scope» incorrect Error Class = SERVICE Error Code = CONTINUATION-INVALID Le paramètre "Continue After" ne désigne pas un objet connu. d. Procédure Ce service est traité localement dans le coupleur OSI. __________________________________________________________________________________________ 6/6 Gestion du domaine 7 __________________________________________________________________________________________ 7. Gestion du domaine Les services de gestion du domaine permettent à l’utilisateur MMS de manipuler l’application station automate, c’est-à-dire : • de télécharger l’application station dans l’automate TSX7, • d’archiver l’application station de l’automate TSX7, • d’acquérir les caractéristiques de l’application station, • de détruire l’application station. 7.1 Service InitiateDownLoadSequence Ce service est invoqué par l’utilisateur MMS appelant pour demander au Serveur MMS de créer le domaine nommé et de débuter son chargement. Ce service n'est supporté qu'en mode Serveur MMS. a. Argument Domain Name Ce paramètre est décrit au chapitre 3.2-1, intercalaire A. List of Capabilities Non utilisé. Sharable = FALSE Voir description de l’objet DOMAIN chapitre 3.2-1, intercalaire A. b. Result(+) Néant. __________________________________________________________________________________________ 7/1 A A __________________________________________________________________________________________ c. Result(-) Error Class = DEFINITION Error Code = OBJECT_EXIST Additional Code DOMAIN_ALREADY_EXIST (1) L’application station ne peut pas être téléchargée (L’automate est en RUN) Error Code = OBJECT-UNDEFINED Additional Code INVALID_DOMAIN_NAME (1) Le nom du domaine n’est pas correct Error Class = OTHERS Error Code = INITIATE_DOWNLOAD_SEQUENCE (3) Additional Code INVALID_SHARABLE_ATTRIBUTE (2) Le paramètre "Sharable" doit être à FALSE Error Class = SERVICE Error Code = OBJECT_STATE_CONFLICT Additionnal Code = INVALID_DOMAIN_STATE (2) Etat du domaine incorrect Error Class = VMD_STATE Error Code = DOMAIN_TRANSFER_PROBLEM Additionnal Code = DOWNLOAD_IMPOSSIBLE (6) Ouverture du téléchargement refusée par l'automate d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • Réservation de l’automate (requête UNI-TE RESERVE), • Acquisition de l'état de l'application station (requête UNI-TE IDENTIFICATION_OBJET (appli_station)), • Initialisation du téléchargement vers OPEN_DOWNLOAD_SEQUENCE.req). l’automate (requête UNI-TE __________________________________________________________________________________________ 7/2 Gestion du domaine 7 __________________________________________________________________________________________ 7.2 Service DownLoadSegment Ce service est invoqué par le Serveur MMS pour que l’utilisateur MMS appelant lui transfère un segment de données de l’application station à charger. Ce service n'est supporté qu'en mode Serveur MMS. a. Argument Domain Name Ce paramètre est décrit au chapitre 3.2-1, intercalaire A. b. Result(+) Load Data Informations (chaîne d’octets) à charger. More Follows = TRUE or FALSE Ce paramètre indique s’il reste à transmettre (TRUE) ou non (FALSE) des données de téléchargement. c. Result(-) Cf Norme MMS. d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • envoi d'une requête DOWNLOAD_SEGMENT.req jusqu'à réception de DOWNLOAD_SEGMENT.cnf avec le paramètre More Follows = FALSE, • segmentation des données reçues sur DownLoadSegment.Cnf en N requêtes UNITE WRITE_DOWNLOAD_SEGMENT émises vers l’automate. __________________________________________________________________________________________ 7/3 A A __________________________________________________________________________________________ 7.3 Service TerminateDownLoadSequence Ce service est invoqué par le Serveur MMS pour indiquer à l’utilisateur MMS appelant que la séquence de chargement est terminée. Ce service n'est supporté qu'en mode Serveur MMS. a. Argument Domain Name Ce paramètre est décrit au chapitre 3.2-1, intercalaire A. Discard = TRUE or FALSE (DIS) ou Service Error (IS) Ce paramètre indique en version DIS si il y a eu détection (TRUE) ou non (FALSE) d’un problème lors du téléchargement du domaine. Si la valeur est TRUE, l’application station n’est pas validée. En version IS, le paramètre est du type Service Error. Error Class = VMD_STATE Error Code = DOMAIN_TRANSFER_PROBLEM Additional Code = INCONSISTENT_DATA (2) Les données téléchargées sont incohérentes parce que : • elles ont une longueur nulle, • l'automate les déclare incohérentes en cours de téléchargement, • l'automate les déclare invalides en fin de téléchargement. Additionnal Code = WRITE_SEG_IMPOSSIBLE (4) L'automate ne peut écrire les données téléchargées. Additionnal Code = READ_SEG_IMPOSSIBLE (5) L'automate ne peut lire les données. Error Code = VMD_STATE_CONFLICT Pas d'Additionnal Code, l'automate a perdu la réservation. Error Class = OTHERS Error Code = DATE_CODED (1) Les données téléchargées en format codé ne sont pas supportées. __________________________________________________________________________________________ 7/4 Gestion du domaine 7 __________________________________________________________________________________________ b. Result(+) Néant. c. Result(-) Cf Norme MMS. d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • sur réception de DownLoadSegment.Cnf avec le paramètre "More Follows = FALSE", émission vers l’automate de la fin de téléchargement (requête UNI-TE CLOSE_DOWNLOAD_SEQUENCE), • déréservation de l’automate (requête UNI-TE RELEASE), • envoi d'une requête TERMINATE_DOWNLOAD_SEQUENCE.req, • réception de TERMINATE_DOWNLOAD_SEQUENCE.cnf. __________________________________________________________________________________________ 7/5 A A __________________________________________________________________________________________ 7.4 Service InitiateUpLoadSequence Ce service est invoqué par l’utilisateur MMS appelant pour demander au Serveur MMS d’initialiser la sauvegarde (archivage) de l’application station. Ce service n'est supporté qu'en mode Serveur MMS. a. Argument Domain Name Ce paramètre est décrit au chapitre 3.2-1, intercalaire A. b. Result(+) ULSM ID Identifie l’objet Upload State Machine. Le Serveur MMS ne supporte qu’un seul archivage à la fois. List of Capabilities Non utilisé. c. Result(-) Error Class = ACCESS Error Code = OBJECT_NON_EXISTENT Additional Code DOMAIN_NON_EXISTENT (2) Le nom du domaine n’est pas correct ou application station invalide __________________________________________________________________________________________ 7/6 Gestion du domaine 7 __________________________________________________________________________________________ Error Class = SERVICE Error Code = PRIMITIVES_OUT_OF_SEQUENCE Error Code = OBJECT_STATE_CONFLICT Additional Code UPLOAD_IMPOSSIBLE (6) Application station "protégée en écriture" Error Code = PRIMITIVES_OUT OF SEQUENCE Un archivage est déjà en cours d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • Réservation de l’automate (requête UNI-TE RESERVE), • Acquisition de l'état de l'application station (requête UNI-TE IDENTIFICATION_OBJET (appli_station)) et du programme (requête UNI-TE STATUS), • Initialisation de l’archivage OPEN_UPLOAD_SEQUENCE.req). 7.5 vers l’automate (requête UNI-TE Service UpLoadSegment Ce service est invoqué par l’utilisateur MMS appelant pour demander au Serveur MMS de lui transférer un segment de données de l’application station à archiver. Ce service n'est supporté qu'en mode Serveur MMS. a. Argument ULSM Identifie le numéro de l’archivage en cours. __________________________________________________________________________________________ 7/7 A A __________________________________________________________________________________________ b. Result(+) Load Data Informations (chaîne d’octets) à archiver. More Follows = TRUE ou FALSE Ce paramètre indique s’il reste à transmettre (TRUE) ou non (FALSE) des données à archiver. c. Result(-) Error Class = ACCESS Error Code = OBJECT_NON_EXISTENT Additional Code USLM_NON_EXISTENT (5) L’USLM désigné n’existe pas Error Class = SERVICE Error Code = PRIMITIVE_OUT_OF_SEQUENCE Archivage terminé ou réception antérieure de Uploadsegment.cnf Error Class = VMD_STATE Error Code = DOMAIN_TRANSFER_PROBLEM Additionnal Code = READ_DATA_SEGMENT_IMPOSSIBLE (5) L'automate ne peut lire les données. d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • concaténation des données reçues de l’automate sur les réponses aux N requêtes UNI-TE READ_UPLOAD_SEGMENT (jusqu’à la taille max du PDU MMS) et émission de UploadSegment.Rsp vers le système MMS distant. __________________________________________________________________________________________ 7/8 Gestion du domaine 7 __________________________________________________________________________________________ 7.6 Service TerminateUpLoadSequence Ce service est invoqué par l’utilisateur MMS appelant pour indiquer au serveur MMS la fin de la séquence d’archivage. Ce service n'est supporté qu'en mode Serveur MMS. a. Argument ULSM ID Identifie le numéro de l’archivage à terminer. b. Result(+) Néant c. Result(-) Error Class = ACCESS Error Code = OBJECT_NON_EXISTENT Additional Code USLM_NON_EXISTENT (5) L’USLM désigné n’existe pas Error Class = VMD_STATE Error Code = DOMAIN_TRANSFER_PROBLEM Additional Code UPLOAD_NON_FINISHED (3) L’indication de terminaison précède la fin d’archivage __________________________________________________________________________________________ 7/9 A A __________________________________________________________________________________________ d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • sur réception de TerminateUploadSegment.Ind, émission vers l’automate de la fin d’archivage (requête UNI-TE CLOSE_UPLOAD_SEQUENCE), • déréservation de l’automate (requête UNI-TE RELEASE). 7.7 Service DeleteDomain Ce service permet à l’utilisateur MMS appelant de demander au Serveur MMS la destruction de l’application station. Ce service n'est supporté qu'en mode Serveur MMS. a. Argument Domain name Ce paramètre est décrit au chapitre 3.2-1. b. Result(+) Néant c. Result(-) Error Class = DEFINITION Error Code = OBJECT_UNDEFINED Additional Code DOMAIN_UNDEFINED (2) Le domaine désigné n’existe pas __________________________________________________________________________________________ 7/10 Gestion du domaine 7 __________________________________________________________________________________________ Error Class = SERVICE Error Code = OBJECT_STATE_CONFLICT Additional Code DOMAIN_NOT_DELETABLE (1) Le domaine n’est pas destructible INVALID_DOMAIN_STATE (2) L’état du domaine n’autorise pas une destruction UPLOAD_IN_PROGRESS (5) Domaine en cours d’archivage d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • réservation de l’automate (requête UNI-TE RESERVE), • acquisition de l’état de l’application station (DOMAIN) par la requête UNI-TE IDENTIFICATION_OBJET(appli_Station) vers l’automate, • acquisition de l’état du programme (PI) par la requête UNI-TE STATUS vers l’automate, • invalidation de l’application station (requête UNI-TE INVALID_APPLI (appli_station), • destruction physique du descripteur de station (requête UNI-TE OPEN_DOWNLOAD suivi de la requête UNI-TE WRITE DOWNLOAD de 64 octets à 0), • déréservation de l’automate (requête UNI-TE RELEASE). __________________________________________________________________________________________ 7/11 A A __________________________________________________________________________________________ 7.8 Service GetDomainAttributes Ce service permet à l’utilisateur MMS de demander au Serveur MMS de fournir la valeur de tous les attributs du domaine spécifié. Ce service n'est supporté qu'en mode Serveur MMS. a. Arguments Domain Name Ce paramètre est décrit au chapitre 3.2-1, intercalaire A. b. Result(+) List of Capabilities Non utilisé. State MMS Deletable Sharable List of PIs Upload In Progress Ces paramètres sont décrits au chapitre 3.2-1, intercalaire A. c. Result(-) Error Class = ACCESS Error Code = OBJECT_NON_EXISTENT Additional Code DOMAIN_NON_EXISTENT (2) Le nom du domaine n’est pas correct d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • acquisition de l’état de l’application station par la requête UNI-TE IDENTIFICATION_OBJET (appli_station) émise vers l’automate et du programme (requête UNI-TE STATUS), • acquisition de l’état de l’application par la requête UNI-TE STATE émise vers l’automate. __________________________________________________________________________________________ 7/12 Gestion de programme 8 __________________________________________________________________________________________ 8. Gestion de programme Les services de gestion du programme permettent à l’utilisateur MMS de manipuler le programme de la fonction commande séquentielle PL7-3, c’est-à-dire : • créer ou détruire le programme PL7-3, • démarrer et stopper le programme PL7-3, • acquérir les caractéristiques du programme PL7-3. 8.1 Service CreateProgramInvocation Ce service permet à un utilisateur MMS appelant de créer un PI dans le Serveur MMS. Ce service n'est supporté qu'en mode Serveur MMS. a. Argument Program Invocation Name List of Domain Names Reusable Ces paramètres sont décrits au chapitre 3.3-1, intercalaire A. Monitor Non utilisé. b. Result(+) Néant. __________________________________________________________________________________________ 8/1 A A __________________________________________________________________________________________ c. Result(-) Error Class = ACCESS Error Code = OBJECT_NON_EXISTENT Additional Code DOMAIN_NON_EXISTENT (2) Le nom du domaine associé n’est pas correct Error Class = DEFINITION Error Code = OBJECT_EXIST Additional Code PI_ALREADY_EXIST (2) Le PI désigné existe déjà Error Code = OBJECT-UNDEFINED Additional Code INVALID-PI-NAME (4) Le nom du PI est incorrect Error Class = SERVICE Error Code = OBJECT_STATE_CONFLICT Additional Code INVALID_DOMAIN_STATE (2) Le domaine associé est dans un état incorrect Error Class = OTHERS Error Code = CREATE_PROGRAM_INVOCATION Additional Code INVALID_REUSABLE_ATTRIBUTE (3) La valeur de ce paramètre doit être TRUE Error Class = VMD_STATE Error Code = VMD_STATE_CONFLICT Sans Additional Code Le PI ne peut être crée dans l'automate __________________________________________________________________________________________ 8/2 Gestion de programme 8 __________________________________________________________________________________________ d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • réservation de l’automate (requête UNI-TE RESERVE), • acquisition de l’état de l’application station (requête UNI-TE IDENTIFICATION_OBJET(appli_station)) et du programme (requête UNI-TE STATUS), • validation du programme PL7-3 (requête UNI-TE VALID_APPLI(appli_PL7)), • déréservation de l’automate (requête UNI-TE RELEASE). 8.2 Service DeleteProgramInvocation Ce service permet à un utilisateur MMS de détruire un PI existant chez le Serveur MMS. Ce service n'est supporté qu'en mode Serveur MMS. a. Argument PI Name Ce paramètre est décrit au chapitre 3.3-1, intercalaire A. b. Result(+) Néant. __________________________________________________________________________________________ 8/3 A A __________________________________________________________________________________________ c. Result(-) Error Class = DEFINITION Error Code = OBJECT_UNDEFINED Additional Code PI_UNDEFINED (2) Le PI n’existe pas ou nom du PI incorrect Error Class = SERVICE Error Code = OBJECT_STATE_CONFLICT Additional Code INVALID_PI_STATE (3) Le PI est dans un état incorrect PI_NOT_DELETABLE (4) Le PI ne peut pas être détruit Error Class = VMD_STATE Error Code = VMD_STATE_CONFLICT Sans Additional Code Le PI ne peut pas être détruit dans l'automate d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • réservation de l’automate (requête UNI-TE RESERVE), • acquisition de l’état du programme (requête UNI-TE STATUS), • invalidation du programme PL7-3 (requête UNI-TE INVALID_APPLI(appli_PL7)), • déréservation de l’automate (requête UNI-TE RELEASE). __________________________________________________________________________________________ 8/4 Gestion de programme 8 __________________________________________________________________________________________ 8.3 Service Start Ce service permet à un utilisateur MMS de démarrer le programme PL7-3. Le PI passe de l’état IDLE à l’état RUNNING. Ce service n'est supporté qu'en mode Serveur MMS. a. Argument PI Name Ce paramètre est décrit au chapitre 3.3-1, intercalaire A. Execution Argument Non utilisé. b. Result(+) Néant. c. Result(-) Error Class = ACCESS Error Code = OBJECT_ACCESS_UNSUPPORTED Additionnal Code = EXEC_ARGUMENT_UNSUPPORTED (9) Le paramètre exécution argument n'est pas supporté Error Code = OBJECT_NON_EXISTENT Additional Code PI_NON_EXISTENT (3) Le PI désigné n’existe pas Error Class = OTHERS Service Specific Information = (etat du PI) L'état du PI est incorrect Error Class = VMD_STATE Error Code = VMD_STATE_CONFLICT Sans Additionnal Code L'automate refuse de passer en état RUNNING d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • réservation de l’automate (requête UNI-TE RESERVE), • acquisition de l’état du programme PL7-3 (requête UNI-TE STATUS), • émission vers l’automate de la requête UNI-TE RUN, • déréservation de l’automate (requête UNI-TE RELEASE). __________________________________________________________________________________________ 8/5 A A __________________________________________________________________________________________ 8.4 Service Stop Ce service permet à un utilisateur MMS de stopper le programme PL7-3. Le PI passe de l’état RUNNING à l’état STOPPED. Ce service n'est supporté qu'en mode Serveur MMS. a. Argument PI Name Ce paramètre est décrit au chapitre 3.3-1, intercalaire A. b. Result(+) Néant. c. Result(-) Error Class = ACCESS Error Code = OBJECT_NON_EXISTENT Additional Code PI_NON_EXISTENT (3) Le PI désigné n’existe pas Error Class = OTHERS Service Specific Information = (etat du PI) L'état du PI est incorrect Error Class = VMD_STATE Error Code = VMD_STATE_CONFLICT Sans Additionnal Code L'automate refuse de passer en état STOPPED d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • réservation de l’automate (requête UNI-TE RESERVE), • acquisition de l’état du programme PL7-3 (requête UNI-TE STATUS), • émission vers l’automate de la requête UNI-TE STOP, • déréservation de l’automate (requête UNI-TE RELEASE). __________________________________________________________________________________________ 8/6 Gestion de programme 8 __________________________________________________________________________________________ 8.5 Service Resume Ce service permet à un utilisateur MMS de redémarrer le programme PL7-3 après l’avoir stoppé. Le PI passe de l’état STOPPED à l’état RUNNING. Ce service n'est supporté qu'en mode Serveur MMS. a. Argument PI Name Ce paramètre est décrit au chapitre 3.3-1, intercalaire A. Execution Argument Non utilisé. b. Result(+) Néant. c. Result(-) Error Class = ACCESS Error Code = OBJECT_ACCESS_UNSUPPORTED Additionnal Code = EXEC_ARGUMENT_UNSUPPORTED (9) Le paramètre exécution argument n'est pas supporté Error Code = OBJECT_NON_EXISTENT Additional Code PI_NON_EXISTENT (2) Le PI désigné n’existe pas Error Class = OTHERS Service Specific Information = (etat du PI) L'état du PI est incorrect Error Class = VMD_STATE Error Code = VMD_STATE_CONFLICT Sans Additionnal Code L'automate refuse de passer en état RUNNING d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • réservation de l’automate (requête UNI-TE RESERVE), • acquisition de l’état du programme PL7-3 (requête UNI-TE STATUS), • émission vers l’automate de la requête UNI-TE RUN, • déréservation de l’automate (requête UNI-TE RELEASE). __________________________________________________________________________________________ 8/7 A A __________________________________________________________________________________________ 8.6 Service Reset Ce service permet à un utilisateur MMS de ré-initialiser le programme PL7-3 après l’avoir stoppé. Le PI passe de l’état STOPPED à l’état IDLE. Ce service n'est supporté qu'en mode Serveur MMS. a. Argument PI Name Ce paramètre est décrit au chapitre 3.3-1, intercalaire A. b. Result(+) Néant. c. Result(-) Error Class = ACCESS Error Code = OBJECT_NON_EXISTENT Additional Code PI_NON_EXISTENT (3) Le PI désigné n’existe pas Error Class = OTHERS Service Specific Information = (etat du PI) L'état du PI est incorrect Error Class = VMD_STATE Error Code = VMD_STATE_CONFLICT Sans Additionnal Code L'automate refuse de passer en état IDLE d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • réservation de l’automate (requête UNI-TE RESERVE), • acquisition de l’état du programme PL7-3 (requête UNI-TE STATUS), • invalidation du programme PL7-3 (requête UNI-TE INVALID_APPLI(appli_PL7), • validation du programme PL7-3 (requête UNI-TE VALID_APPLI(appli_PL7), • déréservation de l’automate (requête UNI-TE RELEASE). __________________________________________________________________________________________ 8/8 Gestion de programme 8 __________________________________________________________________________________________ 8.7 Service GetProgramInvocationAttributes Ce service permet à l’utilisateur MMS de demander au Serveur MMS de fournir la valeur de tous les attributs du programme spécifié. Ce service n'est supporté qu'en mode Serveur MMS. a. Argument PI Name Ce paramètre est décrit au chapitre 3.3-1, intercalaire A. b. Result(+) State List of Domain Name MMS Deletable Reusable Ces paramètres sont décrits au chapitre 3.3.1, intercalaire A. c. Result(-) Error Class = ACCESS Error Code = OBJECT_NON_EXISTENT Additional Code PI_NON_EXISTENT (3) Le PI désigné n’existe pas d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • réservation de l’automate (requête UNI-TE RESERVE), • acquisition de l’état du programme PL7-3 (requête UNI-TE STATUS), • déréservation de l’automate (requête UNI-TE RELEASE). __________________________________________________________________________________________ 8/9 A A __________________________________________________________________________________________ __________________________________________________________________________________________ 8/10 Gestion des variables 9 __________________________________________________________________________________________ 9. Gestion des variables Les services de gestion des variables permettent à l’utilisateur MMS d’accéder aux variables de l’application automate, c’est-à-dire : • de lire et écrire des variables du programme PL7-3, • d’acquérir les caractéristiques des variables du programme PL7-3, • de recevoir des variables non sollicitées du programme PL7-3. En mode Client MMS, l'application PL7-3/MMS peut : • lire et écrire des variables de l'application MMS distante, • recevoir des variables non sollicitées de l'application MMS distante. 9.1 Paramètres "Variable Access Specification" La figure suivante décrit les valeurs possibles pour le paramètre Variable Access Specification dans les requêtes READ, WRITE, INFORMATION REPORT. Variable Access Specification Kind of Access = List of Variable Ce paramètre indique que l’on accède à une liste de variables. Kind of Access = List of Variable Variable Specification Kind of Variable = NAMED ou ADDRESS Pour le mode Client MMS, le type de variable sera toujours NAME. Pour le mode Serveur MMS, le type de variable ADDRESS est limité aux services READ/WRITE de variables de type simple. Kind of Variable = NAMED Name Scope = VMD-Specific ou DOMAIN-Specific ou AA-Specific Portée de la variable nommée. La portée des variables automates est décrite au chapitre 3.4, intercalaire A. Notes : Les accès alternés ne sont possibles qu'en mode Serveur MMS pour les services READ et WRITE. L'accès alterné à une Variable "Programmée" nécessite la programmation d'un OFB MSEMA dans l'application PL7-3. __________________________________________________________________________________________ 9/1 A A __________________________________________________________________________________________ Domain Identifier Nom du domaine dans le cas de DOMAIN-Specific. Le nom d’un domaine est décrit au chapitre 3.2-1, intercalaire A. Item Identifer Nom de la variable nommée. Le nom d’une variable nommée est décrit au chapitre 3.4-4, intercalaire A. Kind of Variable = ADDRESS Kind of Address = SYMBOLIC-ADDRESS L’adresse de la variable anonyme est de type symbolique. Symbolic Address Les objets anonymes et leur adresse symbolique supportés sont décrits au chapitre 3.4-3, intercalaire A. Kind of Access = List of Variable Alternate Access Component Name Non utilisé. Kind of selection = Select Alternate Access ou Select Access Ce paramètre indique si la spécification prévoit : • l'accès alterné (Selec Access), • une récursivité dans la spécification d'accès alterné (Select Alternate Access) pour un niveau d'imbrication Nesting Level supérieur à 1. Access Selection = Component ou Index ou Index Range (low, size) Indique le choix effectué pour l'accès alterné : • champs d'une structure, • indice d'un tableau, • plage d'indice d'un tableau (indice de départ, nombre d'indice). __________________________________________________________________________________________ 9/2 Gestion des variables 9 __________________________________________________________________________________________ 9.2 Paramètres "Access Result" 9.2-1 Paramètres La figure suivante décrit les valeurs possibles du paramètre "Access Result" pour les services READ, WRITE et INFORMATION REPORT. Access Result Success = TRUE or FALSE Ce paramètre indique si l'accès pour chaque variable a pu s'effectuer correctement. Data Access Error Si Success = FALSE, ce paramètre indique la raison de l'échec de l'accès pour chaque variable. Les différentes valeurs possibles sont données au chapitre 9.2-2. Data Kind of Data = SIMPLE ou ARRAY ou STRUCTURE Si Success = TRUE, ce paramètre donne le résultat de l'accès pour chaque variable. Kind of Data = Simple Class Size Octet_string Boolean Integer Unsign Bit-string Floating-point Visible-string Generalized_time 4096 octets maximum 16, 32 bits 16, 32 bits 2048 bits maximum 32 bits 4096 octets maximum Variable de type simple. Kind of Data = ARRAY List of Data Variable de type tableau. Les éléments de tableau peuvent être de type simple ou structure (Cf chapitre 2.3-2, intercalaire A pour les types supportés en mode Client et Serveur MMS). __________________________________________________________________________________________ 9/3 A A __________________________________________________________________________________________ Kind of Data = STRUCTURE List of Data Variable de type structure. Les champs de structure peuvent être de type simple ou tableau (Cf chapitre 2.3-2, intercalaire A pour les types supportés en mode Client et Serveur MMS). 9.2-2 Codes d'erreur Les codes d'erreur "Data Access Error" du paramètre "Access Result" peuvent être retournés en réponse aux services Read ou Write lors de problème empêchant l'exécution de l'accès à une ou plusieurs variables. Valeurs Data Access Error Signification 2 Table des symboles non chargée ou en cours de chargement dans le coupleur. Accès à la variable programmée interrompu à la suite d'un Reset de l'OFB MSEMA. 5 Format de l'adresse symbolique d'une variable (VADR) non supporté ou hors configuration PL7-3. 6 Type de données MMS non supporté. 7 Incohérence entre la définition de la variable dans la table des symboles serveur et la définition des données ou de l'accès alterné dans la requête Write : - le type de variable est différent de celui de la donnée, - pour une variable de type tableau ou structure, le nombre d'éléments ou de champs de la variable est différent de celui de la donnée, - le nombre d'accès alternés à la variable est incohérent par rapport à la description des données. __________________________________________________________________________________________ 9/4 Gestion des variables 9 __________________________________________________________________________________________ Valeurs Data Access Error Signification 8 Incohérence entre la définition de la variable dans la table des symboles serveur et la définition des accès alternés dans les requêtes Read ou Write : - accès alterné sur une variable qui n'est pas de type tableau ou structure, - accès alterné par index ou plage d'index hors des bornes d'un tableau définies dans la table des symboles, - accès alterné à un nom de champ de structure inexistant dans la définition de la variable dans la table des symboles, - accès alterné par index ou plage d'index à une variable définie comme une structure dans la table des symboles, - accès alterné par composant à une variable définie comme tableau dans la table des symboles. Problèmes dans l'élaboration de la primitive Information_Report.req (mémoire, ...). Contacter votre support technique Telemecanique. 9 Attribut de définition de la variable dans les requêtes Read ou Write non supportés (valeurs non supportées de "Kind of Access", "Scope", "Kind of address"), - accès en écriture non supporté aux objets PL7-3 CWi, CDWi et Wi,j - accès alterné en écriture aux variables de type Tableau de booléen ou de Bitstring1non supporté, - accès alterné aux variables par adresse (VADR) non supporté. 10 Accès à une variable nommée non définie dans la table des symboles serveur. Nom du domaine associé à une variable nommée de portée domaine invalide. __________________________________________________________________________________________ 9/5 A A __________________________________________________________________________________________ 9.3 Service Read 9.3-1 Mode Client MMS Ce service permet à l'application PL7-3/MMS de lire une ou plusieurs variables d'une application MMS distante. a. Argument Specification with Result = FALSE Ce paramètre indique que le paramètre "Variable Access Specification" ne doit pas figurer dans la réponse Result(+). Variable Access Specification Ce paramètre est décrit au chapitre 9.1-1, intercalaire A. b. Result(+) Variable Access Specification Ce paramètre ne doit pas être présent. List of Access Result Contient la liste des valeurs de variables demandées (au maximum la valeur de 4 variables). c. Result(-) Se reporter à la norme MMS. Tous les types d'erreurs sont remontés à l'application PL7-3/MMS. __________________________________________________________________________________________ 9/6 Gestion des variables 9 __________________________________________________________________________________________ 9.3-2 Mode Serveur MMS Ce service est utilisé par un utilisateur MMS pour demander au Serveur MMS de fournir la valeur d'une ou plusieurs variables associées au VMD (la station automate TSX7), au DOMAIN (l'application station .APP) ou l'association AA. a. Argument Specification with Result = TRUE or FALSE Ce paramètre indique si le paramètre "Variable Access Specification" doit (TRUE) ou non (FALSE) figurer dans la réponse Result (+) Variable Access Specification Ce paramètre est décrit au chapitre 9.1-1, intercalaire A. b. Result(+) Variable Access Specification Ce paramètre est présent si la valeur de l'argument "Specification with result" est TRUE. List of Access Result Contient la liste des valeurs de variables demandées (au maximum la valeur de 16 variables). c. Result(-) Error Class = ACCESS Error Code = OBJECT_ACCESS_UNSUPPORTED Additional Code INVALID_KIND_OF ACCESS (5) Le paramètre "Kind of Access" est incorrect INVALID_KIND_OF_VARIABLE (8) Le paramètre "Kind of Variable" est incorrect __________________________________________________________________________________________ 9/7 A A __________________________________________________________________________________________ Error Class = APPLICATION_REFERENCE Error Code = CONTEXT_UNSUPPORTED L'un des paramètres CBB utilisé dans le paramètre Read_Response (STR1, STR2, VALT, ...) n'a pas été négocié lors de l'ouverture d'association Additional Code = (erreur locale remont e par MMS provider) MM_041_MAX_NEST_EXCEEDED (41) MM_042_VNAM_CBB_VIOL (42) MM_043_VADR_CBB_VIOL (43) MM_046_VALT_CBB_VIOL (46) MM_049_STR1_CBB_VIOL (49) MM_050_STR2_CBB_VIOL (50) d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • accès dans le coupleur OSI à la table des symboles pour les variables nommées • émission de la requête UNI-TE READ_SYSTEM_BIT (pour les bits systèmes), READ_SYSTEM_WORD (pour les mots systèmes) ou READ_OBJECTS (pour tous les autres objets) vers l’automate. Pour les Variables "Programmées", l'émission de la requête UNI-TE s'effectue uniquement si une autorisation d'accès a été émise au préalable par un OFB MSEMA. Si tel n'est pas le cas, le service MMS reste en attente d'exécution. La communication sur l'association est alors bloquée jusqu'à réception de l'autorisation d'accès. __________________________________________________________________________________________ 9/8 Gestion des variables 9 __________________________________________________________________________________________ 9.4 Service Write 9.4-1 Mode Client MMS Ce service est utilisé par l'application PL7-3/MMS pour modifier une ou plusieurs variables de l'application MMS distante. a. Argument Variable Access Specification Ce paramètre est décrit au chapitre 9.1-1, intercalaire A. List of Data Ce paramètre contient la liste des valeurs à écrire (au maximum 4 valeurs de variables). b. Result(+) List of Write Result Ce paramètre indique pour chaque variable si l’écriture a réussi sinon la raison de l’échec. Success = TRUE or FALSE Data Access Error (si Success = FALSE) Voir la norme MMS pour les codes d’erreur associés. c. Result(-) Se reporter à la norme MMS. Tous les types d'erreur sont remontés à l'application PL7-3/MMS. __________________________________________________________________________________________ 9/9 A A __________________________________________________________________________________________ 9.4-2 Mode Serveur MMS Ce service est utilisé par un utilisateur MMS pour demander au Serveur MMS de modifier les valeurs d'une ou plusieurs variables associées au VMD (la station automate TSX7), au DOMAIN (l'application station .APP) ou à l'association AA. a. Argument Variable Access Specification Ce paramètre est décrit au chapitre 9.1-1, intercalaire A. List of Data Ce paramètre contient la liste des valeurs à écrire (au maximum 16 valeurs de variables). b. Result(+) List of Write Result Ce paramètre indique pour chaque variable si l'écriture a réussi ou la raison de l'échec. Success = TRUE or FALSE Data Access Error (si Success = FALSE) Voir la norme MMS pour les codes d'erreur associés. c. Result(-) Error Class = ACCESS Error Code = OBJECT_ACCESS_UNSUPPORTED __________________________________________________________________________________________ 9/10 Gestion des variables 9 __________________________________________________________________________________________ Additional Code INVALID_KIND_OF ACCESS (5) Le paramètre "Kind of Access" est incorrect Error Class = OTHERS Error Code = WRITE Additional Code DATA_VAR_SPEC_MISMATCH (1) Le nombre de variables ne correspond pas au nombre de data à écrire d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • accès dans le coupleur OSI à la table des symboles pour les variables nommées, • émission de la requête UNI-TE WRITE_SYSTEM_BIT (pour les bits systèmes), WRITE_SYSTEM_WORD (pour les mots systèmes) ou WRITE_OBJECTS (pour tous les autres objets) vers l’automate. Pour les Variables "Programmées", l'émission de la requête UNI-TE s'effectue uniquement si une autorisation d'accès a été émise au préalable par un OFB MSEMA. Si tel n'est pas le cas, le service MMS reste en attente d'exécution. La communication sur l'association est alors bloquée jusqu'à réception de l'autorisation d'accès. 9.5 Service InformationReport 9.5-1 Mode Client MMS Ce service permet à l'application PL7-3/MMS de recevoir une variable non sollicitée d'une application MMS distante. Ce service est non confirmé. a. Argument Variable Access Specification Ce paramètre est décrit au chapitre 9.1, intercalaire A. List of Access Result Contient la liste des valeurs de la variable attendue. __________________________________________________________________________________________ 9/11 A A __________________________________________________________________________________________ 9.5-2 Mode Serveur MMS Ce service permet au Serveur MMS d'émettre une ou plusieurs variables non sollicitées vers une application MMS distante. Ce service est non confirmé. a. Argument Variable Access Specification Ce paramètre est décrit au chapitre 9.1-1, intercalaire A. List of Access Result Contient la liste des valeurs de la variable attendue. 9.6 Service GetVariableAccessAttributes Ce service est utilisé par un utilisateur MMS pour demander au Serveur MMS de renvoyer les attributs d’une variable. Ce service est uniquement supporté en mode Serveur MMS. a. Argument Kind of Variable = NAMED or UNNAMED Ce paramètre indique s’il s’agit d’une variable nommée ou anonyme. Name Address Ces paramètres sont décrits au chapitre 9.1-1, intercalaire A. __________________________________________________________________________________________ 9/12 Gestion des variables 9 __________________________________________________________________________________________ b. Result(+) MMS Deletable = FALSE Les variables ne sont pas destructibles. Address Spécifie l’adresse de la variable PUBLIC. Type Specification Décrit le type de la variable. La description des types est donnée au chapitre 3.4-4. c. Result(-) Error Class = ACCESS Error Code = OBJECT_ACCESS_UNSUPPORTED Additional Code INVALID_OBJECT_SCOPE (3) Le paramètre "Name Scope" est incorrect INVALID_ADDRESS (7) Le paramètre "ADDRESS" est incorrect Error Code = OBJECT_NON_EXISTENT Additional Code DOMAIN_NON_EXISTENT (2) Le domaine désigné n’existe pas VARIABLE_NON_EXISTENT (4) La variable désignée n’existe pas Error Class = VMD_STATE Error Code = VMD_STATE_CONFLICT Additional Code TEMPORARILY_UNAVAILABLE (1) Table des symboles non accessible __________________________________________________________________________________________ 9/13 A A __________________________________________________________________________________________ d. Procédure Le Serveur MMS du coupleur OSI traite le service par les opérations suivantes : • Dans le cas d’une variable nommée, accès dans le coupleur OSI à la table des symboles des variables nommées. __________________________________________________________________________________________ 9/14 Annexes 10 __________________________________________________________________________________________ 10.1 Codes d'erreurs Code d'erreurs généraux Ces codes d'erreurs sont susceptibles d'être reçus lors de réponses négatives à plusieurs services : Error_Class = SERVICE_PREEMPT Error_Code = TIMEOUT L'automate ne répond pas. Error_Class = RESOURCE Error_Code = MEMORY_UNAVAILABLE Manque de ressources mémoire pour traiter le message. Error_Class = VMD_STATE • Error_Code = VMD_OPERATIONNAL_PROBLEM L'automate a refusé un message (problème de messagerie interne). • Error_Code = VMD_STATE_CONFLICT - Additionnal_Code = TEMPORARILY_NON_EXECUTABLE (2) L'état de l'automate ne permet pas d'exécuter le service immédiatement (automate déjà réservé, table des symboles en cours de chargement, ...) - Sans Additionnal_Code Le service ne peut pas être exécuté car l'état de l'automate ne le permet pas (perte de réservation, impossibilité d'accéder au status de l'automate, ...). Code d'erreurs particuliers Ces codes d'erreurs sont susceptibles d'être reçus dans des cas particuliers (sur réception de Download_Segment.ind ou Terminate_Download_Sequence.ind, non supportés en mode Client). Error_Class = APPLICATION_REFERENCE Error_Code = CONTEXT_UNSUPPORTED Additionnal_Code = CLIENT_DOWNLOAD_UNSUPPORTED (256) Le téléchargement n'est pas supporté en mode Client MMS. __________________________________________________________________________________________ 10/1 A A __________________________________________________________________________________________ 10.2 Codes d'erreurs émis par un serveur MMS distant Telemecanique __________________________________________________________________________________________ Codes Valeur Error_Class = VMD_STATE 0 • Error_Code = VMD_STATE_CONFLICT TEMPORARILY_UNAVAILABLE 1 1 TEMPORARILY_NON_EXECUTABLE 2 • Error_Code = VMD_OPERATIONNAL_PROBLEM 2 • Error_Code = DOMAIN_TRANSFER_PROBLEM INCONSISTENT_DATA 3 2 UPLOAD_NON_FINISHED 3 WRITE_SEG_IMPOSSIBLE 4 READ_DATA_SEGMENT_IMPOSSIBLE 5 DOWNLOAD_IMPOSSIBLE 6 Description L'accès aux variables est impossible car la table des symboles est en cours de chargement. Le service est temporairement non exécutable. Données téléchargées incohérentes. Fermeture d'archivage avant la fin. Ecriture de données dans l'automate impossible. Lecture de données dans l'automate impossible. Ouverture du téléchargement refusé par l'automate. Error_Class = APPLICATION_REFERENCE 1 • Error_Code = CONTEXT_UNSUPPORTED MM_041_MAX_NEST_EXCEEDED MM_042_VNAM_CBB_VIOL MM_043_VADR_CBB_VIOL MM_046_VALT_CBB_VIOL MM_049_STR1_CBB_VIOL MM_050_STR2_CBB_VIOL CLIENT_DOWNLOAD_UNSUPPORTED 4 41 42 43 46 49 50 256 Error_Class = DEFINITION 2 • Error_Code = OBJECT_UNDEFINED INVALID_DOMAIN_NAME DOMAIN_UNDEFINED PI_UNDEFINED INVALID_PI_NAME 1 1 2 3 4 Nom de domaine incorrect. Domaine inexistant. PI inexistant. Nom de PI incorrect. • Error_Code = OBJECT_EXISTS DOMAIN_ALREADY_EXIST PI_ALREADY_EXIST 5 1 2 Le domaine existe déjà. Le PI existe déjà. Contenu de Read_Response incompatible avec les paramètres négociés lors de l'ouverture d'association. Téléchargement non supporté en mode Client. __________________________________________________________________________________________ 10/2 Annexes 10 __________________________________________________________________________________________ Codes Valeur Error_Class = RESOURCE 3 • Error_Code = MEMORY_UNAVAILABLE 1 Error_Class = SERVICE 4 • Error_Code = PRIMITIVES_OUT_OF_SEQUENCE 1 • Error_Code = OBJECT_STATE_CONFLICT DOMAIN_NOT_DELETABLE 2 1 INVALID_DOMAIN_STATE 2 INVALID_PI_STATE 3 PI_NOT_DELETABLE 4 UPLOAD_IN_PROGRESS 5 UPLOAD_IMPOSSIBLE 6 Description Mémoire insuffisante pour exécuter le service. Mauvais séquencement des primitives d'archivage. L'attribut "Deletable" du domaine a la valeur FALSE. L'état du domaine ne permet pas d'exécuter le service. L'état du PI ne permet pas d'exécuter le service. L'attribut "Deletable" du PI a la valeur FALSE. Un archivage en cours empêche l'exécution du service. L'archivage est impossible car l'application automate est protégée. • Error_Code = CONTINUATION_INVALID 4 Error_Class = SERVICE_PREEMPT 5 • Error_Code = TIMEOUT 1 L'automate ne répond pas aux requêtes qui lui sont émises. Error_Class = ACCESS 7 Les paramètres "Extended_ Object_Class" ou "Object_ Class" de GetNameList.req sont invalides car non supportés. • Error_Code = OBJECT_ACCESS_UNSUPPORTED 1 INVALID_EXTENDED_OBJECT_CLASS 1 INVALID_OBJECT_CLASS 2 3 INVALID_OBJECT_SCOPE 3 Le paramètre "Continue After" de GetNameList.req est invalide. Le paramètre "Scope" de GetNameList.req ou de GetVarAccessAttributes.req est invalide car non supporté. __________________________________________________________________________________________ 10/3 A A __________________________________________________________________________________________ Codes Valeur Description INVALID_KIND_OF_ACCESS 5 INVALID_ADDRESS 7 INVALID_KIND_OF_VARIABLE 8 EXEC_ARGUMENT_UNSUPPORTED 9 La valeur du paramètre "Kind off access" dans Read.req ou Write.req est non supportée. La valeur du paramètre "Address" dans Get Var Access Attributes est non supportée. La valeur du paramètre "Kind of Variable" dans Get Var Access Attributes est non supportée. Le paramètre "Exec Argument" de Start.req ou Resume.req n'est pas supporté. • Error_Code = OBJECT_NON_EXISTENT INVALID_DOMAIN_NAME DOMAIN_NON_EXISTENT PI_NON_EXISTENT VARIABLE_NON_EXISTENT 2 1 2 3 4 USLM_NON_EXISTENT 5 Error_Class = CONCLUDE • Error_Code = FURTHER_COMMUNICATION_ REQUIRED 9 1 Error_Class = Others • Error_Code = DATA_CODED 12 1 • Error Code = WRITE_CLASS DATA_VAR_SPEC_MISMATCH 2 1 • Error_Code = INITIATE DOWNLOAD_SEQ INVALID_SHARABLE_ATTRIBUTE 3 2 • Service Specific Information = <Program Invocation State> Nom de Domaine incorrect. Domaine non existant. PI non existant. Variable non existante dans la table des symboles. Machine d'archivage non existante. Fermeture d'association par Conclude non réalisable car communications en cours. Le format des données téléchargées est codé. Le nombre de variables est différent du nombre de données dans la requête Write. L'attribut "Sharable" du domaine a la valeur True. Ces codes d'erreurs rendus en réponse aux requêtes de gestion de programme ont la valeur de l'état du PI définie dans la norme MMS. __________________________________________________________________________________________ 10/4 ________________________________________________________ Mise en œuvre et méthodologie B ___________________________________________________________________________ Chapitre Page __________________________________________________________________________________________________ 1 Présentation et mise en œuvre _________________________________________________________________________________________ 1.1 Généralités 1/1 _______________________________________________________________________________ 1.1-1 Fonctionnalités offertes par le logiciel PL7-OSI 3.0 1/1 1.2 Configuration nécessaire à PL7-OSI 3.0 1/2 _______________________________________________________________________________ 1.3 Vérification du matériel 1/2 _______________________________________________________________________________ 1.4 Raccordement 1/3 _______________________________________________________________________________ 1.5 Mise en œuvre logicielle 1/4 _______________________________________________________________________________ 1.5-1 Opérations préliminaires 1/4 1.5-2 Procédure d'installation 1/4 1.6 Les règles d'accès 1/6 _______________________________________________________________________________ __________________________________________________________________________________________________ 2 Méthodologie __________________________________________________________________________________________________________________ 2.1 Proposition de méthodologie de mise en œuvre d'une 2/1 application sur automate TSX/PMX connecté sur réseau OSI _______________________________________________________________________________ 2.1-1 Adresses des équipements 2.1-2 Architecture de communication 2.1-3 Liste des variables MMS 2.1-4 Liste des services MMS utilisés sur chaque association 2.1-5 Méthodologie générale 2.1-6 Méthodologie conception application PL7-OSI 2.1-7 Methodologie conception application PL7-MMS 2.1-8 Méthodologie conception application PL7-3 2/2 2/3 2/3 2/4 2/5 2/6 2/7 2/8 ___________________________________________________________________________ B/1 B ___________________________________________________________________________ B ___________________________________________________________________________ B/2 Présentation et mise en œuvre 1 __________________________________________________________________________________________ 1.1 Généralités Ce document décrit la mise en oeuvre et l'utilisation du logiciel PL7-OSI 3.0 référencé TXT L SSP30 V5F, sur terminal équipé du système d'exploitation OS/2 (Version 1.2 minimum) et de l'atelier logiciel X-TEL : • terminal FTX 507, • micro-ordinateur Compatible PC, équipé d’un processeur 80386 minimum. Ce logiciel permet de concevoir et d'exploiter des applications mettant en oeuvre les coupleurs OSI TSX ETH 200. 1.1.1 Fonctionnalités offertes par le logiciel PL7-OSI 3.0 La mise en œuvre des automates sur un réseau OSI nécessite : • le choix d'un profil de communication commun à tous les équipements (stackOSI) et le chargement de ce profil dans les coupleurs de communication, • la sélection des paramètres de fonctionnement du réseau et le chargement de la configuration correspondante dans les coupleurs, • la sélection des variables MMS vues du réseau parmi l 'ensemble des variables gérées par un équipement. Ces fonctionnalités sont offertes dans PL7-OSI 3.0 par cinq sous-ensembles logiciels : • PL7-OSI offre, pour chaque station : - assistance à la saisie des paramètres de configuration par l'utilisation de menus et d'une documentation en ligne, - aide à la mise au point, - transfert de la configuration entre la mémoire automate, la mémoire coupleur et le disque, - documentation de la configuration, - archivage de la configuration sur disque, - impression de la configuration. • PL7-MMS permet, pour chaque station : - la saisie des variables MMS visibles sur le réseau, - transfert des variables sélectionnées entre la mémoire automate et le disque, - documentation de la base de variables MMS, - archivage de la base sur disque, - impression de la base. __________________________________________________________________________________________ 1/1 B __________________________________________________________________________________________ • OSI-LOADER permet la configuration et l'exécution du chargement du profil de communication dans les coupleurs TSX ETH 200 connectés à un réseau 802.3. B • OFB MMSLD, extension du système d'exploitation de l'automate, effectue automatiquement le chargement des paramètres OSI et de la table des variables MMS dans le coupleur réseau chaque fois que celà est nécessaire. • Bibliothèques des OFBs MMS, réalisant des services MMS (Read/Write Variables, Gestion Equipement,...) sur une station TSX connectée au réseau. 1.2 Configuration nécessaire à PL7-OSI 3.0 Pour mettre en oeuvre PL7-OSI 3.0, il est nécessaire de disposer d'un terminal FTX 507 ou d'un micro-ordinateur ou compatible PC équipé : • du système d'exploitation OS/2 (Version 1.2 minimum) , • de l'atelier logiciel X-TEL V5, référence TXT L BASE V5, • du logiciel PL7-NET, référence TXT L PL7 NET V5F, pour pouvoir construire une architecture réseau et utiliser le sous-ensemble OSI-LOADER de PL7-OSI 3.0 depuis l'atelier X-TEL. • du logiciel PL7-3 pour programmer l'application de chaque station du réseau. Cela implique de disposer au minimum de 4 Mo de mémoire RAM et de 40 Mo de disque dur (processeur 80386 minimum). Important Malgré tout le soin apporté à l'élaboration de ces logiciels, Telemecanique ne peut garantir la bonne exécution de ces logiciels sur la totalité des micro-ordinateurs compatibles PC (répondant aux caractéristiques pré-citées) disponibles sur le marché. 1.3 Vérification du matériel L’ensemble logiciel TXT L SSP 30 V5 comprend : • • • • • • • une disquette au format 3"1/2, référencée TXT LF SSP V5,, une disquette au format 3"1/2, référencée TXT LF MMS V5, une disquette au format 3"1/2, référencée TXT LF STK V5, une disquette au format 3"1/2, référencée TXT LF FB SSP V5, une clé de protection, un contrat de licence, la présente documentation, référencée TXT DM SSP V5F. __________________________________________________________________________________________ 1/2 Présentation et mise en œuvre 1 __________________________________________________________________________________________ Pour utiliser le logiciel PL7-OSI 3.0, il est nécessaire de disposer du matériel suivant : • un terminal FTX 507, un micro-ordinateur IBM PS/2 ou compatible PC (voir configuration nécessaire chapitre 1.2), • un câble de liaison terminal / automate programmable, dans le cas d'un terminal FTX 507, • dans le cas d'un micro-ordinateur IBM PS/2 ou compatible PC, un ensemble TSX TAC 03 de liaison terminal / automate programmable composé de : - un convertisseur RS 232C/ boucle de courant, - un câble de liaison convertisseur / micro-ordinateur équipé d'un connecteur 9 points, - un câble de liaison convertisseur / micro-ordinateur équipé d'un connecteur 25 points. • un support de clé logicielle TSX SCC 02. Le processeur de l'automate modèle 40 TSX/PMX 47, 67, 87 ou 107-40 doit être impérativement de niveau V4.4 minimum. 1.4 Raccordement Tous les raccordements spécifiques au terminal (moniteur, clavier, souris, imprimante, support de clé...) étant supposé effectués, ce chapitre ne décrit que la mise en place de la clé logicielle. Positionner la clé logicielle dans l’emplacement libre du support de clé. Cette manipulation doit s’effectuer hors tension. Note Cette clé logicielle contient le droit d'accès obligatoire pour accèder au logiciel PL7-OSI 3.0. L'outil Key Manager, livré avec le logiciel X-TEL, permet de transférer ce droit dans la clé de travail afin de concentrer les droits sur une seule clé (clé de travail) et donc de libérer un emplacement sur le support de clé. Pour plus de détails concernant l'utilisation de cet outil, se reporter au manuel TXT DM XTEL V5F, X-TEL Atelier logiciel, intercalaire C, chapitre 9. __________________________________________________________________________________________ 1/3 B __________________________________________________________________________________________ 1.5 Mise en œuvre logicielle 1.5-1 Opérations préliminaires B Avant d’installer le logiciel PL7-OSI 3.0 sur le 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éterioration accidentelle et de ne travailler qu’avec la copie. Important Les disquettes du logiciel PL7-OSI 3.0 sont livrées en position verrouillée en écriture. Ne pas modifier la position des verrous 1.5-2 Procédure d’installation Les opérations suivantes doivent précéder l’installation du logiciel PL7-OSI 3.0 : • vérifier que l’atelier logiciel X-TEL est déjà installé : - si c’est le cas, procéder à l’installation du logiciel PL7-OSI 3.0 selon la procédure décrite ci-après, - dans le cas contraire, installer d’abord l’atelier logiciel X-TEL (se reporter au document TXT DM XTEL V5F Atelier logiciel, intercalaire B, chapitre 5). • fermer toutes les sessions en cours . Installation du logiciel PL7-OSI 3.0 1 ouvrir une session OS/2 plein écran. 2 insérer la disquette TXT LF SSP V5 dans le lecteur, 3 saisir l'identificateur du lecteur (a: ou b:) taper <Entrée>, taper : INSTALL, puis valider par <Entrée>, 4 suivre la procédure visualisée à l’écran, 5 lorsque l’installation est terminée, remplacer la disquette par la disquette suivante (référencée TXT LF MMS V5), __________________________________________________________________________________________ 1/4 Présentation et mise en œuvre 1 __________________________________________________________________________________________ 6 saisir à nouveau la commande install puis valider par <Entrée>, 7 suivre la procédure visualisée à l’écran, 8 reprendre les points 6, 7 pour installer les disquettes TXT LF STK 30 V5 et TXT LF FB SSP V5, 9 lorsque l’installation des quatre disquettes est terminée, contrôler la configuration. Valider par <Entrée>, 10 retirer la disquette du lecteur et retourner à X-TEL par la commande <Ctrl><Echap>. __________________________________________________________________________________________ 1/5 B __________________________________________________________________________________________ 1.6 Les règles d'accès L'accès aux outils logiciels PL7-MMS ou PL7-OSI s'effectue en ouvrant la fenêtre "outil" correspondante à la station dont on désire modifier les données. Pour celà, il faut: B 1 choisir la fenêtre : Gestionnaire de Bureau électronique et activer l'option Télémécanique de cette fenêtre par un double clic sur l'icône correspondante, 2 ouvrir la fenêtre utilisateur par un double clic sur l'option XTEL, 3 saisir les paramètres d'identification d'utilisateur (Nom utilisateur et Mot de passe) puis valider pour faire apparaître la fenêtre Volumes, 4 ouvrir un volume par un double clic sur l'icône du volume de l'application ou utiliser la fonction navigateur XTEL Browser, 5 ouvrir un projet par un double clic sur l'icône du projet de l'application, 6 ouvrir une station par un double clic sur l'icône de la station dont on veut configurer les variables, 7 suivre la procédure visualisée à l’écran, 8 ouvrir la fenêtre de la fonction voulue : PL7-MMS ou PL7-OSI par un double clic. Si cet icône n'est pas présente dans la fenêtre secondaire Fonctions alors que le logiciel a été installé, celà signifie que cette fonction n'a pas été définie pour la station. Dans ce cas, il convient de : - dérouler par glissement le menu Définition, activer l'option Nouveau, - sélectionner par un clic l'option "MMS" ou "OSI" dans la liste de fonctions proposées puis valider. 9 pour plus de confort,agrandir plein écran la fenêtre PL7-MMS ou PL7-OSI, par un clic sur le bouton "flèche vers le haut" de la fenêtre. __________________________________________________________________________________________ 1/6 Méthodologie 2 __________________________________________________________________________________________ 2.1 Proposition de méthodologie de mise en œuvre d'une application sur automate TSX/PMX connecté sur réseau OSI La méthodologie proposée est destinée à guider l'utilisateur dans sa démarche pour générer, mettre au point, archiver et documenter une application de communication. Cette méthodologie est illustrée par un exemple didactique dont l'architecture et les services mis en œuvre sont décrits ci-dessous. Les dossiers et documentation de cet exemple sont fournis dans l'intercalaire H. Attention, vous devez charger le stack OSI dans les coupleurs TSX ETH 200 à l'aide de l'outil OSI-LOADER. Cette opération n'est faite qu'une seule fois; le stack OSI est ensuite sauvegardé dans le coupleur. Une led de défaut clignote tant que le stack et la configuration OSI ne sont pas chargés (cf.Manuel de Mise en oeuvre du coupleur TSX ETH 200). FTX 507 ETHERNET APRIL R6S0 R6S1 TSX 7 TSX 7 APRIL 7000 __________________________________________________________________________________________ 2/1 B __________________________________________________________________________________________ 2.1-1 Adresses des équipements Equipement Adresse XWAY Réseau/Station Adresse MMS R6S0 06/00 R6S0_MMS 00000001 0001 0001 4954454C454D4543412E060001 Application name PSEL SSEL TSEL NSAP R6S1_MMS 00000001 0001 0001 4954454C454D4543412E060101 Application name PSEL SSEL TSEL NSAP APRIL_S1C 00000001 0000 0101 4954454C454D4543412E060101 Application name PSEL SSEL TSEL NSAP APRIL_S1S 00000002 0000 0101 4954454C454D4543412E060101 Application name PSEL SSEL TSEL NSAP B _______________________________________________________________________________________ R6S1 06/01 _______________________________________________________________________________________ APRIL _______________________________________________________________________________________ APRIL _______________________________________________________________________________________ __________________________________________________________________________________________ 2/2 Méthodologie 2 __________________________________________________________________________________________ 2.1-2 Architecture de communication R6S1 ▲ ▲ C1 C3 ▲ R6S0 C2 ▲ C0 B APRIL C0 = association ouverte par R6S0 vers R6S1 C1 = association ouverte par R6S1 vers R6S0 C0 = association ouverte par R6S1 vers APRIL C0 = association ouverte par APRIL vers R6S1 2.1-3 Liste des variables MMS Voir description détaillée dans exemple en annexe R6S0_MMS R6S1_MMS MT5_W50 MT5_W50 MD_W120 MBIT_B10 MABIT_50 MMOT_W100 MADW_200 MT250_DW1000 APRIL_S1C RUN_API MT_500W MUMOT_W15 US_X900 VOITURE VSTRING __________________________________________________________________________________________ 2/3 __________________________________________________________________________________________ 2.1-4 Liste des services MMS utilisés sur chaque association Service MMS C0 INITIATE R6S0 R6S1 WRITE ▲ READ (2 fois) INFO REPORT (2 fois) ▲ ▲ STATUS UNSOL.STATUS ▲ INITIATE WRITE READ (2 fois) CONCLUDE/ABORT ▲ ▲ C2 ▲▲▲▲ CONCLUDE/ABORT C1 APRIL ▲ ▲▲ INITIATE READ ▲ INFO REPORT INITIATE ▲ C3 ▲ CONCLUDE/ABORT ▲ READ IDENTIFICATION WRITE READ ▲▲ ▲ B Association CONCLUDE/ABORT __________________________________________________________________________________________ 2/4 Méthodologie 2 __________________________________________________________________________________________ 2.1-5 Méthodologie générale ▲ Installation du logiciel B Stations TSX/PMX V5 Outil XTEL-CONF Stations TSX/PMX V4 Outil Construction de la XTEL-MEM structure de l'application Définition des E/S Paramétrage appli. Outil PL7-OSI voir nota 1 Saisie des adresses des applications del'architecture : création du répertoire OSI voir nota 2 Outil PL7-MMS Saisie des variables MMS des applications de l'architecture : création du répertoire MMS Conception Application PL7-OSI Conception Application PL7-MMS OFF-LINE Conception Application PL7-3+OFB MMS Stations TSX/PMX V5 Stations TSX/PMX V4 Outil XTEL-MEM Construction de l'application automate ▼ ▲ > voir nota 3 Transfert automate Fonction PL7-3 Mode Debug Mise au point application Mise au point coupleurs OSI Mise à jour fichier Application fichier Documentation Mise à jour fichier Application fichier Documentation Outil PL7-OSI ON-LINE ▼ __________________________________________________________________________________________ 2/5 __________________________________________________________________________________________ B Nota 1 : Voir fonction saisie répertoire OSI-PRJ chapitre 3.1-2 intercalaire D. Dans l'exemple, le répertoire OSI-PRJ contient les noms d'applications R6S0_MMS, R6S1_MMS, APRIL_S1C avec les adresses correspondantes. Voir tableau adresses des équipements. Cette saisie s' effectue une seule fois pour l'ensemble des stations du projet. Nota 2 : Voir édition du répertoire MMS chapitre 3.1 intercalaire E Dans l'exemple, le répertoire MMS contient les noms de variables MMS avec leurs caratéristiques détaillées (portée, type, longueur) Voir tableau liste des variables MMS. Cette saisie s' effectue une seule fois pour l'ensemble des stations du projet. Nota 3 : Toutes ces opérations sont à effectuer pour chaque station _______________________________________________________________________________________ 2.1-6 Méthodologie conception application PL7-OSI Repertoire OSI Configuration des paramètres OSI (1) Définition de l'application locale (1) Sélection des applications distantes (1) Génération de la configuration OSI (2) Conception Application PL7-OSI Chargement des coupleurs et UC (3) Documentation coupleurs OSI (4) Stations TSX/PMX V5 (1) Intercalaire D Chap. 3.2 (2) Intercalaire D Chap. 3.3 (3) Intercalaire D Chap. 4.1 et 4.3 (4) Intercalaire D Chap. 5 Stations TSX/PMX V4 Intégration .BIN dans fichier Application Mise à jour éventuelle des autres applications si modification du répertoire OSI-PRJ Nota 4 : Dans l'exemple, l'équipement R6S0 a pour application locale R5S0_MMS et pour application distante R6S1_MMS. L'équipement R6S1 à pour application locale R6S1_MMS et pour applications distantes R6S0_MMS et APRIL_S1C. __________________________________________________________________________________________ 2/6 Méthodologie 2 __________________________________________________________________________________________ 2.1-7 Méthodologie conception application PL7-MMS Repertoire OSI Définition des varaibles MMS distantes B Définition des variables MMS locales (1) Génération de la configuration MMS (2) Conception Application PL7-MMS Chargement de la mémoire UC (3) Documentation Application (4) Stations TSX/PMX V5 (1) Intercalaire E Chap. 3.2/3.3 voir nota 5 (2) Intercalaire E Chap. 3.4 (3) Intercalaire E Chap. 4.1 (4) Intercalaire E Chap. 5 (5) Intercalaire E Chap. 3.2 Stations TSX/PMX V4 Intégration .BIN dans fichier Application (5) Mise à jour éventuelle des autres applications si modification du répertoire MMS-PRJ Nota 5 : Dans l'exemple, la variable MMS MBIT_BIO est une variable locale pour l'application R6S1_MMS et une variable distante pour l'application R6S0-MMS __________________________________________________________________________________________ 2/7 __________________________________________________________________________________________ 2.1-8 Méthodologie conception application PL7-3 Intégration OFB MMSLD sous PL7-3 B Conception Application PL7-3 Stations TSX/PMX V5 Fichiers PL7-3 .BIN Sauvegarde et intégration du fichier Application (STORE) Mode configuration PL7-3 Programmation Application Mode programmation PL7-3 Documentation Application Fichier STATION .DOC Stations TSX/PMX V4 Intégration .BIN dans fichier Application Fichier STATION .BIN et Fichier STATION .APP __________________________________________________________________________________________ 2/8 ________________________________________________________ OSI-LOADER C ___________________________________________________________________________ Chapitre Page __________________________________________________________________________________________________ 1 Généralités _________________________________________________________________________________________ 1.1 Fonctions du logiciel 1/1 _______________________________________________________________________________ __________________________________________________________________________________________________ 2 OSI-LOADER __________________________________________________________________________________________________________________ 2.1 Présentation du logiciel 2/1 _______________________________________________________________________________ 2.2 Les pré-requis nécessaires à la mise en œuvre de OSI-LOADER 2/1 _______________________________________________________________________________ 2.3 Fonctions du logiciel 2/1 _______________________________________________________________________________ 2.4 Accès au logiciel OSI-LOADER 2/2 _______________________________________________________________________________ 2.5 Génération d'un fichier d'exploitation - Menu Configuration 2/3 _______________________________________________________________________________ 2.5-1 Sélection d'un fichier exploitation 2.5-2 Edition d'un fichier exploitation 2/4 2/5 2.6 Chargement des stations définies dans le fichier d'exploitation 2/9 _______________________________________________________________________________ 2.7 Visualisation de fichiers exploitation 2/10 _______________________________________________________________________________ 2.8 Suppression de fichiers exploitation 2/11 _______________________________________________________________________________ 2.9 La fonction d'aide 2/12 _______________________________________________________________________________ ___________________________________________________________________________ C/1 C A ___________________________________________________________________________ C ___________________________________________________________________________ C/2 Généralités 1 __________________________________________________________________________________________ 1.1 Fonctions du logiciel Pour permettre la connexion d'un automate TSX/PMX sur un réseau OSI/MMS le coupleur de communication de cet automate doit contenir le logiciel OSI/MMS. Ce logiciel est chargé sur les coupleurs réseaux TSX ETH 200 par l'outil OSI-LOADER (outil de niveau projet au sens X-TEL). C __________________________________________________________________________________________ 1/1 __________________________________________________________________________________________ C __________________________________________________________________________________________ 1/2 OSI-LOADER 2 __________________________________________________________________________________________ 2.1 Présentation du logiciel OSI-LOADER est un outil de niveau projet, sous-ensemble du logiciel PL7-OSI 3.0 référencé par le libellé TXT L SSP30 V5. Ce logiciel permet de configurer et d'exécuter la fonction de chargement du logiciel exécutable OSI/MMS, vers les coupleurs TSX ETH 200. Il sera utilisé dans un environnement réseau de type 802.3 (ETHERNET). La configuration consiste à générer un fichier d'exploitation (filename.EXP) contenant le descriptif des stations à charger. Le chargement proprement dit, transfère le logiciel OSI/MMS vers les stations définies dans le fichier d'exploitation. 2.2 Les pré-requis nécessaires à la mise en œuvre de OSI-LOADER OSI-LOADER nécessite, pour sa mise en oeuvre sur l'atelier X-TEL, que l'outil PL7-NET soit installé d'une part et que l'architecture du réseau ETHERNET (connexion des stations) soit définie d'autre part. Pour plus de précision sur le mode opératoire de PL7-NET, on se reportera au manuel de cet outil. 2.3 Fonctions du logiciel Les fonctions principales de OSI-LOADER sont : Configuration d’un fichier exploitation Création, modification d'un fichier exploitation (filename.EXP) définissant les stations sur lesquelles effectuer le chargement du logiciel OSI/MMS. Chargement des stations Chargement des stations définies dans ce fichier d’exploitation (filename.EXP). Suppression de fichier Suppression de fichiers d’exploitation filename.EXP préalablement générés. __________________________________________________________________________________________ 2/1 C __________________________________________________________________________________________ 2.4 Accès au logiciel OSI-LOADER L’accès au logiciel de chargement OSI-LOADER s’effectue en ouvrant la fenêtre OSILOADER du projet pour lequel des stations sont à charger. Pour cela, il faut : 1 choisir la fenêtre : Gestionnaire de Bureau électronique et activer l'option Telemecanique de cette fenêtre par un double clic sur l'icône correspondant, 2 ouvrir la fenêtre utilisateur par un double clic sur l'option X-TEL, ou utiliser XTEL Browser. 3 saisir les paramètres d'identification d'utilisateur (Nom utilisateur et Mot de passe) puis valider pour faire apparaître la fenêtre Volumes, 4 ouvrir un volume par un double clic sur l'icône du volume de l'application, 5 ouvrir un projet par un double clic sur l'icône du projet de l'application, ou utiliser XTEL Browser. 6 ouvrir la fenêtre de fonction OSI-LOADER par un double clic. Si cet icône n'est pas présent dans la fenêtre secondaire Outils_Projets, alors que le logiciel a été installé, cela signifie que cette fonction n'a pas été définie dans le projet. Dans ce cas, il convient de : • dérouler par glissement le menu Définition puis activer l’option Nouveau, • sélectionner par un clic l’option OSI-LOADER dans la liste de fonctions proposées puis valider. 7 pour plus de confort, agrandir plein écran la fenêtre OSI-LOADER par un clic sur le bouton "flèche vers le haut" de la fenêtre. C Fenêtre principale __________________________________________________________________________________________ 2/2 OSI-LOADER 2 __________________________________________________________________________________________ Synoptique Configuration Génération… Chargement Chargement… Utilitaires Sortie Aide Visualisation… Suppression... Fichier Exploitation [EXP]… Configuration création, modification d'un fichier d'exploitation Chargement transfert du logiciel OSI/MMS dans les stations configurées dans un fichier d'exploitation Utilitaires visualisation et suppression de fichier d'exploitation Sortie quitter la fonction OSI-LOADER Aide Aide en ligne. 2.5 Génération d'un fichier d'exploitation - Menu Configuration Le menu Configuration permet de créer ou modifier un fichier d'exploitation filename.EXP. Le fichier d'exploitation sert à l'exécution du chargement du Stack OSI vers les stations. Suivant que le nom de fichier filename.EXP, spécifié à l'entrée dans la fonction, correspond à un fichier existant ou non, il s'agira d'une création ou d'une modification de fichier. La séquence des actions à enchaîner pour créer ou modifier un fichier filename.EXP est la suivante : 1 spécifier le nom d’un fichier d’exploitation, 2 constituer (ou modifier) une liste de stations à charger. Chacune des stations de la liste étant définie, avec une approche hierarchisée par : • le réseau auquel elle appartient, • le nom de la station, extraite des stations préalablement définies sur le réseau, • l’emplacement du coupleur ETH 200 sur le rack de la station, • le type de profil OSI-MMS à utiliser. 3 sauvegarder le fichier d'exploitation : filename.EXP. __________________________________________________________________________________________ 2/3 C __________________________________________________________________________________________ 2.5-1 Sélection d'un fichier d'exploitation Après avoir effectué les sélections Configuration puis Génération, la boîte de dialogue suivante s'ouvre : C L'écran présente : • un champ «Nom de fichier» dans lequel doit s’inscrire le nom du fichier, d’extension ".EXP", qui sera créé ou modifié lors de la sauvegarde. • une liste des fichiers d'exploitation déjà connus sur le projet. • les boutons Validation, Annulation, Aide. La saisie du nom de fichier peut s’effectuer soit : • par un simple clic dans le champ et en tapant le nom directement au clavier. • en sélectionnant un fichier, parmi la liste des fichiers d'exploitation connus pour le projet, en procédant comme suit: - soit par un double clic sur le fichier à sélectionner - soit en positionnant, à l’aide des flèches de direction, le bandeau lumineux sur le fichier cherché et en pressant <ENTREE>. Un nom de fichier est toujours inscrit par défaut dans le champ spécifique, à l’ouverture de la fenêtre, selon la règle suivante : • s’il n’existe pas de fichier d’exploitation, le nom par défaut est le nom du projet suivi de l’extension ".EXP", • dans le cas contraire, c’est le nom du premier fichier de la liste qui est positionné dans le champ. Validation appelle l’écran d’édition du contenu du fichier d’exploitation. Annulation provoque l’abandon, de la fonction de configuration. Aide donne accès aux menus d’aide sur la génération de fichiers d’exploitation. __________________________________________________________________________________________ 2/4 OSI-LOADER 2 __________________________________________________________________________________________ 2.5-2 Edition d'un fichier d'exploitation Après validation d'un nom de fichier, l'écran suivant s'ouvre : C Cet écran doit lister les différentes stations définies dans le fichier d'exploitation sélectionné auparavant. Les fonctions d'édition sont activées par les boutons situés au bas de l'écran. Deux cas peuvent se présenter : • si le nom de fichier ne correspond pas à un fichier existant, la liste est vide de toute station ; on est en création. • dans le cas contraire, la liste est composée de toutes les stations déjà définies dans ce fichier ; on est en modification. Chaque station de la liste est décrite par l'association de trois symboles : le nom du réseau, le nom de la station et la désignation du profil OSI-MMS. Ajout lance la définition d'une nouvelle station : appel de quatre boîtes de dialogue enchainées séquentiellement. Ces boîtes de dialogue permettent les sélections, dans l'ordre, du réseau, de la station sur le réseau, de l'emplacement du coupleur dans le rack de la station et enfin du profil OSI-MMS. Suppression supprime une station de la liste. Sauvegarde sauve les modifications effectuées (génération du fichier exploitation). Annulation abandon de la fonction d’édition et retour à l’écran précédent. Sortie abandon de la fonction de configuration de fichier d’exploitation, retour à la barre de menu de OSI-LOADER. __________________________________________________________________________________________ 2/5 __________________________________________________________________________________________ Ajout d’une station à la liste Remarque préliminaire : L'établissement de la configuration de chargement revient à dresser une liste de stations à charger, connues sur un réseau 802.3 défini au préalable. Pour utiliser l'outil OSI-LOADER il faut tout d'abord définir l'architecture réseau global. Il faut pour cela avoir installé l'outil PL7-NET. Il faut aussi avoir défini dans la fenêtre secondaire “Réseaux” de la fenêtre “Projet” courant, le ou les réseaux du projet. Compte tenu de ces pré-requis, l'un des messages d'erreurs suivants peut cependant apparaître lors de la validation sur le bouton Ajout : C Message : "Aucun réseau valide n’est défini sous ce projet" Explication : Aucun réseau n’est défini, ou le réseau défini n’est pas du type 802.3. Message : "Aucune station valide n’est définie sous ce réseau" Explication : Un réseau 802.3 a bien été défini, mais aucune station n’a été "connectée" au sens X-TEL. Si la définition de l'architecture réseau est correcte, il devient possible d'ajouter une station à la liste. Ainsi qu'il l'a été indiqué plus haut, la station est caractérisée par le nom du réseau, le nom de la station, l'emplacement du coupleur (ou numéro de module) et le profil OSI-MMS à charger. Ces quatre paramètres sont sélectionnés, successivement, par l'intermédiaire de quatre boîtes de dialogue. Le mode opératoire est le même sur les quatre fenêtres qui vont être proposées : opérer une sélection dans une liste proposée puis valider, à la suite de quoi la boîte de dialogue est ouverte, et ceci jusqu'à la fenêtre de sélection des profils. La validation sur cette dernière provoque l'éffacement des fenêtres empilées et le retour à l'écran de configuration. La station nouvellement définie s'inscrira en fin de liste. __________________________________________________________________________________________ 2/6 OSI-LOADER 2 __________________________________________________________________________________________ Les quatre boîtes de dialogue comportent les quatre mêmes boutons : Validation enregistre la sélection opérée et ouvre la fenêtre suivante (à l'exception de la fenêtre de sélection des profils, pour laquelle la validation provoque le retour à l'écran de configuration). Annulation provoque l'abandon et le retour à la fenêtre précédente. Sortie provoque l'abandon de la configuration et le retour à la barre de menu de OSI-LOADER. Aide appelle l'écran d'aide lié à la sélection en cours (réseau,station, module ou profil). C __________________________________________________________________________________________ 2/7 __________________________________________________________________________________________ C Remarques concernant la boîte de sélection des profils : • Cette boîte récapitule les trois sélections précédentes (réseau, station, module). • Dans la version actuelle,un seul profil OSI-MMS est disponible : le profil MMS-IS. __________________________________________________________________________________________ 2/8 OSI-LOADER 2 __________________________________________________________________________________________ 2.6 Chargement des stations définies dans le fichier d'exploitation Pour charger un ensemble de stations il suffit de sélectionner le fichier d’exploitation préalablement configuré, dans la boîte de dialogue ouverte, puis de valider. Validation provoque le chargement des stations définies dans le fichier dont le nom est spécifié dans la zone "Nom du fichier", après réponse affirmative à la demande de confirmation. __________________________________________________________________________________________ 2/9 C __________________________________________________________________________________________ 2.7 Visualisation de fichiers exploitation Pour visualiser un fichier d'exploitation, il suffit d'en sélectionner le nom dans la liste présentée dans la boîte de dialogue suivante,puis de valider : C Validation lance l'écran de visualisation du fichier .EXP. Annulation abandon, pas de fichier à visualiser et retour au menu principal Le fichier d'exploitation est visualisé sous son format d'origine ; l'utilisateur peut faire défiler son contenu en utilisant la barre de défilement verticale. Le bouton ANNULATION permet de quitter la fonction de visualisation et de retourner à l'écran principal de l'outil OSI-LOADER. __________________________________________________________________________________________ 2/10 OSI-LOADER 2 __________________________________________________________________________________________ 2.8 Suppression de fichiers exploitation Pour supprimer un fichier d'exploitation, il suffit d'en sélectionner le nom dans la liste présentée dans la boîte de dialogue suivante, puis de valider : C Validation supprime le fichier dont le nom est inscrit dans la zone "Nom de fichier", après réponse affirmative à une demande de confirmation. Si le nom de fichier n’est pas valide, le message suivant apparaît : "Aucun fichier n’a été sélectionné, ou le nom entré n’existe pas" Annulation abandon, pas de fichier à supprimer. __________________________________________________________________________________________ 2/11 __________________________________________________________________________________________ 2.9 La fonction d'aide L'option Aide du menu déroulant donne l'accès, depuis la racine, aux menus d'aide de la fonction OSI-LOADER. C L'option Au sujet de amène l'affichage : __________________________________________________________________________________________ 2/12 ________________________________________________________ PL7-OSI D ___________________________________________________________________________ Chapitre Page __________________________________________________________________________________________________ 1 Généralités _________________________________________________________________________________________ 1.1 Présentation du logiciel 1/1 _______________________________________________________________________________ 1.2 Objectifs de l'outil fonction PL7-OSI 1/1 _______________________________________________________________________________ 1.3 Fonction du logiciel PL7-OSI 1/2 _______________________________________________________________________________ 1.4 Accès à l'outil PL7-OSI 1/3 _______________________________________________________________________________ __________________________________________________________________________________________________ 2 Choix de la mémoire de travail - Menu mémoire __________________________________________________________________________________________________________________ 2.1 Menu mémoire 2/1 _______________________________________________________________________________ D __________________________________________________________________________________________________ 3 Configuration de la station - Menu configuration __________________________________________________________________________________________________________________ 3.1 Répertoire OSI-PRJ 3/1 _______________________________________________________________________________ 3.1-1 Description du Répertoire Projet 3.1-2 Fonction Saisie Répertoire OSI-PRJ 3.1-3 Fonction Restitution du Répertoire OSI-PRJ 3.1-4 Fonction Sauvegarde du Répertoire OSI-PRJ 3/2 3/4 3/6 3/7 3.2 Configuration d'un coupleur TSX ETH 200 3/8 _______________________________________________________________________________ 3.2-1 Sélection et génération du fichier coupleur (filename.CPL) 3.2-2 Paramétrage des couches OSI 3.2-3 Définition d'Application Locale 3.2-4 Définition des Applications distantes 3/8 3/11 3/12 3/14 3.3 Configuration de l'UC 3/16 _______________________________________________________________________________ 3.3-1Création du fichier OSI.BIN 3/17 3.3-2 Modification, visualisation du fichier OSI.BIN 3/19 __________________________________________________________________________________________________ 4 Transfert de fichiers binaires et coupleur - Menu transfert __________________________________________________________________________________________________________________ 4.1 Chargement de l'UC 4/1 _______________________________________________________________________________ 4.2 Déchargement de l'UC 4/3 _______________________________________________________________________________ 4.3 Chargement d'un coupleur 4/4 _______________________________________________________________________________ 4.4 Comparaison de la mémoire UC avec le fichier OSI.BIN 4/6 _______________________________________________________________________________ ___________________________________________________________________________ D/1 A ___________________________________________________________________________ Chapitre Page __________________________________________________________________________________________________ 5 Documentation et impression __________________________________________________________________________________________________________________ 5.1 Générer la documentation 5/1 _______________________________________________________________________________ 5.2 Consulter 5/2 _______________________________________________________________________________ 5.3 Imprimer 5/2 _______________________________________________________________________________ 5.4 Saisir information 5/3 _______________________________________________________________________________ 5.5 Documentation d'un coupleur 5/6 _______________________________________________________________________________ 6 Suppression de fichiers - Mise au point de configuration - Aide _________________________________________________________________________________________ 6.1 Utilitaires : Suppression de fichiers 6/1 _______________________________________________________________________________ D 6.2 Utilitaires : Mise au point de configuration OSI 6/2 _______________________________________________________________________________ 6.3 Restitution/Sauvegarde du fichier OSI.BIN 6/4 _______________________________________________________________________________ 6.3-1 Restitution 6.3-2 Sauvegarde 6/4 6/5 6.4 La fonction d'aide 6/6 _______________________________________________________________________________ 7 Annexe _________________________________________________________________________________________ Le format du fichier Répertoire 7/1 ___________________________________________________________________________ D/2 Généralités 1 __________________________________________________________________________________________ 1.1 Présentation du logiciel PL7-OSI est un outil fonction de niveau station, sous-ensemble du logiciel PL7-OSI 3.0. Cet outil est utilisé avec l'atelier logiciel XTEL. PL7-OSI est un outil fonction de niveau station, sous-ensemble du logiciel PL7-OSI 3.0 La fonction est assurée par deux sous-ensembles logiciels : • un logiciel de configuration et de documentation des coupleurs réseaux, mis en oeuvre sur la station FTX 507, équipée de l'atelier logiciel X-TEL ; • des logiciels bloc fonction optionnel PL7-3 (OFBs) s'exécutant sur les automates TSX et PMX. Les chapitres suivants décrivent les fonctions et les modes opératoires du logiciel de configuration. Le logiciel bloc fonction fait l’objet, quant à lui, d’une description spécifique dans l’intercalaire F. D 1.2 Objectifs de l'outil fonction PL7-OSI PL7-OSI permet la conception et le chargement de la configuration OSI de chacun des coupleurs TSX ETH 200 d'une station. La configuration d'un coupleur OSI implique la définition de trois sous-ensembles de données : • le paramètrage des couches OSI, • la désignation de l'Application Locale unique correspondant à l'application PL7-3/ MMS mise en oeuvre sur la station, • la liste des Applications Distantes que le coupleur aura à connaître. Cette liste des Applications Distantes est établie par sélection dans la liste de l'ensemble des Applications du projet constituée dans le Répertoire OSI Projet. C'est pourquoi l'outil PL7-OSI permet, outre le paramètrage des coupleurs, la création et la modification du Répertoire OSI Projet. L'outil PL7-OSI autorise la description de la configuration OSI des coupleurs de la station ; il permet également les chargements ou déchargements des fichiers de configuration de chacun de ces coupleurs. Comme tous les outils, PL7-OSI génère les fichiers nécessaires à la documentation. __________________________________________________________________________________________ 1/1 __________________________________________________________________________________________ 1.3 Fonctions du logiciel PL7-OSI Les fonctions principales de PL7-OSI sont les suivantes : Configuration du répertoire OSI-PRJ des applications au niveau projet Création, modification ou visualisation du fichier de type OSIPRJ.REP des applications OSI du projet ; le fichier peut-être restitué (fonction RESTITUTION) et sauvegardé (fonction SAUVEGARDE). Configuration d’un fichier coupleur Création, modification, ou visualisation d'un fichier de type COUPLEUR (filename.CPL) pour les coupleurs TSX ETH200. Ce type de fichier contient : • les paramètres des couches, • la définition de l'application locale à laquelle le coupleur est attachée, D • la liste des applications distantes visibles par l'application locale si celle-ci doit fonctionner en mode Client MMS. Ce fichier (filename.CPL) est chargeable directement dans le coupleur. Configuration du fichier OSI.BIN Création, modification ou visualisation du fichier OSI.BIN. Ce fichier contient 1 à 4 partitions COUPLEUR et est "chargeable dans" ou "déchargeable depuis" la zone dédiée OSI de la mémoire UC de l'automate. Chargement d’un fichier COUPLEUR Chargement d'un fichier filename.CPL en mémoire d'un coupleur ETH 200 depuis le poste de travail. Chargement du fichier OSI.BIN Chargement d'un fichier BINAIRE OSI.BIN dans la zone dédiée OSI de la mémoire UC, depuis le disque du poste de travail. Déchargement du fichier OSI.BIN Déchargement (sauvegarde) du contenu de la zone dédiée OSI de la mémoire UC vers le disque du poste de travail. __________________________________________________________________________________________ 1/2 Généralités 1 __________________________________________________________________________________________ Comparaison d’identité Comparaison d'identité entre le fichier de OSI.BIN sur poste de travail local et la zone mémoire dédiée OSI d'une UC cible. Documentation station Création d'une documentation relative à un fichier BINAIRE. Documentation coupleur Création d'un fichier de documentation relatif à la configuration d'un coupleur. Suppression d’un fichier Suppression d'un fichier de type configuration ou de type documentation. Mise au point de la zone dédiée OSI de la mémoire d’une UC. Modification ou visualisation des paramètres de configuration de la zone mémoire dédiée OSI d’une UC. L’accessibilité de ces fonctions dépend du choix, par le concepteur, de la mémoire de travail ; les trois possibilités sont : • Mémoire LOCALE (le disque de la station de travail) • Mémoire UC automate • Mémoire COUPLEUR. 1.4 Accès à l’outil PL7-OSI L’accès au logiciel de configuration des coupleurs OSI (PL7-OSI) s’effectue en ouvrant la fenêtre OSI de la station dont les coupleurs sont à configurer. Fenêtre principale __________________________________________________________________________________________ 1/3 D __________________________________________________________________________________________ Synoptique Mémoire Configuration (2/3) Transfert Documentation (3) Utilitaires (3) Locale Répertoire OSI ➙ Disque ➙ UC Génération Suppression ➙ UC Coupleur ➙ UC ➙ Disque (3) Consultation Mise à jour (1) Coupleur UC (3) Disque➙Coupleur Impression (2) Comparaison (3) Saisie Info ➙ Sortie Reprise Restitution Sauvegarde Documentation (1) options inactivables lorsque Mémoire Locale a été sélectionnée (2) options inactivables lorsque Mémoire UC a été sélectionnée (3) options inactivables lorsque Mémoire Coupleur a été sélectionnée D Mémoire choix de la mémoire de travail. Configuration saisie, sauvegarde / restitution du fichier répertoire des applications au niveau projet (fichier OSIPRJ.REP) configuration du ou des coupleurs OSI, génération de fichiers filename.CPL ou OSI.BIN Transfert chargement, déchargement comparaison du fichier OSI.BIN dans la zone OSI de l'UC. Chargement de fichiers filename.CPL dans un coupleur (dépendant de la mémoire de travail) Documentation génération d'un fichier texte imprimable de documentation du fichier OSI.BIN généré par l'outil Utilitaires • suppression de fichiers OSI.BIN, filename.CPL, xxx.OSI, xxx.CRT, xxx.TIT, xxx.DOC sur le disque du poste de travail. • sauvegarde/restitution du fichier OSI.BIN. • mise au point interactive des paramètres de configuration d'un coupleur dans la zone dédiée OSI de la mémoire UC (.BIN). Sortie quitter la fonction PL7-OSI. Aide __________________________________________________________________________________________ 1/4 Choix de la mémoire de travail - menu mémoire 2 __________________________________________________________________________________________ 2.1 Menu mémoire Le menu principal de l’outil fonction PL7-OSI permet de sélectionner la mémoire de travail. Les fonctions accessibles dépendent du choix effectué. On résumera en disant que : • le choix de la mémoire Locale donne accès à toutes les fonctions à l'exception de la fonction de mise au point ; il est possible de définir les configurations de coupleurs et de générer le fichier OSI.BIN sans que la connexion ne soit établie avec une UC. Le fichier Répertoire Projet des applications, n'est accessible que dans cette option mémoire Locale. • le choix de la mémoire UC implique d'être connecté à l'UC automate.Les fonctions de chargement / déchargement, documentation et de mise au point sont accessibles (c'est la seule possibilité d'exécuter cette dernière fonction), dans l'environnement de travail mémoire UC. Le tableau ci-après récapitule les fonctions accessibles dans les trois types de mémoire de travail. __________________________________________________________________________________________ 2/1 D __________________________________________________________________________________________ MEMOIRE DE TRAVAIL FONCTIONS D Locale UC Coupleur Opérations sur Répertoire OSI oui non non Configuration\Coupleur\ETH 200 oui non oui Configuration\UC oui non non Transfert \ Disque -> UC oui oui non Transfert\UC -> Disque oui oui non Transfert \ Disque -> coupleur oui non oui Transfert\Comparaison oui oui non Documentation\Station oui oui non Documentation\Coupleur oui oui non Utilitaire\Suppression oui non non Utilitaire\Mise au point non oui non Restitution/Sauvegarde OSI.BIN oui oui non Pour les stations V5, il convient d'ajouter une restriction supplémentaire : Les fonctions Configuration\Coupleur et Configuration\UC et Restitution (OSI.BIN) ne sont pas accessibles si l'utilisateur n'a pas au préalable défini l'emplacement où sera situé son coupleur réseau par l'outil XTEL-CONF. __________________________________________________________________________________________ 2/2 Configuration de la station - Menu configuration 3 __________________________________________________________________________________________ 3. Configuration de la station - Menu configuration Le menu Configuration permet : • de créer, modifier et de visualiser le répertoire OSI_PRJ de l'ensemble des applications OSI du projet. • de définir ou modifier les paramètres du coupleur OSI TSX ETH200, de définir l'application MMS locale et les applications MMS distantes ; ces définitions étant faites, un fichier de type COUPLEUR (filename.CPL) sera généré. • de générer le fichier binaire OSI.BIN contenant la configuration de tous les coupleurs de l'automate. Ce fichier binaire OSI est destiné à être chargé dans la zone dédiée OSI de la mémoire UC. 3.1 Répertoire OSI-PRJ L'objectif de cette fonction est de créer, modifier et de visualiser le Répertoire des Applications Distantes OSI du projet. Le Répertoire est partagé par l'ensemble des stations appartenant au projet, la fonction Répertoire OSI-PRJ en est le point d'accès depuis le niveau station. Il conviendra de veiller à la cohérence des données, lors de toute modification du répertoire. __________________________________________________________________________________________ 3/1 D __________________________________________________________________________________________ 3.1-1 Description du Répertoire Projet Le Répertoire Projet OSI-PRJ • contient le descriptif de chacune des Applications OSI du projet, • décrit par le fichier OSIPRJ.REP, il se situe au niveau projet de l'arborescence XTEL et est unique pour le projet, • est accessible par toutes les stations de type V4/V5 du projet (TSX V4, TSX V5, PMX V4, PMX V5), • peut contenir jusqu'à 1024 Applications Distantes OSI. • les boutons Validation, Annulation, Aide. Le fichier OSIPRJ.REP est un fichier ASCII, contenant une suite de descriptions d'Applications Distantes OSI. Il est trié par ordre alphanumérique croissant. Chacune des Applications est décrite par les paramètres suivants (certains de ces paramètres sont optionnels) : APPLICATION NAME : Identificateur d'une application valeur = 32 caractères alphanumériques. AP TITLE (optionnel) : identificateur de l'Application Process valeur = 8 x 4 octets maximum, exprimée en hexadécimal. AE QUALIFIER (optionnel) : identificateur de l'Application Entity valeur = 4 octets maximum, exprimée en hexadécimal. PSEL (Presentation SELector) : accès aux services de la couche présentation valeur = 16 octets maximum, exprimée en hexadécimal. SSEL (Session SELector) : accès aux services de la couche session valeur = 16 octets au maximum, exprimée en hexadécimal. TSEL (Transport SELector) : accès aux services de la couche transport valeur = 32 octets au maximum, exprimée en hexadécimal. NSAP : (Network Service Access Point) accès aux services de la couche réseau valeur = 20 octets au maximum, exprimée en hexadécimal. D __________________________________________________________________________________________ 3/2 Configuration de la station - Menu configuration 3 __________________________________________________________________________________________ Rappels concernant l'adressage : Pour établir une association MMS, l'adressage d'un système s'établit du niveau physique (sous couche liaison de niveau MAC, Medium Access Control) jusqu'au niveau d'une tâche de programme (niveau applicatif). Adressage du coupleur local : • APPLICATION NAME : Nom logique identifiant une application OSI. • AP TITLE et AE QUALIFIER : Les paramètres sont optionnels. • Adresse présentation : L'adresse présentation PSAP (Présentation Service Access Point) est la concaténation d'un sélecteur présentation (PSel) et de l'adresse session précedente SSAP. C'est une chaîne de 1 à 16 octets dont la valeur par défaut est : 00 00 00 01. • Adresse session : L'adresse session SSAP (Session Service Access Point) est la concaténation d'un sélecteur session (SSel) et de l'adresse transport précedente TSAP. C'est une chaîne de 1 à 16 octets dont la valeur par défaut est : 00 01. • Adresse transport : L'adresse transport TSAP (Transport Service Access) est la concaténation d'un sélecteur transport (TSel) et de l'adresse réseau précédente NSAP. C'est une chaîne de 1 à 32 octets dont la valeur par défaut est : 00 01. • Adresse réseau : L'adresse réseau est conforme à la structure hierarchisée définie dans la norme ISO 8348/AD2 et supporte l'ensemble des formats de celle ci. La taille maximum supportée par l'adresse NSAP (Network Service Access Point) est de 20 Octets. La valeur retenue par défaut de l'adresse NSAP correspond au format NSAP Local et est décrite selon le schéma suivant : 49 : identifie le format NSAP local 54 45 4C 45 4D 45 43 41 2E : chaîne ASCII abréviation TELEMECANIQUE 00FE: où 00 est le numéro de réseau par défaut et FE est le numéro de station par défaut (de 0 à 63). 01 : NSEL qui identifie un système terminal. L'adresse réseau NSAP doit être unique pour chaque système, et identifie un et un seul système connecté sur le réseau. Le profil OSI-MMS supporte une seule application locale MMS définie par les paramètres : APPLICATION NAME, AP TITLE (Application Process Title), AE QUALIFIER (Application Entity Qualifier), PSAP, LSAP (Link Service Access), Adresse MAC (Medium Access Control) __________________________________________________________________________________________ . 3/3 D __________________________________________________________________________________________ Adressage des systèmes distants : On retrouve les paramètres de l'adressage local à savoir NSAP, TSEL, SSEL, PSEL, AE QUALIFIER, AP TITLE et APPLICATION NAME. Le Répertoire Projet OSI-PRJ est créé par le concepteur PL7-OSI localement depuis la station. Il utilise pour cela la fonction Saisie qui donne accès au fichier OSIPRJ.REP au niveau projet, et permet de décrire les Applications distantes par le moyen de boîtes de saisie spécifiques 3.1-2 Fonction Saisie Répertoire OSI-PRJ D La sélection de cette fonction appelle la boîte de saisie suivante : L'écran présente dans le cadre supérieur, "Répertoire OSI -PRJ", la liste des noms des Applications Distantes contenues dans le fichier OSIPRJ.REP. Les champs situés sous le cadre indiquent la valeur de chacun des paramètres d'adressage de l'Application Distante pointée dans le cadre supérieur. __________________________________________________________________________________________ 3/4 Configuration de la station - Menu configuration 3 __________________________________________________________________________________________ Cette dernière zone est organisée en 3 colonnes qui indiquent, de gauche à droite : • la désignation du paramètre dans la colonne 1, • la valeur prise par le paramètre dans la colonne 2, affichée dans un champ éditable, • les bornes (nombre de caractères ou nombre d'octets) et le format (caractère ou hexadécimal) de la valeur à la saisie. Les fonctions disponibles, au niveau d'une Application, sont mentionnées dans la partie supérieure droite de l'écran, ce sont : • Ajout d'une nouvelle application distante • Modification d'une application déjà entrée • Suppression d'une application déjà créée A noter que ces trois fonctions n'agissent que localement, elles ne modifient pas le fichier OSIPRJ.REP ; seule la fonction globale Validation amène la modification du fichier. Les fonctions globales sont indiquées en bas de l'écran : • Validation de la saisie • Annulation • Aide Ajout D Permet de créer une nouvelle Application Distante. Faire : - Entrer un nouveau nom d'application dans le champ APPLICATION NAME ; les autres champs se vident alors de leur valeur. - Renseigner les autres champs. - Cliquer sur Ajout pour signifier la fin de la saisie. Le format des paramètres est alors vérifié ; si une erreur est détectée, elle est signalée par un message et le curseur est positionné sur le champ source de l'erreur. Si aucune erreur n'est détectée, les données saisies sont sauvegardées, l'application est ajoutée à la liste du cadre "Répertoire OSI-PRJ". Modification Permet de modifier une application distante déjà définie dans le Répertoire OSI du projet. Marche à suivre : - Sélectionner, par un double clic, une Application dans la liste proposée dans le cadre "Répertoire OSI-PRJ", les champs sont alors renseignés avec les valeurs correspondant à l'Application choisie; - Effectuer les modifications souhaitées dans les champs. - Cliquer sur le bouton Modification, les valeurs sont contrôlées comme dans le cas de la fonction Ajout. __________________________________________________________________________________________ 3/5 __________________________________________________________________________________________ Suppression Permet d'effacer une application distante du Répertoire OSI - Sélectionner l'application à supprimer dans la liste proposée dans le cadre "Répertoire OSI-PRJ", - Cliquer sur le bouton Suppression. L'application désignée est supprimée. Validation Cette fonction entraîne la sauvegarde dans le fichier OSIPRJ.REP, Répertoire OSI du projet, des données des applications distantes telles qu'elles apparaissent dans l'écran de saisie. Il est important de noter que cette fonction amène le remplacement du fichier OSIPRJ.REP existant au niveau projet. S'il y a eu Modification ou Suppression, un message prévient l'utilisateur des incohérences possibles sur les stations. Le contrôle est ensuite rendu au menu principal de PL7_OSI. Annulation D En cliquant ce bouton, le contrôle est rendu au menu principal de PL7-OSI sans qu'il y ait prise en compte des modifications éventuellement apportées. 3.1-3 Fonction Restitution du Répertoire OSI-PRJ L'objet de cette fonction est d'importer un fichier ASCII respectant le format du fichier OSIPRJ.REP depuis une disquette ou le disque dur. Le résultat de l'opération est l'annulation et le remplacement du fichier OSIREP.PRJ. __________________________________________________________________________________________ 3/6 Configuration de la station - Menu configuration 3 __________________________________________________________________________________________ La sélection de l'option Restitution amène la fenêtre suivante : Il suffit de taper dans le champ de saisie le nom complet (chemin d'accès et nom) du fichier à importer puis de valider par le bouton Validation. Une confirmation de création du fichier OSIPRJ.REP est demandée, sur réponse affirmative, le fichier OSIPRJ.REP éventuellement présent est effacé, il est recréé à partir du fichier importé. Un message rend compte du déroulement de l'opération. En cas d'erreur de syntaxe dans le fichier source, l'erreur est signalée avec le numéro de ligne contenant l'erreur. Le bouton Annulation permet l'abandon de la procédure sans création. 3.1-4 Fonction Sauvegarde du Répertoire OSI-PRJ Cette fonction permet de copier le fichier OSIPRJ.REP dans un fichier nommé par l'utilisateur, sur une disquette ou le disque dur. C'est la fonction inverse de la fonction Restitution. La mise en oeuvre est la même que dans le cas de la restitution : indiquer le nom complet (chemin d'accès et nom) du fichier destination dans la boîte de saisie qui s'est ouverte, valider. Un message rend compte du déroulement de l'opération. __________________________________________________________________________________________ 3/7 D __________________________________________________________________________________________ 3.2 Configuration d'un coupleur TSX ETH 200 L'objet de cette fonction est la création, la modification ou la visualisation d'un fichier filename.CPL. Ce fichier constituera la configuration d'un coupleur ETH 200, il est destiné à être transféré dans ce coupleur. Le fichier filename.CPL sera également pris en compte lors de la configuration de l'UC de la station - génération du fichier OSI.BIN - (voir paragraphe 3.3 ). D Les données constituant la configuration du coupleur sont constituées de trois sousensembles : • les paramètres des couches OSI • la définition de l'application Locale MMS • la liste des applications distantes avec lesquelles, le coupleur ouvrira une association. Ces données sont définies au moyen d'écrans de saisie spécifiques à chaque ensemble de données. Un premier écran permet la sélection du nom du fichier coupleur. Ces écrans sont décrits dans les paragraphes suivants. 3.2-1 Sélection et génération du fichier coupleur (filename.CPL) Après avoir fait la suite des sélections \Configuration\Coupleur\ETH 200, à partir du menu principal de PL7-OSI, l'écran suivant s'ouvre : __________________________________________________________________________________________ 3/8 Configuration de la station - Menu configuration 3 __________________________________________________________________________________________ Cet écran comprend trois parties : • Partie "Sélection fichier", située en partie gauche. Elle est composée d'un premier champ dans lequel est inscrit le nom du fichier coupleur (filename.CPL) qui sera créé ou modifié, et d'un cadre contenant la liste des fichiers *.CPL déjà existants. Il convient de renseigner le nom fichier soit en tapant directement dans le champ, soit en sélectionnant dans la liste des fichiers existants. Lorsqu'il n'existe pas de fichiers *.CPL, le nom fichier proposé par défaut, est un nom composé à partir du nom de la station XTEL (Nom_Station.cpl) sinon le nom proposé est le premier nom de la liste des fichiers. • Partie "Choix de la modification" qui comprend trois rubriques : - Paramètrage des couches OSI, - Définition de l'application locale, - Sélection des applications distantes. Cette partie permet de pré-sélectionner les ensembles de paramètres qui seront à définir ou à modifier, il suffit de cliquer les rubriques correspondantes. • Partie "Modification de la configuration par défaut" qui comprend deux rubriques : Retour à la configuration standard et Enregistrement nouvelle configuration. - L'option "Retour à la configuration standard" permet de revenir à la configuration coupleur par défaut avec les valeurs des paramètres définis par Telemecanique. Cette option est utile si une modification de la configuration par défaut à été réalisée précédemment par l'option suivante "Enregistrement nouvelle configuration". - L'option "Enregistrement nouvelle configuration" permet de modifier la configuration par défaut standard définie par Telemecanique, avec la configuration correspondant au fichier filename.CPL sélectionné. La configuration ainsi enregistrée ne concerne que le paramètrage des couches OSI et la définition de l'pplication locale. L'option "Enregistrement nouvelle configuration" n'est accessible qu'après être entré dans l'une au moins des trois rubriques du "Choix de madification" Cas de la création d'un fichier COUPLEUR S'il s'agit d'une création (le nom de fichier ne correspond à aucun fichier existant) et si aucun choix de modification n'est fait, la touche Validation provoquera immédiatement la création du fichier désigné avec une configuration par défaut : les paramètres des couches OSI seront initialisés avec des valeurs par défaut et l'application locale sera définie par défaut également. En revanche aucune application distante ne sera attribuée au coupleur ; cette configuration par défaut ne permet donc de ne fonctionner qu'en mode Serveur MMS. __________________________________________________________________________________________ 3/9 D __________________________________________________________________________________________ Cas de la modification d'un fichier COUPLEUR Si le nom de fichier correspond à un fichier déjà existant, il est alors impératif d'effectuer un choix de modification dans le cadre réservé à cet effet. Dans le cas contraire, un message est affiché lors d'une tentative de Validation, invitant à effectuer le choix. Si le Répertoire OSI-PRJ des Applications distantes du projet a été modifié depuis la dernière modification du fichier COUPLEUR et si celui-ci comprend une liste d'Applications distantes la fenêtre d'avertissement ci-dessous est affichée au moment de l'action sur Validation. D Yes provoque la génération du fichier CPL s'il s'agit d'une création par défaut (voir ci-dessus) ; provoque le lancement de l'enchaînement des écrans de configuration correspondant aux choix de modification effectués. No provoque l'abandon de la configuration COUPLEUR et le retour au menu principal de PL7-OSI. __________________________________________________________________________________________ 3/10 Configuration de la station - Menu configuration 3 __________________________________________________________________________________________ 3.2-2 Paramètrage des couches OSI Si la modification des paramètres des couches OSI a été spécifiée dans l'écran précédent, Validation amène l'écran : D L'écran est composé de : • la zone d'édition des paramètres. Cette zone est divisée en groupes de paramètres appartenant à une même couche du profil OSI. • la zone des boutons de commande. Edition des paramètres La zone d'édition des paramètres est organisée en quatre colonnes, elles contiennent, en les considérant de gauche à droite : • • • • colonne 1 : le nom du paramètre OSI colonne 2 : la valeur numérique du paramètre à éditer colonne 3 : l'unité dans laquelle est exprimée la valeur colonne 4 : le symbole de la base numérique ("D" pour décimal ou "H" pour hexadécimal) de la valeur. L'édition de la valeur se fait en cliquant une fois sur le champ à modifier, dans la colonne 2, puis en tapant la valeur au clavier. Bien que la largeur de la colonne soit constante, le champ à éditer est limité aux nombres de digits possibles. Dans le cas où le champ comprend plus de digits que la largeur de la colonne ne le permet, il est possible de provoquer un décalage vers la gauche ou vers la droite au moyen des touches fléchées gauche et droite ("scrolling horizontal"). Un contrôle est effectué sur la valeur des paramètres lors de la sortie d'écran. La sortie est impossible dans le cas où une erreur est détectée, un message s'affiche avisant de l'erreur. Le message "Erreur de syntaxe" signifie qu'il y a au moins une faute de syntaxe sur l'une des valeurs, le message "Valeur en dehors des limites requises" est explicite. __________________________________________________________________________________________ 3/11 __________________________________________________________________________________________ Les actions des boutons Validation provoque la sauvegarde des valeurs des paramètres, puis l'appel de l'écran de saisie suivant, si d'autres modifications ont été choisies dans le premier écran ou bien la génération du fichier CPL si les choix de modification sont épuisés. Dans ce dernier cas, le contrôle est rendu au menu principal de PL7-OSI dès la fin de génération du fichier. Annulation provoque l'abandon du paramètrage, le retour à l'écran précédent ; les choix de modification établis dans ce dernier sont défaits. 3.2-3 Définition d'Application Locale Si "Définition de l'applications locale" a été choisi l'écran suivant est affiché : D L'écran se compose d'une partie supérieure montrant les paramètres d'application APPLICATION_NAME, AP_TITLE, AE QUALIFIER, PSEL, SSEL, TSEL et NSAP dans la présentation habituelle en trois colonnes. Si le fichier CPL en cours de configuration n'a pas encore été créé, les champs APPLICATION NAME et PSEL sont remplis par les valeurs par défaut. L'écran se compose de trois parties : • la partie supérieure montre les paramètres qui définissent l'application, dans la présentation habituelle en trois colonnes ; Un bouton de commande "Répertoire OSI-PRJ" permet de rentrer dans le répertoire OSI-PRJ en sélection d'une application qui deviendra l'application locale MMS. • une partie, située en dessous, est réservée à la définition du nombre des associations MMS que l'Application locale peut ouvrir ou accepter ; • les boutons de sortie de l'écran. __________________________________________________________________________________________ 3/12 Configuration de la station - Menu configuration 3 __________________________________________________________________________________________ Définition de l'Application locale (partie supérieure) Les paramètres nécessaires à la définition de l'Application sont APPLICATION NAME PSEL, SSEL, TSEL et NSAP. Les paramètres AP TITLE et AE sont optionnels. A la création d'un fichier CPL, les paramètres obligatoires prennent les valeurs par défaut en cours. Le bouton "Répertoire OSI-PRJ" permet de sélectionner une application parmi celles définies dans le répertoire OSI-PRJ. Pour cela il faut cliquer sur le bouton "Répertoire OSI-PRJ". Dans la partie supérieure de l'écran "Répertoire OSI-PRJ", on trouve la liste des applications contenues dans le répertoire. Pour visualiser les paramètres d'une application faire simple-clic sur le nom de l'application choisie. Dans la partie inférieure de l'écran "Adresse complète" les paramètres de l'application sont visualisés. Cliquer sur le bouton SELECTION pour valider le choix. Une autre méthode pour sélectionner une application consiste à faire double-clic sur l'application choisie. Les paramètres de l'application sélectionnée sont alors visualisés dans la fenêtre de définition de l'Application Locale. Il est également possible de saisir dans les champs de définition de l'Application Locale des valeurs de paramètres qui ne correspondent pas à une application du répertoire OSI-PRJ. Définition du nombre des associations Il s'agit de déclarer le nombre d'associations qui pourront être ouvertes entre l'Application Locale et les Applications distantes, en distinguant le nombre d'associations qui seront ouvertes à l'initiative de l'Application locale du nombre de celles qui seront acceptées par cette Application locale. Le nombre total d'associations est limité à 32. La valeur de Max Serv Outstanding Calling/Called dépend du nombre total d'associations configurées sous PL7-OSI (nombre d'associations ouvertes à l'initiative de l'application locale plus nombre d'associations acceptées par l'application locale). M = max (Negotiated Max Serv Outstanding Called) = proposed Max Serv Outstanding Calling 5 4 3 2 1 4 8 12 16 21 24 28 32 Nombre total d'associations configurées sous PL7-OSI Validation provoque la sauvegarde des valeurs des paramètres, puis l'appel de l'écran de saisie suivant, si d'autres modifications ont été choisies dans le premier écran ou bien la génération du fichier CPL si les choix de modifications sont épuisés. Dans ce dernier cas, le contrôle est rendu au menu principal de PL7-OSI dès la fin de génération du fichier. Annulation provoque l'abandon du paramètrage, le retour à l'écran précédent ; les choix de modification établis dans ce dernier sont défaits. __________________________________________________________________________________________ 3/13 D __________________________________________________________________________________________ 3.2.4 Sélection des Applications distantes Si "Sélection des applications distantes" a été choisi auparavant, l'écran suivant est affiché : D L'écran est composé de trois cadres : • un cadre "Répertoire OSI-PRJ" contenant la liste des Applications distantes du Répertoire OSI, • un cadre "Liste des appli.sélectionnées" contenant la liste des Applications distantes avec lesquelles l'Application locale pourra établir une association, ce cadre comporte les boutons Ajout et Suppression, • un cadre "Adresse complète" qui détaille les valeurs des paramètres d'une application. Il s'agit d'extraire du cadre "Répertoire OSI-PRJ" les Applications Distantes à sélectionner pour le coupleur. Ajout d'une Application Distante On peut procéder de deux manières différentes : • Première manière : - cliquer dans le cadre "Répertoire OSI-PRJ" l'application à sélectionner, les paramètres de définition de cette application sont alors visualisés dans le cadre "Adresse complète", - cliquer sur Ajout dans le cadre "Liste des appli. sélectionnées", le nom de l'application apparait alors dans le cadre, simultanément les champs du cadre "Adresse complète" sont vidés. • Deuxième manière : - cliquer deux fois sur l'application à sélectionner dans le cadre "Répertoire OSIPRJ.REP" ; le nom de l'application est immédiatement copié dans le cadre "Liste des appli. sélectionnées". __________________________________________________________________________________________ 3/14 Configuration de la station - Menu configuration 3 __________________________________________________________________________________________ Suppression d'une Application sélectionnée • cliquer l'application à supprimer dans le cadre des applications sélectionnées, • cliquer sur le bouton Suppression. Remarque : Dans cet écran, il n'est pas possible de supprimer ou modifier une Application Distante du répertoire OSI-PRJ (cadres "Répertoire OSI-PRJ et "Adresse complète"). Pour faire ce genre de modification il est nécessaire d'abandonner la configuration coupleur pour retourner au menu principal de PL7-OSI et de sélectionner l'option Configuration\Répertoire OSI, puis Saisie. Pour achever la sélection des Applications distantes, utiliser les boutons du bas de l'écran. Validation provoque la génération du fichier filename.CPL, le contrôle est rendu au menu principal de PL7-OSI. Annulation provoque l'abandon de la fonction de sélection des applications distantes et le retour au premier écran "CONFIGURATION D'UN COUPLEUR ETH 200" ; les choix qui avaient été faits sont abandonnés. __________________________________________________________________________________________ 3/15 D __________________________________________________________________________________________ 3.3 Configuration de l'UC Cette fonction permet : • de créer la structure du fichier OSI.BIN à partir d'un ou plusieurs fichiers de type COUPLEUR (filename.CPL) ; • de modifier les paramètres de communication des coupleurs d'une partition OSI d'un fichier OSI.BIN déjà créé ; • de visualiser une partition OSI d'un fichier OSI.BIN déjà créé. D La fonction sera une fonction de création dans le cas où le fichier OSI.BIN n'existe pas encore, de modification ou de visualisation dans le cas contraire. Le fichier OSI.BIN généré, sert à sauvegarder le répertoire et les configurations des coupleurs d'une station dès lors qu'il est chargé dans la zone dédiée OSI de la mémoire UC de cette station. Un fichier OSI.BIN est composé d'un en-tête, du répertoire des configurations coupleurs et des partitions contenant chacune la configuration d'un coupleur. Le nombre de partitions possibles dépend du type de la station cible : • les stations de type TSX 47-420/47-455, PMX 47-420/47-455 ne peuvent accueillir qu'un seul coupleur OSI, • les stations de type TSX 67-40, PMX 67-40 peuvent accueillir un ou deux coupleurs OSI, • les stations de type TSX 87-40, PMX 87-40, TSX 107-40 et PMX 107-40 peuvent accueillir de un à quatre coupleurs OSI. Cette répartition suivant le type de modèle constitue le maximum possible, sachant que d'autres liaisons de type FIPWAY, ETHWAY, MAPWAY... doivent être prises en compte dans le nombre de connexions possibles pour une station. __________________________________________________________________________________________ 3/16 Configuration de la station - Menu configuration 3 __________________________________________________________________________________________ La séquence des actions à enchaîner pour créer, modifier ou visualiser un fichier OSI.BIN est la suivante : 1.1 - dans le cas d'une création, affecter un ou plusieurs fichiers COUPLEUR à un ou plusieurs numéros d'emplacement du rack de la station cible (écran CREATION DU FICHIER OSI.BIN), 1.2 - dans le cas d'une modification ou visualisation, modifier ou consulter les paramètres de communication d'un ou plusieurs coupleurs de la configuration contenue dans le fichier BINAIRE et visualisée à l'écran ( écran MODIFICATION DU FICHIER OSI.BIN), 2- générer ou regénérer, s'il y a eu modification d'une configuration existante, le fichier OSI.BIN. 3.3-1 Création du fichier OSI.BIN La configuration de l'UC alors que le fichier OSI.BIN n'existe pas, est une fonction de création, l'écran suivant apparait Cet écran permet d'associer un numéro d'emplacement sur le rack à un nom de fichier COUPLEUR préalablement créé. Il suffit de cliquer un nom de fichier COUPLEUR dans le cadre "Sélection fichier" puis de cliquer le numéro de l'emplacement, dans le cadre "Sélection numéro d'emplacement", auquel ce fichier doit être associé. L'affectation du fichier à l'emplacement est matérialisée par l'inscription dans la colonne correspondante du nom du fichier. Attention, si on visualise un OSI.BIN contenant déjà des "filename.CPL", le nom du fichier "filename.CPL" n'apparait plus et est remplacé par TSX ETH 200, le type du coupleur. Sur une station V5, les emplacements accessibles dans le bac sont donnés par la configuration des Entrées/sorties effectuée par l'outil XTEL-CONF sous XTEL V5. __________________________________________________________________________________________ 3/17 D __________________________________________________________________________________________ Suppression d'une association coupleur-emplacement Pour supprimer une affectation, cliquer le numéro d'emplacement concerné, la boîte cidessous s'ouvre Cliquer l'option SUPPRESSION du coupleur puis le bouton Validation, le contrôle revient à l'écran précédent, le nom du fichier a été supprimé de l'emplacement. D Note : l'option MODIFICATION de la configuration coupleur n'est pas permise en création du fichier OSI.BIN. La sortie de l'écran "CREATION DU FICHIER OSI.BIN" s'effectue en cliquant Validation ou Annulation du bas de l'écran. Validation provoque la génération du fichier OSI.BIN ; un message indique que le fichier sera créé et sauvé et demande confirmation pour poursuivre Enter pour sortir de cet écran. Annulation provoque l'abandon de la configuration, il est obligatoire de confirmer dans la boîte de dialogue qui s'ouvre. Aide donne accès aux fonctions d'aide sur l'affectation des coupleurs __________________________________________________________________________________________ 3/18 Configuration de la station - Menu configuration 3 __________________________________________________________________________________________ 3.3-2 Modification, visualisation du fichier OSI.BIN Lorsque le fichier OSI.BIN existe, l'option Configuration\UC appelle l'écran : Cet écran est presque identique à l'écran de "CREATION DU FICHIER OSI.BIN"; le titre en est changé et les emplacements attribués sont marqués par le type du coupleur plutôt que par le nom du fichier coupleur, comme c'était le cas auparavant. La fonction de modification donne les mêmes possibilités que celles de la fonction de création du fichier OSI.BIN décrite au paragraphe précédent ; elle permet, de plus, d'accéder aux écrans de configuration de coupleurs qui sont décrits dans le paragraphe "3.2 Configuration d'un coupleur". Pour modifier une configuration coupleur, cliquer sur le numéro de l'emplacement attribué au coupleur concerné, puis cliquer l'option MODIFICATION de la configuration coupleur dans la fenêtre qui apparait. Après Validation la fenêtre est remplacée par l'écran "MODIFICATION DU FICHIER COUPLEUR" __________________________________________________________________________________________ 3/19 D __________________________________________________________________________________________ D Cet écran offre le choix du ou des types de modification à effectuer. La procédure à suivre est la même que celle de la configuration d'un coupleur (voir paragraphe 3.2 ). En cas de modification effective de la configuration, le fichier COUPLEUR correspondant est regénéré sur confirmation de l'utilisateur. De même lors de la fin de session de configuration UC il sera proposé que le fichier OSI.BIN soit regénéré. Remarque La modification d'une configuration d'un coupleur n'est possible, depuis la fonction de configuration de l'UC, que si ce coupleur a déjà été intégré dans le fichier OSI.BIN. Validation provoque la régénération du fichier OSI.BIN; un message indique que le fichier sera recréé et demande confirmation pour poursuivre comme en création de fichier OSI.BIN. Annulation provoque l'abandon de la configuration, il est obligatoire de confirmer dans la boîte de dialogue qui s'ouvre. __________________________________________________________________________________________ 3/20 Transfert de fichiers binaires et coupleur - Menu transfert 4 __________________________________________________________________________________________ 4. Transfert de fichiers binaires et coupleur - Menu transfert La fonction permet de transférer un fichier OSI.BIN ou de type COUPLEUR, généré par la fonction Configuration, du disque dur vers la mémoire automate (UC) ou vers un coupleur ; ou bien de transférer le contenu de la zone dédiée OSI de la mémoire UC de l'automate vers la station de travail, dans le fichier OSI.BIN. Cette fonction autorise également la comparaison entre le fichier disque OSI.BIN et le contenu de la zone dédiée OSI de la mémoire UC. 4.1 Chargement de l’UC D Cette fonction permet de transférer un fichier BINAIRE OSI.BIN en mémoire UC. Remarque Le chargement n’est possible que si la zone dédiée OSI a été allouée au préalable dans la mémoire de l’UC. Pour effectuer cette allocation, il convient d’utiliser les outils suivants : • Pour une station V4 L’outil MEM permet de générer un fichier application de configuration de la mémoire (fichier xxx.APP) ; cette configuration doit comporter une zone dédiée OSI. L’outil TRANSFERT permet de charger dans la mémoire de l’UC le fichier station.APP ainsi généré. • Pour une station V5 L'outil CONF permet de créer la structure mémoire de l'application. Cet outil permet de réserver le volume mémoire UC nécessaire au fichier OSI.BIN. L'outil TRANSFERT permet le chargement dans l'UC de cette structure mémoire et également des fichiers applications associés (par exemple OSI.BIN) s'ils existent. __________________________________________________________________________________________ 4/1 __________________________________________________________________________________________ Pour effectuer le chargement, la station de travail devra être connectée à l'automate. Après avoir sélectionné l'option Disque->UC du menu déroulant, il apparaît. • Pour station V4, la boite de dialogue suivante : D Oui lance l'opération de transfert, un message informe de la fin de l'opération si elle s'est bien déroulée. Si le message "UC non cartographiée pour cette application" apparaît, il convient d'utiliser les outils MEM et TRANSFERT pour charger la "cartographie" de l'application dans l'UC. D'une manière générale, si le transfert n'a pu être exécuté l'opération est conclue, avant retour au menu principal par le message "Le fichier OSI.BIN n'a pu être chargé correctement en mémoire UC" Non abandonne la demande de chargement et provoque le retour au menu principal de PL7-OSI. • Pour une station V5, l'écran de l'outil TRANSFERT apparaît avec la boîte de dialogue : La fonction OSI est automatiquement sélectionnée, faire Transfert pour démarrer le chargement. Comme vu précédemment la réussite de ce transfert nécessite le chargement préalable de l'outil TRANSFERT de la structure mémoire de l'application issue par l'outil CONF. __________________________________________________________________________________________ 4/2 Transfert de fichiers binaires et coupleur - Menu transfert 4 __________________________________________________________________________________________ 4.2 Déchargement de l’UC Cette fonction permet de transférer la zone dédiée OSI de la mémoire UC dans le fichier OSI.BIN sur le disque du poste de travail. Pour effectuer le déchargement, la station de travail devra être connectée à l'automate. • Pour une station V4, après avoir sélectionné l'option UC->Disque du menu déroulant, la boite de dialogue TRANSFERT D'UN FICHIER apparaît. Le mode opératoire est le même que dans le cas du chargement. • Pour une station V5, l'écran de l'outil Transfert apparaît avec sélection de la fonction OSI. La confirmation du transfert avertit l'utilisateur que le fichier OSI.BIN présent sur le poste sera remplacé par le contenu de la mémoire OSI de l'UC. __________________________________________________________________________________________ 4/3 D __________________________________________________________________________________________ 4.3 Chargement d’un coupleur Cette fonction permet de transférer un fichier de type COUPLEUR, décrivant la configuration, en mémoire coupleur. Sélection du fichier à charger D Après avoir sélectionné l'option Disque->Coupleur du menu déroulant, la boîte de dialogue Sélection de fichier apparaît, il s'agit de spécifier le nom du fichier COUPLEUR à transférer dans la mémoire du coupleur. Pour cela, sélectionner, en cliquant dans la liste proposée, le fichier à charger ; son nom s'affiche dans le champ "Fichier sélectionné". Il est possible également, d'utiliser les touches fléchées pour déplacer le bandeau dans la liste des fichiers puis la touche <Entrée> pour sélectionner. __________________________________________________________________________________________ 4/4 Transfert de fichiers binaires et coupleur - Menu transfert 4 __________________________________________________________________________________________ Validation passe à la phase suivante : sélection de l'emplacement où charger, après réponse affirmative à la demande de confirmation. Annulation abandonne la sélection de fichier, le contrôle est rendu au menu principal de PL7-OSI. Sélection de l'emplacement du coupleur La validation du nom de fichier COUPLEUR amène à l'écran TRANSFERT D'UNE CONFIGURATION COUPLEUR : D Cet écran permet de sélectionner l'emplacement, dans le rack de l'automate, du coupleur vers lequel transférer le fichier. La sélection s'opère en cliquant le numéro d'emplacement dans lequel se trouve le coupleur cible, la colonne de l'emplacement choisi est marquée par un changement de couleur. Pour une station V5, les emplacements possibles sont ceux définis dans la configuration des entrées/sorties par l'outil XTEL-CONF. Validation lance le transfert après prise en compte du numéro d'emplacement. En cas d'échec, la raison en est signalée, le contrôle revient, après acquittement des messages à l'écran "Sélection fichier". Annulation abandonne l'opération et redonne le contrôle à la boîte de Sélection de fichier, sans qu'il y ait eu transfert. Attention : La configuration chargée dans un coupleur est automatiquement écrasée par la configuration OSI chargée dans l'UC dans le cas où le bloc OFB MMSLD est configuré dans l'application PL7-3. __________________________________________________________________________________________ 4/5 __________________________________________________________________________________________ 4.4 Comparaison de la mémoire UC avec le fichier OSI.BIN Cette fonction permet de comparer la zone dédiée OSI de la mémoire UC d'un automate avec le fichier OSI.BIN du disque de la station de travail. Pour effectuer la comparaison, la station de travail devra être connectée à l'automate. D Après avoir sélectionné l'option Comparaison du menu déroulant, il vient la boîte. Cliquer Oui. La comparaison est conclue par un des deux messages suivants : "Le fichier OSI.BIN et le binaire en UC sont identiques" ou "Le fichier OSI.BIN et le binaire en UC sont différents" __________________________________________________________________________________________ 4/6 Documentation et impression 5 __________________________________________________________________________________________ 5. Documentation et impression La procédure à suivre pour établir la documentation sur la configuration des coupleurs OSI de la station est la suivante : • préparer la page de garde de la documentation (création d'un fichier OSI.TIT) • préparer le cartouche de la documentation (création d'un fichier OSI.CRT) • élaborer la documentation proprement dite, (dans un fichier OSI.DOC) à partir des fichiers OSI.TIT et OSI.CRT précédemment crées et des fichiers OSI.BIN . • Consulter à l'écran ou imprimer cette documentation. Les deux premières étapes sont réalisées par la fonction Documentation (première option du menu déroulant), la troisième étape est réalisée par la fonction Impression. 5.1 Générer la documentation D Le choix de la fonction Générer lance la création de la documentation de l'application OSI de la station. Elle nécessite d'avoir au préalable créé la page de garde et le cartouche respectivement décrits dans les fichiers OSI.TIT et OSI.CRT. La documentation utilise les informations contenues dans le fichier OSI.BIN. __________________________________________________________________________________________ 5/1 A __________________________________________________________________________________________ 5.2 Consulter Le choix de cette fonction permet la visualisation immédiate à l'écran, de la documentation qui vient d'être générée. L'utilisateur peut faire défiler la documentation verticalement et horizontalement. Le format présenté correspond à ce qui peut être imprimé. 5.3 Imprimer Le choix de cette fonction propse d'abord à l'écran la liste des imprimantes utilisables pour l'impression du dossier de documentation de la station. D L'utilisateur peut alors choisir dans la liste des imprimantes connectées à son poste celle sur laquelle il veut imprimer sa documentation et cliquer sur le bouton<Validation> pour confirmer son choix et lancer l'impression. Le bouton <Annulation> lui permettra d'annuler l'impression en cours. Remarque S'il peut être imprimé indépendamment, le dossier de documentation de la fonction OSI d'une station (OSI.DOC) peut aussi être intégré dans le dossier complet de documentation d'une station V4 ou V5. Cette intégration est faite par l'outil station XTEL-DOC de manière transparente pour PL7-OSI. __________________________________________________________________________________________ 5/2 Documentation et impression 5 __________________________________________________________________________________________ 5.4 Saisir information Saisie de la page de garde A l'entrée de ce menu, les zones sont initialisées avec le contenu du fichier OSI.TIT s'il existe déjà. Sinon toutes les zones sont vides. L'accès à une zone prédéfinie s'effectue avec la souris ou avec la touche TAB. Dans une même zone, l'accès aux colonnes ou aux lignes s'effectue avec la souris ou avec les flèches. D Les différentes saisies possibles sont : • • • • • • • • • TITRE SOCIETE DEPARTEMENT RESPONSABLE REV. DATE REVISION CONCEPTEUR REALISATEUR : titre de l'application (64 car. max.), : nom des sociétés (16 car. max.), : nom des départements des sociétés (16 car. max.), : nom des responsables (16 car. max.), : indice de révision du dossier (3 car. max.), : date de création ou de modification du dossier (8 car.max) : commentaire expliquant la révision (32 car. max.), : nom du concepteur (12 car. max.), : nom de l'exécutant (12 car. max.), __________________________________________________________________________________________ 5/3 A __________________________________________________________________________________________ Le fichier OSI.TIT généré est codé en ASCII donc éditable. Validation lance la sauvegarde du contenu de l'écran dans le fichier OSI.TIT et provoque la sortie de l'écran. Annulation provoque la sortie de l'écran, sans sauvegarde du fichier OSI.TIT. Ecriture écrit le contenu de l'écran dans le fichier yyy.TIT, dont le nom est à spécifier dans une boîte de dialogue (le nom par défaut est OSI.TIT). Cette commande ne provoque pas la sortie de l'écran. Lecture lit un fichier yyy.TIT saisi dans une session précédente, le nom est à spécifier dans une boîte de dialogue (le nom par défaut est OSI.TIT). Saisie du cartouche personnalisé D Cet écran permet de personnaliser le cartouche de bas de page du dossier de documentation. Deux chaînes de caractères sont laissées à l'appréciation de l'utilisateur : • une chaîne de 25 caractères en haut du cartouche, • une chaîne de 45 caractères en bas du cartouche.. Les zones sont initialisées avec le contenu du fichier OSI.CRT s'il existe déjà. Un cartouche de bas de page donne les informations suivantes : • le nom de l'application, • la désignation de la rubrique imprimée, • le numéro de version du document, • la date de l'impression, • la pagination par rubrique, • la pagination absolue. __________________________________________________________________________________________ 5/4 Documentation et impression 5 __________________________________________________________________________________________ Validation lance la sauvegarde du contenu de l'écran dans le fichier OSI.CRT et provoque la sortie de l'écran. Annulation provoque la sortie de l'écran, sans sauvegarde du fichier OSI.CRT. Ecriture écrit le contenu de l'écran dans le fichier yyy.CRT, dont le nom est à spécifier dans une boîte de dialogue (le nom par défaut est OSI.CRT). Cette commande ne provoque pas la sortie de l'écran. Lecture lit un fichier yyy.CRT saisi dans une session précédente, le nom est à spécifier dans une boîte de dialogue (le nom par défaut est OSI.CRT). D __________________________________________________________________________________________ 5/5 A __________________________________________________________________________________________ 5.5 Documentation d’un coupleur L'établissement de la documentation d'un coupleur est la présentation, dans un format ASCII imprimable, du contenu d'une configuration filename.CPL. Le fichier généré garde le nom du fichier filename.CPL en prenant l'extension ".OSI". D Comme à l'accoutumée avec la boîte "Sélection de fichier", la saisie du nom de fichier peut s'effectuer en sélectionnant un fichier dans le cadre listant les fichiers de type coupleur connus pour la station, en procédant comme suit : • soit par un double clic sur le fichier à sélectionner • soit en se positionnant à l'aide des flèches de direction sur le fichier cherché et en pressant <Entrée>. S'il n'existe pas de fichiers filename.CPL, la boîte Sélection de fichier est remplacée par l'affichage d'un avis "Pas de fichier à sélectionner !". Validation mise en forme d'un fichier xxx.OSI ASCII à partir du fichier filename.CPL sélectionné. Annulation abandon, aucun fichier xxx.OSI n'est généré. __________________________________________________________________________________________ 5/6 Suppression de fichiers - Mise au point de configuration - Aide 6 __________________________________________________________________________________________ 6.1 Utilitaires : Suppression de fichiers L'utilitaire Suppression permet la gestion de la suppression de tous les fichiers qui ont pu être générés par l'outil PL7-OSI. Il suffit, après avoir sélectionné l'option, de cliquer sur le type de fichier que l'on souhaite supprimer. Quel que soit le type de fichier (à l'exception du fichier OSI.BIN) la procédure à suivre est la même : Sélectionner le fichier dans la boîte de dialogue qui s'ouvre et valider. Après exécution de la suppression du fichier, le contrôle est rendu à la boîte de dialogue, remise à jour. L'opération est à renouveler tant qu'il reste des fichiers à supprimer. Dans le cas du fichier OSI.BIN qui est unique dans son type, l'étape de sélection de fichier, évidemment inutile, n'est pas nécessaire. Si aucun fichier n'est à supprimer dans le type sélectionné, la sélection est grisée pour la rendre inaccessible A titre d'exemple, voici l'écran qui apparaît après la sélection : "Fichier Coupleur...(.CPL)" __________________________________________________________________________________________ 6/1 D __________________________________________________________________________________________ Validation supprime le fichier dont le nom est inscrit dans la zone "Nom de fichier", après demande de confirmation. Annulation abandon, pas de fichier à supprimer. 6.2 Utilitaires : Mise au point de configuration OSI D Cette option autorise la modification, pour mise au point, des paramètres OSI d'un coupleur, déjà chargés dans la zone dédiée OSI de la mémoire UC. Aprés validation, les nouvelles configurations seront automatiquement transférées par OFB dans les coupleurs concernés. Remarque Ces configurations ne sont pas sauvegardées localement dans les fichiers filename.CPL. La fonction présente à l'écran la visualisation d'un rack, reprenant la procédure de modification d'une configuration UC (fonction Configuration UC du fichier OSI.BIN, voir paragraphe 3.3.2). __________________________________________________________________________________________ 6/2 Suppression de fichiers - Mise au point de configuration - Aide 6 __________________________________________________________________________________________ E T H D Cliquer sur le numéro d'emplacement contenant le coupleur dont les paramètres sont à modifier, pour accéder aux écrans de paramètrage de ce coupleur. Validation Accès à l'écran de "Modification du fichier coupleur" Annulation Pas de modification à prendre en compte. Aide Sélectionner Modification de la configuration coupleur pour accéder à l'écran de modification : voir chapitre 3.3-2. __________________________________________________________________________________________ 6/3 __________________________________________________________________________________________ 6.3 Restitution/Sauvegarde du fichier OSI.BIN La fonction Restitution permet d'importer un fichier binaire du type OSI.BIN, depuis une disquette ou du disque dur, dans l'espace station. Le fichier importé remplace le fichier OSI.BIN existant. La fonction Sauvegarde permet de copier le fichier OSI.BIN de la station dans un autre répertoire du disque dur ou sur une disquette. D 6.3-1 Restitution Si l'option Restitution a été sélectionnée, taper le nom du fichier source dans le champ présenté par la boîte de saisie : Validation lance la copie du fichier désigné sur le fichier OSI.BIN, Après réponse affirmative au message suivant "Cette opération annule l'ancien fichier OSI.BIN. Confirmez-vous l'opération ?" Annulation abandon, le contrôle est rendu au menu principal de PL7-OSI. __________________________________________________________________________________________ 6/4 Suppression de fichiers - Mise au point de configuration - Aide 6 __________________________________________________________________________________________ Validation lance la copie du fichier désigné sur le fichier OSI.BIN, Après réponse affirmative au message suivant "Cette opération annule l'ancien fichier OSI.BIN. Confirmez-vous l'opération ?" Annulation abandon, le contrôle est rendu au menu principal de PL7-OSI Pour une station de type V5, si la configuration des entrées/sorties par l'outil XTEL-CONF n'a pas été effectuée, la restitution du fichier OSI.BIN est inaccessible. Par ailleurs un contrôle de cohérence est effectué pour vérifier que les emplacements coupleurs du fichier restitué correspondent bien à la configuration des entrées/sorties. 6.3-2 Sauvegarde D Tapez le nom du fichier destination dans le champ de saisie puis valider. Si le fichier destination existe déjà, il vient un message d'avertissement accompagné d'une demande de confirmation. __________________________________________________________________________________________ 6/5 __________________________________________________________________________________________ 6.4 La fonction d’aide L'option Aide du menu déroulant donne l'accès, depuis la racine, aux menus d'aide de la fonction PL7-OSI. L'option Au sujet de provoque l'affichage de la version courante du logiciel. D __________________________________________________________________________________________ 6/6 Annexe 7 __________________________________________________________________________________________ 7. Annexe Le format du fichier Répertoire Le fichier répertoire OSIPRJ.REP peut être créé à l'aide d'un éditeur de texte du commerce ; il peut ensuite être mis dans la base XTEL en utilisant la fonction : RESTITUTION (voir chap. 3.1.3). Pour être utilisable par les outils X-TEL, le fichier répertoire doit respecter certaines règles : • le fichier est composé de lignes décrivant les Applications Distantes : • une Application est décrite par une suite de valeurs encadrées par le caractère "/" ; la description d'une Application tient sur une ligne, • les valeurs sont celles des paramètres qui définissent une Application et doivent être rangées sur la ligne dans l'ordre suivant, de gauche à droite : Application_Name, Ap_title, Ae_qualifier, Psel, Ssel, Tsel, Nsap. • les valeurs des paramètres optionnels peuvent être omis, les séparateurs "/" doivent quant à eux subsister, • un caractère "#"placé en début de ligne indique que la ligne est un commentaire. Exemple : #Repertoire OSI_PRJ # #Format : #/APPLICATION_NAME/AP_TITLE/AE_QUALIFIER/PSEL/SSEL/TSEL/NSAP/ # /APPLICATION1///00000004/0003/0001/39840F454E45000000010001410901/ /APPLICATION2///00000003/0001/0001/39840F544E45000000010001010101/ /APPLICATION3/123//00000004/0001/0001/39840F544E45000000010003000601/ <EOF> __________________________________________________________________________________________ 7/1 D __________________________________________________________________________________________ D __________________________________________________________________________________________ 7/2 ________________________________________________________ PL7-MMS E ___________________________________________________________________________ Chapitre 1 Généralités 1.1 1.2 1.3 2 Page Présentation du logiciel Fonction du logiciel 1.2-1 Création du répertoire des variables au niveau du projet 1.2-2 Création visualisation, chargement dans l'UC et documentation des variables au niveau d'une station du projet 1.2-3 Convertion d'une application Accès à l'outil PL7-MMS 1/1 1/1 1/1 1/2 1/3 1/5 Choix de la mémoire de travail - Menu mémoire 2.1 Menu mémoire 2/1 E 3 Configuration des symboles 3.1 3.2 3.3 3.4 4 Edition du répertoire MMS au niveau du projet 3.1-1 Définition des variables distantes 3.1-2 Définition des structures associées au variables distantes Configuration des variables distantes Configuration des variables locales 3.3-1 Définition des variables locales 3.3-2 Définition des structures associées au variables locales Génération du fichier binaire MMS.BIN 3/1 3/2 3/6 3/11 3/14 3/14 3/18 3/20 Transfert de fichiers binaires 4.1 4.2 4.3 Chargement de l'UC Déchargement de l'UC Comparaison de la mémoire UC avec un fichier binaire 4/1 4/2 4/3 ___________________________________________________________________________ E/1 ________________________________________________________ A ___________________________________________________________________________ Chapitre 5 Documentation et impression 5.1 5.2 5.3 5.4 6 Page Générer la documentation Consulter Imprimer Saisir information 5/1 5/2 5/2 5/3 Visualisation de binaire MMS - Suppression de fichiers - Aide 6.1 6.2 6.3 6.4 Visualisation de binaire MMS 6.1-1 Visualisation d'un fichier binaire du disque du poste de travail 6.1-2 Visualisation du binaire contenu dans l'UC Suppression de fichiers Sauvegarde et Restitution des fichiers binaires MMS La fonction d'aide 6/1 6/1 6/3 6/3 6/4 6/5 E 7 Annexe Format des fichiers Répertoire Projet 7/1 ___________________________________________________________________________ E/2 Généralités 1 __________________________________________________________________________________________ 1.1 Présentation du logiciel PL7-MMS est un outil fonction de niveau station, sous-ensemble du logiciel PL7-OSI 3.0. PL7-MMS permet de définir l'ensemble des variables MMS au niveau du projet - au sens XTEL- et donc visibles par toutes les stations ; il permet aussi, pour une station donnée, de sélectionner les variables "clients", c'est à dire les variables distantes visibles par cette station ; il permet enfin, pour une station donnée, de définir les symboles "serveurs", c'est à dire les symboles locaux (pour cette station) visibles par les autres stations. La fonction de gestion des variables MMS est assurée par deux sous-ensembles logiciels : • le logiciel de définition de variables PL7-MMS, mis en oeuvre sur la station FTX 507, équipée de l'atelier logiciel X-TEL ; • les logiciels "bloc fonction optionnel" PL7-3 (OFB) s'exécutant sur les automates TSX et PMX. Les chapitres suivants décrivent les fonctions et le mode opératoire du logiciel de définition PL7-MMS. Le logiciel "bloc fonction" fait l'objet, quant à lui, d'une description spécifique dans l'intercalaire F. 1.2 E Fonctions du logiciel 1.2-1 Création du répertoire des variables au niveau du projet Configuration d'un répertoire projet MMS Création ou modification du répertoire MMS projet ; ce répertoire est un fichier ASCII unique pour toutes les stations d'un même projet ; ce fichier est sauvegardé au niveau du projet dans l'arborescence X-TEL. Le fichier peut également être créé par des outils autres : éditeurs, traitement de texte ..... . Le fichier devra être ensuite restitué dans la base X-TEL en utilisant la commande "Restitution". __________________________________________________________________________________________ 1/1 __________________________________________________________________________________________ 1.2-2 Création, visualisation, chargement dans l'U.C et documentation des variables au niveau d'une station du projet Configuration d'un fichier BINAIRE MMS Création ou modification du fichier BINAIRE MMS (MMS.BIN) de la configuration des symboles locaux de la station, visibles par les autres stations et/ou des symboles distants. Le fichier MMS.BIN est chargeable dans l'UC de la station. Chargement d'un fichier BINAIRE MMS Chargement du fichier MMS.BIN dans la zone dédiée MMS de la mémoire UC, depuis le disque du poste de travail (à travers XTEL-TRANSFER sur stantion V5). Déchargement d'un fichier BINAIRE MMS Déchargement (sauvegarde) du fichier MMS.BIN de la zone dédiée MMS de la mémoire UC vers le disque de la station de travail (à travers XTEL-TRANSFER sur stantion V5). Comparaison d'identité Comparaison d'identité entre le fichier BINAIRE MMS.BIN et la zone dédiée MMS de la mémoire UC. Visualisation d'un BINAIRE MMS Visualiser à l'écran le contenu du fichier MMS.BIN du disque du poste de travail, ou, le contenu de la zone dédiée MMS de la mémoire UC. E Documentation de la station Création d'une documentation relative au fichier binaire MMS.BIN. Création d'un fichier MMS.DOC et possibilité de créer des fichiers ASCII MMS.TIT et MMS.CRT. Suppression d'un fichier Suppression de fichiers de configuration ou de documentation. __________________________________________________________________________________________ 1/2 Généralités 1 __________________________________________________________________________________________ 1.2-3 Conversion d'une application Cette fonction permet de convertir une partie ou l'ensemble des fichiers constituant une application MMS de niveau V43 ou V5 pour obtenir une application de niveau V52. Cette fonction peut être appelée dans plusieurs cas : • Lors de l'ouverture du logiciel, la présence d'une base MMS Serveur de niveau inférieur à V52 est détectée. Un message demande à l'utilisateur d'effectuer une conversion. Si la fonction MMS détecte un binaire de niveau inférieur à V52, il sera automatiquement converti, y compris les fichiers relatifs à l'application en cours. La présence d'une base MMS Serveur de niveau inférieur à V52 inhibe toutes les fonctionnalités du logiciel MMS sauf les fonctions Sortie et Conversion. • Au cours de l'utilisation de MMS, le logiciel détecte la présence d'un fichier binaire de niveau inférieur à V52. La conversion est alors proposée à l'utilisateur mais elle ne bloque pas les fonctionnalités du logiciel PL7-MMS. La conversion s'effectue selon les cas sur la base MMS Serveur de la station, le binaire MMS.BIN de la station ou le dossier de documentation. Il y a six cas possibles : • Premier lancement de PL7-MMS V52 dans la station courante Le logiciel détecte une base MMS Serveur et/ou un fichier MMS.BIN de niveau inférieur à V52. Action : Sélectionner la fonction Utilitaires/Conversion puis lancer la fonction Conversion. Résultat : La base MMS Serveur est alors mise à niveau ainsi que le binaire si nécessaire. • Lancement de la fonction Documentation/Générer de PL7-MMS V52 La fonction détecte une base de niveau V52 mais le binaire MMS.BIN présent dans la station est de niveau inférieur à V52. Action : Sélectionner la fonction Utilitaires/Conversion puis lancer les fonctions Conversion et Documentation/Générer. Résultats : Le fichier MMS.BIN est mis au niveau V52 et la documentation est générée. • Lancement de la fonction Transfert/Disque --> UC de PL7-MMS V52 La fonction détecte une base de niveau V52 mais le binaire MMS.BIN présent dans la station est de niveau inférieur à V52. Action : Sélectionner la fonction Utilitaires/Conversion puis lancer les fonctions Conversion et Transfert/Disque --> UC. Résultat : Le fichier MMS.BIN est mis au niveau V52 puis le transfert est effectué. __________________________________________________________________________________________ 1/3 E __________________________________________________________________________________________ • Lancement de la fonction Transfert/UC --> Disque de PL7-MMS V52 La fonction détecte une base locale et un binaire MMS.BIN local de niveau V52 mais le binaire MMS.BIN présent l'UC est de niveau inférieur à V52. Action : Sauvegarder le binaire local si nécessaire avant de lancer la fonction Transfert/UC --> Disque. Résultat : Le fichier MMS.BIN local de niveau V52 est remplacé par le binaire MMS.BIN de niveau inférieur à V52 de l'automate. • Lancement de la fonction Utilitaires/Visualisation de PL7-MMS V52 en mémoire locale Le logiciel détecte une base de niveau V52 mais le binaire MMS.BIN présent dans la station est de niveau inférieur à V52. Action : Sélectionner la fonction Utilitaires/Conversion puis lancer les fonctions Conversion et Utilitaires/Visualisation. Résultat : Le fichier MMS.BIN est mis au niveau V52 et la visualisation est autorisée. • Lancement de la fonction Utilitaires/Visualisation de PL7-MMS V52 en mémoire automate Le logiciel détecte une base de niveau V52 mais le binaire MMS.BIN présent dans l'automate est de niveau inférieur à V52. E Action : Sauvegarder si nécessaire le fichier MMS.BIN local avant de lancer la fonction Transfert/UC --> Disk. Lancer ensuite les fonctions Utilitaires/ Conversion et Utilitaires/Visualisation (en mémoire locale) ou Transfert/ Disk --> UC puis Utilitaires/Visualisation (en mémoire automate). Résultat : Le fichier MMS.BIN est mis au niveau V52 et la visualisation est autorisée. __________________________________________________________________________________________ 1/4 Généralités 1 __________________________________________________________________________________________ 1.3 Accès à l'outil PL7-MMS L'accès au logiciel de configuration des variables MMS s'effectue en ouvrant la fenêtre MMS correspondant à la station dont les variables MMS doivent être définies. Fenêtre principale Ecran principal PL7 MMS Remarque Pour définir les variables de l'ensemble du projet, ou pour définir les variables d'une station vous devez utiliser le logiciel PL7-MMS correspondant à une station du projet. Synoptique Mémoire Configuration (1) Transfert E Documentation (1) Utilitaires Conversion Locale Répertoire MMS Projet Disque ➙ UC Générer Visualisation UC Variables distantes UC ➙ Disque Consulter Suppression (1) Variables locales Comparaison Imprimer Restitution (1) Saisir information Sauvegarde (1) Conf.UC (1) options inactivables lorsque Mémoire UC a été sélectionnée Mémoire choix de la mémoire de travail. Configuration configuration de variables MMS, appel de l'outil SDBASE, génération du fichier: MMS.BIN. Transfert chargement, déchargement, comparaison du fichier MMS.BIN depuis ou vers la zone dédiée MMS de la mémoire UC. Réalisées via XTEL-TRANSFERT sur les stations V5, et par des fonctions de PL7-MMS sur les stations V4 Ces opérations se réalisent : • par XTEL-Transfert avec les station V5, • par les fonctions de PL7-MMS avec les stations V4. __________________________________________________________________________________________ 1/5 __________________________________________________________________________________________ Documentation création d'une documentation de l'application MMS, consultation et impression de cette documentation. Utilitaires • visualisation d’un binaire : - existant sur disque si la mémoire de travail est la mémoire locale, - existant dans l’UC si la mémoire de travail est la mémoire UC. • suppression des fichiers MMS.BIN, MMS.SCY, MMS.CST, MMS.CRT, MMS.TIT, MMS.DOC et MMS.STR sur le disque du poste de travail. • sauvegarde et restitution du fichier MMS.BIN, MMS.SCY, MMS.CST et MMS.STR. Sortie quitter la fonction PL7-MMS. Aide E __________________________________________________________________________________________ 1/6 Choix de la mémoire de travail - Menu mémoire 2 __________________________________________________________________________________________ 2.1 Menu mémoire Le menu principal de l'outil fonction PL7-MMS permet de choisir entre deux environnements de travail : la mémoire locale c'est à dire le disque de la station de travail ou la mémoire de l'UC de l'automate. Avec le choix de la mémoire Locale, toutes les fonctions sont accessibles. La configuration des variables MMS distantes ou locales, la configuration du répertoire au niveau du projet, la documentation peuvent être effectuées sans être connecté à un automate. Avec le choix de la mémoire UC, la configuration des variables MMS, la suppression de fichiers, la restitution et la sauvegarde de fichiers ne sont pas exécutables. Naturellement la connexion de la station de travail à l'automate doit être établie soit en local, par l'intermédiaire de sa prise terminal, soit à distance via un raccordement de la station de travail à un réseau. Les fonctions inhibées apparaissent en grisé sur le menu principal. Le tableau ci-dessous récapitule l'accessibilité des fonctions selon l'environnement sélectionné. E MEMOIRE DE TRAVAIL FONCTIONS Locale UC Configuration Variables MMS oui non _______________________________________________________________________________________ Transfert\Disque -> UC oui oui _______________________________________________________________________________________ Transfert\UC -> Disque oui oui _______________________________________________________________________________________ Transfert\Comparaison oui oui _______________________________________________________________________________________ ________Documentation ________________________________________________________________________________________________________oui __________________________________________non _______________________ Utilitaires\Visualisation oui oui _______________________________________________________________________________________ Utilitaires\Suppression oui non _______________________________________________________________________________________ Utilitaires\Restitution oui non _______________________________________________________________________________________ Utilitaires\Sauvegarde oui non _______________________________________________________________________________________ Utilitaires\Conversion oui non __________________________________________________________________________________________ 2/1 __________________________________________________________________________________________ E __________________________________________________________________________________________ 2/2 Configuration des symboles 3 __________________________________________________________________________________________ 3. Configuration des symboles Le but de cette fonction est d'établir la liste des variables de l'ensemble du projet, c'est à dire pour toutes les stations du projet au sens XTEL. Ensuite, pour chaque station, on devra établir la liste des variables visibles distantes, ainsi que la liste des variables locales devant être visibles par les autres stations. Les variables distantes ou locales peuvent être de type simple ou de type structuré ; dans le cas d'un type structuré, il est nécessaire de décrire le format de la structure. La fonction de configuration permet également de générer un fichier BINAIRE MMS.BIN chargeable dans l'UC. 3.1 Edition du répertoire MMS au niveau du projet E L'activation de l'option "Configuration-Répertoire MMS Projet" fait apparaître le sous menu suivant : Cette fonction permet d'établir la liste des variables de l'ensemble du projet, qu'elles soient de type simple ou de type structuré. Le sous-menu "Définition Variables Distantes" permet de définir la liste des variables du projet ; le sous-menu "Définition Structures" permet de décrire le format des structures attachées aux variables de type STRUCT. __________________________________________________________________________________________ 3/1 __________________________________________________________________________________________ 3.1-1 Définition des variables distantes L'activation de l'option "Définition Variables Distantes" fait apparaître le sous menu suivant : L'activation de l'option "Saisie" lance l'éditeur de variables dont l'écran est le suivant : E Les enregistrements, s'ils existent, sont présentés sous forme d'une liste ; ils sont rangés par ordre alphabétique. Les différents champs d'un enregistrement peuvent être renseignés, ce sont : Nom Application : Ce champ permet d'identifier l'application MMS à qui appartient la variable. Un nom d'application est composé de caractères alphanumériques ; sa taille est limitée à 32 caractères. __________________________________________________________________________________________ 3/2 Configuration des symboles 3 __________________________________________________________________________________________ Nom Variable : Ce champ permet d'identifier la variable MMS. Un nom de variable doit être formé des caractères suivants : 'A'...'Z', 'a'...'z', '0'...'9', '$', '_' Un nom de variable ne peut commencer par un chiffre et sa taille est limitée à 32 caractères. Portée : Ce champ permet de définir la portée de la variable MMS. Les valeurs autorisées sont : VMD, DOMAIN, AA. Nom DOM/Appli : Si la portée de la variable est du type DOMAIN, ce champ doit être renseigné pour indiquer le nom du DOMAIN. Un nom de domaine doit être formé des caractères suivants : 'A'...'Z', 'a'...'z', '0'...'9', '$', '_' Un nom de domaine ne peut commencer par un chiffre et sa taille est limitée à 32 caractères. Si la portée de la variable est AA, ce champ doit être renseigné pour indiquer le nom de l'application qui a le droit d'accéder à cette variable. Type : Ce champ permet de définir le type de la variable MMS. Type_Inf : Pour certains types il est nécessaire de donner un complément d'informations ; c'est l'objet du champ : Type_Inf. Par exemple, dans le cas d'une variable de type "TABLEAU", le champ Type_Inf indique le nombre d'éléments du tableau. Type des variables MMS - Type SIMPLE BOOL INT16 INT32 UINT16 UINT32 BSTR VSTR OSTR STRUCT FLOAT : : : : : : : : : : Booléen Entier signé sur 16 Bits Entier signé sur 32 Bits Entier non signé sur 16 Bits Entier non signé sur 32 Bits BitString (chaîne de bits) VisibleString (chaîne de caractères) OctetString (chaîne d'octets) Structure Flottant simple précision E Type_Inf 1..2048 2..4096-Pair 2..4096-Pair __________________________________________________________________________________________ 3/3 __________________________________________________________________________________________ Type des variables MMS - Type TABLEAU AR-BOOL : AR-INT16 : AR-INT32 : AR-UINT16 : AR-UINT32 : AR-BSTR1 : AR-VSTR2 : AR-OSTR2 : AR-STRUCT : AR-FLOAT : Tableau de Booléen Tableau d'Entiers signés sur 16 Bits Tableau d'Entiers signés sur 32 Bits Tableau d'Entiers non signés sur 16 Bits Tableau d'Entiers non signés sur 32 Bits Tableau de BitString1 (chaîne de bits) Tableau de VisibleString2 (caractères) Tableau d'OctetString2 (chaîne d'octets) Tableau de Structures Tableau de Flottants simple précision Type_Inf Nombre d'éléments du tableau avec MAX = 1024 Lorsque l'ensemble des champs de l'enregistrement est renseigné, il est possible de choisir les fonctions : E Ajout pour ajouter cette nouvelle variable MMS à la liste déjà présente. Modification pour remplacer l'enregistrement sélectionné dans la liste par l'enregistrement décrit dans les différents champs de saisie. Suppression pour supprimer l'enregistrement sélectionné dans la liste. Un simple "clic" sur un enregistrement de la liste permet de le sélectionner ; un double "clic" sur un enregistrement de la liste permet de le sélectionner et de remplir les champs de saisie ; cette opération permet de modifier simplement un champ dans un enregistrement. La liste permet de visualiser au maximum 512 variables MMS. On utilisera les boutons "Suite" et "Retour" pour visualiser la totalité des variables s'il y en a plus de 512. Le nombre de variables est limité à 2048. En fin de saisie, les fonctions possibles sont : Validation pour valider l'ensemble des modifications apportées. Une validation provoque la génération du fichier projet. Ce fichier est un fichier ASCII qui contient l'ensemble des enregistrements. En fin de génération, un message indique que le répertoire MMS Projet a été généré et l'écran d'accueil est ensuite proposé. Annulation pour quitter l'éditeur sans enregistrer les modifications apportées ; une demande d'annulation doit être confirmée. __________________________________________________________________________________________ 3/4 Configuration des symboles 3 __________________________________________________________________________________________ L'activation de l'option "Restitution" fait apparaître la fenêtre suivante qui permet de désigner un fichier par son chemin d'accès et son nom. E Cette fonction permet d'importer les variables définies dans un fichier quelconque respectant le format TELEMECANIQUE. Une action de restitution annule et remplace le répertoire projet MMS_PRJ.REP. __________________________________________________________________________________________ 3/5 __________________________________________________________________________________________ De la même façon, un répertoire projet peut être sauvegardé, en vue d'une utilisation à partir d'un autre poste de travail par exemple. On donne le chemin d'accès à ce répertoire et son nom : 3.1-2 Définition des Structures associées aux variables distantes E L'activation de l'option "Définition Structures" fait apparaître le sous menu suivant : L'activation de l'option "Saisie" lance un écran de saisie des formats des variables structurées : __________________________________________________________________________________________ 3/6 Configuration des symboles 3 __________________________________________________________________________________________ L'écran propose alors deux listes : • La liste des structures : pour ajouter, modifier un nom de structure, ou supprimer, sélectionner une structure. • La liste des éléments de la structure : pour décrire le format de la structure sélectionnée dans la liste des structures. Attention : Il est obligatoire de définir une structure pour chaque variable de type structuré (STRUCT) du répertoire projet. Le nom de la structure construite doit être identique au nom de la variable MMS définie dans le répertoire projet. Le principe est de créer une liste de noms de structures, puis pour chaque structure de configurer la liste des éléments qui composent cette structure. Pour préparer la liste des structures, les fonctions possibles sont : Ajout pour ajouter à la liste un nouveau nom de structure. Modification pour modifier le nom de la structure sélectionnée dans la liste. Suppression pour supprimer le nom de la structure sélectionnée dans la liste. Après avoir saisi un nom de structure, il est nécessaire de décrire les éléments de la structure en renseignant les différents champs associés qui sont : Nom élément Ce champ permet de donner un nom à chaque élément de la structure. Un nom d'élément est composé de caractères alphanumériques ; sa taille est limitée à 32 caractères. Type Ce champ permet de définir le type d'un élément de la structure. Type_Inf Pour certains types il est nécessaire de donner un complément d'informations ; c'est l'objet du champ : Type_Inf. Par exemple, dans le cas d'une variable de type "TABLEAU", le champ Type_Inf indique le nombre d'éléments du tableau. __________________________________________________________________________________________ 3/7 E __________________________________________________________________________________________ Type des éléments d'une structure - Type SIMPLE BOOL INT16 INT32 UINT16 UINT32 BSTR VSTR OSTR FLOAT E : : : : : : : : : Booléen Entier signé sur 16 Bits Entier signé sur 32 Bits Entier non signé sur 16 Bits Entier non signé sur 32 Bits BitString (chaîne de bits) VisibleString (chaîne de caractères) OctetString (chaîne d'octets) Flottant simple précision Type_Inf 1..2048 2..4096-Pair 2..4096-Pair Type des éléments d'une structure MMS - Type TABLEAU Type_Inf AR-BOOL AR-INT16 AR-INT32 AR-UINT16 AR-UINT32 AR-BSTR1 AR-BSTR16 AR-VSTR2 AR-OSTR2 AR-FLOAT Nombre d'éléments du tableau avec : : : : : : : : : : Tableau de Booléen Tableau d'Entiers signés sur 16 Bits Tableau d'Entiers signés sur 32 Bits Tableau d'Entiers non signés sur 16 Bits Tableau d'Entiers non signés sur 32 Bits Tableau de BitString1 (chaîne de bits) Tableau de BitString16 (chaîne de bits) Tableau de VisibleString2 (caractères) Tableau d'OctetString (chaîne d'octets) Tableau de Flottants simple précision MAX = 1024 MAX = 1024 Lorsque l'ensemble des rubriques d'un élément de la liste des éléments est renseigné, il est possible de choisir les fonctions : Modification pour remplacer l'élément sélectionné dans la liste par l'élément décrit dans les différents champs de saisie. Suppression pour supprimer l'élément sélectionné dans la liste. Insérer avant pour ajouter ce nouvel élément dans la liste des éléments avant l'élément sélectionné dans la liste. Insérer après pour ajouter ce nouvel élément dans la liste des éléments après l'élément sélectionné dans la liste. On peut ainsi déclarer l'ensemble des éléments et leurs types qui composent chaque structure. __________________________________________________________________________________________ 3/8 Configuration des symboles 3 __________________________________________________________________________________________ Attention Une variable MMS structurée est composée d'un ensemble d'éléments de type simple. Pour programmer la lecture ou l'écriture d'une variable structurée avec les blocs fonctions MREAD ou MWRIT - cf. Intercalaire F - il faut veiller à se réserver une suite de mots Wi couvrant la taille totale de la variable structurée et respecter la convention d'organisation mémoire suivante : Chaque élément d'une variable structurée est aligné sur une frontière de mot Wi quelle que soit la taille réelle nécessaire pour stocker la valeur du champ. Attention Si la variable MMS est de type AR_STRUCT (et non pas STRUCT) la description de cette variable structurée dans le menu Définition_Structures ne doit pas contenir d'éléments étant eux-mêmes définis comme AR_type x. Le champ type_inf de la description de la variable dans le menu : Définition Variables Distantes doit contenir le nombre d'éléments du tableau AR_STRUCT (le nombre de structures). Ce nombre est limité à 16 éléments, sachant que la taille max d'une STRUCTURE ou d'un AR_STRUCTURE ne peut jamais dépasser 4 K octets. Exemple : ALARME_TEMPERATURE {Numéro : Integer16 Etats : BitString18 Localisation : OctetString6 Identification : Array of 3 Boolean } E Si la variable MMS : ALARME_TEMPERATURE est associée au repère PL7-3 : W0, on aura : Numéro Etats est placé dans le mot W0 est placé dans les mots W1 et W2 avec utilisation des bits W1,0...W1,15 et W2,0...W2,1 Localisation est placé dans les mots W3, W4 et W5 Identification est placé dans le mot W6 avec utilisation des bits W6,0...W6,2 En fin de saisie de la liste des structures et des éléments associés à chaque structure, les fonctions possibles sont : Validation pour valider l'ensemble des modifications apportées. Une validation provoque la génération du fichier de structures. Le fichier de structures est un fichier ASCII qui contient l'ensemble des structures et leur format. En fin de génération, un message indique que le fichier a été correctement généré et l'écran d'accueil est ensuite proposé. Annulation pour quitter l'éditeur sans enregistrer les modifications apportées ; une demande d'annulation doit être confirmée. __________________________________________________________________________________________ 3/9 __________________________________________________________________________________________ L'activation de l'option "Restitution" fait apparaître la fenêtre suivante qui permet de désigner un fichier par son chemin d'accès et son nom. E Cette fonction permet d'importer les déclarations de structures définies dans un fichier quelconque respectant le format Telemecanique. Une action de restitution annule et remplace le fichier de structures au niveau du projet. De la même façon, un fichier de structures peut être sauvegardé, en vue d'une utilisation à partir d'un autre poste de travail par exemple. __________________________________________________________________________________________ 3/10 Configuration des symboles 3 __________________________________________________________________________________________ On donne le chemin d'accès à ce fichier et son nom : 3.2 Configuration des variables distantes E L'activation de l'option "Configuration-Variables Distantes" fait apparaître un écran de l'outil SDBASE pour gestion des symboles de la base de données. L'objet de cette fonction est de déclarer pour la station en cours de programmation, la liste des variables MMS distantes que l'on désire lire ou écrire ; ces variables seront prises parmi l'ensemble des variables du répertoire projet. Les variables distantes sont aussi appelées variables "clients". Pour configurer une variable distante, il suffit d'associer une variable du répertoire projet à un symbole désignant un objet CWi dans la base de données. Ce symbole est appelé ALIAS PL7-3. L'ALIAS est utilisé par les OFBs PL7-3 pour accéder aux variables MMS. __________________________________________________________________________________________ 3/11 __________________________________________________________________________________________ La méthode de configuration est la suivante : 1 Créer un ALIAS PL7-3 dans la fenêtre PL7-3. Pour cela, saisir un CWi dans la colonne "Repère" et un symbole associé dans la colonne "Symbole" ; le repère saisi peut être agrémenté d'un commentaire de 24 caractères. 2 Le symbole ainsi défini est ensuite répété dans le champ de saisie "Symbole" de la fenêtre supérieure MMS, après que l'utilisateur ait validé la saisie précédente. • soit ce symbole est déjà associé à une variable MMS du répertoire projet, et cette variable et ses caractéristiques sont affichées dans la fenêtre MMS ; • soit ce symbole n'est pas lié à une variable MMS et en pointant le champ : Nom d'Application de la vue MMS, puis en appuyant sur la touche : Entrée, une fenêtre apparait et propose la liste de toutes les variables du répertoire projet. Il suffit alors de choisir une variable dans cette liste, elle sera alors automatiquement associée au symbole saisi. Le choix de la variable peut être fait plus rapidement si on connaît le Nom de l'Application où se trouve cette variable. Dans la fenêtre proposant la liste des variables, on peut saisir dans un champ prévu à cet effet, le Nom de l'Application et le valider. La liste pointera alors la première variable appartenant à cette application. Attention Un ALIAS PL7-3 est toujours un symbole associé à un objet CW . E De manière complètement transparente pour le concepteur, l'outil fonction PL7 MMS crée un fichier de source constante : MMS.CST. Ce fichier contient les ALIAS PL7-3 avec comme valeur, pour chaque ALIAS, le rang dans la table des symboles distants, de la variable MMS dont il est le lien. __________________________________________________________________________________________ 3/12 Configuration des symboles 3 __________________________________________________________________________________________ Exemple de fichier MMS.CST : Alarme Voyant Pression =0 =1 =2 Le fichier MMS.CST devra être relu par la fonction READ de la rubrique : 3 CONSTANTE de l'outil PL7-3. Pour garantir l'existence dans la base PL7-3 de chaque ALIAS défini à travers PL7 MMS, l'outil génère automatiquement un fichier MMS.SCY dans lequel on trouve cette fois pour chaque ALIAS le CWi qui lui correspond. Exemple de fichier MMS.SCY : CW10 CW11 CW12 = Alarme = Voyant = Pression Les mots constants utilisés ne sont pas forcément consécutifs en mémoire. Le fichier MMS.SCY pourra être fusionné avec les autres symboles dans la SDBASE de la station locale au cas où l'utilisateur a un doute sur la validité de tous ses symboles. Ainsi pour programmer une lecture, ou une écriture de variable MMS, il suffit de désigner la variable concernée par l'ALIAS SDBASE qui la représente dans PL7-3. La programmation des blocs fonctions (OFB) d'échanges est dés lors très simple et elle se fait en symbolique. L'ALIAS est donné en paramètres d'entrée des OFB : MREAD, MWRITE et MURCV. E Important Le nombre maximum de variables distantes est fixé à 512 par station. Attention Une modification des fichiers Répertoire Projet des variables ou des structures peut créer des incohérences avec les fichiers des variables ou des structures de la station. Aucun outil automatique ne garantit la cohérence entre les fichiers du projet et les fichiers de la station. L'utilisateur devra veiller à cette cohérence. De la même façon, l'utilisateur devra veiller à garantir la cohérence des données pour les fichiers de mots constants (CST/SCY) et les fichiers de définitions de structures. Pour cette raison, il est conseillé, lors d'une sauvegarde, de sauvegarder l'ensemble des fichiers. __________________________________________________________________________________________ 3/13 __________________________________________________________________________________________ 3.3 Configuration des variables locales L'activation de l'option "Configuration-Variables Locales" fait apparaître le sous menu suivant : 3.3-1 Définition des variables locales E L'activation de l'option "Définition Variables Locales" fait apparaître un écran de l'outil SDBASE pour gestion des symboles de la base de données. L'objet de cette fonction est de déclarer pour la station en cours de programmation, la liste des variables MMS locales qui seront visibles et accessibles par les autres stations du projet. Ces variables pourront être lues ou écrites par les autres stations, y compris bien sûr, les stations hors projet XTEL. Les variables locales sont aussi appelées variables "serveurs". Pour configurer une variable locale, il suffit d'associer une variable MMS à un symbole désignant un objet PL7-3 dans la base de données. La méthode de configuration est la suivante : 1 On saisit dans la vue PL7-3 les valeurs de REPERE, SYMBOLE et COMMENTAIRE : Repère est le nom d'un objet du langage PL7-3 (Wi, CWi, ...) sur 21 caractères alphanumériques. Symbole est un ALIAS de la variable MMS pour SDBASE sur 8 caractères alphanumériques. Commentaire permet d'associer un commentaire de 32 caractères alphanumériques à la variable MMS. 2 Le symbole ainsi défini est automatiquement recopié dans la fenêtre symbole de la vue MMS. - si ce symbole est déjà associé à une variable MMS alors la variable MMS et ses caractéristiques sont affichées dans la vue MMS; - si ce symbole n'est pas lié à une variable MMS alors les rubriques : Nom de variable, Portée, Type, TypeInf, et Nom d'Application sont vides et doivent être renseignées. __________________________________________________________________________________________ 3/14 Configuration des symboles 3 __________________________________________________________________________________________ Les différentes rubriques d'une variable MMS sont : Nom Variable Ce champ permet d'identifier la variable MMS. Un nom de variable doit être formé des caractères suivants : 'A'...'Z', 'a'...'z', '0'...'9', '$', '_' Un nom de variable ne peut commencer par un chiffre et sa taille est limitée à 32 caractères. Portée Ce champ permet de définir la portée de la variable MMS. Les valeurs autorisées sont : VMD, DOMAIN, AA. Dans le cas où la portée est de type AA (Association) il est nécessaire d'indiquer un nom d'application dans la rubrique prévue. Dans ce cas, seule l'application désignée aura accès à cette variable. La portée d'une variable nommée est renseignée implicitement ; les valeurs par défaut sont fonction de l'objet PL7-3. OBJET PL7-3 PORTE MMS par défaut SYi Bi, Wi, j Wi, SWi, CWi DWi, CDWi Array of Bi Array of WI, CWi Array of DWi, CDWi VMD DOMAIN DOMAIN DOMAIN DOMAIN DOMAIN DOMAIN E Type Ce champ permet de définir le type de la variable MMS. Le champ type sera renseigné implicitement en fonction du champ "Repére" de la vue PL7-3. Ce champ est modifiable, soit pour en faire des variables de type tableau, soit avec un des types autorisés. - Les types "simple" autorisés sont : BOOL, INT16, INT32, UINT16, UINT32, BSTR, VSTR, OSTR, STRUCT, FLOAT. - Les types "tableau" autorisés sont : AR-BOOL, AR-INT16, AR-INT32, AR-UINT16, AR-UINT32, AR-BSTR1, AR-BSTR16, AR-VSTR2, AR-OSTR2, AR-STRUCT, AR-FLOAT. Mode Access Ce champ permet l'identification du mode d'accès choisi pour une variable locale de l'application MMS définie dans l'automate. Sa valeur est AUTO (valeur par défaut pour assurer le niveau de service Serveur Automatique tel qu'il existait en V51) ou PROG. __________________________________________________________________________________________ 3/15 __________________________________________________________________________________________ Type_Inf Pour certains types il est nécessaire de donner un complément d'informations ; c'est l'objet du champ : Type_Inf. Par exemple, dans le cas d'une variable de type "TABLEAU", le champ Type_Inf indique le nombre d'éléments du tableau. OBJET PL7-3 TYPE MMS par défaut SYi Bi, Wi,j Wi, SWi, CWi DWi, CDWi Array of Bi Array of WI, CWi Array of DWi, CDWi Booleen Booleen Integer16 Integer32 Array of Booleen Array of Integer16 Array of Integer32 TYPE MMS par défaut Types autorisés correspondant Booleen BitString1 __________________________________________________________________________ Integer16 Unsigned16, BitString16 OctetString2, VisibleString2 __________________________________________________________________________ Integer32 Unsigned32 Floating Point Simple Precision _________________________________________________________________________ E Array of Booleen Array of BitString1, BitStringN __________________________________________________________________________ Array of Integer16 Array of Unsigned16 Array of BitString16 Array of VisibleString2 Array of OctetString2 OctetString2N, VisibleString2N __________________________________________________________________________ Array of Integer32 Array of Unsigned32 Array of Floating Point __________________________________________________________________________________________ 3/16 Configuration des symboles 3 __________________________________________________________________________________________ TYPE MMS Nombre d'éléments MAXI. BitString 1..2048 OctetString VisibleString 2..4096 - Pair Array of OctetString 2 Array of VisibleString 2 2..1024 - Pair Array of Booleen Array of BitString1 1024 ______________________________________________________________________ ______________________________________________________________________ ______________________________________________________________________ ______________________________________________________________________ Array of Integer16 1024 Array of Unsigned16 Array of BitString16 ______________________________________________________________________ Array of Integer32 Array of Unsigned32 Array of Float Nom Application 1024 Ce champ permet d'identifier l'application distante qui veut accéder à la variable ; ce champ est à renseigner obligatoirement dans le cas où la variable est de portée : AA (Association). Seule l'application ainsi désignée aura accès à cette variable. Un nom d'application est composé de caractères alphanumériques ; sa taille est limitée à 32 caractères. __________________________________________________________________________________________ 3/17 E __________________________________________________________________________________________ 3.3-2 Définition des Structures associées aux variables locales L'activation de l'option "Définition Structures" fait apparaître un écran de saisie des formats des variables structurées : La saisie des structures associées aux variables locales est identique à la saisie des structures associées aux variables distantes (cf. Chapitre 3.1.2). L'écran propose deux listes : E • La liste des structures : pour ajouter, modifier un nom de structure, ou supprimer, sélectionner une structure. • La liste des éléments de la structure : pour décrire le format de la structure sélectionnée dans la liste des structures. Attention Il est obligatoire de définir une structure pour chaque variable de type structuré (STRUCT) configurée. Le nom de la structure construite doit être identique au nom de la variable MMS définie. Le principe est de créer une liste de noms de structures, puis, pour chaque structure, de configurer la liste des éléments qui composent cette structure. Pour préparer la liste des structures, les fonctions possibles sont : Ajout pour ajouter à la liste un nouveau nom de structure. Modification pour modifier le nom de la structure sélectionnée dans la liste. Suppression pour supprimer le nom de la structure sélectionnée dans la liste. __________________________________________________________________________________________ 3/18 Configuration des symboles 3 __________________________________________________________________________________________ Après avoir saisi un nom de structure, il est nécessaire de décrire les éléments de la structure en renseignant les différents champs associés qui sont : Nom élément Ce champ permet de donner un nom à chaque élément de la structure. Un nom d'élément est composé de caractères alphanumériques ; sa taille est limitée à 32 caractères. Type Ce champ permet de définir le type d'un élément de la structure. Type_Inf Pour certains types il est nécessaire de donner un complément d'informations ; c'est l'objet du champ : Type_Inf. Par exemple, dans le cas d'une variable de type "TABLEAU", le champ Type_Inf indique le nombre d'éléments du tableau. La liste des types autorisés est indiquée au chapitre 3.1.2, pour les structures associées aux variables distantes. Lorsque l'ensemble des rubriques d'un élément de la liste des éléments est renseigné, il est possible de choisir les fonctions : Modification pour remplacer l'élément sélectionné dans la liste par l'élément décrit dans les différents champs de saisie. Suppression pour supprimer l'élément sélectionné dans la liste. Insérer avant pour ajouter ce nouvel élément dans la liste des éléments avant l'élément sélectionné dans la liste. Insérer après pour ajouter ce nouvel élément dans la liste des éléments après l'élément sélectionné dans la liste. On peut ainsi déclarer l'ensemble des éléments et leur type qui compose chaque structure. Attention Une variable MMS structurée est composée d'un ensemble d'éléments de type simple. Pour programmer la lecture ou l'écriture d'une variable structurée avec les blocs fonctions MREAD ou MWRIT - cf. Intercalaire F - il faut veiller à se réserver une suite de mots Wi couvrant la taille totale de la variable structurée et respecter la convention d'organisation mémoire. La convention d'organisation est décrite au chapitre 3.1-2 pour les structures associées aux variables distantes. Attention Si la variable MMS est de type AR_STRUCT (et non pas STRUCT) la description de cette variable structurée dans le menu "Définition Structures" ne doit pas contenir d'éléments de type AR_xxx. Le champ type_inf de la description de la variable dans le menu : Définition Variables Distantes doit contenir le nombre d'éléments du tableau AR_STRUCT (le nombre de structures, voir chapitre 3.1-2). __________________________________________________________________________________________ 3/19 E __________________________________________________________________________________________ En fin de saisie de la liste des structures et des éléments associés à chaque structure, les fonctions possibles sont : Validation pour valider l'ensemble des modifications apportées et enregistrer les formats des structures définies. En fin de génération, un message indique que le fichier de structures a été correctement généré et l'écran d'accueil est ensuite proposé. Annulation pour quitter l'éditeur sans enregistrer les modifications apportées ; une demande d'annulation doit être confirmée. 3.4 Génération du fichier binaire MMS.BIN Après avoir édité les variables et avoir exécuté la procédure de sortie de l'éditeur, la question suivante apparait : E non aucun fichier n'est généré, le contrôle revient au menu principal oui provoque une demande de génération du binaire après contrôle de validité des variables ; en cas de succès, le binaire est généré, un message rend compte de l'opération. En cas d'échec du contrôle de validité des symboles, un message indique la nature du défaut. Par exemple dans le cas où a été créée une variable (distante ou locale) de type structurée "STRUCT" et que le format de la structure n'a pas été définie, le message suivant apparait : "Au moins une des variables structurées est incorrecte et n'a pas été générée dans le binaire." Après acquittement par l'opérateur, le message : "Le binaire a été correctement généré." indique que le fichier binaire a été généré, la variable en défaut mise à part. __________________________________________________________________________________________ 3/20 Transfert de fichiers binaires 4 __________________________________________________________________________________________ 4. Transfert de fichiers binaires La fonction permet de transférer un fichier de type BINAIRE généré par la fonction Configuration, du disque dur vers la zone dédiée MMS de la mémoire UC ou de décharger cette même zone de la mémoire UC vers le poste de travail dans un fichier MMS.BIN. Cette fonction autorise également la comparaison entre un fichier disque BINAIRE (MMS.BIN) et le contenu de la zone dédiée MMS de la mémoire UC. 4.1 Chargement de l’UC Cette fonction permet de transférer un fichier BINAIRE MMS en mémoire UC. Remarque Le chargement n'est possible que si la zone dédiée MMS a été allouée au préalable dans la mémoire de l'UC. • Station V4 Pour effectuer cette allocation, il convient d'utiliser les outils MEM et TRANSFERT. L'outil MEM permet de générer un fichier application de configuration de la mémoire (fichier xxx.APP) ; cette configuration doit comporter une zone dédiée MMS. L'outil TRANSFERT permet de charger dans la mémoire de l'UC le fichier xxx.APP ainsi généré. • Station V5 L'outil XTEL-TRANSFER est lancé automatiquement à partir de la validation "Transfert Disque --> UC". Pour effectuer le chargement, la station de travail devra être connectée à l'automate. __________________________________________________________________________________________ 4/1 E __________________________________________________________________________________________ Après avoir sélectionné l’option Disque -> UC du menu déroulant la boîte de dialogue Transfert Disque -> UC apparait : Oui lance l'opération de chargement. Il est affiché un message d'information pendant le transfert : "FONCTION DE TRANSFERT EN COURS..." En fin d'exécution, un message indique le bon déroulement du traitement : "Le binaire a été correctement transféré dans l'UC." E 4.2 Déchargement de l'UC Cette fonction permet de transférer le contenu de la zone dédiée MMS de la mémoire UC de l'automate dans un fichier BINAIRE MMS (MMS.BIN) sur le disque du poste de travail. Pour effectuer le déchargement, la station de travail devra être connectée à l'automate. Après avoir sélectionné l'option UC -> Disque du menu déroulant la boite de dialogue Transfert UC -> Disque apparait, pour confirmer ou abandonner la demande de déchargement de l'UC. Le mode opératoire est le même que dans le cas du chargement. __________________________________________________________________________________________ 4/2 Transfert de fichiers binaires 4 __________________________________________________________________________________________ 4.3 Comparaison de la mémoire UC avec un fichier binaire Cette fonction permet de comparer le contenu de la zone dédiée MMS de la mémoire UC avec un fichier BINAIRE MMS (MMS.BIN) du disque du poste de travail. Pour effectuer la comparaison, la station de travail devra être connectée à l'automate. Le mode opératoire, pour une opération de comparaison, est le même que pour une opération de chargement ou de déchargement de l'UC. La comparaison est conclue par un des deux messages suivants : "Le binaire disque et le binaire en UC sont identiques" ou "Le binaire disque et le binaire en UC sont différents" E __________________________________________________________________________________________ 4/3 __________________________________________________________________________________________ E __________________________________________________________________________________________ 4/4 Documentation et impression 5 E __________________________________________________________________________________________ 5. Documentation et impression La procédure à suivre pour établir la documentation sur la configuration des variables MMS de la station est la suivante : • préparer la page de garde de la documentation (création d'un fichier MMS.TIT) • préparer le cartouche de la documentation (création d'un fichier MMS.CRT) • élaborer la documentation proprement dite, (dans un fichier MMS.DOC) à partir des fichiers MMS.TIT et MMS.CRT précédemment crées et des fichiers MMS.BIN contenant les descriptions des variables locales/distantes, MMS.CST, MMS.SCY, MMS.STR. • Consulter à l'écran ou imprimer cette documentation. 5.1 Générer la documentation Le choix de la fonction Générer lance la création de la documentation de l'application MMS de la station. Elle nécessite d'avoir au préalable créé la page de garde et le cartouche respectivement décrits dans les fichiers MMS.TIT et MMS.CRT. La documentation utilise les informations contenues dans le fichier MMS.BIN contenant la liste des variables définies dans la station. Cette documentation présente la liste des variable MMS en 2 parties, les variables locales et les variables distantes (l'une des 2 parties pouvant être inexistante). Chaque variable est décrite avec toutes ses caractéristiques MMS, ses attributs et liens avec l'application PL7-3 (alias et repères). Ces informations sont tirées des fichiers MMS.CST et MMS.SCY ainsi que des fichiers MMS.STR s'il s'agit de variables structurées; __________________________________________________________________________________________ 5/1 E __________________________________________________________________________________________ 5.2 Consulter Le choix de cette fonction permet la visualisation immédiate à l'écran, de la documentation qui vient d'être générée. L'utilisateur peut faire défiler la documentation verticalement et horizontalement. Le format présenté correspond à ce qui peut être imprimé. 5.3 Imprimer Le choix de cette fonction propse d'abord à l'écran la liste des imprimantes utilisables pour l'impression du dossier de documentation de la station. L'utilisateur peut alors choisir dans la liste des imprimantes connectées à son poste celle sur laquelle il veut imprimer sa documentation et cliquer sur le bouton<Validation> pour confirmer son choix et lancer l'impression. Le bouton <Annulation> lui permettra d'annuler l'impression en cours. Remarque E S'il peut être imprimé indépendamment, le dossier de documentation de la fonction MMS d'une station (MMS.DOC) peut aussi être intégré dans le dossier complet de documentation d'une station V4 ou V5. Cette intégration est faite par l'outil station XTEL-DOC de manière transparente pour PL7-MMS. __________________________________________________________________________________________ 5/2 Documentation et impression 5 E __________________________________________________________________________________________ 5.4 Saisir Information Saisie de la page de garde A l'entrée de ce menu, les zones sont initialisées avec le contenu du fichier MMS.TIT s'il existe déjà. Sinon toutes les zones sont vides. L'accès à une zone prédéfinie s'effectue avec la souris ou avec la touche TAB. Dans une même zone, l'accès aux colonnes ou aux lignes s'effectue avec la souris ou avec les flèches. Les différentes saisies possibles sont : • • • • • • • • • TITRE SOCIETE DEPARTEMENT RESPONSABLE REV. DATE REVISION CONCEPTEUR REALISATEUR : titre de l'application (64 car. max.), : nom des sociétés (16 car. max.), : nom des départements des sociétés (16 car. max.), : nom des responsables (16 car. max.), : indice de révision du dossier (3 car. max.), : date de création ou de modification du dossier (8 car. max.) : commentaire expliquant la révision (32 car.max.) : nom du concepteur (12 car. max.), : nom de l'exécutant (12 car. max.), Le fichier MMS.TIT généré est codé en ASCII donc éditable. Validation lance la sauvegarde du contenu de l'écran dans le MMS.TIT et provoque la sortie de l'écran. fichier Annulation provoque la sortie de l'écran, sans sauvegarde du fichier MMS.TIT. __________________________________________________________________________________________ 5/3 E __________________________________________________________________________________________ Saisie du cartouche personnalisé Cet écran permet de personnaliser le cartouche de bas de page du dossier de documentation. Deux chaînes de caractères sont laissées à l'appréciation de l'utilisateur : • une chaîne de 25 caractères en haut du cartouche, • une chaîne de 45 caractères en bas du cartouche. E Les zones sont initialisées avec le contenu du fichier MMS.CRT, s'il existe déjà. Sinon toutes les zones sont vides. Un cartouche de bas de page donne les informations suivantes : • le nom de l'application, • la désignation de la rubrique imprimée, • le numéro de version du document, • la date de l'impression, • la pagination par rubrique, • la pagination absolue. Validation lance la sauvegarde du contenu de l'écran dans le fichier MMS.CRT et provoque la sortie de l'écran. Annulation abandon avec retour à l'écran principal, aucun fichier n'est créé ou modifié. __________________________________________________________________________________________ 5/4 Visualisation de binaire MMS - Suppression de fichiers - Aide 6 __________________________________________________________________________________________ 6.1 Visualisation de binaire MMS Cette fonction est un utilitaire de la fonction PL7-MMS, qui permet de visualiser les variables contenues dans un binaire MMS. Si l'environnement de travail est la Mémoire locale, le binaire visualisé sera le fichier MMS.BIN du disque. Si l'environnement de travail est la Mémoire UC, la fonction visualisera le contenu de la zone dédiée MMS de la mémoire UC. 6.1-1 Visualisation d’un fichier binaire du disque du poste de travail La mémoire de travail qui a été choisie est la Mémoire locale (option Mémoire du menu principal). Visualisation des variables locales : Après avoir sélectionné l'option "Visualisation" du menu déroulé, une fenêtre est affichée et indique la liste des variables MMS locales : __________________________________________________________________________________________ 6/1 E __________________________________________________________________________________________ Cet écran présente la liste des variables locales contenues dans le binaire MMS.BIN. Chaque ligne de la liste est composée des informations suivantes : <ObjetPL7_3>/<VarMms>/<Portée>/<Nom>/<Type>/<TypeInfo>/<Acces>/ Par exemple : W1/Index_01/DOMAIN/MMS/INT16//AUTO/ Dans le cas des variables structurées,il est indiqué également le format de la structure et l'organisation de la mémoire pour chaque élément; par exemple : W10/Produit/VMD//STRUCT//AUTO/ { +0/BOOL/Valide +1/VSTR 12/Nom +7/INT16/Numero } Visualisation des variables distantes : Par un simple appui sur le bouton : Variables distantes, il est présenté la liste des Variables distantes. L' écran présente la liste des variables MMS distantes contenues dans le binaire MMS.BIN. Chaque ligne de la liste est composée des informations suivantes : E <ObjetPL7_3>/<Alias>/<VarMms>/<Portée>/<Nom>/<Type>/<TypeInfo>/ Par exemple : W1/Index_01/Num_Fiche/DOMAIN/Public/INT16// Dans le cas des variables structurées,il est indiqué également le format de la structure et l'organisation de la mémoire pour chaque élément; par exemple : W2/Index_02/Fiche/DOMAIN/Public/STRUCT// { +0/INT16 +1/BSTR 18 +6/AR-BOOL 3 } __________________________________________________________________________________________ 6/2 Visualisation de binaire MMS - Suppression de fichiers - Aide 6 __________________________________________________________________________________________ 6.1-2 Visualisation du binaire contenu dans l’UC Pour visualiser le contenu MMS de l'UC il suffit de sélectionner la mémoire UC comme mémoire de travail, puis de cliquer l'option Visualisation du menu Utilitaires. La fonction fait une lecture de la mémoire UC, après quoi l'écran de visualisation est affiché. 6.2 Suppression de fichiers L'utilitaire "Suppression" permet la gestion de la suppression de tous les fichiers qui ont pu être générés par l'outil PL7-MMS. Il suffit, après avoir sélectionné l'option, de cliquer sur le type de fichier que l'on souhaite supprimer. Quel que soit le type de fichier, la procédure est la même : vous devez toujours confirmer ou abandonner une demande de suppression. L'opération est à renouveler tant qu'il reste des fichiers à supprimer. Quand il n'existe plus de fichier d'un certain type à supprimer, l'option concernant ce fichier est grisée. __________________________________________________________________________________________ 6/3 E __________________________________________________________________________________________ 6.3 Sauvegarde et Restitution des fichiers binaires MMS L'activation de l' option "Restitution" fait apparaître un sous menu qui permet de désigner le type de fichier que l'on désire restituer. Il suffit, après avoir sélectionné l'option, de cliquer sur le type de fichier que l'on souhaite restituer. Quel que soit le type de fichier, la procédure est la même : vous devez toujours indiquer le chemin d'accès et le nom du fichier à copier dans l'espace MMS. E __________________________________________________________________________________________ 6/4 Visualisation de binaire MMS - Suppression de fichiers - Aide 6 __________________________________________________________________________________________ De la même façon, les fichiers MMS : BIN, SCY, CST ou STR (pour les structures locales) peuvent être sauvegardés, en vue d'une utilisation à partir d'un autre poste de travail par exemple. Quel que soit le type de fichier, la procédure est la même ; vous devez toujours indiquer le chemin d'accès et le nom du fichier de sauvegarde : 6.4 La fonction d'aide E L'option "Aide" du menu déroulant donne l'accès, depuis la racine, aux menus d'aide de la fonction PL7-MMS. L'option "Au sujet de" amène l'affichage : __________________________________________________________________________________________ 6/5 __________________________________________________________________________________________ E __________________________________________________________________________________________ 6/6 Annexe 7 __________________________________________________________________________________________ 7. Annexe Format des fichiers Répertoire Projet Le format du fichier de variables Le fichier projet : MMS_PRJ.REP peut également être créé ou modifié à l'aide d'un éditeur de fichiers; il est dans ce cas nécessaire de respecter le format pré-défini par Telemecanique. Les conventions : • Les enregistrements sont rangés par ordre alphabétique sur le nom d'application suivi du nom de la variable MMS. • Un enregistrement contient tous les champs nécessaires à la description de la variable ; chaque champ est séparé par le caractère "/". • "//" marque une omission. • "#" en début de ligne indique un commentaire. • Chaque fin d'enregistrement est repéré par le double caractère <Carriage Return><Line Feed>. Le format : /<NomApp>/<NomMMS>/<Portée>/<NomDomain ou NomApp>/<Type>/<TypeInf>/ <CR><LF> Le format du fichier de structures Le fichier de structures : MMS_PRJ.STR , comme le fichier répertoire projet, peut être créé ou modifié à l'aide d'un éditeurde fichiers ; il est dans ce cas nécessaire de respecter le format pré-défini par Telemecanique. Les conventions : • Les structures sont rangées par ordre alphabétique sur le nom de la structure. • Un élément d'une structure contient son nom, son type et si nécessaire le champ TypeInf. Les différents champs décrivant les éléments des structures sont séparés par le caractère "/". • "//" marque une omission. • Chaque fin de ligne est repéré par le double caractère <Carriage Return><Line Feed>. Le format : ALARME_TEMPERATURE { Numero/INT16// Etats/BSTR/18/ Localisation/OSTR/6/ Identification/AR-BOOL/3/ } __________________________________________________________________________________________ 7/1 E __________________________________________________________________________________________ E __________________________________________________________________________________________ 7/2 ________________________________________________________ Blocs fonctions MMS F ___________________________________________________________________________ Chapitre 1 Généralités 1.1 1.2 1.3 1.4 2 Présentation des OFBs du produits PL7-OSI 3.0 Installation des OFBs Configuration des OFBs Utilisation des OFBs 1/1 1/2 1/2 1/4 L'OFB MMSLD 2.1 3 Page Utilisation de l'OFB MMSLD 2.1-1 Modification de l'application 2.1-2 Perte de la mémoire coupleur 2/1 2/1 2/1 Les OFBS de services MMS 3.1 3.2 Rappels sur la conception d'une application MMS Programmation des OFBs 3.2-1 Les caractéristiques communes à tous les OFBs MMS 3.2-2 Principes de la mise en œuvre 3/1 3/2 3/2 3/4 3.3 OFB MCNCT : gestion de l'association 3.3-1 Fonction 3.3-2 Interface PL7-3 3.3-3 Utilisation de l'OFB MCNCT 3.3-4 Programmation de l'OFB MCNCT 3/11 3/11 3/11 3/15 3/15 3.4 OFB MREAD : Lecture de variables MMS Client 3.4-1 Fonction 3.4-2 Interface PL7-3 3.4-3 Utilisation de l'OFB MREAD 3.4-4 Programmation de l'OFB MREAD 3/21 3/21 3/21 3/26 3/26 3.5 OFB MWRIT : Ecriture de variables MMS Client 3.5-1 Fonction 3.5-2 Interface PL7-3 3.5-3 Utilisation de l'OFB MWRIT 3.5-4 Programmation de l'OFB MWRIT 3/28 3/28 3/28 3/32 3/32 ___________________________________________________________________________ F/1 F ________________________________________________________ ___________________________________________________________________________ Chapitre 4 F 3.6 OFB MURCV : Données non sollicitées (mode Client) 3.6-1 Fonction 3.6-2 Interface PL7-3 3.6-3 Utilisation de l'OFB MURCV 3.6-4 Programmation de l'OFB MURCV 3/34 3/34 3/34 3/38 3/38 3.7 OFB MRSTA : Etat d'un équipement (mode Client) 3.7-1 Fonction 3.7-2 Interface PL7-3 3.7-3 Utilisation de l'OFB MRSTA 3.7-4 Programmation de l'OFB MRSTA 3/40 3/40 3/40 3/42 3/42 3.8 OFB MUSND : Emission de données non sollicitées (mode Serveur) 3.8-1 Fonction 3.8-2 Interface PL7-3 3.8-3 Utilisation de l'OFB MUSND 3.8-4 Programmation de l'OFB MUSND 3/44 3/44 3/44 3/48 3/48 3.9 OFB MSSTA : Emission de l'état d'un équipement (mode Serveur) 3.9-1 Fonction 3.9-2 Interface PL7-3 3.9-3 Utilisation de l'OFB MSSTA 3.9-4 Programmation de l'OFB MSSTA 3/50 3/50 3/50 3/53 3/53 L'OFB MSEMA : Synchronisation de l'accès à une variable MMS serveur 4.1 4.2 4.3 4.4 5 Page Fonction Interface PL7-3 Utilisation de l'OFB MSEMA Programmation de l'OFB MSEMA 4/1 4/2 4/6 4/6 Annexes 5.1 5.2 5.3 5.4 Gestion des erreurs Indications d'erreurs d'exécution d'un service MMS (IND) Codes d'erreurs remontés dans STATUS de MMSLD V2.0 Ajout d'une variable MMS à un projet existant 5/1 5/3 5/5 5/6 ___________________________________________________________________________ F/2 Généralités 1 __________________________________________________________________________________________ 1.1 Présentation des OFBs du produit PL7-OSI 3.0 La bibliothèque des OFBs du produit PL7-OSI 3.0 V2 se compose de l'OFB MMSLD et des OFBs de Services MMS. L'OFB MMSLD est un exécutable automate qui surveille et télécharge automatiquement la configuration OSI et la table des variables MMS locales vers les coupleurs OSI (ETH 200) ; le chargement est réalisé à partir des zones dédiées OSI et MMS de la mémoire UC. Les OFBs de Services MMS constituent une extension du langage PL7-3. Ils implémentent les fonctions Client et certaines fonctions Serveur des coupleurs ETH200. Les OFBs MCNCT, MREAD, MWRIT, MURCV, MRSTA sont dédiés aux services de la fonction Client MMS tandis que les OFBs MUSND, MSSTA sont dédiés aux services non sollicités Serveur MMS. Les services Client MMS qui peuvent être programmés dans une application PL7-3, via la fonction Client du coupleur ETH200, sont : Initiate, Conclude, Abort avec l'OFB MCNCT qui permet, à l'application PL7-3, d'ouvrir, de fermer ou d'interrompre une association avec une application Serveur MMS distante ; il permet aussi d'identifier une association ouverte par une application distante. Read, Write avec les OFBs MREAD et MWRIT ; ils permettent à l'application PL7-3 cliente de lire ou écrire 1 à 4 variables MMS sur un équipement distant. Status, UnsolicitedStatus avec l'OFB MRSTA permettant d'acquérir l'état d'un équipement distant, sur demande explicite ou de manière non sollicitée. Réception de données non sollicitées : InformationReport F avec l'OFB MURCV. Les services Serveur MMS programmables dans une application PL7-3 sont : Emission de données non sollicitées : InformationReport, UnsolicitedStatus avec les OFBs MUSND et MSSTA dont l'exécution déclenche l'émission de données ou d'informations d'état vers un équipement distant client MMS à travers la fonction SERVEUR des coupleurs OSI/MMS V2. Les fonctionnalités et modes de programmation de chacun des OFBs sont décrits dans les chapitres suivants. Les blocs fonction optionnels MMS sont livrés avec le logiciel PL7-OSI 3.0 sur une disquette particulière et utilisent les mêmes droits d'accès. Ils appartiennent à la famille MMS. __________________________________________________________________________________________ 1/1 __________________________________________________________________________________________ 1.2 Installation des OFBs Les OFBs MMS doivent être installés sur le disque dur de la station de travail pour pouvoir être utilisés. La procédure d'installation est décrite à l'intercalaire B Chapitre 1. 1.3 Configuration des OFBs Avant toute utilisation d'un bloc fonction OFB dans un programme application, il est nécessaire de le configurer. Cette opération est réalisée au moyen de l'outil PL7-3. La configuration consiste à : • déclarer le type d'OFB, afin de charger le code exécutable dans l'espace programme OFB de la mémoire, • définir le nombre d'OFB utilisés, afin de définir les espaces "constantes OFB" et "données OFB" de la mémoire. Pour cela vous devez : • Sélectionner l'outil PL7-3 et, à partir de l'écran principal, choisir le mode opératoire : 1 - CONFIGURATION. • A partir de l'écran CHOIX DES MODES DE CONFIGURATION, choisir la rubrique 5 BLOCS FONCTIONS OPTIONNELS. L'écran CONFIGURATION DES BLOCS FONCTIONS OPTIONNELS visualise la liste des types d'OFB déjà déclarés, ainsi que le nombre d'OFB par type. F • Si l'OFB n'est pas présent dans cette liste, appuyer sur la touche dynamique [NEW OFB]. Un nouvel écran permet alors de visualiser la liste des OFB disponibles sur disque dur. Utiliser les commandes [PREV FAM] et [NEXT FAM] pour se positionner sur la famille MMS et la commande [INS] pour choisir le type d'OFB nécessaire pour l'application. Ecran ... Confi. PL7-3 pour OFB MMS] Suite à demande NEW OFB __________________________________________________________________________________________ 1/2 Généralités 1 __________________________________________________________________________________________ • Après validation des nouveaux choix, l'écran CONFIGURATION DES BLOCS FONCTIONS OPTIONNELS est à nouveau visualisé. La commande [MODIFY] permet alors de définir pour le type déclaré, le nombre d'OFB à utiliser. Vous devez configurer un OFB par coupleur réseau de la station ; par exemple une station équipée de quatre coupleurs devra contenir quatre instances de l'OFB MMSLD. Pour plus d'informations se reporter à la documentation "Modes opératoires PL7-3" référencée TXT DM PL7 3 V5F. F __________________________________________________________________________________________ 1/3 __________________________________________________________________________________________ 1.4 Utilisation des OFBs Pour mettre en oeuvre un bloc fonction OFB MMS, il est nécessaire de réaliser les étapes suivantes : 1 Configurer le coupleur avec l'outil PL7-OSI. Configurer la base des symboles MMS Client et des symboles MMS Serveur avec l'outil PL7-MMS. 2 Définir les symboles SDBASE locaux à l'application qui permettront le câblage symbolique des entrées de l'OFB. L'utilisation des données symboliques améliore la lisibilité et la portabilité des applications. 3 Configurer et programmer l'OFB avec l'outil PL7-3. Configurer le nombre d'instances nécessaires. Initialiser les constantes associées aux identificateurs MMS Client en exécutant la commande READ de PL7-3 sur le fichier MMS.CST. 4 La programmation de chaque bloc fonction est détaillée dans le Chapitre 3 de l'intercalaire F. F __________________________________________________________________________________________ 1/4 L'OFB MMSLD 2 __________________________________________________________________________________________ 2.1 Utilisation de l' OFB MMSLD Le bloc fonction MMSLD fonctionne en mode d'exécution implicite : le concepteur de l'application ne le programme pas dans l'application PL7-3. Il s'exécute quel que soit l'état de l'automate : RUN ou STOP. L'OFB MMSLD exécute sa fonction de chargement dans les cas suivants : • après la modification de la configuration OSI/MMS de l'application STATION.APP par le concepteur, • après une perte de mémoire, une reprise après défaut ou un remplacement de coupleur. 2.1-1 Modification de l'application Lors d'une modification de la zone dédiée OSI ou de la zone dédiée MMS dans la mémoire UC, cette zone est automatiquement chargée dans la mémoire du coupleur associé. Le chargement d'une nouvelle application (STATION.APP) ou d'un binaire OSI.BIN ou MMS.BIN provoque une modification d'une ou des zones dédiées OSI ou MMS et par conséquent la mise à jour de la mémoire coupleur. 2.1-2 Perte de la mémoire coupleur L'OFB MMSLD surveille en permanence les coupleurs TSX ETH 200 qui sont présents dans la configuration des entrées-sorties de l'application PL7-3. La surveillance des coupleurs consiste en la détection d'une perte ou d'une altération des paramètres OSI ou de la table des variables dans la mémoire du coupleur. En cas de perte de configuration OSI ou MMS, le bloc fonction MMSLD réalise automatiquement le chargement de la mémoire coupleur à partir des zones dédiées OSI et MMS de la mémoire UC. __________________________________________________________________________________________ 2/1 F __________________________________________________________________________________________ F __________________________________________________________________________________________ 2/2 Les OFBs de services MMS 3 __________________________________________________________________________________________ 3.1 Rappels sur la conception d'une application MMS Une station TSX/PMX qui utilise les services MMS pour communiquer avec d'autres stations, via un ou plusieurs coupleurs ETH200, est considérée dans XTEL comme une Application Locale qui établit des échanges avec des Applications Distantes. En exploitation, des associations seront ouvertes entre Application Locale et Applications Distantes. Ces associations sont autant de canaux de communication via lesquels des messages et des données seront échangés selon un mode Client/Serveur. Les échanges de données s'établissent sur des variables MMS identifiées par des symboles communs à toutes les applications. On conçoit que le développement d'applications MMS suppose une déclaration et une définition, au niveau projet, de chacune des Applications Distantes d'une part, de chacune des variables MMS attribuée à chaque Application Distante, d'autre part. Cette base commune établie, chaque station - application - développée est configurée de manière à lui désigner les Applications Distantes visibles par elle ; de même, ses caractéristiques d'Applications Locales sont configurées au niveau de chaque coupleur OSI. L'outil PL7-OSI est l'instrument de cette configuration. Parallèlement, l'outil PL7-MMS, permet d'établir, pour chaque station, le lien entre le nom MMS de chacune des variables MMS vue par l'Application Locale et un symbole ("Alias") de la base de données locale (SDBASE). S'il s'agit d'une variable dont la valeur est significative dans l'Application Locale (objet PL7-3 de l'application) qui est lue ou écrite par une Application Distante, elle est déclarée, pour l'Application Locale, variable MMS locale et associée à un repère PL7-3. Si, au contraire, il s'agit d'une variable significative dans une Application Distante, que l'Application Locale sera amenée à lire ou à écrire, elle est déclarée variable MMS distante et son "Alias" dans la base de données locale, est associée à un repère de type CW (Mot constant) dont la valeur est un pointeur sur la table des variables MMS distantes. Avant de programmer les OFBs sous PL7-3 il est fondamental d'assurer la cohérence de l'environnement de développement par un chargement du fichier MMS.CST. Il est important de noter, au niveau de la programmation des applications MMS, les points suivants : En PL7-3, la base fondamentale des symboles est gérée par SDBASE au niveau de la station, cette base assure le lien entre l' "Alias" (symbole) et le repère (objet) PL7-3. La programmation des OFBs se fait en symbolique, les symboles étant les "Alias" PL7-3 ; en particulier, quand une entrée d'un OFB doit être câblée avec une variable MMS, la variable est désignée par son "Alias" et non par son symbole MMS. Le système se charge, à la compilation ou à l'exécution, de gérer les liens nécessaires, à partir des tables de variables établies au moyen de l'outil PL7-MMS. __________________________________________________________________________________________ 3/1 F __________________________________________________________________________________________ 3.2 Programmation des OFBs MMS Ce sous-chapitre présente un certain nombres de caractéristiques communes à l'ensemble des OFBs MMS, puis les principes de leur mise en oeuvre. On y décrit, en particulier, les principes de l'interfaçage avec les données PL7-3. Chacun des OFBs est décrit en détail, dans les sous-chapitres suivants. 3.2-1 Les caractéristiques communes à tous les OFBs MMS a. Comme tous les blocs fonction de communication, les blocs fonction MMS s'exécutent sur plusieurs cycles automate. b. L'appel non entretenu. L'exécution des OFBs est entretenue implicitement par le système, ce qui signifie qu'il suffit de ne programmer que le déclenchement du bloc. Par exemple, en langage littéral, l'appel sera : ! IF NOT B0 THEN EXEC OFBi (. . . =>. . .); SET B0 avec les avantages suivants : • Le passage des paramètres n'est effectué qu'une seule fois, ce qui important gain de performance, permet un • La programmation est simplifiée : le programmeur n'a pas à entretenir l'appel de l'OFB tandis que l'exécution n'est pas terminée. F En contre partie, il apparait que les paramètres de sortie sont sans objet, puisque les variables qui seraient cablées ne seraient pas rafraîchies. Par conséquent, les sorties sont en fait des données internes publiques qui sont interprétées comme des résultats. Une programmation correcte est du type : ! ! ! ! IF NOT B0 THEN EXEC OFBii (. . . =>. . .); SET B0 <Attente> IF NOT OFBi,READY THEN JUMP L10 Note Les OFBs disposent tout de même d'un paramètre de sortie de type BIT, le bit ERROR utilisé pour le diagnostic ; ce bit ne doit pas être câblé. ERROR doit être utilisé comme un paramètre interne de résultat. __________________________________________________________________________________________ 3/2 Les OFBs de services MMS 3 __________________________________________________________________________________________ c. La caractéristique DIAGNOSTIC Les OFBs peuvent être utilisés par l'outil APPLIDIAG. C'est pourquoi ils possèdent tous une sortie de type bit, ERROR, et une donnée interne publique INHIB, de type bit également. La valeur à 1 de ERROR indique une anomalie constatée par le bloc fonction. Le défaut est signalé dans une ou plusieurs données, nommées STATUS et STATUSn, de type WORD et DWORD. Le nombre de données STATUSi et les significations associées aux états de cette donnée dépendent de l'OFB et sont détaillées dans les descriptions de chacun des OFBs. INHIB est une donnée interne publique qui permet d'inhiber la signalisation des erreurs. En cas d'anomalie, le bloc fonction continue de s'exécuter, ERROR et STATUS restent toujours à 0. d. Les bits RESET et READY Du fait que les OFBs MMS s'exécutent sur plusieurs cycles automate, le paramètre d'entrée RESET permet d'interrompre l'exécution d'un bloc en attente d'une réponse à un message. Dans le même ordre d'idée, les blocs sont munis d'une donnée interne publique, le bit READY, qui permet de savoir si une exécution est en cours. Le bit READY ! ! ! ! ! ! ! ! ! ! IF NOT B0.MCNCT0,READY THEN EXEC MCNCTO(;Initiate;CplMap;ORDO_APP;200=> ...); SET B0 <Attente> IF NOT MCNCT0,READY THEN JUMP L500 IF MCNCT0,ERROR THEN JUMP L999 <L'association est ouverte. Elle sera répétée jusqu'à sa fermeture> <par ORDO.> IF [MCNCT0,STATE=0] THEN MCNCT0,CHANNEL->ORDO F <Suite du programme...> L'action RESET L'entrée RESET de type bit permet d'interrompre une exécution sur la mise à 1 du bit. Les messages en cours éventuels sont perdus. Les bits READY et ERROR sont positionnés à 1. STATUS signale un arrêt sur demande utilisateur. Le bloc fonction est prêt à être ré-exécuté. L'écriture de l'entrée RESET est autorisée par requête UNI-TE, c'est à dire par des outils tels que APPLIDIAG, mode REGLAGE et DONNEE de PL7-3, ...) que l'automate soit en RUN ou en STOP. Une action RESET sur un bloc fonction au repos (bit READY à 1) provoquera la remise à 0 des données internes publiques ERROR et STATUS, ainsi que les données s'interprétant comme des sorties. __________________________________________________________________________________________ 3/3 __________________________________________________________________________________________ 3.2-2 Principes de la mise en œuvre La mise en œuvre d'une communication MMS Client/Serveur est effectuée en trois étapes principales : • ouverture d'un canal de transmission associant le Client au Serveur, • échanges sur cette liaison point à point temporaire. L'exécution en séquence des échanges MMS peut se faire si nécessaire par le test du bit READY, • fermeture de l'association. Remarque Avant d'entreprendre une fermeture d'association il faut s'assurer que les échanges en cours sont terminés : tests à 1 du bit READY des OFBs MMS. Les fonctions qu'impliquent ces trois phases sont assurées par les OFBs MMS. Identification de l'association • 1er cas : L'application appelle : L'OFB MCNCT associe un Client et un Serveur MMS, c'est à dire l'application PL73 d'un automate TSX/PMX, à un équipement distant, et ce, par l'intermédiaire d'un coupleur ETH200 situé dans le rack principal de l'automate. MCNCT a donc besoin, en paramètres d'entrée, du nom de l'application MMS distante à associer et du numéro de l'emplacement du coupleur dans le rack. Les échanges ultérieurs entre le deux applications s'effectueront toujours via le canal qui aura été ouvert (jusqu'à sa fermeture). Les blocs chargés des échanges feront toujours référence à ce même canal, l'identification de ce dernier par une simple référence logique est donc suffisante. C'est l'OFB MCNCT qui attribue l'identificateur logique à l'association ; cette référence est rendue dans la donnée interne publique CHANNEL en fin d'exécution d'ouverture d'association. Pour des raisons de commodité à tous égards, la référence est égale au numéro d'instance de l'OFB. F Pour fermer l'association il faut utiliser la même instance de l'OFB. A noter, qu'entre l'ouverture et la fermeture d'une association, l'OFB MCNCT surveille un éventuel changement d'état de l'association provoqué par le distant (Abort) ou une défaillance du coupleur. En résumé, il faut retenir que: Le numéro logique d'une association sur l'application appelante est le numéro de l'instance de l'OFB MCNCT qui l'a ouverte. Un OFB MCNCT gère une seule association à la fois. __________________________________________________________________________________________ 3/4 Les OFBs de services MMS 3 __________________________________________________________________________________________ • 2ème cas : L'application est appelée : C'est dans ce cas le paramètre ACCEPT de l'OFB qui est utilisé pour récupérer la référence du canal de communication. Pour s'assurer de récupérer et associer le bon identificateur pour une association sollicitée par un distant, il est nécessaire de programmer les blocs MCNCT, en mode Accept de manière séquentielle. Le premier Accept doit être Ready avant de lancer l'exécution du deuxième et ainsi de suite pour être sûr que le premier reçoit bien la première association, le deuxième reçoit bien la deuxième association ouverte par le distant, etc... Remarque La mise à 1 de SY0 provoquant le reset des OFBs entraîne une incohérence entre l'état des associations surveillées par les OFBs et l'état réel dans le coupleur. Il faut donc fermer les associations en cours (conclude ou abort) avant SY0 = 1. Les variables MMS distantes et PL7-3 • Identification des variables MMS Les variables MMS sont désignés aux blocs fonctions par les symboles SDBASE ("Alias") qui leur sont associés (lors de la définition de ces variables au moyen de l'outil PL7-MMS). Ces symboles permettent aux OFBs qui utilisent des variables MMS distantes (les OFBs MREAD, MWRIT et MURCV) d'en retrouver la définition complète. Ceci n'est possible que si le fichier MMS.CST a été chargé dans PL7-3. En conséquence : Avant de programmer les OFBs MMS faire une initialisation des constantes de PL7-3 par une commande READ, dans l'environnement PL7-3, du fichier MMS.CST. • Le passage des valeurs des variables MMS distantes Les variables MMS peuvent être de type simple (boolean,integer16,...) et aussi des tableaux de types simples (voir tableau des types MMS ...). Les paramètres d'entrée des OFBs ne peuvent être que des types simples bit, mot et double-mot, à l'exclusion des types tableaux. Pour contourner le problème, les valeurs des variables MMS sont transmises aux OFBs selon le principe suivant : - une variable MMS distante est définie en entrée d'un OFB au moyen de trois paramètres d'entrée, l'un identifiant la variable, les 2 autres définissant la taille et l'adresse de la zone tampon où est déposée la valeur de la variable. Dans l'interface PL7-3/OFBs une variable MMS distante est désignée comme suit : __________________________________________________________________________________________ 3/5 F __________________________________________________________________________________________ Mxxx word VARi word SIZEi ptr_word DATAi avec VARi câblé avec l'identificateur de la variable (Alias SDBASE). SIZEi taille du buffer (réception) ou taille des données à écrire (émission). Exprimée en octets. DATAi adresse de début du buffer, toujours de type mot. En émission, cette zone tampon peut se situer dans l'espace des mots systèmes (SWi), des mots constants (CWi) et des mots internes (Wi). En réception (écriture) seul l'espace des mots internes (Wi) est permis. Dans tous les cas, les espaces des autres objets de type mot sont interdits (mots registres, mot communs, mots associés au Grafcet). i indice entier décimal compris entre 0 et 3 : Les OFBs du mode Client MREA et MWRIT manipulent jusqu'à 4 variables, à l'exception de MURCV qui ne peut être associé qu'à une seule variable. Correspondance des types PL7-3 <-> variables MMS distantes F Le tableau suivant montre les types MMS supportés et les correspondances établies avec les types PL7-3 . (Note : Les OFBs MREAD et MWRIT cités dans les exemples sont décrits dans les chapitres suivants). __________________________________________________________________________________________ 3/6 Les OFBs de services MMS 3 __________________________________________________________________________________________ Type MMS Correspondance PL7-3 Taille buffer Boolean Le bit de poids 0 extrait d'un mot Exemple: ! EXEC MREAD(;Serveur;Vbool;2;W0=>) ! W0,0->B0 2 Unsigned16 Integer16 Objets mots de PL7-3 Exemple: ! EXEC MREAD(;Serveur;Vint16;2;W0=>) ! W0->COM0,0 2 Unsigned32 Integer32 Objets mots double longueur Exemple: ! EXEC MWRIT(;Serveur;Vint32;4;CDW0=>) 4 BitStringN Array of Bits extraits de mots, avec la convention (*) : . Le premier bit de la chaîne est rangé dans le bit de poids 0 du premier mot, . Le deuxième dans le bit de poids 1 du premier mot, . Le bit i est rangé dans le bit de mot[j],k où i est numéro du bit, de 0 à N-1 j = i / 16 k = i mod 16 Exemple : ! B0->W0,0;B1->W0,1;B2->W0,2;B3->W0,3 ! EXEC MWRIT(;Serveur;Vbool4;2;W0=>) [(N-1)/16 +1]x2 avec N>0 OctetStringN Suite de mots, avec la convention : . Le premier octet de la chaîne est rangé dans l'octet de poids faible du premier mot, . Le deuxième octet de la chaîne est rangé dans l'octet de poids fort du premier mot, . L'octet i est rangé dans l'octet de poids 256^k du mot j, où i est le numéro de l'octet, de 0 à N-1 j =i/2 k = i mod 2 Exemples : ! <écriture d'un tableau de octets> ! < {0,1,2,3} -> Vtab(4)> ! H'0100'->W0;H'0302'->W1 ! EXEC MWRIT(;Serveur;Vtab4;4;W0=>) ! ! <écriture d'une chaîne de 5 carac.> ! <"ABCDE" -> Vstr(5)> ! M'AB'->W0;M'CD'->W1;M'E'->W2 ! EXEC MWRIT(;Serveur;Vstr4;6;W0=>) [(N-1)/2 +1]x2 avec N>0 ou N/2+ N mod 2 F __________________________________________________________________________________________ 3/7 __________________________________________________________________________________________ Type MMS Correspondance PL7-3 Taille buffer Array of BitString16 Suite de mots (convention de rangement de chaque élément identique à celle définie dans type BitStringN) Exemple: ! <Lecture d'un tableau de 8 éléments> ! EXEC MREAD(;Serveur;Vtab8;16;W0=>) Nb éléments x2 Array of Unsigned16 Array of Integer16 Suite de mots (convention de rangement de chaque élément à celle du type Integer16) Exemple: ! <Lecture d'un tableau de 3 éléments> ! EXEC MREAD(;Serveur;Vtab3;6;W0=>) Nb éléments x2 Array of Unsigned32 Array of Integer32 Suite de mots double longueur (convention de rangement de chaque élément identique à celle du type Integer32) Exemple: ! <Lecture d'un tableau de 3 éléments> ! EXEC MREAD(;Serveur;Vtab3;12;W0=>) Nb éléments x4 (*) Attention : l'ordre de rangement des listings dans les mots automate n'est pas normalisé. Dans le cas de dialogue avec des équipements tiers, il peut être nécéssaire de modifier l'ordre des bits par programme application de l'un ou l'autre des équipements pour assurer la cohérence. Les variables MMS locales et PL7-3 • Identification des variables MMS Les variables MMS locales, vues d'une application PL7-3, sont symbolisées par l'"Alias" SDBASE, tout comme les variables MMS distantes, mais à la différence de ces dernières, les symboles des variables locales sont associés à des objets PL7-3 de l'application locale ( bit, mot, double mot ou tableaux de ces éléments ). F • Le passage des valeurs de variables MMS locales Les variables MMS locales correspondant à trois types différents d'éléments en PL73, les OFBs sur lesquels sont câblées des variables MMS locales, actuellement l'OFB MUSND, comportent trois paramètres d'entrée possibles pour l'identificateur de la variable : un paramètre par type d'élément (bit, mot, mot double longueur) qui peut correspondre au type de la variable MMS. Naturellement, on ne peut câbler qu'une seule de ces 3 entrées pour désigner une variable. De plus, pour pouvoir définir un type tableau, une autre entrée est dédiée au nombre d'éléments de la variable. Dans l'interface PL7-3/OFBs une variable MMS locale est désignée comme suit : __________________________________________________________________________________________ 3/8 Les OFBs de services MMS 3 __________________________________________________________________________________________ MUSND ptr_bit VARi_B ptr_word VARi_W ptr_dword VARi_DW word SIZEi Avec VARi_B est câblé avec l'"Alias" SDBASE correspondant à la variable, lorsqu'elle correspond à un élément de type bit. VARi_W est câblé avec l'"Alias" SDBASE correspondant à la variable, lorsqu'elle correspond à un élément de type mot. VARi_DW est câblé avec l'"Alias" SDBASE correspondant à la variable, lorsqu'elle correspond à un élément de type mot double longueur. SIZEi taille de la donnée, exprimée en nombre d'éléments. Par défaut égal à 1. i entier décimal 0..3 : le bloc MUSND peut manipuler jusqu'à 4 variables à la fois. IMPORTANT: une seule des entrées VARi doit être câblée. F __________________________________________________________________________________________ 3/9 __________________________________________________________________________________________ Correspondance des types PL7-3 <-> variables MMS locales Objet PL7-3 Type MMS associée Entrée utilisée (VARi_x) Taille (SIZEi) Bits systèmes(SYn) Bits internes(Bn) BitString1 VARi_B Suite de N objets contigus de type Bit précédent Array of BitString1 VARi_B N Mots systèmes(SWn) Mots internes(Wn) Mots constants(CWn) BitString16 ou pas câblée VARi_W 1 Suite de N objets contigus d'un type mot précédent Array of BitString16 VARi_W N Double-mots internes(DWn) Double-mots constants(CDWn) BitString32 VARi_DW Suite de N objets contigus d'un type double-mot précédent Array of BitString32 VARi_DW 1 ou pas câblée 1 ou pas câblée N Restrictions Types d'objets PL7-3 ne pouvant pas être des variables MMS : • • • • • • • • F Bits E/S TOR (Ixy,n et Oxy,n) Bits associés au Grafcet (Xi; XMj; Xj,i et Xj,o) Bit défaut des coupleurs (Ixy,S et Oxy,S) Bits indexés Mots registre (IWxy,i) Mots communs (COMi,j et COMxi,j avec x=A,B,C ou D Mots associés au Grafcet (Xi,V; Xj,i,V; Xj,I,V et Xj,O,V) Mots indexés Important Il n'est pas possible de câbler une entrée de type pointeur sur bit ( VARi_B) avec un bit extrait de mot. __________________________________________________________________________________________ 3/10 Les OFBs de services MMS 3 __________________________________________________________________________________________ 3.3 OFB MCNCT : Gestion de l'association 3.3-1 Fonction Le bloc fonction MCNCT gère l'association entre l'application PL7-3 et une application distante. Il permet d'ouvrir la connexion (service MMS Initiate), d'identifier une association ouverte par une application distante (commande Accept), la fermer (service Conclude) ou bien de l'interrompre de façon impérative et urgente (service Abort). Enfin, il renseigne le programme PL7-3 de l'état de la connexion : ouverte ou fermée . La commande ACCEPT est nécessaire pour identifier une association ouverte par un équipement distant lorsque l'on souhaite exécuter un OFB sur cette association. Dans le cas où l'automate est uniquement serveur sur cette asociation il n'est pas nécessaire d'utiliser cette commande. 3.3-2 Interface PL7-3 MCNCT bit RESET bit word ERROR COMMAND ptr_dword APPLI word MODULE word F TIMEOUT INHIB bit READY bit STATUS word STATE word CHANNEL word IND word __________________________________________________________________________________________ 3/11 __________________________________________________________________________________________ Paramètres d'entrées Nom Type Droits Rôle RESET Bit R-RW Interruption exécution bloc (READY à 0. La connexion reste dans un état critique (STATE à -1) Attention : un RESET sur un bloc au repos (bit READY à 1) et signalant l'association ouverte (STATE à 0) amène l'association dans un état critique. C'est pourquoi : IL EST RECOMMANDE DE NE PAS UTILISER RESET DANS LE CAS OUREADY=1 ET STATE=0, même pour remettre les sorties à zéro. COMMAND Word R-R Nature du service à exécuter, selon valeur : 0 : Ouverture association (service Initiate) 1 : Identification association (Accept) 2 : Fermeture association (serv. Conclude) 3 : Fermeture immédiate assoc.(serv.Abort) APPLI Ptr_Word R-R Nom de l'application distante à atteindre Pointeur sur une zone dont le premier mot contient la taille (en octets) de la zone, les mots suivants contiennent les caractères composant le nom de l'association distante Pertinent pour services Initiate et Accept seulement. MODULE Word R-R Position du coupleur dans le rack principal (emplacement de 0 à 7) Pertinent pour services Initiate et Accept seulement TIMEOUT Word R-R Temps enveloppe d'attente d'une réponse de l' équipement distant. Exprimé en dizaines de millisecondes Ce temps sera pris en compte pour tous les services confirmés échangés par la suite. Valeurs autorisées : 0 À 32767 Valeur par défaut : 100. Valeur 0 : attente infinie, Cas particulier des reprises après Time Out, voir code ind. = / 1002, en annexe intercalaire F, Chapitre 5.2. F Paramètres de sorties Nom Type Droits Rôle ERROR Bit R-R Erreur d'exécution détectée par le bloc __________________________________________________________________________________________ 3/12 Les OFBs de services MMS 3 __________________________________________________________________________________________ Données internes publiques Nom Type Droits Rôle STATUS Word R-R Si ERROR est à 1. Identifie les erreurs d'exécution, chaque bit indique une erreur. Voir ci-dessous détail du status. READY Bit R-R Etat du bloc : READY=1 : bloc prêt à être exécuter READY=0 : bloc en traitement INHIB Bit RW-RW Inhibe la signalisation des erreurs : ERROR et STATUS restent toujours à 0, l'exécution du bloc n'est pas interrompue. CHANNEL Word R-R L'identificateur est le numéro de l'instance de l'OFB MCNCT gérant la connexion. Cette référence repère l'association dans les échan ges sur ce canal par la suite. Elle est à fournir en entrée des autres OFBs MMS. STATE Word R-R Etat de la connexion : 0 : association ouverte 1 : assoc. fermée suite à Conclude local 2 : assoc. fermée suite à Conclude distant 3 : assoc. fermée suite à Abort local -1 : association non existante IND Word R-R Indicateur d'erreur d'exécution d'un service MMS (signalée par les bits 8 à 11 de STATUS). Voir annexe F/5. Interface APPLIDIAG : détail du STATUS Bit Signification Action corrective Bit 0 Commande inconnue Le code de COMMAND est différent de 0,1,2 ou 3 Le code de COMMAND est différent de 0,1,2 ou 3 Bit 1 Erreur lecture nom application. Une erreur s'est produite lors de la lecture du nom de l'application (taille supérieure à 32 caractères, erreur d'accès ou de câblage du paramètre. Vérifier le paramètre APPLI Bit 2 Association déjà ouverte. Une association avec une application portant le même nom que celui passé dans APPLI est déjà ouverte sous le même numéro de canal (numéro d'instance du bloc). Aucune action correctrice n'est nécessaire (surtout pas un RESET du bloc) ; les échanges peuvent continuer __________________________________________________________________________________________ 3/13 F __________________________________________________________________________________________ Interface APPLIDIAG : détail du STATUS (suite) Bit Signification Action corrective Bit 3 Numéro d'association déjà utilisé. Le numéro de canal (numéro d'instance du bloc) identifie déjà une association entre l'automate et une application distante dont le nom est différent de celui passé dans APPLI. Fermer l'association précédente par un service Conclude ou Abort Bit 4 Association déjà fermée. Une tentative de fermeture (services Conclude ou bort) est faite avec un numéro d'instance (numéro de canal) qui n'est plus attribué. Effectuer une remise à zéro des sorties du bloc (RESET) Bit 5 Association à identifier non existante. Une identification ( commande Accept) est tentée sur une connexion qui n'a pas été ouverte par une application distante. Vérifier le nom d'application fourni (paramètre APPLI) Bit 7 Surveillance Association Interrompue par Reset. Erreur MMS détectée par le coupleur (bit 8) local Erreur MMS détectée par le distant (bit 9) Consulter les deux bits suivants pour connaître le type d'erreur Erreur pendant l'exécution du service MMS (bit 10) Service MMS rejeté (bit 11) Analyser le paramètre IND pour déterminer la cause de l'erreur Bit 12 Erreur accès coupleur Le coupleur est absent, débroché, en défaut ou bien n'est pas du type attendu (coupleur ETH200) Vérifier le coupleur et/ou le numéro d'emplacement dans le rack fourni à l'OFB (paramètre d'entrée MODULE). Bit 13 Erreur de communication. L'échange a échoué pour l'une ou l'autre des raisons suivantes : 1. La réponse à une requête n'est pas intervenue dans le temps enve loppe. La tâche MAST de l'automate est trop chargée. 2. Le coupleur a rejeté la requête parce qu'il était en cours de configuration ou bien parce qu'il n'est pas chargé avec une configuration MMS Client. Augmenter le temps de cycle de la tâche MAST ou réduire la charge de l'automate ( dans le cas 1). Vérifier la configuration coupleur ( dans le cas 2) Bit 14 Traitement interrompu. Le bloc fonction a été interrompu pendant son exécution par la mise à 1 de son entrée RESET, par SY0 console, défaut logiciel ou coupure secteur. Erreur système. Le bloc fonction manque de ressources systèmes pour s'exécuter. Diminuer le nombre de blocs fonctions configurés (toutes familles confon dues). Bit 8 Bit 9 Bit 10 Bit 11 F Bit 15 __________________________________________________________________________________________ 3/14 Les OFBs de services MMS 3 __________________________________________________________________________________________ 3.3-3 Utilisation de l'OFB MCNCT Pour mettre en oeuvre le bloc MCNCT, il est nécessaire de réaliser les étapes suivantes : 1 Configurer le coupleur avec l'outil PL7-OSI. 2 Définir les symboles SDBASE locaux à l'application qui permettront le câblage symbolique des entrées de l'OFB. L'utilisation des données symboliques améliore la lisibilité et la portabilité des applications. 3 Configurer et programmer l'OFB avec l'outil PL7-3. Prévoir le nombre d'instances en tenant compte du fait qu'une instance de MCNCT ne gère qu'une association à la fois et que le numéro d'instance sert d'identificateur logique (Numéro de CHANNEL) à l'association ( canal de communication entre l'application locale et une application distante). Tous les OFBs Client ou Serveur échangeant sur ce canal, utilisent en paramètre d'entrée ce Numéro de CHANNEL. Initialiser les constantes associées aux identificateurs MMS distants en exécutant une commande READ de PL7-3 du fichier MMS.CST. La programmation du bloc MCNCT est détaillée dans le paragraphe suivant. 3.3-4 Programmation de l'OFB MCNCT a. Ouverture d'une association Cette fonction utilise le service MMS Initiate. La connexion est ouverte en exécutant le bloc MCNCT avec l'entrée COMMAND positionnée à 0. Les autres entrées à câbler sont : APPLI (nom de l'application avec laquelle ouvrir l'association), MODULE (numéro de l'emplacement occupé par le coupleur de communication) TIMEOUT (temps enveloppe) Résultat de l'exécution • Association ouverte ERROR = 0, CHANNEL = N° de l'association (= n° instance de l'OFB) STATE = 0 __________________________________________________________________________________________ 3/15 F __________________________________________________________________________________________ • Echec de l'ouverture ERROR = 1, STATUS donne la raison de l'échec, STATE donne l'état de la connexion. Note Une tentative d'ouverture d'association déjà ouverte échoue toujours (ERROR = 1). Si la valeur de APPLI, lors de la deuxième tentative, est identique à celle de la première, les échanges restent autorisés sur le canal. Dans le cas contraire, tout se passe comme si une demande de fermeture de la première connexion n'avait pas été faite : les échanges sont interdits ; avant de pouvoir réutiliser le canal il faudra fermer l'association (services Conclude ou Abort) et ouvrir. Exemple de programmation The READY bit ! IF NOT B0.MCNCT0,READY THEN EXEC MCNCT0(;Initiate;CplMap;ORDO_APP;200=> ...); SET B0 ! ! <Attente> ! IF NOT MCNCT0,READY THEN JUMP L500 ! IF MCNCT0,ERROR THEN JUMP L999 ! ! <L'association est ouverte. Elle sera identifiée jusqu'à sa fermeture> ! <par ORDO.> ! IF [MCNCT0, STATE=0] THEN MCNCT0,CHANNEL->ORDO ! ! <Suite du programme...> Données utilisées F Symbole Variable Valeur Initiate Accept Conclude Abort CplMap Ordo Ordo_app CW0 CW1 CW2 CW3 CW10 W10 CW11 CW12 0 1 2 3 4 ? 4 M’ORDO’ __________________________________________________________________________________________ 3/16 Les OFBs de services MMS 3 __________________________________________________________________________________________ b. Identification d'une association ouverte par une application distante La commande Accept (non MMS) est utilisée pour identifier dans l'application locale une association ouverte par une application distante. La connexion est ouverte en exécutant le bloc MCNCT avec l'entrée COMMAND positionnée à 1. Les autres entrées à câbler sont : APPLI (nom de l'application avec laquelle ouvrir l'association), MODULE (numéro de l'emplacement occupé par le coupleur de communication) TIMEOUT (temps enveloppe) Résultat de l'exécution : • Association identifiée : ERROR = 0, CHANNEL = N° de l'association (= n° instance de l'OFB) STATE = 0 • Echec de l'identification: ERROR = 1, STATUS donne la raison de l'échec, STATE donne l'état de la connexion. Note Une tentative d'identification d'association déjà identifiée échoue toujours (ERROR = 1) sauf si la valeur de APPLI, lors de la deuxième tentative, est identique à celle de la première, auquel cas les échanges restent autorisés sur le canal. Dans le cas contraire, tout se passe comme si une demande de fermeture de la première connexion n'avait pas été faite : les échanges sont interdits; avant de pouvoir réutiliser le canal il faudra fermer l'association (services Conclude ou Abort) et identifier. Exemple de programmation ! IF NOT B0.MCNCT2,READY THEN EXEC MCNCT2(;Accept;CplMap;SUPER_APP;200=> ...); SET B0 ! ! <Attente> ! IF NOT MCNCT2,READY THEN JUMP L500 ! IF MCNCT2,ERROR THEN JUMP L999 ! ! <L'association est identifiée. Elle sera identifiée jusqu'à sa > ! <fermeture par SUPERVI.> ! IF [MCNCT2, STATE=0] THEN MCNCT2,CHANNEL->SUPER ! ! <Suite du programme...> __________________________________________________________________________________________ 3/17 F __________________________________________________________________________________________ Données utilisées Symbole Variable Valeur Initiate Accept Conclude CplMap Super Super_ap CW0 CW1 CW2 CW10 W20 CW20 CW21 0 1 2 4 N° de canal. = 2 11 M’SUPERVISOR’ c. Fermeture d'une association Cette fonction utilise le service MMS Conclude. La connexion est fermée en exécutant le bloc MCNCT avec l'entrée COMMAND positionnée à 2. Les autres entrées sont ignorées. Résultat de l'exécution : • Association fermée ERROR = 0 STATE = 1 • Echec de la fermeture ERROR = 1, STATUS donne la raison de l'échec, STATE donne l'état de la connexion. Les raisons d'un échec sont, généralement : - des services sont en cours de traitement sur cette association - l'association est déjà fermée F Notes • En cas de refus de fermeture d'une association ouverte, les échanges restent autorisés, bien que ERROR et STATUS signalent une erreur. • L'exécution d'une fermeture n'est pas immédiate : le service Conclude s'exécute sur plusieurs cycles. Dans le laps de temps entre la demande et la fermeture effective, la réception de données (sollicitées ou non) est autorisée pour terminer les requêtes en cours. Les nouvelles demandes de service (en écriture comme en lecture) sont refusées. Si une requête d'écriture est en cours au moment de la demande, c'est celle-ci qui sera rejetée. La donnée STATE change d'état à la confirmation de l'exécution du service Conclude. __________________________________________________________________________________________ 3/18 Les OFBs de services MMS 3 __________________________________________________________________________________________ Exemple de programmation Fermeture de la connexion 0. ! IF NOT B1.MCNCT0,READY THEN EXEC MCNCT0(;Conclude;;;=> );SET B1 ! ! <Attente> ! IF NOT MCNCT0,READY THEN JUMP L500 ! IF MCNCT0,ERROR THEN JUMP L999 ! ! <L'association est fermée.> ! IF [MCNCT2,STATE=0] THEN MCNCT2,CHANNEL->SUPER ! ! <Suite du programme...> Données utilisées : voir exemple page 3/16 d. Coupure d'urgence de l'association Cette fonction utilise le service MMS Abort. La connexion est fermée en exécutant le bloc MCNCT avec l'entrée COMMAND positionnée à 3. Les autres entrées sont ignorées. Résultat de l'exécution : • Association fermée ERROR = 0 STATE = 2 • Echec de la fermeture ERROR = 1, STATUS donne la raison de l'échec, STATE donne l'état de la connexion. Un service Abort n'est refusé que si l'association est déjà fermée. F Note Bien que le traitement du service s'exécute sur plusieurs cycles, la fermeture prend un caractère d'urgence : dès le début du traitement, les échanges (lecture ou écriture) en cours sont annulés et les nouvelles demandes sont rejetées. __________________________________________________________________________________________ 3/19 __________________________________________________________________________________________ Exemple de programmation Arrêt de la connexion 0. ! IF NOT B2.MCNCT0,READY THEN EXEC MCNCT0(;Abort;;;=> ); SET B2 ! ! <Attente> ! IF NOT MCNCT0,READY THEN JUMP L500 ! IF MCNCT0,ERROR THEN JUMP L999 ! ! <L'association est fermée.> Données utilisées : voir exemple page 3/16 e. Fonction de surveillance Cette fonction ne se programme pas : elle est implicite dès lors que le bloc fonction a été exécuté pour ouvrir ou identifier une association et tant que l'association est ouverte. L'OFB surveille l'état du coupleur et de l'association. Les événements détectés sont : • Coupleur débroché ou hors service. • Association fermée par l'équipement distant. Sur apparition d'un de ces événements ERROR passe à 1, STATUS donnera la cause et STATE donnera l'état de l'association. Note Pendant la surveillance, le bit MCNCTi,READY est à 1 ; ce qui laisse le bloc accessible pour exécuter les services Conclude ou Abort. F Remarque Lorsqu'une action RESET sur un bloc MCNCT est effectuée pendant la surveillance d'une association, l'association passe dans un état critique (STATE à -1) et toutes les transactions en cours sur cette association sont perdues. __________________________________________________________________________________________ 3/20 Les OFBs de services MMS 3 F A __________________________________________________________________________________________ 3.4 OFB MREAD : Lectures de variables MMS Client 3.4-1 Fonction Le bloc fonction MREAD assure le service MMS_READ ; il permet de lire de 1 à 4 variables dans une application distante. Les variables sont des variables MMS Client définies avec l'outil PL7-MMS. Au niveau de l'OFB les variables sont identifiées par leur symbole SDBASE ("Alias"). 3.4-2 Interface PL7-3 MREAD bit RESET bit word ERROR CHANNEL word VAR0…3 word SIZE0…3 ptr_word DATA0…3 word RC0…3 word INHIB word bit READY ptr_word DATA3 bit STATUS word RC0…3 word IND word F __________________________________________________________________________________________ 3/21 __________________________________________________________________________________________ Paramètres d'entrées Nom Type Droits Rôle RESET Bit R-RW Interruption d'exécution du bloc ou remise à zéro de STATUS CHANNEL Word R-R Numéro de l'association (canal de communication) via laquelle émettre la requête. VAR0..VAR3 Word R-R "Alias" SDBASE des variables à lire SIZE0..SIZE3 Word R-R Taille, en nombre d'octets des tampons de réception. R-R Pointeur sur les tampons de réception. DATA0..DATA3 Ptr_Word Paramètres de sorties Nom Type Droits Rôle ERROR Bit R-R Erreur d'exécution détectée par le bloc Données internes publiques F Nom Type Droits Rôle STATUS Word R-R Si ERROR est à 1, identifie les erreurs d'exécution. Chaque bit du mot positionné à 1 indique une erreur. Voir "Interface APPLIDIAG" READY Bit R-R A la valeur 1 : le bloc est prêt à être utilisé à 0 : un traitement est en cours. INHIB Bit RW-RW Inhibe la signalisation des erreurs : ERROR et STATUS restent toujours à 0, l'exécution du bloc n'est pas interrompue. RC0...RC3 Word R-R Longueur des données si la lecture s'est bien passée. Sinon, cause de l'erreur. IND Word R-R Indication d'erreur d'exécution d'un service MMS (signalée par bits 8 à 11 de STATUS). voir annexe F/5. __________________________________________________________________________________________ 3/22 Les OFBs de services MMS 3 F A __________________________________________________________________________________________ Signification des données RCi sur une erreur Valeur >=0 Signification Pas d'erreur -1 L'entrée VARi n'est pas câblée -2 Vari est câblée et une des entrées SIZEi ou DATAi correspondantes n'est pas câblée -3 Accès à une zone non configurée -4 Accès à un segment protégé en écriture (CW, SW,...) -5 Le tampon de réception associé à VARi provoque un chevauchement -6 Le tampon de réception associé à VARi est trop petit -7 Entrée VARi non définie -8 Le type de VARi est incompatible avec sa définition dans l'espace fonction -100 Object invalited -101 Hardware-fault -102 Temporarily-unavailable -103 Object-access-denied -104 Object-undefined -105 Invalid-address -106 Type-unsupported -107 Type-inconsistent -108 Object-Attribute-inconsistent -109 Object-access-unsupported -110 Object-non-existent F __________________________________________________________________________________________ 3/23 __________________________________________________________________________________________ Interface APPLIDIAG : détail du STATUS F Bit Signification Action corrective Bit 0 L'association n'est pas ouverte ou est en cours de fermeture. L'association sollicitée n'est pas disponible pour les échanges Vérifier le paramètre CHANNEL ou l'état de l'association (variables MCNCTi,STATE et MCNCTi,STATUS, i: numéro de l'assoc.) Bit 1 Erreur accès espace fonction MMS L'es- Configurer et/ou charger un espace pace fonction PL7-MMS n'est pas MMS configuré ou pas chargé Bit 2 Erreur accès description variable. Erreur à la lecture de la description des variables (descripteur non valide, variable non définie,..). Les données RCi indiquent le paramètre d'entrée en cause. Vérifier les paramètres d'entrée VARi et/ou la définition des variables avec PL7-MMS. S'assurer du chargement du fichier des constantes (MMS.CST) Bit 3 Erreur accès données Accès protégé Vérifier les paramètres DATAi ou interdit, câblage, dépassement de capacité...Les données RCi indiquent le paramètre cause de l'erreur Bit 4 Accès refusé par le serveur. Erreur d'accès aux variables MMS (variable non définie, accès protégé,...). Les données RCi i indiquent la (ou les) variable(s) cause de l'erreur. Bit 5 Erreur d'allocation. Il n'y a plus de place Diminuer la tailles des variables à lire ou dans l'espace PL7-MMS pour effectuer diminuer le nombre des OFBs de l'application pouvant effectuer des allocaune allocation mémoire. tions dynamiques dans l'espace fonction PL7-MMS. Bit 6 Requête trop grande. La ou les varia- Diminuer soit le nombre de variables à bles demandées en lectur entraînent lire en une requête, soit la taille des une requête de taille supérieure à 4096 informations à lire. octets. Bit 8 Erreur MMS détectée par le coupleur Consulter les deux bits suivants pour connaître le type d'erreur (bit 8) Erreur MMS détectée par le distant (bit 9) Bit 9 Bit 10 Bit 11 Bit 12 Vérifier les paramètres VARi et DATAi. Vérifier la définition des variables avec PL7-MMS (cohérence avec leur définition par la station distante) Erreur pendant l'exécution du service Analyser le paramètre IND pour déterMMS (bit 10) miner la cause de l'erreur Service MMS rejeté (bit 11) Erreur accès coupleur. Le coupleur est Vérifier le coupleur et/ou le numéro absent, débroché, en défaut ou bien d'emplacement dans le rack fourni à n'est pas du type attendu (coupleur l'OFB (paramètre d'entrée MODULE). ETH200) __________________________________________________________________________________________ 3/24 Les OFBs de services MMS 3 F A __________________________________________________________________________________________ Bit Signification Action corrective Bit 13 Erreur de communication. L'échange a échoué pour l'une ou l'autre des raisons suivantes : 1. La réponse à une requête n'est pas intervenue dans le temps enveloppe. La tâche MAST de l'automate est trop chargée. 2. Le coupleur a rejeté la requête parce qu'il était en cours de configuration ou bien parce qu'il n'est pas chargé avec une configuration MMS Client. Augmenter le temps de cycle de la tâche MAST ou réduire la charge de l'automate ( dans le cas 1). Vérifier la configuration coupleur ( dans le cas 2) Bit 14 Traitement interrompu. Le bloc fonc- Diminuer le nombre de blocs fonctions tion a été interrompu pendant son exé- configurés (toutes familles confondues). cution par la mise à 1 de son entrée RESET, par SY0 console, défaut logiciel ou coupure secteur. Erreur système. Le bloc fonction manque de ressources systèmes pour s'exécuter. Bit 15 F __________________________________________________________________________________________ 3/25 __________________________________________________________________________________________ 3.4-3 Utilisation de l'OFB MREAD Pour exécuter le bloc fonction MREAD, il faut avoir, au préalable, ouvert (ou identifié) une association avec l'application distante, en exécutant une instance de l'OFB MCNCT. 3.4-4 Programmation de l'OFB MREAD L'OFB MREAD exécute une lecture de 1 à 4 variables MMS Client dans une application distante. Cela suppose : • que l'application locale "connaisse" ces variables, c'est à dire qu'elles aient été définies, pour la station, avec l'outil PL7-MMS ; • qu'un canal de communication soit ouvert avec l'application distante, c'est à dire qu'un OFB MCNCT ait au préalable exécuté une ouverture d'association (service Initiate) ou identifié une association ouverte par le distant (service Accept). L'identification de chacune des variables MMS est passée à l'OFB MREAD par l'intermédiaire du symbole SDBASE ("Alias") qui la lie au symbole MMS (voir chapitre PL7-MMS et paragraphe "3.4 Programmation des OFBs MMS" du présent chapitre). L'"Alias" est câblé sur le paramètre d'entrée VARi. Chacune des valeurs des variables à lire est déposée dans une zone de réception (tampon de réception) qui est définie pour l'OFB par les paramètres d'entrée : • DATAi : adresse du premier mot du buffer de réception, • SIZEi : taille, en nombre d'octets, du buffer de réception. (Les paramètres DATAi et SIZEi correspondent au paramètre VARi avec i compris entre 0 et 3). F Le numéro de l'association sur laquelle effectuer la requête est câblée sur le paramètre CHANNEL. Résultat de l'exécution Lectures correctement exécutées : ERROR = 0; RC0..RC3 précisent par leur valeur la taille, en nombre d'octets, des données reçues. Echec de la lecture : ERROR=1 ; RC0..RC3 précisent la raison de l'échec. __________________________________________________________________________________________ 3/26 Les OFBs de services MMS 3 F A __________________________________________________________________________________________ Exemple de programmation Lecture de deux variables : l'entier “NB-STATION” et une table de trois octets “LIST-STATIONS”. Ces variables sont identifiées par les symboles STATION et STATIONS. La première variable est sauvegardée dans W0 (2 octets). La seconde à partir de W1 (4 octets). L'échange utilise l'association 1. ! IF NOT B1.MREAD0,READY.[MCNCT1,STATE=0] THEN EXEC MREAD0(;1;STATION;2;NB_ST;STATIONS; 4;;LST_ST;;;;;;=>);SET B1 ! ! <Attente> ! IF NOT MCNCT0,READY THEN JUMP L500 ! IF MCNCT0,ERROR THEN JUMP L999 ! ! <Les deux variables sont lues.> ! <W0 contient la valeur de “NB-STATIONS”; ! <W1 contient les deux premiers octets de “LIST_STATIONS”; ! <L'octet de poids faible de W2 contient le troisième octet.> ! ! <Suite du programme...> Données utilisées Symbole Variable Valeur Nb_st Lst_st Remote Station Stations W0 W1 W10 CW100 CW101 ? ? 1 (N° de canal = 1) Provient de PL7-MMS Provient de PL7-MMS F __________________________________________________________________________________________ 3/27 __________________________________________________________________________________________ 3.5 OFB MWRIT : Ecritures de variables MMS Client 3.5-1 Fonction Le bloc fonction MWRIT assure le service MMS-WRITE ; il permet d'écrire de 1 à 4 variables dans une application distante. Les variables sont des variables MMS Client définies avec l'outil PL7-MMS. Au niveau de l'OFB les variables sont identifiées par leur symbole SDBASE ("Alias"). 3.5-2 Interface PL7-3 MWRIT bit RESET bit word ERROR CHANNEL word VAR0…3 word SIZE0…3 ptr_word DATA0…3 word word ptr_word F INHIB bit READY bit STATUS word RC0 word RC3 word IND word __________________________________________________________________________________________ 3/28 Les OFBs de services MMS 3 F A __________________________________________________________________________________________ Paramètres d'entrées Nom Type Droits Rôle RESET Bit R-RW Interruption d'exécution du bloc ou remise à zéro de STATUS CHANNEL Word R-R Numéro de l'association (canal de communi cation) via laquelle émettre la requête. VAR0 .. VAR3 Word R-R "Alias" SDBASE des variables à écrire SIZE0..SIZE3 Word R-R Taille, en nombre d'octets des données à émettre (facultatif: si le paramètre n'est pas câblé, c'est la taille exacte de la variable qui est utilisée ; cablée cette entrée permet un contrôle supplémentaire) R-R Pointeur sur les buffers de transition. DATA0..DATA3 Ptr_Word Paramètres de sorties Nom Type Droits Rôle ERROR Bit R-R Erreur d'exécution détectée par le bloc Données internes publiques Nom Type Droits Rôle STATUS Word R-R Si ERROR est à 1, identifie les erreurs d'exécution. Chaque bit du mot positionné à 1 indique une erreur. Voir "Interface APPLIDIAG". READY Bit R-R A la valeur 1: le bloc est prêt à être utilisé ; à 0: un traitement est en cours. INHIB Bit RW-RW Inhibe la signalisation des erreurs : ERROR et STATUS restent toujours à zéro, l'exécution du bloc n'est pas interrompue RC0...RC3 Word R-R Cause de l'échec d'écriture si une erreur s'est produite. Vaut 0 sinon. IND Word R-R Indication d'erreur d'exécution d'un service MMS (signalée par bits 8 à 11 de STATUS). (voir annexe F/5) __________________________________________________________________________________________ 3/29 F __________________________________________________________________________________________ Signification des données RCi sur une erreur Valeur F Signification >=0 Pas d'erreur -1 L'entrée VARi n'est pas câblée -2 Vari est câblée et une des entrées SIZEi ou DATAi correspondantes n'est pas câblée -3 Accès à une zone non configurée -4 Accès à un segment protégé en écriture (CW, SW,...) -5 Le tampon de réception associé à VARi provoque un chevauchement -6 Le tampon de réception associé à VARi est trop petit -7 Entrée VARi non définie -8 Le type de VARi est incompatible avec sa définition dans l'espace fonction -100 Object invalited -101 Hardware-fault -102 Temporarily-unavailable -103 Object-access-denied -104 Object-undefined -105 Invalid-address -106 Type-unsupported -107 Type-inconsistent -108 Object-Attribute-inconsistent -109 Object-access-unsupported -110 Object-non-existent __________________________________________________________________________________________ 3/30 Les OFBs de services MMS 3 F A __________________________________________________________________________________________ Interface APPLIDIAG : Détail du STATUS Bit Signification Action corrective Bit 0 L'association n'est pas ouverte ou est en cours de fermeture. L'association sollicitée n'est pas disponible pour les échanges Vérifier le paramètre CHANNEL ou l'état de l'association (variables MCNCTi,STATE et MCNCTi,STATUS, i: numéro de l'assoc.) Bit 1 Erreur accès espace fonction MMS. L'espace fonction PL7-MMS n'est pas configuré ou pas chargé Configurer et/ou charger un espace MMS Bit 2 Erreur accès description variable. Erreur à la lecture de la description des variables (descripteur non valide, variable non définie,..). Les données RCi indique le paramètre d'entrée en cause. Vérifier las paramètres d'entrée VARi et/ou la définition des variable avec PL7-MMS. S'assurer du chargement du fichier des constantes (MMS.CST) Bit 3 Erreur accès données. Accès protégé ou interdit, câblage, dépassement de capacité... Les données RCi indiquent le paramètre cause de l'erreur Vérifier les paramètres DATAi Bit 4 Accès refusé par le serveur. Erreur d'accès aux variables MMS (variable non définie, accès protégée,...). Les données RCi indiquent la (ou les) variable(s) cause de l'erreur. Vérifier les paramètres VARi et DATAi. Vérifier la définition des variables avec PL7-MMS (cohérence avec leur définition par la station distante). Bit 5 Erreur d'allocation. Il n'y a plus de place dans l'espace PL7-MMS pour effectuer une allocation mémoire. Diminuer la tailles des variables à lire ou diminuer le nombre des OFBs de l'application pouvant effectuer des allocations dynamiques dans l'espace fonction PL7-MMS. Bit 8 Erreur MMS détectée par le coupleur (bit 8) Erreur MMS détectée par le distant (bit 9) Consulter les deux bits suivants pour connaître le type d'erreur Bit 10 Erreur pendant l'exécution du service MMS (bit 10) Bit 11 Service MMS rejeté (bit 11) Analyser le paramètre IND pour déterminer la cause de l'erreur Bit 13 Erreur de communication. L'échange a échoué pour l'une ou l'autre des raisons suivantes : 1. La réponse à une requête n'est pas intervenue dans le temps enveloppe. La tâche MAST de l'automate est trop chargée. 2. Le coupleur a rejeté la requête parce qu'il était en cours de configuration ou bien parce qu'il n'est pas chargé avec une configuration MMS Client. Augmenter le temps de cycle de la tâche MAST ou réduire la charge de l'automate (dans le cas 1). Vérifier la configuration coupleur (dans le cas 2) Bit 9 __________________________________________________________________________________________ 3/31 F __________________________________________________________________________________________ Interface APPLIDIAG : Détail du STATUS (suite) Bit Signification Action corrective Bit 14 Traitement interrompu. Le bloc fonction a été interrompu pendant son exécution par la mise à 1 de son entrée RESET, par SY0 console, défaut logiciel ou coupure secteur. Erreur système. Le bloc fonction manque de ressources systèmes pour s'exécuter. Diminuer le nombre de blocs fonctions configurés (toutes familles confondues). Bit 15 3.5-3 Utilisation de l'OFB MWRIT Pour exécuter le bloc fonction MWRIT, il faut avoir, au préalable, ouvert (ou identifié) une association avec l'application distante, en exécutant une instance de l'OFB MCNCT. 3.5-4 Programmation de l'OFB MWRIT L'OFB MWRIT exécute une écriture de 1 à 4 variables MMS Client dans une application distante. Cela suppose : • que l'application locale "connaisse" ces variables, c'est à dire qu'elles aient été définies, pour la station, avec l'outil PL7-MMS ; F • qu'un canal de communication soit ouvert avec l'application distante, c'est à dire qu'un OFB MCNCT ait au préalable exécuté une ouverture d'association (service Initiate) ou identifié une association ouverte par le distant (service Accept). L'identification de chacune des variables MMS est passée à l'OFB MWRIT par l'intermédiaire du symbole SDBASE ("Alias") qui la lie au symbole MMS (voir chapitre PL7-MMS et paragraphe "3.4 Programmation des OFBs MMS" du présent chapitre). L'"Alias" est câblé sur le paramètre d'entrée VARi. __________________________________________________________________________________________ 3/32 Les OFBs de services MMS 3 F A __________________________________________________________________________________________ Chacune des valeurs à écrire est déposée dans un buffer de transition qui est définie pour l'OFB par les paramètres d'entrée : • DATAi : adresse du premier mot du buffer de transition, • SIZEi : taille, en nombre d'octets, du tampon de transition, cette entrée peut ne pas être cablée. Si elle l'est, l'OFB effectuera un contrôle de cohérence avec la taille du type de la variable MMS définie avec PL7-MMS. (Les paramètres DATAi et SIZEi correspondent au paramètre VARi avec i compris entre 0 et 3). Le numéro de l'association sur laquelle effectuer la requête est câblé sur le paramètre CHANNEL. Résultat de l'exécution Ecritures correctement exécutées: ERROR = 0; RC0..RC3 sont à 0. Echec de l'écriture : ERROR=1; RC0..RC3 précisent la raison de l'échec. Exemple de programmation Ecrire la variable “ASM-FINI” à 1. Cette variable, de type booléen, est identifiée par le symbole ASM_FIN. Le buffer d'émission (les champs sont toujours de type mot) est W100. L'échange est effectué par l'association 0. ! IF NOT B1.MWRIT0,READY.[MCNCTO,STATE=0] THEN SET AUX,0; THEN EXEC MWRIT0(;0;ASM_FIN;1; AUX;;;;;;;;;=>); SET B1 ! ! <Attente> ! IF NOT MWRIT0,READY THEN JUMP L500 ! IF MWRIT0,ERROR THEN JUMP L999 ! ! <La variable “ASM_FIN” est mise à 1.> ! ! <Suite du programme...> F Données utilisées Symbole Variable Valeur Aux Asm_fini W100 CW102 1 (après SET AUX, 0_ Attribuée par PL7-MMS __________________________________________________________________________________________ 3/33 __________________________________________________________________________________________ 3.6 OFB MURCV : Données non sollicitées (mode Client) 3.6-1 Fonction Le bloc fonction MURCV assure le service MMS : INFORMATION-REPORT ; il permet, à une application Client, de recevoir des données non sollicitées émises à l'initiative d'une application distante Serveur. L'application se positionne en attente avec l'OFB MURCV. Les variables sont des variables MMS Client définies avec l'outil PL7-MMS. Au niveau de l'OFB les variables sont identifiées par leur symbole SDBASE ("Alias"). 3.6-2 Interface PL7-3 MURCV bit RESET bit word ERROR CHANNEL word VAR word SIZE ptr_word BUFFER INHIB bit READY bit STATUS word RC word IND word F __________________________________________________________________________________________ 3/34 Les OFBs de services MMS 3 F A __________________________________________________________________________________________ Paramètres d'entrées Nom Type Droits Rôle RESET Bit R-RW Interruption d'exécution du bloc ou remise à zéro de STATUS CHANNEL Word R-R Numéro de l'association (canal de communication) sur laquelle attendre la donnée. VAR Word R-R "Alias" SDBASE de la variable à lire SIZE Word R-R Taille, en nombre d'octets de la zone de réception. BUFFER Ptr_Word R-R Pointeur sur la zone de réception. Paramètres de sorties Nom Type Droits Rôle ERROR Bit R-R Erreur d'exécution détectée par le bloc Données internes publiques Nom Type Droits Rôle STATUS Word R-R Si ERROR est à 1, identifie les erreurs d'exécu tion. Chaque bit du mot positionné à 1 indique une erreur. Voir "Interface APPLIDIAG" READY Bit R-R A la valeur 1: le bloc est prêt à être utilisé ; à 0 : un traitement est en cours. INHIB Bit RW-RW Inhibe la signalisation des erreurs : ERROR et STATUS restent toujours à zéro, l'exécution du bloc n'est pas interrompue. RC Word R-R Longueur des données reçues. Cause de l'er reur s'il y a lieu (RC <0) IND Word R-R Indication d'erreur d'exécution d'un service MMS (signalée par bits 8 à 11 de STATUS). Voir annexe F/5. __________________________________________________________________________________________ 3/35 F __________________________________________________________________________________________ Signification de la donnée RC sur une erreur Sur l'apparition d'un défaut lié à la description des variables MMS, à l'accès aux données ou bien à un refus d'accès de la part du serveur, signalé respectivement par les bits 2,3 et 4, la donnée RC précise la cause de l'erreur. Valeur >=0 F Signification Pas d'erreur -1 L'entrée VARi n'est pas câblée -2 Vari est câblée et une des entrées SIZEi ou DATAi correspondantes n'est pas câblée -3 Accès à une zone non configurée -4 Accès à un segment protégé en écriture (CW, SW,...) -5 Le tampon de réception associé à VARi provoque un chevauchement -6 Le tampon de réception associé à VARi est trop petit -7 Entrée VARi non définie -8 Le type de VARi est incompatible avec sa définition dans l'espace fonction -100 Object invalited -101 Hardware-fault -102 Temporarily-unavailable -103 Object-access-denied -104 Object-undefined -105 Invalid-address -106 Type-unsupported -107 Type-inconsistent -108 Object-Attribute-inconsistent -109 Object-access-unsupported -110 Object-non-existent __________________________________________________________________________________________ 3/36 Les OFBs de services MMS 3 F A __________________________________________________________________________________________ Interface APPLIDIAG: détail du STATUS Bit Signification Action corrective Bit 0 L'association n'est pas ouverte ou est en cours de fermeture. L'association utilisée n'est pas disponible pour les échanges. Vérifier le paramètre CHANNEL ou l'état de l'association (variables MCNCTi,STATE et MCNCTi,STATUS, i: numéro de l'assoc.). Bit 1 Erreur accès espace fonction MMS. L'espace fonction PL7-MMS n'est pas configuré ou pas chargé. Configurer et/ou charger un espace MMS Bit 2 Erreur accès description variable. Erreur à la lecture de la description de la variable (descripteur non valide, variable non définie,..). Vérifier le paramètre d'entrée VAR et/ ou la définition des variables avec PL7MMS. S'assurer du chargement du fichier des constantes (MMS.CST). Bit 3 Erreur accès données. Accès protégé ou interdit, câblage, dépassement de capacité... Vérifier le paramètre BUFFER . Bit 4 Accès refusé par le serveur. Erreur d'accès aux variables MMS (Variable non définie, accès protégée,...). Vérifier les paramètres VAR et BUFFER. Vérifier la définition des variables avec PL7-MMS (cohérence avec leur définition par la station distante). Bit 5 Erreur d'allocation. Il n'y a plus de place dans l'espace PL7-MMS pour effectuer une allocation mémoire. Diminuer la taille des variables à lire ou diminuer le nombre des OFBs de l'application pouvant effectuer des allocations dynamiques dans l'espace fonction PL7-MMS. Bit 8 Erreur MMS détectée par le coupleur (bit 8). Erreur MMS détectée par le distant (bit 9) Consulter les deux bits suivants pour connaître le type d'erreur Erreur pendant l'exécution du service MMS (bit 10) Service MMS rejeté (bit 11) Analyser le paramètre IND pour déterminer la cause de l'erreur Bit 13 Erreur de communication. Le coupleur a rejeté la requête parce qu'il était en cours de configuration; est débroché ou est tombé en défaut Vérifier la configuration et/ou l'état du coupleur. Bit 14 Traitement interrompu. Le bloc fonction a été interrompu pendant son exécution par la mise à 1 de son entrée RESET, par SY0 console, défaut logiciel ou coupure secteur. Erreur système. Le bloc fonction manque de ressources système pour s'exécuter. Diminuer le nombre de blocs fonctions configurés (toutes familles confondues). Bit 9 Bit 10 Bit 11 Bit 15 F __________________________________________________________________________________________ 3/37 __________________________________________________________________________________________ 3.6-3 Utilisation de l'OFB MURCV Pour exécuter le bloc fonction MURCV il faut avoir, au préalable, ouvert (ou identifier) une association avec l'application distante, en exécutant une instance le l'OFB MCNCT. 3.6-4 Programmation de l'OFB MURCV L'OFB MURCV permet à une application PL7-3 Client, de se positionner en attente de réception de la valeur d'une variable MMS émise à l'initiative d'une application Serveur distante (Service MMS : INFORMATION_REPORT). La variable MMS a été définie avec PL7-MMS comme une variable Client. Cet OFB s'utilise de la même manière que MREAD, à la différence près que la donnée peut être reçue dans un laps de temps plus important. Une seule variable peut être reçue par une exécution du bloc. L'identification de la variable MMS est passée à l'OFB MURCV par l'intermédiaire du symbole SDBASE ("Alias") qui la lie au symbole MMS (voir chapitre F 3.2). L'"Alias" est câblé sur le paramètre d'entrée VAR La valeur de la variable à recevoir est déposée dans une zone de réception (tampon de réception) qui est définie pour l'OFB par les paramètres d'entrée : • BUFFER : adresse du premier mot du tampon de réception, • SIZE : taille, en nombre d'octets, du tampon de réception. Le numéro de l'association sur laquelle effectuer la requête est câblé sur le paramètre CHANNEL. Résultat de l'exécution Donnée correctement reçue : ERROR = 0; RC précise la taille, en nombre d'octets, de la donnée reçue. F Echec : ERROR=1; RC précise la raison de l'échec. . __________________________________________________________________________________________ 3/38 Les OFBs de services MMS 3 F A __________________________________________________________________________________________ Exemple de programmation Réception d'une variable de synchronisation envoyée par un séquenceur. La variable booléenne “START-PRODUCING” est suivie par le nombre de pièces à produire, “PARTS”. Les OFB sont programmés pour recevoir ces deux variables. ! IF NOT B1.MURCV0,READY.MURCV1,READY.[MCNCT0,STATE=0] THEN EXEC MURCV0(;ORDO;START;2;AUX0=>); THEN EXEC MURCV1(;ORDO;START;2;AUX1=>); SET B1 ! ! <Attente> ! IF NOT MURCV0, READY THEN JUMP L200 ! IF MCNCT0, ERROR THEN JUMP L999 ! ! <La variable “START_PRODUCING” a été reçue. ! <Si elle est vraie, lancement du programme fabrication pièces. ! <Sinon, arrêt du programme et attente de “PARTS”. ! ! IF AUX0,F THEN JMP L10 THEN EXEC MURCV1(1=>); JUMP L200 ! ! L10: ! <Lancement de la production> ! <Attente de la variable “PARTS”.> ! IF NOT MURCV1, READY THEN JUMP L200 ! IF MURCV1, ERROR THEN JUMP L999 ! <etc.> ! ! <L200: ! <Suite du programme...> F Données utilisées Symbole Variable Valeur Aux0 Aux1 Ordo Start Parts W0 W1 W10 CW103 CW104 ? ? 0 (N° de canal. = 0) Provient de PL7-MMS Provient de PL7-MMS Remarque Lorsqu'une action RESET sur un OFB MURCV est effectuée pendant l'attente de réception de données, l'OFB tente de prévenir le coupleur qu'il n'attend plus, en envoyant un message sans compte rendu. L'exécution de l'action RESET durera environ 2 millisecondes. __________________________________________________________________________________________ 3/39 __________________________________________________________________________________________ 3.7 OFB MRSTA - Etat d'un équipement (mode Client) 3.7-1 Fonction Le bloc fonction MRSTA assure la requête MMS : STATUS ou la réception de : UNSOLICITED STATUS ; il permet, à une application Client, de lire l'état d'un équipement distant Serveur. Le Client peut, soit émettre une demande, soit se mettre en attente d'une émission laissée à l'initiative du Serveur. 3.7-2 Interface PL7-3 MRSTA bit RESET bit word ERROR CHANNEL bit UNSOL INHIB bit READY bit STATUS word IND word PHYSIC word LOGIC word LOCDET bit DETAIL word[8] Paramètres d'entrées F Nom Type Droits Rôle RESET Bit R-RW Interruption d'exécution du bloc ou remise à zéro de STATUS CHANNEL Word R-R Numéro de l'association (canal de communi cation) sur laquelle attendre la donnée. UNSOL R-R A 1, la lecture est non sollicitée A 0, la lecture est sollicitée ( défaut) Bit __________________________________________________________________________________________ 3/40 Les OFBs de services MMS 3 __________________________________________________________________________________________ Paramètres de sorties Nom Type Droits ERROR Bit R-R Rôle Erreur d'exécution détectée par le bloc Données internes publiques Nom Type Droits STATUS Word R-R Si ERROR est à 1, identifie les erreurs d'exécu tion. Chaque bit du mot positionné à 1 indique une erreur. Voir "Interface APPLIDIAG" READY Bit R-R A la valeur 1: le bloc est prêt à être utilisé ; à 0 : un traitement est en cours. INHIB Bit RW-RW Inhibe la signalisation des erreurs : ERROR et STATUS restent toujours à zéro, l'exécution du bloc n'est pas interrompue. PHYSIC Word R-R Etat physique de l'équipement distant, contenu défini par la norme MMS LOGIC Word R-R Etat logique de l'équipement distant, contenu défini par la norme MMS LOCDET Bit R -R Indique si le status optionnel (local détail) est présent (LOCDET à 1), ou non. Le status optionnel est donné dans DETAIL. DETAIL Tableau R -R de 8 words Ce champ optionnel permet de recevoir des status complémentaires aux deux états PHYSIC et LOGIC. La siginification de ce champ dépend de l'équipement émetteur. IND Word Indication d'erreur d'exécution d'un service MMS (signalée par bits 8 à 11 de STATUS). Voir annexe F/5. R-R Rôle Les états LOGIC et PHYSIC Ces données rendent compte de l'état, selon la norme MMS, d'un équipement. __________________________________________________________________________________________ 3/41 F __________________________________________________________________________________________ Interface APPLIDIAG : Détail de STATUS Bit Signification Action corrective Bit 0 L'association n'est pas ouverte ou est en cours de fermeture. L'association utilisée n'est pas disponible pour les échanges Vérifier le paramètre CHANNEL ou l'état de l'association (variables MCNCTi,STATE et MCNCTi,STATUS, i: numéro de l'assoc.) Bit 8 Erreur MMS détectée par le distant (bit 8) Erreur MMS détectée par le distant (bit 9) Consulter les deux bits suivants pour connaître le type d'erreur Erreur pendant l'exécution du service MMS (bit 10) Service MMS rejeté (bit 11) Analyser le paramètre IND pour déterminer la cause de l'erreur Bit 13 Erreur de communication. Le coupleur a rejeté la requête parce qu'il était en cours de configuration ; est débroché ou est tombé en défaut. Vérifier la configuration et/ou l'état du coupleur. Bit 14 Traitement interrompu. Le bloc fonction a été interrompu pendant son exécution par la mise à 1 de son entrée RESET, par SY0 console, défaut logiciel ou coupure secteur. Erreur système. Le bloc fonction manque de ressources systèmes pour s'exécuter. Diminuer le nombre de blocs fonctions configurés (toutes familles confondues). Bit 9 Bit 10 Bit 11 Bit 15 3.7-3 Utilisation de l'OFB MRSTA F Pour exécuter le bloc fonction MRSTA il faut avoir, au préalable, ouvert (ou identifié) une association avec l'application distante, en exécutant une instance de l'OFB MCNCT. 3.7-4 Programmation de l'OFB MRSTA L'OFB MRSTA permet, à une application Client, de lire l'état, au sens MMS du terme, d'un équipement distant, Serveur. La valeur de l'entrée UNSOL câblée à l'exécution de l'OFB détermine le mode de lecture : à la valeur 0 (valeur par défaut) la lecture est explicitement demandée (service MMS utilisé : Status), à la valeur 1, la lecture est non sollicitée - l'OFB se met en attente de réception de la requête Unsolicited Status- . __________________________________________________________________________________________ 3/42 Les OFBs de services MMS 3 __________________________________________________________________________________________ Le numéro de l'association sur laquelle effectuer la requête est câblé sur le paramètre CHANNEL. Résultat de l'exécution Donnée correctement reçue: ERROR = 0 ; PHYSIC et LOGIC contiennent les états "physiques" et "logiques" du distant. Si LOCDET est à 1, DETAIL contient des informations complémentaires. Echec : ERROR=1; STATUS détaille la cause de l'échec. Exemple de programmation L'application PL7-3 et le client MMS attendent le changement d'état d'un robot distant. Ce changement d'état est indiqué par le service MMS Unsolicited Status. ! IF NOT B1.MRSTA0,READY.[MCNCT,STATE=0] THEN EXEC MRSTA0(;Robot;1=>); SET B1 ! ! <Attente> ! IF NOT MRSTA0, READY THEN JUMP L200 ! IF MRSTA0, ERROR THEN JUMP L999 ! ! <La donnée status a été reçue.> ! <Analyse de la donnée. Relance de l'OFB si incorrecte.> ! ! IF [MRSTA0,LOGIC=1] THEN JUMP L200 ELSE RESET B1; JUMP L500 ! L200: ! <Suite du programme...> F Données utilisées Symbole Variable Valeur Robot W12 Numéro de canal = Inst. MCNCT2 Remarque Lorsqu'une action RESET sur un OFB MRSTA est effectuée pendant l'attente de réception de données, l'OFB tente de prévenir le coupleur qu'il n'attend plus, en envoyant un message sans compte rendu. L'exécution de l'action RESET durera environ 2 millisecondes. __________________________________________________________________________________________ 3/43 __________________________________________________________________________________________ 3.8 OFB MUSND : Emission de données non sollicitées (mode Serveur) 3.8-1 Fonction Le bloc fonction MUSND assure le service MMS : INFO_REPORT ; il permet, à une application MMS Serveur, d'émettre des données non sollicitées vers une application Client. Les variables sont des variables MMS Serveur définies avec l'outil PL7-MMS. Au niveau de l'OFB les variables sont identifiées par leur symbole SDBASE ("Alias"). 3.8-2 Interface PL7-3 MUSND bit RESET bit word ERROR CHANNEL ptr_bit VAR0_B ptr_word VAR0_W ptr_dword VAR0_DW F VAR0…3_W VAR0…3_DW NBELT3 ------- ------- word NBELT0. . . . VAR0…3_B RC0…3 bit READY bit STATUS word RC0…3 word IND word __________________________________________________________________________________________ 3/44 Les OFBs de services MMS 3 __________________________________________________________________________________________ Paramètres d'entrées Nom Type Droits Rôle RESET Bit R-RW Interruption d'exécution du bloc ou remise à zéro de STATUS CHANNEL Word R-R Numéro de l'association (canal de communication) via laquelle émettre la requête. VAR0_t à VAR3_t t=B,W ou DW Ptr_t R-R "Alias" SDBASE des variables à émettre ( câblées selon leur type) NBELT 0à3 Word R-R Nombre d'éléments à émettre. (1 par défaut) Paramètres de sorties Nom Type Droits ERROR Bit R-R Rôle Erreur d'exécution détectée par le bloc F __________________________________________________________________________________________ 3/45 __________________________________________________________________________________________ Données internes publiques Nom Type Droits Rôle STATUS Word R-R Si ERROR est à 1, identifie les erreurs d'exé cution. Chaque bit du mot positionné à 1 indique une erreur. Voir "Interface APPLIDIAG" READY Bit R-R A la valeur 1 : le bloc est prêt à être utilisé; à 0 : un traitement est en cours. INHIB Bit RW-RW Inhibe la signalisation des erreurs : ERROR et STATUS restent toujours à zéro, l'exécution du bloc n'est pas interrompue. RC0...RC3 Word R-R Nombre d'éléments émis si émission OK. Sinon, cause de l'erreur. IND R-R Indication d'erreur d'exécution d'un service MMS (signalée par bits 8 à 11 de STATUS). Voir annexe F/5. Word Signification des données RCi sur une erreur Valeur F Signification >=0 Pas d'erreur -1 variable non utilisée (aucune entrée VARi_t n'est câblée). -2 Une seule des entrées VARi_t doit être câblée. -3 Objet PL7-3 non supporté -4 Accès hors bornes (tableau débordant d'un espace configuré) -5 Ressource mémoire indisponible (recopie d'objet de type bit) -6 Dépassement du nombre d'éléments autorisés pour un tableau du type objet câblé. Les limites sont les suivantes : • bit : 1024 • word : 1024 • dword : 1024 __________________________________________________________________________________________ 3/46 Les OFBs de services MMS 3 __________________________________________________________________________________________ Interface APPLIDIAG : détail du STATUS Bit Signification Action corrective Bit 0 L'association n'est pas ouverte ou est en cours de fermeture. L'association sollicitée n'est pas disponible pour les échanges Vérifier le paramètre CHANNEL ou l'état de l'association (variables MCNCTi,STATE et MCNCTi,STATUS, i: numéro de l'assoc.) Bit 1 Erreur accès données. Erreur d'accès aux données (accès protégé ou interdit, câblage, dépassement de capacité,...). Les données RCi indiquent le paramètre qui a provoqué l'erreur. Vérifier les Vari Bit 2 Accès refusé par le serveur. Erreur d'accès aux variables MMS (variable non définie, accès protégé,...). Les données RCi indiquent la (ou les) variable(s) cause de l'erreur. Vérifier les paramètres VARi. Vérifier la définition des variables avec PL7MMS (cohérence avec la table des symboles chargée dans lecoupleur). Bit 3 Erreur d'allocation. Il n'y a plus de place dans l'espace PL7-MMS pour effectuer une allocation mémoire. Diminuer la tailles des variables à lire ou diminuer le nombre des OFBs de l'application pouvant effectuer des allocations dynamiques dans l'espace fonction PL7-MMS. Bit 4 Requête trop grande. La taille maximale d'une requête est de 4096 octets; la ou les variables à émettre créent une requête de taillesupérieure. Diminuer soit le nombre de variables à émettre sur une requête, soit la taille des informations à émettre. Bit 8 Erreur MMS détectée par le coupleur (bit 8). Erreur MMS détectée par le distant (bit 9) Consulter les deux bits suivants pour connaître le type d'erreur Erreur pendant l'exécution du service MMS (bit 10) Service MMS rejeté (bit 11) Analyser le paramètre IND pour déterminer la cause de l'erreur Erreur de communication. L'échange a échoué pour l'une ou l'autre des raisons suivantes : 1. La réponse à une requête n'est pas intervenue dans le temps enveloppe. La tâche MAST de l'automate est trop chargée. 2. Le coupleur a rejeté la requête parce qu'il était en cours de configuration ou bien parce qu'il n'est pas chargé avec une configuration MMS Serveur. Augmenter le temps de cycle de la tâche MAST ou réduire la charge de l'automate ( dans le cas 1). Vérifier la configuration coupleur ( dans le cas 2) Bit 9 Bit 10 Bit 11 Bit 13 Bit 14 Traitement interrompu. Le bloc foncDiminuer le nombre de blocs fonctions tion a été interrompu pendant son configurés (toutes familles exécution par la mise à 1 de son confondues). entrée RESET, par SY0 console, défaut logiciel ou coupure secteur. Bit 15 Erreur système. Le bloc fonction manque de ressources systèmes pour s'exécuter. __________________________________________________________________________________________ 3/47 F __________________________________________________________________________________________ 3.8-3 Utilisation de l'OFB MUSND Pour exécuter le bloc fonction MUSND il faut avoir, au préalable, ouvert (ou identifié) une association avec l'application distante, en exécutant une instance de l'OFB MCNCT. 3.8-4 Programmation de l'OFB MUSND L'OFB MUSND permet à une application PL7-3 Serveur, d'émettre sur sa propre initiative, les valeurs de 1 à 4 variables MMS Serveur vers une application distante Client. MUSND est le "correspondant" d'un bloc MURCV exécutable dans une application PL7-3Client. Les variables MMS ont été définies avec PL7-MMS comme des variables MMS Serveur. L' OFB MUSND (en mode Serveur) s'utilise de la même manière que MWRIT (en mode Client). Toutefois, le câblage des variables Serveur (MUSND) diffèrent de celui des variables Client (MWRIT) - se reporter au sous-chapitre 3.4, Programmation des OFBs MMS -. Le ou les "Alias" SDBASE de la ou des variables MMS dont il faut émettre la ou les valeurs, sont câblés sur les entrées VARi_B, VARi_W ou VARi_DW selon le ou les types des variables (voir chapitre F 3.2 ). La ou les tailles des données à émettre sont cablées sur les entrées NBELTi et exprimées en nombre d'éléments. Le numéro de l'association sur laquelle effectuer la requête est câblé sur le paramètre CHANNEL. F __________________________________________________________________________________________ 3/48 Les OFBs de services MMS 3 __________________________________________________________________________________________ Résultat de l'exécution Données correctement émises : ERROR = 0; RCi = Nombre d'éléments émis. Echec : ERROR=1; RCi précisent la raison de l'échec. Exemple de programmation Envoi des variables de supervision “FAILURE” (bit B100) et “CAUSE” (cause de la défaillance = mot W100). “FAILURE” est une variable booléenne ayant pour symbole FAIL. “CAUSE” est une "chaine de 1 octet" ayant pour symbole CAUSE. L'association est identifiée par la variable SUPER (ouverte par MCNCT1). ! <Si FAIL est à 1, un défaut est détecté; CAUSE en donne l'origine.> ! <Le programme prévient le superviseur.> ! ! IF FAIL.NOT B1.MUSNDV0,READY.[MCNCT0,STATE=0] THEN EXEC MUSND0(;SUPER;FAIL;;;CAUSE=>); SET B1 ! ! <Attente> ! IF NOT MUSND0,READY THEN JUMP L500 ! IF MUSND0,ERROR THEN JUMP L999 ! ! <Suite du programme...> Données utilisées Symbole Variable Valeur SUPER FAIL CAUSE W11 B100 W100 1 1 pour lancer l'envoi ? F __________________________________________________________________________________________ 3/49 __________________________________________________________________________________________ 3.9 OFB MSSTA : Emission de l'état d'un équipement mode Serveur 3.9-1 Fonction Le bloc fonction MSSTA assure la requête MMS : UNSOLICITED STATUS ; il permet, à une application MMS Serveur, d'émettre l'état de son équipement (au sens MMS) vers une application Client. Le déclenchement de l'émission peut être cyclique ou au contraire au coup par coup. 3.9-2 Interface PL7-3 MSSTA bit RESET bit word ERROR CHANNEL word TCYCLE INHIB bit READY bit STATUS word PHYSIC word LOGIC word IND word F __________________________________________________________________________________________ 3/50 Les OFBs de services MMS 3 __________________________________________________________________________________________ Paramètres d'entrées Nom Type Droits Rôle RESET Bit R-RW Interruption d'exécution du bloc ou remise à zéro de STATUS CHANNEL Word R-R Numéro de l'association (canal de communication) sur laquelle émettre la donnée. TCYCLE R-R Période d'évaluation du changement d'état (en nombre de cycles MAST). Câblé avec la valeur 0, une seule émission sera effectuée. Wor Paramètres de sorties Nom Type Droits Rôle ERROR Bit R-R Erreur d'exécution détectée par le bloc Données internes publiques Nom Type Droits Rôle STATUS Word R-R Si ERROR est à 1, identifie les erreurs d'exécution. Chaque bit du mot positionné à 1 indique une erreur. Voir "Interface APPLIDIAG" READY Bit R-R A la valeur 1 : le bloc est prêt à être utilisé ; à 0 : un traitement est en cours. INHIB Bit RW-RW Inhibe la signalisation des erreurs : ERROR et STATUS restent toujours à zéro, l'exécution du bloc n'est pas interrompue. PHYSIC Word R-R Etat physique de l'équipement local, contenu défini par la norme MMS LOGIC Word R-R Etat logique de l'équipement local, contenu défini par la norme MMS IND Word R-R Indication d'erreur d'exécution d'un service MMS (signalée par bits 8 à 11 de STATUS). Voir annexe F/5. Les états LOGIC et PHYSIC Ces données rendent compte de l'état, selon la norme MMS, de l'équipement. __________________________________________________________________________________________ 3/51 F __________________________________________________________________________________________ Interface APPLIDIAG : détail du STATUS Bit Signification Action corrective Bit 0 L'association n'est pas ouverte ou est en cours de fermeture. L'association utilisée n'est pas disponible pour les échanges. Vérifier le paramètre CHANNEL ou l'état de l'association (variables MCNCTi,STATE et MCNCTi,STATUS, i: numéro de l'assoc.). Bit 1 Valeur du paramètre TCYCLE hors bornes. La valeur de TCYCLE est supérieure à 32767 cycles. Vérifier le paramètre TCYCLE qui doit être inférieur à 32767. Bit 8 Erreur MMS détectée par le coupleur (bit 8) Erreur MMS détectée par le distant (bit 9) Consulter les deux bits suivants pour connaître le type d'erreur. Erreur pendant l'exécution du service MMS (bit 10) Service MMS rejeté (bit 11) Analyser le paramètre IND pour déterminer la cause de l'erreur Bit 13 Erreur de communication. L'échange avec le coupleur a échoué pour l'une ou l'autre des raisons suivantes : 1 - La réponse à une requête n'est pas intervenue dans le laps de temps imparti. La tâche MAST de l'automate est trop chargée. 2 - Le coupleur a rejeté la requête (coupleur en cours de configuration ou bien il n'est pas chargé avec la fonction MMS Serveur. Augmenter le temps de cycle de la tâche MAST ou bien réduire la charge de l'automate ( premier cas). Vérifier le coupleur (deuxième cas). Bit 14 Traitement interrompu. Le bloc fonction a été interrompu pendant son exécution par la mise à 1 de son entrée RESET, par SY0 console, défaut logiciel ou coupure secteur. Erreur système. Le bloc fonction manque de ressources systèmes pour s'exécuter. Diminuer le nombre de blocs fonctions configurés (toutes familles confondues). Bit 9 Bit 10 Bit 11 F Bit 15 __________________________________________________________________________________________ 3/52 Les OFBs de services MMS 3 __________________________________________________________________________________________ 3.9-3 Utilisation de l'OFB MSSTA Pour exécuter le bloc fonction MSSTA il faut avoir, au préalable, ouvert (ou identifié) une association avec l'application distante, en exécutant une instance le l'OFB MCNCT. 3.9-4 Programmation de l'OFB MSSTA Le bloc fonction MSSTA permet, à une application PL7-3 MMS Serveur, d'émettre vers une application Client son état (défini au sens MMS). Il y a deux manières d'utiliser l'OFB : • Le status est envoyé sur changement d'état ; l'état étant évalué périodiquement (tous les TCYCLE cycles de la tâche MAST). La commande d'exécution de l'OFB n'est donc programmée qu'une seule fois. L'émission périodique de l'état peut ensuite être stoppée par une exécution du bloc avec l'entrée RESET câblée avec la valeur 1. • L'émission du status ne se produit qu'au moment de l'exécution de l'OFB ; il faut pour cela donner la valeur 0 au paramètre d'entrée TCYCLE. Le numéro de l'association sur laquelle effectuer la requête est câblé sur le paramètre CHANNEL. Exemple de programmation Envoi du status vers l'application de supervision à chaque changement d'état, tous les 50 cycles de la tâche maître. ! IF NOT B1.MSSTA0,READY.[MCNCT1,STATE=0] THEN EXEC MSSTA0(;SUPER;50=>); SET B1 ! ! <Attente> ! IF NOT B2 THEN EXEC MSSTA(1;;=>); SET B2 ! ! IF MSSTA0, ERROR THEN JUMP L999 ! ! <Suite du programme...> F Données utilisées Symbole Variable Valeur SUPER W1! 1 Numéro de canal = Inst. MCNCT1 __________________________________________________________________________________________ 3/53 __________________________________________________________________________________________ F __________________________________________________________________________________________ 3/54 4 L'OFB MSEMA: Synchronisation de l'accès à une variableMMS serveur __________________________________________________________________________________________ 4.1 Fonction Le bloc fonction MSEMA permet de «synchroniser» l’accès à une Variable MMS Locale Automate (Serveur), par un équipement distant (Client) et son utilisation dans l’application locale PL7-3. L’OFB gère un sémaphore qui indique qu’une variable MMS Locale, dont on attend l’accès en lecture/écriture, est disponible pour son exploitation dans l’application. Cette gestion de sémaphore trouve principalement son utilité dans l’écriture de variables de taille supérieure à 128 octets : l’écriture d’une telle variable par l’équipement distant, via le coupleur ETH 200, dure plusieurs cycles automate ; le sémaphore permet donc de prévenir toute manipulation de la variable pendant son écriture. Les variables MMS Locales auxquelles un sémaphore doit être associé sont celles configurées en Mode PROGrammé au moyen de l’outil PL7-MMS V2.5 . Si, à la demande d’accès d’une variable par un équipement distant, le coupleur n’a pas de sémaphore associé à celle-ci, le service MMS demandé sur cette variable (Read/Write) sera mis en attente jusqu’à ce que l’OFB MSEMA soit exécuté pour cette variable. F __________________________________________________________________________________________ 4/1 __________________________________________________________________________________________ 4.2 Interface PL7-3 MSEMA RESET : bit ERROR : bit CHANNEL : word Entrées Données Internes Publiques VAR_B : ref_bit VAR_W : ref_word VAR_DW : ref_dword INHIB STATUS : bit : word Sorties READY STATUS RC IND : bit : word : word : word F __________________________________________________________________________________________ 4/2 4 L'OFB MSEMA: Synchronisation de l'accès à une variableMMS serveur __________________________________________________________________________________________ Paramètres d'entrées Paramètres Type Accès Description RESET Bit R/RW (1) La mise à 1 de RESET permet d'interrompre l'exécution du bloc fonctions (bit READY à 0) ou de remettre à zéro STATUS (bit READY à 1). Par défaut RESET =0 CHANNEL Word R (1) R (2) Numéro de l'association ouverte pour les échanges MMS. Par défaut CHANNEL = -1. VAR_t avec t = B, W ou DW ref_t R (1) R (2) Variable MMS Serveur à associer au sémaphore. Par défaut, ces entrées sont considérées comme non câblées. Paramètres de sorties Paramètres Type Accès Description ERROR Bit R (1) R (2) Erreur détectée par l'OFB (si INHIB = 0). ) Données internes publiques Paramètres Type Accès Description INHIB Bit R/W (1) R/W (2) Inhibe la signalisation des erreurs. ERROR et STATUS restent toujours à zéro. Par défaut INHIB = 0. STATUS Word R (1) R (2) Identification d'un défaut détecté. Voir liste des défaut signalés page 4/5 RC Word R (1) R (2) Cause de l'échec d'une protection. (voir liste des causes possibles page 4/4 Valide seulement si READY = 1. IND Word R (1) R (2) Indication d'erreur d'échec d'un service MMS (signalée par les bits 8 à 11 de STATUS). READY Bit R (1) R (2) Lorsque READY est à 0, la variable Serveur n'est pas encore écrite ou lue par l'équipement Client. Sur front montant de READY, la variable est écrite ou lue et disponible; READY reste à 1 jusqu'à la prochaine exécution de l'OFB. F (1) : accès par programme. (2) : accès par requête. __________________________________________________________________________________________ 4/3 __________________________________________________________________________________________ Signification de la donnée RC sur une erreur Valeur Signification >=0 Pas d'erreur -1 L'entrée VAR n'est pas câblée -2 Une seule des entrées VAR_x doit être câblée -3 Objet PL7-3 non supporté -103 Object-access-denied : Accès interdit à une variable de portée association -108 Object-Attribute-inconsistent : La variable n'est pas programmée -110 Object-non-existent La variable n'est pas présente dans la table des symboles F __________________________________________________________________________________________ 4/4 L'OFB MSEMA: Synchronisation de l'accès à une variableMMS serveur 4 __________________________________________________________________________________________ Interface APPLIDIAG : détail du STATUS Bit Signification Action corrective Bit 0=1 L'association n'est pas ouverte ou en cours de fermeture. L'association utilisée (paramètre CHANNEL) n'est pas disponible pour des échanges. Vérifier le paramètre CHANNEL ou l'état de l'association (variables MCNCTi,STATE et MCNCTi,STATUS, i: numéro de l'association). Bit 1=1 Erreur accès données. Le paramètre donné dans l'entrée VAR_B, VAR_W ou VAR_DW est incorrect. Analyser la valeur du paramètre RC pour déterminer la cause de l'erreur. Bit 2=1 Accès à la variable refusé par le coupleur. La variable à associer au sémaphore (entrée VAR_x) n'existe pas ou n'est pas en mode programme. Analyser la valeur du paramètre RC pour déterminer la cause de l'erreur. Bits 3 à7 Non utilisés. Bit 8=1 Bit 9=1 Erreur MMS détectée par le coupleur Erreur détectée par le distant. Le coupleur ou l'équipement distant a détecté une erreur dans le traitement du service MMS. Consulter les deux bits suivants pour connaître le type d'erreur. Bit 10=1 Erreur pendant l'exécution du service Bit 11=1 MMS. L'exécution du service MMS s'est terminée en erreur. Analyser le paramètre IND pour déterminer la cause de l'erreur. Bit 12 Non utilisé Bit 13=1 Erreur communication. L'échange avec le coupleur a échoué. F Vérifier la configuration et/ou l'état du coupleur. Bit 14=1 Traitement interrompu. Le bloc fonction a été interrompu pendant son exécution par une action RESET, une requête SY0, SY1, défaut logiciel ou coupure secteur. Bit 15=1 Erreur système. Le bloc fonction manque de ressources système pour pouvoir s'exécuter. Diminuer le nombre de blocs fonctions configurés (toutes familles confondues). __________________________________________________________________________________________ 4/5 __________________________________________________________________________________________ 4.3 Utilisation de l'OFB MSEMA Pour exécuter le bloc fonction MSEMA il faut avoir au préalable, ouvert (ou identifié) une association avec l'application distante, en exécutant une instance de l'OFB MCNT. Il faut d'autre part s'assurer que la variable locale passée en paramètre de MSEMA a bien été déclarée en mode d'accès "PROG" dans PL7-MMS. 4.4 Programmation de l'OFB MSEMA L'OFB MSEMA permet à l'application PL7-3 d'être avertie de la demande de lecture ou d'écriture d'une de ses variables locales par une application distante. Une instance d'OFB MSEMA peut gérer une seule variable. Le nom de la variable MMS locale est câblée sur une des entrées VAR_B, VAR_W, VAR_DW selon le type de la variable (voir chapitre 3.2 intercalaire F) Le numéro de l'association sur laquelle effectuer la requête est câblé sur le paramètre CHANNEL. Cas 1 On veut garantir une valeur cohérente pour une variable d’une taille comprise entre 120 octets et 4K octets , car elle est modifiée, pour une même demande de service MMS, sur plusieurs cycles automate. (gestion de la cohérence) Pour chaque variable dite «sensible» il faut programmer une instance de l’OFB MSEMA dans l’application PL7-3 et tester la valeur du bit READY .Le test du bit READY va permettre de savoir si l’accès est terminé: • La valeur a été complètement mise à jour par le coupleur (Service MMS Write), le programme PL7-3 peut la lire et la traiter • La valeur a été entièrement restituée au distant (service MMS Read), le programme PL7-3 peut la modifier à nouveau. F Cas 2 On veut éviter de perdre des valeurs intermédiaires pour une variable accédée «en rafale» par un distant. (gestion du séquencement) Il faut programmer autant d’EXEC d’instance de l’OFB MSEMA pour une même variable dite «sensible» que de service MMS susceptibles d’arriver de manière simultanée. Le test du bit READY va permettre de «dépiler» les valeurs arrivées en rafale au coupleur: Le premier EXEC de l’OFB libère la première valeur qui peut être prise en compte par l’application PL7-3 (Service MMS Write), en relançant l’EXEC suivant, le coupleur libère la valeur suivante de cette même variable qu’il avait sauvegardée faute d’EXEC associé, etc... __________________________________________________________________________________________ 4/6 L'OFB MSEMA: Synchronisation de l'accès à une variableMMS serveur 4 __________________________________________________________________________________________ Résultat de l'exécution : • Ready passe à 0 : La variable désignée est en cours d'accès par le coupleur sur une demande de lecture/ écriture distante. • Ready passe de 0 à 1 : La variable n'est plus accédée, l'application PL7-3 peut l'exploiter. Exemple de programmation : Besoin de cohérence sur une variable de plus de 128 octets. Le superviseur distant émet un WRITE qui contient une séquence d’initialisation de plusieurs traitements ( symbolisée par la variable locale INITSEQ ) vers un automate serveur, sur une association préalablement identifiée par un Accept (symbolisée par PLCRCV2). ! IF NOT B100 THEN EXEC MSEMA0( ; PLCRCV2 ; ; INITSEQ ; =>) ; ! SET B100; !< Attendre fin de l’écriture des valeurs d’INIT > ! MSEMA0.READY→B200; ! IF RE(B200) THEN JUMP TRAITER-INITSEQ ! IF MSEMA0,ERROR THEN JUMP TRAITER-ERREUR Besoin de séquencement sur une variable écrite en rafale. Le superviseur distant émet plusieurs WRITE d’une même variable (symbolisée par COULEUR) avec des valeurs différentes devant être traitées en séquence par un automate serveur. Ils sont émis sur une association préalablement identifiée par un Accept (symbolisée par PLCRCV2). !< RECEPTION COULEUR > ! IF NOT B100 THEN EXEC MSEMA0( ; PLCRCV2 ; ; COULEUR ; =>) ; ! SET B100; !< Attendre fin de traitement d’une couleur > ! MSEMA0.READY→B200; ! IF RE(B200) THEN JUMP TRAITER-COULEUR ! IF MSEMA0,ERROR THEN JUMP TRAITER-ERREUR !< TRAITER-COULEUR > ! ——— suite d’instructions PL7-3 ——— ! IF COMPTEUR=0 THEN JUMP RECEPTION-COULEUR __________________________________________________________________________________________ 4/7 F __________________________________________________________________________________________ Remarques • Si on programme 2 EXEC de MSEMA sur une même variable et dans le même cycle MAST: EXEC MSEMA1 (VARIABLE1); ............... EXEC MSEMA0 (VARIABLE1); quelque soit le numéro d’instance programmé en premier dans l’application PL73, ce sera toujours le plus petit numéro d’instance qui sera exécuté en premier. En effet les instances sont rangées par numéros croissants dans les files d’exécution du processeur et exécutées en fin de cycle MAST dans cet ordre là. • Si on programme 2 EXEC de la même instance de MSEMA sur 2 variables différentes dans le même cycle MAST: EXEC MSEMA0 (VARIABLE1); ............... EXEC MSEMA0 (VARIABLE2); c’est toujours la dernière variable programmée qui sera prise en compte. En effet les paramètres pris en compte précédemment seront écrasés et l’exécution en fin de cycle MAST se fera sur les dernières valeurs des paramètres enregistrés. F __________________________________________________________________________________________ 4/8 Annexes 5 __________________________________________________________________________________________ 5.1 Gestion des erreurs Status : Identifie le type de l'erreur (consultable par APPLIDIAG). Deux classes possibles : • erreur de programmation des OFBs. • erreur de communication MMS. Pour la classe "erreur de communication MMS" le paramètre IND identifie la cause de l'erreur MMS. Si b8 = 1, les valeurs d'IND sont données par la liste "Indications erreurs d'exécution d'un service MMS, Chapitre 4.2". Si b9 = 1, les erreurs d'IND sont Error class\Error Code (Poids fort\Poids faible) de la norme MMS ou de l'implémentation du service distant (correspond à "Error PDU MMS". Ind : Identifie l'erreur de communication MMS. Deux classes possibles Si b8 = 1, erreur détectée par le coupleur local. Si b9 = 1, erreur détectée par le coupleur distant. RCi : Identifie une erreur d'accès à une variable MMS. Si b4 = 1, RCi contient le type de l'erreur (Voir la liste RCi pour chaque service). (Correspond à "Data access failure MMS"). F __________________________________________________________________________________________ 5/1 __________________________________________________________________________________________ Organigramme d'analyse des erreurs Diagnostic 1er niveau Diagnostic 2e niveau Action corrective ▼ NON ▼ Bit ERROR =1 NEANT STATUS bit 9 =1 STATUS bit 4 =1 Erreur locale voir IND OUI Erreur distante voir IND OUI Erreur distante d'accès à une variable voir RCI ▼ OUI STATUS bit 8 =1 Erreur programmation OFB Voir application locale ▼ OUI Voir application locale ▼ STATUS bit 0,1,2,3,5,6,7,12, 13,14,15=1 Voir applications distantes ▼ OUI Voir applications distantes F __________________________________________________________________________________________ 5/2 Annexes 5 __________________________________________________________________________________________ 5.2 Indications d'erreurs d'exécution d'un service MMS (IND) Valeur Signification 22 Indique que les services sont encore en cours de traitement quand un Conclude est émis. Il faut attendre la fin de ces traitements pour que Conclude puisse être traité. 27 Indique que le nombre maximum de services confirmés en cours de traitement sur l'association est dépassée. Le nombre maximum de services confirmés possibles dépend du nombre d'associations définies dans PL7-OSI (voir intercalaire D, chapitre 3.2-3). 41 Indique que la valeur maximale du "Nesting_Level" négocié lors de l'ouverture d'association est dépassé. Exemple, un service Write.req d'écriture d'un tableau de structures est émis alors que le "Nesting_Level" négocié est égal à un. 42 Indique qu'une variable nommée est accédée alors que le paramètre VNAM n'est pas supporté sur l'association. 49 Indique qu'un type "Array" est spécifié alors que le paramètre STR1 n'est pas supporté sur l'association. 50 Indique qu'un type "Structure" est spécifié alors que le paramètre STR2 n'est pas supporté par l'association. 1000 Traitement du service impossible dans l'état courant du coupleur. Il faut réémettre le service jusqu'à ce qu'il n'y ait plus d'erreur. 1001 2001 Absence de ressource du coupleur pour le traitement du service. Cela peut par exemple se produire si l'application PL7-3 ouvre plus d'associations que ce qui est configuré dans le coupleur. 1002 Le temps enveloppe d'attente d'une réponse MMS de l'équipement distant est dépassé (Time_Out). Suite à cette erreur, il faut fermer l'association concernée par ABORT car le coupleur peut se trouver dans un état incohérent. Il faut également vérifier si l'équipement distant est en état de fonctionnement puis, éventuellement, d'augmenter la valeur du paramètre Time_Out dans l'OFB MCNCT avant de ré-ouvrir l'association. 1003 Le coupleur n'a pas d'association ouverte avec les références demandées (paramètres APPLI et/ou CHANNEL). Cela peut par exemple se produire dans les cas suivants : • émission de "Accept.req" sans association ouverte par l'équipement distant, • émission de "Conclude.req" ou "Abort.req" sur une association non ouverte, • émission d'un service confirmé sur une association non ouverte. __________________________________________________________________________________________ 5/3 F __________________________________________________________________________________________ F Valeur Signification 1004 Le coupleur a déjà une association ouverte avec les références demandées (paramètres APPLI et CHANNEL). Cela se produit si l'application PL7-3 émet deux ouvertures d'association consécutives avec la même instance d'OFB MCNCT sans qu'il y ait eu de fermeture intermédiaire. Code d'erreur correspondant à un WARNING, l'association est utilisable. 1005 Le coupleur a déjà une association ouverte avec la même référence pour le paramètre CHANNEL et une référence différente pour le paramètre APPLI. Cela se produit si l'application PL7-3 ouvre une association vers Appli1 puis ouvre avec la même instance d'OFB MCNCT une association vers Appli2 sans qu'il y ait eu de fermeture préalable. 1006 L'association avec les références demandées (paramètres APPLI et CHANNEL) a déjà été identifiée dans le coupleur. Cela se produit si l'application PL7-3 émet deux "Accept" consécutifs vers Appli1 avec la même instance d'OFB MCNCT. Code d'erreur correspondant à un WARNING, l'association est utilisable. 1007 La valeur du paramètre APPLI de l'OFB MCNCT utilisé pour émettre "Initiate.req" est inconnue du coupleur. Il convient de vérifier la configuration des Applications_Distantes chargée dans le coupleur. 1008 L'application PL7-3 tente de réaliser un "Accept" sur une association qu'elle a ouverte alors que c'est interdit. 1009 Remontée de "Abort.ind" venant du coupleur (ceci n'est pas une erreur mais simplement une indication). 1011 Le coupleur n'est pas encore opérationnel pour l'exécution du service. Il faut ré-émettre le service jusqu'à ce qu'il n'y ait plus de code d'erreur (relancer l'exécution de l'OFB du service MMS concerné). 1012 Remontée d'un contrôle de flux indiquant qu'un service non confirmé ne peut pas être traité par le coupleur. Il faut ré-émettre le service jusqu'à ce qu'il n'y ait plus de code d'erreur (relancer l'exécution de l'OFB du service MMS concerné). 2000 Erreur de protocole. Contacter le support Telemecanique. __________________________________________________________________________________________ 5/4 Annexes 5 __________________________________________________________________________________________ 5.3 Codes d'erreurs remontés dans STATUS de MMSLD V2.0 Bit Signification Action corrective Bit 0 Erreur d'allocation de porte dans la messagerie automate, plus de ressource messagerie. Plus de ressource messagerie disponible dans l'unité centrale de l'automate. L'OFB ne peut plus dialoguer avec le coupleur. Cette situation peut se débloquer toute seule au bout de quelques secondes. Bit 1 Application MMS en défaut ou inexistante. Vérifier que l'application MMS.BIN est bien intégrée dans l'unité centrale de l'automate et qu'il existe bien une table de symboles de variables locales. Bit 2 Application OSI en défaut ou inexistante. Vérifier que l'application OSI.BIN est bien intégrée dans l'unité centrale de l'automate. Bit 3 Coupleur en défaut. Vérifier le bornier du coupleur, vérifier que le coupleur est bien dans l'emplacement prévu dans le bac de l'automate ou remplacer le coupleur. Bit 4 Erreur d'interface en cours d'échange messagerie. Erreur de chargement de la configuration OSI dans le coupleur. Erreur de chargement de la table des symboles MMS dans le coupleur. Ces erreurs proviennent d'une coupure du dialogue entre l'automate et le coupleur. Si à la reprise il n'y a pas d'erreur grave, l'OFB se remet en état de fonctionnement (chargement du coupleur) sans intervention de l'utilisateur. Bit 5 Bit 6 Remarques : • la mise à 1 de l'entrée INHIB remet à 0 le bit ERROR et le mot STATUS prend la valeur 0, • la remise à 0 de l'entrée INHIB permet la mise à jour des sorties ERROR et STATUS en cas d'erreur. __________________________________________________________________________________________ 5/5 F __________________________________________________________________________________________ 5.4 Ajout d'une variable MMS à un projet déjà existant 1. Ajout d'une variable locale dans la STATION 1 : • lancer la fonction PL7-PMS sur STATION 1 - MENU : CONFIGURATION/VARIABLES LOCALES/DÉFINITION VARIABLES LOCALES : Saisir les caractéristiques complètes de la variable, voir intercalaire E, chapitre 3.3. - MENU : Configuration/UC Générer le fichier .BIN - MENU : TRANSFERT/DISQUE → UC Transférer le fichier .BIN dans l'automate. 2. Ajout d'une variable distante dans la STATION 2 : • lancer la fonction PL7-PMS sur STATION 2 - MENU : CONFIGURATION/RÉPERTOIRE MMS PROJET/DÉFINITION VARIABLES DISTANTES : Saisir les caratéristiques complètes de la variable, voir intercalaire E, chapitre 3.1. - MENU : CONFIGURATION/VARIABLES DISTANTES : Voir intercalaire E, chapitre 3.2. Saisir : . le repères CWi, . le symbole SDBASE "Alias" Dans la fenêtre : DÉFINITION VARIABLES MMS DISTANTES : Sélectionner la variable MMS associée. - MENU : CONFIGURATION/UC Générer le fichier .BIN F - MENU : TRANSFERT/DISQUE → UC Transférer le fichier .BIN dans l'automate. • lancer la fonction PL7-3 sur STATION 2 - relire le fichier des constantes MMS.CST (fonction READ de la rubrique : 3-CONSTANTE de l'outil PL7-3). __________________________________________________________________________________________ 5/6 ________________________________________________________ Annexes générales G ___________________________________________________________________________ Chapitre 1 Page PICS 1.1 1.2 1.3 1.4 Informations relatives à l'implémentation (PICS) Services MMS supportés (PICS Service CBB's) Paramètres MMS supportés (paramètres CBB's) Caractéristiques propres à l'implémentation (PICS Local Implementation Values) 1/1 1/3 1/4 1/5 G ___________________________________________________________________________ G/1 ________________________________________________________ ___________________________________________________________________________ G ___________________________________________________________________________ G/2 PICS 1 __________________________________________________________________________________________ 1.1 Informations relatives à l'implémentation (PICS) Implementation's Vendor name Telemecanique Implementation's Model Name System Dependent Implementation's Revision Identifier 2.0 Machine Name(s) and Version Number(s) System Dependent Operating System(s) System Dependent MMS abstract syntax ISO/DIS 9506 ISO/IS 9506 MMS Version Number Supported 0 and 1 MMS Companion Standard abstract syntaxes Not supported MMS Companion Standard Version Number Supported Not supported Calling MMS-user Yes Called MMS-user Yes List of Standardized Names Not Used RequestDomainDownload RequestDomainUpload LoadDomainContent StoreDomainContent DeleteDomain Server GetDomainAttributes Server CreateProgramInvocation Server DeleteProgramInvocation Server Start Server Stop Server Resume Server Reset Server G Kill GetProgramInvocationAttributes Server DefineEventCondition DeleteEventCondition __________________________________________________________________________________________ 1/1 __________________________________________________________________________________________ GetEventConditionAttributes ReportEventConditionstatus AlterEventConditionMonitoring TriggerEvent DefineEventAction DeleteEventAction GetEnventActionAttributes ReportEventActionStatus DefineEventEnrollement DeleteEventEnrollement AlterEventEnrollement ReportEventEnrollementStatus GetEventEnrollementAttributes AcknowledgeEventNotification AttachToEventCondition EventNotification GetAlarmSummary GetAlarmeEnrollementSummary ReadJournal WriteJournal InitializeJournal CreateJournal DeleteJournal ReportJournalStatus ObtainFile G __________________________________________________________________________________________ 1/2 PICS 1 __________________________________________________________________________________________ 1.2 Services MMS supportés (PICS Service CBB's) Service Conformance Building Block Server, Client or Both Initiate Both Conclude Both Cancel UnsolicitedStatus Both Status Both GetNameList Server Identify Server Rename GetcapabitlityList Read Both Write Both InformationReport Both GetVariableAccessAttributes Server DefineNamedVariable DefineScatteredAccess GetScatteredAccessAttributes DeleteVariableAccess DefineNamedVariableList GetNamesVariableList DeleteNamedVariableList DefineNameType GetNamedTypeAttributes DeleteNamedType Input Outpout G TakeControl RelinquishControl DefineSemaphore DeleteSemaphore ReportSemaphoreStatus __________________________________________________________________________________________ 1/3 __________________________________________________________________________________________ Services MMS supportés (PICS Service CBB's) ReportPoolSemaphoreStatus ReportSemaphoreEntryStatus AttachToSemaphore InitiateDownloadSequence Server DownloadSegment Server TerminateDownloadSequence Server InitiateUploadSequence Server UploadSegment Server TerminateUploadSequence Server 1.3 Paramètres MMS supportés (paramètres CBB's) Parameter Conformance Building Block Server, Client or Both STR1 (Support for ARRAYs) Yes STR2 (Support for STRUCTUREs) Yes NEST (Maximum Data Structure Nesting Level) NEST = 2 (1) VNAM (Support for NAMED variables) Yes VADR (Support for UNNAMED and SINGLE variables) Yes* VALT (Support for Alternate Access) Yes* VSCA (Support for Scarattered Access) No G TPY (Support for a Third Party File Server No REAL (Support for REAL) No ACKEC (Support of Acknowledgement Event Condition Parameter) No CEI (Support forEvaluation Interval Parameter NO * Read/Write Server only : Pas d'accès alterné pour un Write d'un champs de structure de type élément de tableau Booléen ou BitString1. (1) Les tableaux de tableaux et les structures aynat pour champ une structure ne sont pas supportés. __________________________________________________________________________________________ 1/4 PICS 1 __________________________________________________________________________________________ 1.4 Caractéristiques propres à l'implémentation (PICS Local Implementation Values) Local Implementation Value Support Range of values for floating point numbers IEEE 754 (Single) Supported values of the floating point exponent width IEEE 754 (Single) Supported values of the floating point format width IEEE 754 (Single) Range of values for signed integer [-2147483648..2147483647] Range of values for unsigned integer [0..2147483647] Maximum length for-BIT STRING in bits 2048 Maximum length for OCTET STRING in octet 4096 Address formats for VADR horizontal CBB Symbolic Maximum Input Time Out in seconds Level of support for time Date and time Granularity of time in milliseconds 10 Uninterruptible access to variable Length of variable less than 120 bytes Priority processing for semaphores Capabilities of VMD Local Detail Yes Cf Document File Name Syntax Range of Maximum Services Outstanding Calling [0..M] ME[2..5] Range of Maximum Services Outstanding Called [0..M] ME[2..5] Execution Argument Additionnal Code in Error Type Yes Cf Document Additionnal Detail in Error Type Method for Extended Derivation of Status Information G Local Detail Calling/Called [64..7168] Load Data Format TSX PLC application format Maximum number of Upload State machines 1 __________________________________________________________________________________________ 1/5 __________________________________________________________________________________________ Note : La valeur maximale de Maximum Services Outstanding Calling/Called dépend du nombre d'associations configurées sous PL7-OSI (nombre d'associations ouvertes à l'initiative de l'application locale plus nombre d'associations acceptées par l'application locale). M = max (Maximum Services Outstanding) 5 4 3 2 1 4 8 12 16 21 24 28 32 Nombre d'associations configurées sous PL7-OSI G __________________________________________________________________________________________ 1/6 ________________________________________________________ Exemple d'application H ___________________________________________________________________________ Chapitre 1 Page Exemple d'application 1.1 1.2 1.3 Présentation Application de l'équipement R6S0 1.2-1 Configuration materielle 1.2-2 Programme tâche maitre, module programme principal : MAST/MAIN 1.2-3 Adresses OSI, coupleur TSX ETH 200 1.2-4 Constantes PL-7 1.2-5 Listes des variables MMS 1.2-6 Liste des symboles PL7-3 Application de l'équipement R6S1 1.3-1 Configuration materielle 1.3-2 Programme tâche maitre, module programme principal : MAST/MAIN 1.3-3 Adresses OSI, coupleur TSX ETH 200 1.3-4 Constantes PL7-3 1.3-5 Listes des variables MMS 1.3-6 Liste des symboles PL7-3 1/1 1/1 1/1 1/2 1/8 1/9 1/10 1/12 1/13 1/13 1/13 1/20 1/22 1/22 1/25 ___________________________________________________________________________ H/1 H ________________________________________________________ ___________________________________________________________________________ H ___________________________________________________________________________ H/2 Exemple d'application 1.1 1 Présentation L'exemple traité dans ce chapitre est celui présenté dans le chapitre méthodologique Ch 2.1 intercalaire B. Rappel de l'architecture du réseau OSI FTX 507 ETHERNET APRIL R6S0 R6S1 TSX 7 TSX 7 APRIL 7000 1.2 Application de l'équipement R6S0 1.2-1 Configuration materielle Référence du bac : TSX RKN 82F _____________________________________________________________________ BAC 0/1 S U P 7 0 1 0 7 / 4 5 5 M A P E T H D S T D S T D E T 1 1 2 8 8 6 0 0 7 0 3 3 1 4 5 5 2 _____________________________________________________________________ MODULE ALIM M 0 1 2 3 4 5 6 7 _____________________________________________________________________ ___________________________________________________________________________ 1/1 H 1.2-2 Programme tâche maitre, module programme principal : MAST/MAIN <initialisation variables pour MCNCT0 (gestion association C0) ! IF SY0+SY1 THEN 2->Mod_cnc0 W1 : Mod_cnc0 <initialisation variables pour INITIATE C0 ! IF RE(I5,0) THEN 0->Com_cnc0 W0 : Com_cnc0 <initialisation variables pour CONCLUDE C0 ! IF RE(I5,2) THEN 2->Com_cnc0 W0 : Com_cnc0 <initialisation variables pour ABORT C0 ! IF RE(I5,3) THEN 3->Com_cnc0 W0 : Com_cnc0 <gestion association C0 vers R6S1 ! IF RE(I5,0)+RE(I5,2)+RE(I5,3) THEN EXEC MCNCT0(Res_cnc0;Com_cnc0;Mod_cnc0;R6s1;500=>Err_cnc0) BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MCNCT0 Res_cnc0 Com_cnc0 Mod_cnc0 R6s1 500 B0 W0 W1 CW0 B3 : : : : : RESET : bit COMMAND : word MODULE : word APPLI : pt_w ERROR : bit Err_CNC0 TIMEOUT : word Res_cnc0 Com_cnc0 Mod_cnc0 R6s1 application distante (R6S1) Err_cnc0 <affichage etat de la connexion C0 ! Ste_cnc0->O4,0[4] MCNCT0,STATE : Ste_cnc0 <si association C0 ouverte,O3,0 clignote ! IF [Ste_cnc0=0] THEN SY6->O3,0 MCNCT0,STATE H : Ste_cnc0 ___________________________________________________________________________ 1/2 Exemple d'application 1 <visu MWRITE0 ! MWRIT0,READY.NOT MWRIT0,ERROR->O4,4 <ecriture d’un W et d’un bit dans R6S1 (C0) et relance des que ready + comptage ! IF I5,4.MWRIT0,READY.[MCNCT0,STATE=0] THEN INC W100;EXEC MWRIT0(B4;MCNCT0,CHANNEL;CW11;;W100;CW10;;W10;;;;;;=>); INC W3;RESET B4 BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MWRIT0 B4 MCNCT0,CHANNEL RESET : bit CHANNEL : word VAR0 : word SIZE0 : word CW11 W100 DATA0 : pt_w CW10 VAR1 : word SIZE1 : word DATA1 : pt_w VAR2 : word W10 SIZE2 ERROR : bit : word DATA2 : pt_w VAR3 : word SIZE3 : word DATA3: pt_w MCNCT0,STATE W100 B4 MCNCT0,CHANNEL CW11 CW10 W10 : : : : : : : Ste_cnc0 Val_w100 Res_wri0 Cha_cnc0 Mot_w100 Bit_b10 Val_b10 W100 valeur à écrire dans w100distant variable distante (R6S1) variable distante (R6S1) valeur à écrire dans R6S1 ___________________________________________________________________________ 1/3 H <visu MREAD0 ! MREAD0,READY.NOT MREAD0,ERROR->O3,7 <lecture du W et du bit ecrits dans R6S1 (C0) par l’OFB precedent et relance .. ! IF I5,4.MREAD0,READY.[MCNCT0,STATE=0] THEN EXEC MREAD0(B5;MCNCT0,CHANNEL;CW11;2;W110;CW10;2;W11;;;;;;=>); INC W4;RESET B5 BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MREAD0 B4 MCNCT0,CHANNEL CW11 2 RESET : bit CHANNEL : word VAR0 : word SIZE0 : word W110 DATA0 : pt_w CW10 VAR1 : word SIZE1 : word DATA1 : pt_w VAR2 : word 2 W11 SIZE2 ERROR : bit : word DATA2 : pt_w VAR3 : word SIZE3 : word DATA3: pt_w MCNCT0,STATE B5 MCNCT0,CHANNEL CW11 W110 CW10 W11 H : : : : : : : Ste_cnc0 Res_rea0 Cha_cnc0 Mot_w100 Res_w100 Bit_b10 Res_b10 variable resultat variable resultat distante (R6S1) lecture W100 dans R6S1 distante (R6S1) lecture dans R6S1 ___________________________________________________________________________ 1/4 Exemple d'application 1 <Visu MREAD1 (structure + tableau) ! MREAD1,READY.NOT MREAD1,ERROR->O3,4 <lecture d’une structure + un tableau de 250 DW dans R6S1 (C0) + comptage ! IF I5,A.MREAD1,READY.[Ste_cnc0=0] THEN EXEC MREAD1(;Cha_cnc0;Voit;14;Res_voit;T250_dw;1000;Res_dw;;;;;;=>); INC W5 BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MREAD1 Cha _cnc0 Voit 14 Res voit T250_dw 1000 Res_dw RESET : bit CHANNEL : word VAR0 : word SIZE0 : word ERROR : bit DATA0 : pt_w VAR1 : word SIZE1 : word DATA1 : pt_w VAR2 : word SIZE2 : word DATA2 : pt_w VAR3 : word SIZE3 : word DATA3: pt_w MCNCT0,STATE MCNCT0,CHANNEL CW13 W122 CW15 W100 : : : : : : Ste_cnc0 Cha_cnc0 Voit Res_voit T250_dw Res_dw variable resultat variable resultat distante (R6S1) lect. structure ds R6S1 distante (R6S1) lecture 250 dw ds R6S1 ___________________________________________________________________________ 1/5 H <Visu MURCV0 ! MURCV0,READY.NOT MURCV0,ERROR->O3,6 <reception donnees non sollicitees (information report) de R6S1 (C0)+ comptage ! IF I5,6.MURCV0,READY.[Ste_cnc0=0] THEN EXEC MURCV0(Res_urc0;Cha_cnc0;Umot_w15;2;Res_uw15=>);INC W7 BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MURCV0 Res_urc0 Cha_cnc0 Umot_w15 2 RESET : bit CHANNEL : word VAR : word SIZE : word Res_uw15 BUFFER : pt_w MCNCT0,STATE B6 MCNCT0,CHANNEL CW12 W20 : : : : : ERROR : bit Ste_cnc0 Res_urc0 Cha_cnc0 Umot_w15 variable distante (R6S1) Res_uw15 resultat reception info report <Visu MURCV1 ! MURCV1,READY.NOT MURCV1,ERROR->O3,5 <reception donnees non sollicitees (information report) de R6S1 (C0) + comptage ! IF I5,7.MURCV1,READY.[Ste_cnc0=0] THEN EXEC MURCV1(Res_urc1;0;Bit_b10;2;Res_b10=>);INC W6 BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MURCV1 Res_urc1 0 Bit_b10 2 Res_b10 MCNCT0,STATE B7 CW10 W11 H : : : : RESET : bit CHANNEL : word VAR : word SIZE : word ERROR : bit BUFFER : pt_w Ste_cnc0 Res_urc1 Bit_b10 variable distante (R6S1) Res_b10 resultat lecture dans R6S1 ___________________________________________________________________________ 1/6 Exemple d'application 1 <lecture du STATUS de R6S1 sur C0 ! IF I5,8.MRSTA0,READY.[Ste_cnc0=0] THEN EXEC MRSTA0(Res_ssta;Cha_cnc0;=>) BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MRSTA0 Res_ssta Cha_cnc0 MCNCT0,STATE B8 MCNCT0,CHANNEL ERROR : bit RESET : bit CHANNEL : word UNSOL : bit : Ste_cnc0 : Res_ssta : Cha_cnc0 <reception Unsollicited STATUS emis par R6S1 sur C0 ! IF I5,9.MRSTA1,READY.[Ste_cnc0=0] THEN SET B13; EXEC MRSTA1(Res_ssta;Cha_cnc0;B13=>) BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MRSTA1 Res_ssta Cha_cnc0 B13 MCNCT0,STATE B8 MCNCT0,CHANNEL RESET : bit CHANNEL : word UNSOL : bit ERROR : bit : Ste_cnc0 : Res_ssta : Cha_cnc0 <affichage etat (STATUS —>Physic ) equipement distant ! (MRSTA1,PHYSIC)->Physic;Physic,0->O3,1 W21 : Physic statut physique equipement dist. <incrementation de W120 pour lecture depuis R6S1 ! INC Dmot_120 W120 : Dmot_120 variable lue par R6S1 ___________________________________________________________________________ 1/7 H 1.2-3 Adresses OSI, coupleur TSX ETH 200 Couche réseau _____________________________________________________________________ Paramètres Valeurs _____________________________________________________________________ CONFIGURATION TIMER (S) 20 NPDU LIFETIME (500 MS) 3 NSAP (H) 4954454C454D4543412E060001 _____________________________________________________________________ Couche transport _____________________________________________________________________ Paramètres Valeurs _____________________________________________________________________ RETRY TIMER (MS) 2000 MAX RETRIES 3 WINDOW INFO TIMER (MS) 2000 MAX CREDIT 1 TSEL (H) 0001 _____________________________________________________________________ Couche session _____________________________________________________________________ Paramètres Valeurs _____________________________________________________________________ DISCONNECT TIME OUT (S) 60 SSEL (H) 0001 _____________________________________________________________________ Couche application _____________________________________________________________________ Paramètres Valeurs _____________________________________________________________________ APPLICATION NAME R6S0_MMS AP TITLE (H) AE QUALIFIER (H) PSEL (H) 00000001 _____________________________________________________________________ ASS. MMS OUVERTES ASS. MMS ACCEPTEES H : 16 : 16 ___________________________________________________________________________ 1/8 Exemple d'application 1 Applications distantes _________________________________________________________________ APPLICATION NAME : R6S1_MMS AP TITLE : AE QUALIFIER : PSEL : 00000001 SSEL : 0001 TSEL : 0001 NSAP : 4954454C454D4543412E060101 _________________________________________________________________ 1.2-4 Constantes PL7-3 CW0 -> CW31 Constante de l'application NB CW CONFIG. : 100 _______________________________________________________________ Constante valeur Constante valeur _______________________________________________________________ CW0 =8 CW19 =0 CW5 =0 CW20 =0 CW6 =0 CW21 =0 CW7 =0 CW22 =0 CW8 =0 CW23 =0 CW9 =0 CW24 =0 CW10 =0 CW25 =0 CW11 =1 CW26 =0 CW12 =3 CW27 =0 CW13 =4 CW28 =0 CW14 =0 CW29 =0 CW15 =2 CW30 =0 CW16 =0 CW31 =0 CW17 =0 CW18 =0 _______________________________________________________________ CW1 = R6S1_MMS ___________________________________________________________________________ 1/9 H 1.2-5 Listes des variables MMS Liste des variables MMS locales ________________________________________________________________ Objet PL7_3 Nom_MMS Portee Type : W50 : MT5_W50 : VMD : AR-INT16 5 ________________________________________________________________ Objet PL7_3 Nom_MMS Portee Nom domaine Type : W120 : MD_W120 : DOMAIN : MMS : AR-INT16 500 ________________________________________________________________ Objet PL7_3 Nom_MMS Portee Nom appli Type : B50 : MABIT_50 : AA : R6S1_MMS : BOOL ________________________________________________________________ Objet PL7_3 Nom_MMS Portee Nom appli Type : DW200 : MADW_200 : AA : R6S1_MMS : AR-INT32 5 ________________________________________________________________ H ___________________________________________________________________________ 1/10 Exemple d'application 1 Liste des variables MMS distantes ________________________________________________________________ Var MMS Portee Type Alias Objet PL7_3 Rang var MMS : MBIT_B10 : VMD : BOOL : Bit_b10 : CW10 :0 ________________________________________________________________ Var MMS Portee Type Alias Objet PL7_3 Rang var MMS : MMOT_W100 : VMD : INT16 : Mot_w100 : CW11 :1 ________________________________________________________________ Var MMS Portee Type Alias Objet PL7_3 Rang var MMS : MT250_DW1000 : VMD : AR-UINT32 250 : T250_dw : CW15 :2 ________________________________________________________________ Var MMS Portee Type Alias Objet PL7_3 Rang var MMS : MUMOT_W15 : VMD : INT16 : Umot_w15 : CW12 :3 ________________________________________________________________ Var MMS Portee Type Description structure Taille totale Alias Objet PL7_3 Rang var MMS : VOITURE : VMD : STRUCT { +0 INT16 +1 VSTR 10 +6 BOOL } :7 : Voit : CW13 :4 ________________________________________________________________ ___________________________________________________________________________ 1/11 H 1.2-6 Liste des symboles PL7-3 H Repère Symbole B0 B3 B4 B5 B6 B7 B8 B9 B50 CW0 CW10 CW11 CW12 CW13 CW15 DW200 DW1000 MCNCT0,IND MCNCT0,CHANNEL MCNCT0,INHIB MCNCT0,READY MCNCT0,STATE MCNCT0,STATUS W0 W1 W2 W10 W11 W20 W21 W50 W100 W110 W120 W122 W1000 Res_cnc0 Err_cnc0 Res_wri0 Res_rea0 Res_urc0 Res_urc1 Res_ssta Seconde Abit_50 R6s1 Bit_b10 Mot_w100 Umot_w15 Voit T250_dw Atdw_200 Res_tdw Ind_cnc0 Cha_cnc0 Inh_cnc0 Rea_cnc0 Ste_cnc0 Sts_cnc0 Com_cnc0 Mod_cnc0 Tim_cnc0 Val_b10 Res_b10 Res_uw15 Physic T5_w50 Val_w100 Res_w100 Dmot_120 Res_voit Res_dw Affich. Commentaire variable AA spec. lue par R6S1 application distante (R6S1) variable distante (R6S1) variable distante (R6S1) variable distante (R6S1) variable distante (R6S1) variable distante (R6S1) variable AA spec. lue par R6S1 resultat lecture dans R6S1 valeur à ecrire dans R6S1 resultat lecture dans R6S1 resultat reception info report statut physique equipement dist. variable ecrite et lue par R6S1 valeur à ecrire dans w100distant resultat lecture W100 dans R6S1 variable lue par R6S1 resultat lect. structure ds R6S1 resultat lecture 250 dw ds R6S1 ___________________________________________________________________________ 1/12 Exemple d'application 1.3 1 Application de l'équipement R6S1 1.3-1 Configuration materielle Référence du bac : TSX RKN 82F _____________________________________________________________________ BAC 0/1 S U P 7 0 6 7 / 4 5 5 D E T D S T E T H 1 6 1 6 2 0 0 1 3 2 5 _____________________________________________________________________ MODULE ALIM M 0 1 2 3 4 5 6 7 _____________________________________________________________________ 1.3-2 Programme tâche maitre, module programme principal : MAST/MAIN <accept sur association C0 ouverte par R6S0 ! IF RE(I2,0) THEN EXEC MCNCT0(Res_cnc0;1;7;R6s0;500=>Err_cnc0) BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MCNCT0 Res_cnc0 1 7 R6s0 500 B0 CW0 B1 RESET : bit COMMAND : word MODULE : word APPLI : pt_w ERROR : bit Err_CNC0 TIMEOUT : word : Res_cnc0 reset ofb : R6s0 application : Err_cnc0 distante (R6S0) <si association C0 ouverte, O3,0 clignote ! IF [MCNCT0,STATE=0] THEN SY6->O3,0 <emission (info rep.) vers R6S0 (C0) mot w15 toutes les secondes(apres ACCEPT) ! IF I2,1.MUSND0,READY.SY6.[MCNCT0,STATE=0] THEN INC W15;EXEC MUSND0(B6;MCNCT0,CHANNEL;;W15;;1;;;;;;;;;;;;=>) ___________________________________________________________________________ 1/13 H BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MUSND0 B6 MCNCT0,CHANNEL W15 RESET : bit CHANNEL : word VAR0_B : pt_b VAR0_W : pt_w ERROR : bit VAR0_DW : pt_d 1 NBELT0 : word VAR1_B : pt_b VAR1_W : pt_w VAR1_DW : pt_d NBELT1 : word VAR2_B : pt_b VAR2_W: pt_W VAR2_DW : pt_d NBELT2: word VAR3_B: pt_b VAR3_W: pt_w VAR3_DW: pt_d NELBELT3: word W15 B6 : Umot_w15 mot emis par unsollicited /sec : Res_snd0 reset ofb <emission (info rep.) vers R6S0 (C0) bit B10 toutes les secondes(apres ACCEPT) ! IF I2,2.MUSND1,READY.NOT SY6.[MCNCT0,STATE=0] THEN SY5->B10;EXEC MUSND1(B6;MCNCT0,CHANNEL;B10;;;1;;;;;;;;;;;;=>) BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MUSND1 B6 MCNCT0,CHANNEL B10 1 RESET : bit CHANNEL : word VAR0_B : pt_b VAR0_W : pt_w ERROR : bit VAR0_DW : pt_d NBELT0 : word VAR1_B : pt_b VAR1_W : pt_w VAR1_DW : pt_d NBELT1 : word VAR2_B : pt_b VAR2_W: pt_W VAR2_DW : pt_d NBELT2: word VAR3_B: pt_b VAR3_W: pt_w VAR3_DW: pt_d NELBELT3: word H B10 : Bit_b10 B6 : Res_snd0 reset ofb ___________________________________________________________________________ 1/14 Exemple d'application 1 <emission UNSOLL. STATUS vers R6S0(C0) avec surveillance /10 cycles (ap. ACCEPT ! IF I2,3.MSSTA0,READY.[MCNCT0,STATE=0] THEN EXEC MSSTA0(Res_sta0;MCNCT0,CHANNEL;10=>) BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MSSTA0 Res sta0 MCNCT0,CHANNEL 10 B7 ERROR : bit RESET : bit CHANNEL : word TCYCLE : word : Res_sta0 reset ofb <initialisation variables pour INITIATE association C1 ! IF RE(I2,4) THEN 0->Com_cnc1 W1 : Com_cnc1 <initialisation variable pour CONCLUDE C1 ! IF RE(I2,6) THEN 2->Com_cnc1 W1 : Com_cnc1 <initialisation variable pour ABORT C1 ! IF RE(I2,7) THEN 3->Com_cnc1 W1 : Com_cnc1 <gestion association C1 vers R6S0 ! IF RE(I2,4)+RE(I2,6)+RE(I2,7) THEN EXEC MCNCT1(Res_cnc1;Com_cnc1;7;R6s0;500=>Err_cnc1) BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MCNCT1 Res_cnc1 Com_cnc1 7 R6s0 500 B8 W1 CW0 B9 : : : : RESET : bit COMMAND : word MODULE : word APPLI : pt_w ERROR : bit Err_CNC1 TIMEOUT : word Res_cnc1 reset ofb Com_cnc1 R6s0 application Err_cnc1 distante (R6S0) <affichage etat de l’association C1 ! MCNCT1,STATE->O3,C[4] <si association C1 ouverte o3,1 clignote ! IF [MCNCT1,STATE=0] THEN SY6->O3,1 ___________________________________________________________________________ 1/15 H <visu MWRIT0 ! MWRIT0,READY.NOT MWRIT0,ERROR->O3,4 <ecriture d’un tableau de 5 W dans R6S0 (C1) et comptage ! IF I2,8.MWRIT0,READY.[MCNCT1,STATE=0] THEN INC Val_w50;EXEC MWRIT0(Res_rea0;MCNCT1,CHANNEL;T5_w50;10;Val_w50;;;;;;;;;=>); INC W4 BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MWRIT0 Res_read MCNCT1,CHANNEL T5_W50 10 VAL_w50 RESET : bit CHANNEL : word VAR0 : word SIZE0 : word ERROR : bit DATA0 : pt_w VAR1 : word SIZE1 : word DATA1 : pt_w VAR2 : word SIZE2 : word DATA2 : pt_w VAR3 : word SIZE3 : word DATA3: pt_w W60 B11 CW10 : Val_w50 valeurs a ecrire dans R6S0 : Res_rea0 reset ofb : T5_w50 variable distante (R6S0) <visu MREAD1 ! MREAD1,READY.NOT MREAD1,ERROR->O3,8 <lecture d’un tableau de 500 W domaine MMS specifique dans R6S0 (C1)et comptage ! IF I2,A.MREAD1,READY.[MCNCT1,STATE=0] THEN EXEC MREAD1(B12;MCNCT1,CHANNEL;Dmot_120;1000;Res_d120;;;;;;;;;=>); INC W6 H ___________________________________________________________________________ 1/16 Exemple d'application 1 BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MREAD1 B12 MCNCT1,CHANNEL Dmot_120 1000 Res_d120 ERROR : bit RESET : bit CHANNEL : word VAR0 : word SIZE0 : word DATA0 : pt_w VAR1 : word SIZE1 : word DATA1 : pt_w VAR2 : word SIZE2 : word DATA2 : pt_w VAR3 : word SIZE3 : word DATA3: pt_w CW31 W120 : Dmot_120 variable distante (R6S0) : Res_d120 resultat lecture dans R6S0 <visu MREAD0 ! MREAD0,READY.NOT MREAD0,ERROR->O3,7 <lecture tab 5 W + un BIT + tab 5 DW AA spec. dans R6S0(C1)et comptage ! IF I2,9.MREAD0,READY.[MCNCT1,STATE=0] THEN EXEC MREAD0(B12;MCNCT1,CHANNEL;CW10;10;W70;CW29;2;W110;CW30;20;W30;;;=>); INC W5 BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MREAD0 B12 MCNCT1,CHANNEL RESET : bit CHANNEL : word VAR0 : word SIZE0 : word CW10 10 W70 CW29 DATA0 : pt_w VAR1 : word SIZE1 : word DATA1 : pt_w VAR2 : word 2 W110 CW30 20 SIZE2 : word DATA2 : pt_w VAR3 : word SIZE3 : word DATA3: pt_w W30 CW10 W70 CW29 W110 CW30 ERROR : bit : : : : : T5_w50 Res_w50 Abit_50 Res_ab50 Atdw_200 variable resultat variable resultat variable distante (R6S0) lecture dans R6S0 distante (R6S0) lecture dans R6S0 distante (R6S0) ___________________________________________________________________________ 1/17 H <ouverture association C2 avec APRIL ! IF RE(I2,F) THEN EXEC MCNCT2(B12;0;7;April_s;500=>) BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MCNCT2 B12 0 7 April_s 500 CW20 RESET : bit COMMAND : word MODULE : word APPLI : pt_w ERROR : bit TIMEOUT : word : April_s application distante (APRIL) <emission (info report) vers APRIL (C2) w15 toutes les secondes ! IF I2,B.MUSND1,READY.SY6.[MCNCT2,STATE=0] THEN INC W15;EXEC MUSND1(B6;MCNCT2,CHANNEL;;W15;;1;;;;;;;;;;;;=>) BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MUSND1 B6 MCNCT0,CHANNEL W15 RESET : bit CHANNEL : word VAR0_B : pt_b VAR0_W : pt_w ERROR : bit VAR0_DW : pt_d 1 NBELT0 : word VAR1_B : pt_b VAR1_W : pt_w VAR1_DW : pt_d NBELT1 : word VAR2_B : pt_b VAR2_W: pt_W VAR2_DW : pt_d NBELT2: word VAR3_B: pt_b VAR3_W: pt_w VAR3_DW: pt_d NELBELT3: word H W15 : Umot_w15 mot emis par unsollicited /sec B6 : Res_snd0 reset ofb ___________________________________________________________________________ 1/18 Exemple d'application 1 <accept sur association C3 ouverte par APRIL ! IF RE(I2,E) THEN EXEC MCNCT3(B12;1;7;April_c;500=>B13) BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MCNCT3 B12 1 7 April_c 500 CW40 RESET : bit COMMAND : word MODULE : word APPLI : pt_w ERROR : bit B13 TIMEOUT : word : April_c application distante (APRIL) <visu MREAD2 ! MREAD2,READY.NOT MREAD2,ERROR->O3,5 <lecture du bit %MX28 dans APRIL (C3) et comptage (apres ACCEPT) ! IF I2,D.MREAD2,READY.[MCNCT3,STATE=0] THEN EXEC MREAD2(B12;MCNCT3,CHANNEL;Mx28;2;Res_apri;;;;;;;;;=>); INC W3 BLOCS FONCTIONS OPTIONNELS: PARAMETRES D’ENTREE/SORTIE MREAD2 B12 MCNCT3,CHANNEL Mx28 2 Res_april RESET : bit CHANNEL : word VAR0 : word SIZE0 : word ERROR : bit DATA0 : pt_w VAR1 : word SIZE1 : word DATA1 : pt_w VAR2 : word SIZE2 : word DATA2 : pt_w VAR3 : word SIZE3 : word DATA3: pt_w CW33 W115 : Mx28 variable distante (APRIL 7000) : Res_apri resultat lecture bit run (APRIL) <animation variable lue par R6S0 ! INC W600;INC W1000 <animation variable lue par R6S0 ! INC Voit W122 : Voit structure lue par R6S0 ___________________________________________________________________________ 1/19 H 1.3-3 Adresses OSI, coupleur TSX ETH 200 Couche reseau ____________________________________________________________________ Paramètres Valeurs ____________________________________________________________________ CONFIGURATION TIMER (S) 20 NPDU LIFETIME (500 MS) 3 NSAP (H) 4954454C454D4543412E060101 ____________________________________________________________________ Couche transport ___________________________________________________________ Paramètres Valeurs ___________________________________________________________________ RETRY TIMER (MS) 2000 MAX RETRIES 3 WINDOW INFO TIMER (MS) 2000 MAX CREDIT 1 TSEL (H) 0001 ___________________________________________________________________ Couche session ____________________________________________________________________ Paramètres Valeurs ____________________________________________________________________ DISCONNECT TIME OUT (S) 60 SSEL (H) 0001 ____________________________________________________________________ Couche application ____________________________________________________________________ Paramètres Valeurs ____________________________________________________________________ APPLICATION NAME R6S1_MMS AP TITLE (H) AE QUALIFIER (H) 2000 MAX CREDIT 1 PSEL (H) 00000001 ____________________________________________________________________ ASS. MMS OUVERTES ASS. MMS ACCEPTEES H : 16 : 16 ___________________________________________________________________________ 1/20 Exemple d'application 1 Applications distantes _________________________________________________________________ APPLICATION NAME AP TITLE AE QUALIFIER PSEL SSEL TSEL NSAP : R6S0_MMS : : : 00000001 : 0001 : 0001 : 4954454C454D4543412E060001 APPLICATION NAME AP TITLE AE QUALIFIER PSEL SSEL TSEL NSAP : APRIL_S1S : : : 00000002 : 0000 : 0101 : 49415052494C00000000EDA0011501 APPLICATION NAME AP TITLE AE QUALIFIER PSEL SSEL TSEL NSAP : APRIL_S1C : : : 00000001 : 0000 : 0101 : 49415052494C00000000EDA0011501 _________________________________________________________________ _________________________________________________________________ _________________________________________________________________ ___________________________________________________________________________ 1/21 H 1.3-4 Constantes PL7-3 CW0 -> CW49 Constantes de l'application NB CW CONFIG. : 128 _______________________________________________________________ Constante valeur Constante valeur _______________________________________________________________ CW0 =8 CW27 =0 CW5 =0 CW28 =0 CW6 =0 CW29 =0 CW7 =0 CW30 =1 CW8 =0 CW31 =2 CW9 =0 CW32 =2 CW10 =5 CW33 =4 CW11 =0 CW34 =5 CW12 =0 CW35 =3 CW13 =0 CW36 =0 CW14 =0 CW37 =0 CW15 =0 CW38 =0 CW16 =0 CW39 =0 CW17 =0 CW40 =9 CW18 =0 CW46 =0 CW19 =0 CW47 =0 CW20 =9 CW48 =0 CW26 =0 CW49 =0 _______________________________________________________________ CW1 CW21 CW41 = R6S0_MMS = APRIL_S1S = APRIL_S1C 1.3-5 Listes des variables MMS Liste des variables MMS locales ________________________________________________________________ Objet PL7_3 Nom_MMS Portee Type : : M DAYTIME : VND : GENERALIZED_TIME ________________________________________________________________ Objet PL7_3 Nom_MMS Portee Type : W50 : MT5_W50 : VMD : AR-INT16 5 ________________________________________________________________ H Objet PL7_3 : B10 Nom_MMS : MBIT_B10 Portee : VMD Type : BOOL ________________________________________________________ ___________________________________________________________________________ 1/22 Exemple d'application 1 ________________________________________________________________ Objet PL7_3 Nom_MMS Portee Type : W100 : MMOT_100 : VMD : INT16 ________________________________________________________________ Objet PL7_3 Nom_MMS Portee Type : DW1000 : MT 250_DW1000 : VMD : AR-UINT32 250 ________________________________________________________________ Objet PL7_3 Nom_MMS Portee Type : W200 : MT 500W : VMD : AR-INT16 500 ________________________________________________________________ Objet PL7_3 Nom_MMS Portee Type : W15 : MUMOT_15 : VMD : INIT16 ________________________________________________________________ Objet PL7_3 Nom_MMS Portee Type Description structure : W900 : VOITURE : VMD : STRUCT { +0 INIT16 NB PORTE +1 VSTR 10 COULEUR +6 BOOL RADIO } Taille totale :7 ________________________________________________________ Objet PL7_3 : W910 Nom_MMS : VSTRING Portee : VMD Type : VSTR 20 _ ______________________________________________________________ ___________________________________________________________________________ 1/23 H Liste des variables MMS distantes ___________________________________________________ Var MMS : MABIT_50 Nom appli : R6S1_MMS Portee : AA Type : BOOL Alias : Abit_50 Objet PL7_3 : CW29 Rang var MMS :0 _________________________________________________________ Var MMS : MADW_200 Nom appli : R6S1_MMS Portee : AA Type : AR-INT32 5 Alias : Atdw_200 Objet PL7_3 : CW30 Rang var MMS :1 _________________________________________________________ Var MMS : MD_W120 Portee : DOMAIN Nom domaine : MMS Type : AR-INT16 500 Alias : Dmot_120 Objet PL7_3 : CW31 Rang var MMS :2 _________________________________________________________ Var MMS : MT250_DW1000 Portee : VMD Type : AR-UINT32 250 Alias : Mtdw1000 Objet PL7_3 : CW35 Rang var MMS :3 _________________________________________________________ Var MMS : RUN_API Portee : VMD Type : BSTR 1 Alias : Mx28 Objet PL7_3 : CW33 Rang var MMS :4 _________________________________________________________ Var MMS : MT5_W50 Portee : VMD Type : AR-INT16 5 Alias : T5_w50 Objet PL7_3 : CW10 Rang var MMS :5 ___________________________________________________ H ___________________________________________________________________________ 1/24 Exemple d'application 1 1.3-6 Liste des symboles PL7-3 Repère Symbole B0 B1 B6 B7 B8 B9 B10 B11 CW0 CW10 CW20 CW29 CW30 CW31 CW33 CW35 CW40 DW30 W0 W1 W15 W50 W60 W70 W100 W110 W115 W120 W200 W122 W900 W910 DW1000 Res_cnc0 Err_cnc0 Res_snd0 Res_sta0 Res_cnc1 Err_cnc1 Bit_b10 Res_rea0 R6s0 T5_w50 April_s Abit_50 Atdw_200 Dmot_120 Mx28 Mtdw1000 April_c Res_adw Com_cnc0 Com_cnc1 Umot_w15 At5_w50 Val_w50 Res_w50 Mot_w100 Res_ab50 Res_apri Res_d120 T_500w Voit Us_w900 Vstring T250_dw Affich. Commentaire reset ofb reset ofb reset ofb reset ofb reset ofb application distante (R6S0) variable distante (R6S0) application distante (APRIL) variable distante (R6S0) variable distante (R6S0) variable distante (R6S0) variable distante (APRIL 7000) variable distante (R6S0) application distante (APRIL) resultat lecture dans R6S0 mot emis par unsollicited /sec tableau 5 W ecrit & lu par april valeurs a ecrire dans R6S0 resultat lecture dans R6S0 mot ecrit et lu par R6S0 resultat lecture dans R6S0 resultat lecture bit run (APRIL) resultat lecture dans R6S0 tableau de 500 W lu par APRIL structure lue par R6S0 visible string 20 lu par APRIL tab DW1000->DW1250 lu par R6S0 ___________________________________________________________________________ 1/25 H H ___________________________________________________________________________ 1/26