FIP Présentation Patrick MONASSIER Université Lyon 1 France.

Slides:



Advertisements
Présentations similaires
Bratec Martin ..
Advertisements

NOTIFICATION ÉLECTRONIQUE
Fragilité : une notion fragile ?
SEMINAIRE DU 10 AVRIL 2010 programmation du futur Hôtel de Ville
Phono-sémantique différentielle des monosyllabes italiens
MAGGIO 1967 BOLOGNA - CERVIA ANOMALIES DU SOMMEIL CHEZ L'HOMME
droit + pub = ? vincent gautrais professeur agrégé – avocat
Transcription de la présentation:

FIP Présentation Patrick MONASSIER Université Lyon 1 France

FIP Historique IEC Central Office FIP Flux Information Process 3, rue de Varembé P.O. Box 131 CH - 1211 GENEVA 20 Switzerland Phone: +41 22 919 02 11 Fax: +41 22 919 03 00 http://www.iec.org La Commission Electrotechnique Internationale (CEI) est la première organisation mondiale qui élabore et publie des normes internationales pour tout ce qui a trait à l'électricité, à l'électronique et aux technologies apparentées. Celles-ci servent de base à la normalisation nationale et de références lorsqu'il s'agit de rédiger des soumissions et des contrats internationaux. FIP Flux Information Process L’association WorldFIP a été créée en mars 1987, sous le nom originel de CLUB FIP (Flux Information Process) Le processus de décision de créer un réseau de terrain industriel a été initié avec le ministère de l’industrie en 1982 En 1984, le groupe projet publia les concepts FIP. Plusieurs constructeurs viennent rejoindre le groupe en 1986 - TELEMECANIQUE - MERLIN GERIN - CGEE ALSTOM - CSEE (CETIA) FIP est standardisé sous la norme WordFip EN50170 (européenne) et IEC61158 http://www.worldfip.org

Modèle PRODUCTEUR / CONSOMMATEUR FIP Présentation FIP permet la répartition de l’intelligence, du contrôle, des données Unité de Traitement Capteurs / Actionneurs FIP Modèle PRODUCTEUR / CONSOMMATEUR Le mécanisme de diffusion des données, mécanisme de base de FIP, assure les cohérences spatiales et temporelles de données chez tous les abonnés consommant un ensemble de variables.

FIP Topologie générale Vitesses : Norme couche physique cuivre Cable principal 1 Cable principal 2 Segments terminaux Vitesses : Norme couche physique cuivre 3 normes : - S1 : 31,25 Kb/s basse vitesse - S2 : 1 Mb/s haute vitesse - S3 : 2,5 MB/s haute vitesse - Fibre optique 5 Mb/s JB Boîte de jonction TAP Dérivateur REP Répéteur DB Boîte de diffusion DS Abonné déconnectable localement DNS Abonné non déconnectable localement

FIP Codage Bit Le codage bit est du type MANCHESTER Logique « 1 » ou EB+ Logique « 0 » ou EB- Violation V+ Violation V-

FIP Trame FIP Toute trame FIP est composée de 3 parties : - La séquence de début de trame - Le champ de contrôle et données - La séquence de fin de trame PRE FSD FED PRE permet de synchroniser l’horloge de réception FSD indique à la couche liaison de données le début de l’information utile (CAD) CAD contient les contrôles et les données utile FED permet à la couche liaison de trouver la fin du champ CAD PRE Préambule Preambule FSD Délimiteur de début de trame Framse Start Delimiter CAD Contrôle et données Control and data FED Délimiteur de fin de trame Frame End delimiter La couche physique ajoute 21 symboles à toute trame émise - 672 us à 31,25 Kb/s - 21 us à 1 Mb/s - 8,4 us à 2,5 Mb/s

Couche liaison de données FIP Couche liaison de données 2 types de services de transmissions : Échange de variables identifiées Transfert de messages Couche liaison Les échanges peuvent se faire : Cycliquement - périodicité par variable définie à l'initialisation Sur demande - sur demandes explicite des utilisateurs Echanges Adressage : variables - 1 identifieur 16 bits par variable messages - en point à point uniquement, adresses codées sur 24 bits Adressages

Couche liaison de données FIP Couche liaison de données Interface couche application – couche liaison de données Ne génère aucune activité sur le bus K A Sur cet exemple, la couche liaison de données contient : Un buffer produit correspond à l’identifieur K Un buffer consommé correspond à l’identifieur A

FIP Tranfert de buffer Les buffers produits ou consommés sont également accessibles par le bus, qui prélève ou dépose des valeurs de buffer. Ce mécanisme s’appelle le transfert de buffer. Les buffers sont à double accès, la couche liaison de données doit résoudre les problèmes posés par les conflits d’accès.

FIP Tranfert de buffer Indication d’émission de la valeur sur le bus Donnée produite K Indication de réception de la valeur Donnée consommée A Pour réaliser le mécanisme de transfert de buffer, l’arbitre de bus émet des trames question ID_DAT, en précisant le Numéro d’Identifieur

Mécanisme d’allocation du medium FIP Mécanisme d’allocation du medium L’arbitre de Bus BA : Bus arbitrer contient la table de scrutation des variables Le réseau FIP est constitué de stations possédant deux types de fonctionnalités : - L’arbitrage de bus : gestion d’accès au medium - La fonction production / consommation

Production d’une variable FIP Production d’une variable Le modèle producteur - Consommateur L’arbitreur de bus C fenvoie une demande de valeur concernant la variable A La valeur de la variable A est mise en diffusion générale Consommateur Consommateur Producteur Consommateur

Table d’arbitrage de bus FIP Table d’arbitrage de bus Les variables identifiées produites ou consommées par un utilisateur peuvent être : de type simple : - Booléen - Entier (notation complémentaire à 2) - Chaine binaire (maxi 32 octets) - Chaine d'octets (maxi 126 octets) - Chaine visible (maxi 126 octets) - Temps 14 caractères : AAA MM JJ HH MM SS - Flottant simple précision 4 octets (ANSI IEEE 754) - Flottant double précision 8 octets (ANSI IEEE 754) - BCD De type structuré : - structure de type simple - structure de structure - tableau - tableau de tableau -tableau de structure ………… Exemple L’exemple ci-dessous indique comment configurer l’arbitre de bus pour garantir une scrutation déterministe Le temps indiqué comprend l’émission et la réception, ainsi qu’un temps de retournement de 20 us.

Scrutation des variables FIP Scrutation des variables Le dessin ci-dessous représente une répartition possible des identifieurs A à F sur un axe de temps, en fonction des périodicités de chacune des variables A 5 ms B 10 ms C 15 ms D, E 20 ms F 30 ms Chaque tranche de temps constitue un cycle élémentaire : ici égal à 5 ms

Scrutation des variables FIP Scrutation des variables A 5 ms B 10 ms C 15 ms D, E 20 ms F 30 ms Charge trafic 1 Mb/s 5 ms Temps pour le trafic apériodique Trafic périodique temps En fonction des renseignements précédents, on peut dresser la table de charge du réseau

Scrutation des variables FIP Scrutation des variables A 5 ms B 10 ms C 15 ms D, E 20 ms F 30 ms Cycle élémentaire Durée du cycle élémentaire temps Macrocycle L’arbitre de bus déroulera à l’infini les mêmes cycles

Scrutation des variables FIP Scrutation des variables A 5 ms B 10 ms C 15 ms D, E 20 ms F 30 ms Temps pour le trafic apériodique Une autre répartition plus uniforme des identifieurs au sein des cycles élémentaires pourrait être la suivante

FIP Cycle élémentaire Chaque cycle élémentaire est composé de 4 fenêtres Fenêtre de synchronisation – remplissage (padding) Fenêtre d’échange des messages apériodiques Fenêtre d’échange des variables apériodiques Fenêtre d’échange des variables cycliques Echanges cycliques Déterministes Echanges acycliques Non Déterministes Remplissage

Demande de transfert variable périodique FIP Demande de transfert variable périodique Le modèle producteur - Consommateur L’arbitreur de bus C fenvoie une demande de valeur concernant la variable A La valeur de la variable A est mise en diffusion générale Consommateur Consommateur Producteur Consommateur

Demande de transfert variable apériodique FIP Demande de transfert variable apériodique Ce mécanisme se déroule en 3 étapes : Pendant le trafic périodique : positionnement d’une requête Etape 1 Requête File d’attente normal urgent Consommateur Consommateur Producteur Consommateur

Demande de transfert variable apériodique FIP Demande de transfert variable apériodique Dans la fenêtre des variables apériodiques : émission de la requête Etape 2 File d’attente spécifique Liste des variables apériodiques à servir (identifieurs)

Demande de transfert variable apériodique FIP Demande de transfert variable apériodique L’arbitre de bus diffuse la valeur de l’identifieur qui sera produit puis consommé par les autres stations. Etape 3 L’arbitre sert une ou plusieurs variables, en fonction du temps apériodique disponible Producteur Consommateur Une station demandant un transfert apériodique peut être : - Productrice de la variable - Consommatrice - Productrice et consommatrice

Demandes apériodiques FIP Demandes apériodiques Les demandes peuvent être de deux natures - Libres (L_FREE_UPDATE.req) - Spécifiées (L_SPEC_UPDATE.req) Le mécanisme «libre » Fenêtre périodique Buffer producteur Identifieur K File « urgent » File « normal » Le mécanisme « spécifié » fonctionne à peu près de la même façon. La file d’attente est remplacée par un buffer de la variable. Il est uniquement utilisé par la couche application pour réaliser le mécanisme de cohérence spatiale. Ce mécanisme est interne à la couche application Fenêtre apériodique Puis B

Demande de transfert de messages SANS acquittement FIP Demande de transfert de messages SANS acquittement Ce mécanisme se déroule en 3 étapes : En point à point ou en diffusion générale Etape 1 File d’attente des messages Requête indiquée par positionnement du bit « requête de message »

Demande de transfert de messages SANS acquittement FIP Demande de transfert de messages SANS acquittement Etape 2 Message en diffusion générale Producteur Consommateurs

Demande de transfert de messages SANS acquittement FIP Demande de transfert de messages SANS acquittement Le producteur envoie un signal de fin de transaction message Etape 3 Fin de transaction Producteur Toutes les stations recoivent l’indication de fin de message

Demande de transfert de messages AVEC acquittement FIP Demande de transfert de messages AVEC acquittement Permet de fiabiliser des échanges en Point à Point Ce mécanisme se déroule en 4 étapes : En point à point Etape 1 File d’attente des messages Requête indiquée par positionnement du bit « requête de message »

Demande de transfert de messages AVEC acquittement FIP Demande de transfert de messages AVEC acquittement Etape 2 Envoi du message

Demande de transfert de messages AVEC acquittement FIP Demande de transfert de messages AVEC acquittement Acquittement du message Etape 3 Fin de transaction message Etape 4

FIP Classes de conformité Transfert de buffer Ecriture de buffer Définit la classe de la station. Toute station FIP possède au moins les mécanismes de transfert de buffer et d’écriture de buffer Transfert de buffer Ecriture de buffer Lecture de buffer Demande explicite libre Demande explicite spécifiée Message sans acquittement Message avec acquittement Service supporté Service non supporté

Trames transfert de buffer FIP Trames transfert de buffer Trames de question : ID_DAT, ID_RQ et ID_MSG Elles ne diffèrent que de quelques bits dans le champ de contrôle Trames de réponse : RP-DAT réponse à une trame ID_DAT

FIP Trames de réponse Trames de réponse requête : RP_RQ réponse à une trame ID_RQ Trames de réponse : RP_MSG_xx réponse à une trame ID_MSG Une station répond à une trame ID_MSG par une trame RP_MSG_NOACK ou RP_MSG_ACK

FIP Trames de réponse Trames de réponse requête : RP_ACK suite à une trame de message avec demande d’acquittement Trames de réponse : RP_FIN suite à une émission de message, fin de transaction de message

Performance – transfert de buffer FIP Performance – transfert de buffer La trame RP suit une trame ID. TR est le temps de retournement. La trame RP_DAT doit intervenir dans ce délai borné. Le temps de retournement TR est défini dans la norme gestion de réseau. 10 TMAC <= TR <= 70 TMAC TMAC = temps d’émission d’un symbole de couche physique 1, 0, V+, V- , 0 à 31,25 Kb/s 22,4 us < TR < 320 us à 1 Mb/s 10 us < TR < 70 us à 2,5 Mb/s 4 us < TR < 28 us

Informations de service FIP Informations de service Chaque couche ajoute de l’information de service à ce qu’elle reçoit de la couche supérieure Couche utilisateur Longueur des données utiles Couche application +2 octets Couche liaison +3 octets Couche physique +21 bits Le nombre de bits ajoutés est de 61 bits, qu’elle que soit la longueur des données

FIP Temps de transaction Le temps total d’une transaction est composé des durées suivantes : - Emission de la trame question - Temps de retournement - Émission de la trame réponse Durée d’émission de la trame question : 61 TMAC (constant) Durée d’émission de la trame réponse = 61 TMAC + n*8 TMC (n=nombre d’octets utilisateur) Durée temps de retournement = 2*TR TMAC (TR>=10 et TR<=70) L’efficacité est égale au temps d’émission de l’information utile divisé par la durée de la transaction Efficacité = n*8 TMAC / (61 TMAC + TR TMAC + 61 TMAC + n*8 TMAC + TR TMAC) Efficacité = n * 8 TMAC / ( 122 TMAC + 2 TR TMAC + n * 8 TMAC )

FIP Calculs selon TR Calculs pour TR = 10 Longueur utile efficacité débit réel pour 1 Mb/s débit réel pour 2,5 Mb/s Calculs pour TR = 70 Longueur utile efficacité débit réel pour 1 Mb/s débit réel pour 2,5 Mb/s

Couche application MPS FIP Les services de FIP se regroupent en 3 ensembles distincts : - ABAS – Services application d'arbitrage de bus - MPS – Services périodiques / apériodiques variables - subMMS – Sous-ensemble de service de messagerie Couche 7 Couche 2 Couche 1 La couche applicaton MPS offre à l'utilisateur : - Des services de lectures/écritures locales - Des services de lectures/écritures distantes - Des indications d'émission/réception variables - Des informations de fraîcheur des informations consommées - Des informations de cohérences spatiales et temporelles des données

Lectures / écritures locales FIP Bus activity Aucune activité déclenchée sur le bus Les buffers des variables sont écrits ou lus depuis la couche applicative, sans déclencher d’activité bus

Indications de réception / émission FIP La couche applicative reçoit des indications, fonction de l’activité du bus

Lectures / Ecritures distances FIP AP Mécanisme de lecture de la variable A

FIP Resynchronisation Le mécanisme de resynchronisation en consommation consiste à recopier le contenu du buffer public dans le buffer privé, sur réception d'une variable de synchronisation

Synchronisation des variables FIP Les contenus des buffers privés et publics, en fonction du temps, pour une variable produite resynchronisée

Promptitudes et rafraîchissements FIP Rafraîchissement asynchrone Ecriture asynchrone (valeur) Lecture asynchrone (valeur, status) Etat du rafraichissement : Mécanisme de l’élaboration de la période de production (ms) Producteur Consomateur Status , Valeur Chaque consommateur, par l'intermédiaire d'un service de lecture, en accédant au status, sait si le producteur de la variable a respecté le délai de production attaché à la variable

Promptitudes et rafraîchissements FIP Promptitudes et rafraîchissements Rafraîchissement asynchrone A chaque nouvelle écriture de valeur, la couche application arme le timer associé à la variable, avec la valeur de la période de production. Le status est vrai tant que ce timer n'expire pas.

Promptitudes et rafraîchissements FIP Rafraîchissement synchrone A chaque réception de variable de synchronisation, le timer est réarmé avec la valeur de la période de production, le status passe à faux. Lorsque l’utilisateur dépose une nouvelle valeur, si le timer n’a pas expiré, le status devient vrai et le restera jusqu’à expiration ou réception d’une nouvelle variable de synchronisation True Status False Période de production s = point de réception de la variable de synchronisation p = point de la variable en production (A_WRITELOC)

Promptitudes et rafraîchissements FIP Promptitude asynchrone Lors d'une lecture, récupération de la valeur de la variable ainsi que la status de promptitude. La station saura si le producteur respecte sa période de production, et si le mécanisme de transfert de buffer fonctionne correctement Dans cet exemple: pour la même variable, une station élabore un status de promptitude asynchrone, l'autre pas. Ecriture asynchrone (valeur) Valeur, status lecture asynchrone Valeur lecture asynchrone Producteur consommateur consommateur valeur Etat de promptitude Mécanisme d’élaboration de la période de consommation (ms)

Promptitudes et rafraîchissements FIP Promptitude asynchrone Lorsque l'entité de communication reçoit une nouvelle valeur, elle arme un timer de promptitude asynchrone associé à la variable consommée avec la valeur de la période de consommation. Il le restera tant que le timer n'expire pas. True Status False Timer de période de consommation C = réception de la variable consommée

Cohérences temporelles et spatiales FIP Cohérence temporelle de production La cohérence temporelle de consommation est un ET logique sur tous les états de proptitudes individuels A_READLIST.rq(<a,b,c>,CSP) Etat des Rafraîchissements individuels t1 t2 t3 t4 a V V V V b V F V V c F V V V V = Vrai F = Faux ET logique des états F F V V Exemple de 3 capteurs : Débit Pression Température

Cohérences temporelles et spatiales FIP Cohérence spatiale La cohérence spatiale est un état booléen élaboré optionnellement par les couches applications consommatrices d'une liste de variable. Si toutes les copies de la liste sont identiques, l'état est Vrai, sinon il est Faux. Liste de variables Vrai si identiques Etat booléen Faux si différents

Types de variables et Protocol Data Unit (PDUs) FIP Exemple pour un entier 16 bits Les variables identifiées produites ou consommées par un utilisateur peuvent être : de type simple : Booléen Entier (notation complémentaire à 2) Chaine binaire (maxi 32 octets) Chaine d'octets (maxi 126 octets) Chaine visible (maxi 126 octets) Temps 14 caractères : AAA MM JJ HH MM SS Flottant simple précision 4 octets (ANSI IEEE 754) Flottant double précision 8 octets (ANSI IEEE 754) BCD De type structuré : structure de type simple structure de structure tableau tableau de tableau tableau de structure ………… Ces variables sont transportées sur le réseau à l'intérieur de PDU Dans l'exemple, la couche application ajoute 2 octets au codage de l'entier 16 bits. - Le premier indique le type du PDU - Le second indique la longueur de l'information contenue

Gestion de réseau FIP Les services de gestion de réseau sont regroupés dans 2 familles de services : SM-MPS : ensemble des services de gestion de réseau basé sur MPS SMS : ensemble des services de gestion de réseau basé sur la messagerie (MCS-MSG) MIB : ressources de communication Base d'information de gestion MIB est une structure des données arborescente décrivant couche par couche chacun des attributs, ainsi que la portée de chaque service. Bus arb. Apériodique/périod. Messages Service Arbitreur de bus Service périodiques et apériodiques Service Message

Gestion de réseau FIP Les fonctions essentielles de gestion de réseau sont au nombre de 3 : Gestion du mode opératoire Commandes de start/stop Commandes de Validation / Invalidation Commandes de reset Fonctions de Lecture / Ecriture Gestion de la configuration Création d'objets Destruction d'objets Démarrage / arrêt d'entités de communication Gestion des défauts et performances Lecture de compteurs Mise à zéro de compteurs

Gestion de réseau FIP Une station FIP dispose de 2 types de processus application distincts : - L' AP utilisateur qui réalise des fonctions d'une application répartie - Le SMAP qui gère les fonctions de gestion de réseau SMAP : System Manager Application Process Station FIP Manager Station FIP Agent SMAP Manager gère le réseau, SMAP Agent répond à des sollicitations distantes

FIP Gestion de réseau Multi - AEs Une station FIP peut, pour des besoins de sécurité, de démarrages progressifs ou pour des problèmes de limitations de SM-MPS, gérer jusqu'à 8 entités d'application AE/SEi

FIP Services SM-MPS Les services SM - MPS permettent : L'affectation d'adressage physique et de tagName Le téléchargement des identifieurs La relecture de configuration (télélecture) La télécommande (start, stop, invalidation d'une ou plusieurs AE/SE) Le télécontrôle (lecture de l'état opératoire des AE/SE) Le rapport (ensemble des compteurs d'erreur et de performances) La gestion d'une variable de présence et d'identification La gestion d'une liste de stations présentes

Normes FIP FIP est standardisé au niveau européen sous la norme WordFip EN50170 http://www.worldfip.org

FIP Détail de la normes

Merci de votre attention Fin de présentation Merci de votre attention Patrick MONASSIER Université Lyon 1 France