Sujet ESI du BTS IRIS 2012 (complet)

50
BREVET DE TECHNICIEN SUPÉRIEUR INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES ÉTUDE D'UN SYSTÈME INFORMATISÉ Ce sujet comprend : Session 2012 Durée : 6 heures Coefficient 5 Partie Pagination Couleur des feuilles Présentation du système et pages 1 à 21 Rose questionnement Annexes pages 1 à28 Vert Document réponses À RENDRE OBLIGATOIREMENT, AGRAFÉ À UNE COPIE MODÈLE EN pages 1 à 18 Blanc Matériel autorisé : L'usage de la calculatrice est autorisé (circulaire n "99-186 du 16-11-1999). Tout autre document ou matériel est interdit. Dès que le sujet vous est remis, assurez-vous qu'il est complet. BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012 ÉTUDE D' UN SYSTÈME INFORMATISÉ Code: IRSES

description

Sujet et annexes de l'épreuve ESI (Étude d'un Système Informatisé) du BTS IRIS session 2012.

Transcript of Sujet ESI du BTS IRIS 2012 (complet)

Page 1: Sujet ESI du BTS IRIS 2012 (complet)

BREVET DE TECHNICIEN SUPÉRIEUR INFORMATIQUE ET RÉSEAUX

POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES

ÉTUDE D'UN SYSTÈME INFORMATISÉ

Ce sujet comprend :

Session 2012

Durée : 6 heures Coefficient 5

Partie Pagination Couleur des feuilles

Présentation du système et pages 1 à 21 Rose questionnement

Annexes pages 1 à28 Vert

Document réponses

À RENDRE OBLIGATOIREMENT, AGRAFÉ À UNE COPIE MODÈLE EN

pages 1 à 18 Blanc

Matériel autorisé : L'usage de la calculatrice est autorisé (circulaire n "99-186 du 16-11-1999).

Tout autre document ou matériel est interdit.

Dès que le sujet vous est remis, assurez-vous qu'il est complet.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012 ÉTUDE D'UN SYSTÈME INFORMATISÉ Code: IRSES

1

1

1

Page 2: Sujet ESI du BTS IRIS 2012 (complet)

BREVET DE TECHNICIEN SUPÉRIEUR INFORMATIQUE ET RÉSEAUX

POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES

ÉTUDE D'UN SYSTÈME INFORMATISÉ

Session 2012

Durée : 6 heures Coefficient 5

SUJET (21 PAGES)

Toutes les réponses aux questions sont à fournir sur le livret intitulé « document réponses ",à l'exclusion de tout autre support. Ce document sera agrafé à une copie modèle EN.

Les réponses doivent être exclusivement situées dans les emplacements prévus à cet effet. Si nécessaire, le candidat peut rectifier ses réponses sur la page non imprimée en regard.

Une réponse ne doit être justifiée que si la question le demande.

Pour des raisons de confidentialité certaines informations industrielles ont été modifiées.

Temps conseillés et barèmes indicatifs:

A. PRÉSENTATION DU SYSTÈME B. PRINCIPE DE PRODUCTION DU FROID

PAR UNE MACHINE FRIGORIFIQUE C. COMMUNICATION MODBUS D. CONCEPTION ET CODAGE E. RÉSEAU

Matériel autorisé :

30 mn 45 mn 14 points

90 mn 25 points 120 mn 39 points 75 mn 22 points

L'usage de la calculatrice est autorisé (circulaire n"99-186 du 16-11-1999).

Tout autre document ou matériel est interdit.

Dès que le sujet vous est remis, assurez-vous qu'il est complet.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- SUJET Code: IRSES Page: 1/21

Page 3: Sujet ESI du BTS IRIS 2012 (complet)

PLATEFORME LOGISTIQUE FRIGORIFIQUE A. PRÉSENTATION DU SYSTÈME L'étude porte sur la supervision d'une plateforme logistique frigorifique d'un grand groupe de distribution, permettant le stockage et la conservation de produits frais et de produits surgelés avant distribution vers des surfaces de vente.

L'objectif d'une telle plateforme est de minimiser la quantité d'énergie utilisée pour la conservation des produits (congélation, surgélation, produits frais, ... ). Cette plateforme est agréée CEE. Le respect de la chaîne du froid est une obligation légale, ce qui implique un enregistrement permanent des températures ainsi qu'une parfaite traçabilité des produits stockés avant distribution.

Le rôle d'une plateforme est d'assurer : • La réception des marchandises : quai de déchargement réfrigéré, contrôle des

marchandises (qualité et quantité).

• La gestion des stocks : inventaire physique et informatique, gestion de la traçabilité des produits.

• Le stockage des produits : o stockage tempéré pour les produits secs. o stockage froid positif pour les produits frais. o stockage froid négatif pour les produits congelés et surgelés.

• La distribution des produits vers les surfaces de vente.

Le système contrôle/commande mis en place permet d'assurer le fonctionnement correct de la plateforme en remplissant les fonctions suivantes :

1 . Enregistrer et visualiser les différentes températures de toutes les surfaces de la plateforme.

2. Ventiler les surfaces de stockage et de chargement/déchargement des produits secs.

3. Refroidir et ventiler les surfaces de produits frais, les surfaces de produits congelés et les quais réfrigérés.

Vocabulaire métier :

Une chambre froide est un local servant à conserver à basse température des aliments, échantillons, etc. selon usage.

Les chambres froides sont classées en 2 catégories :

• froid positif : au-dessus de 0 "C (généralement consigné à 3 oc mais cela est variable selon les al iments stockés au froid positif) ;

• froid négatif : en dessous de 0 "C (généralement consigné à - 18 "C mais cela peut descendre plus bas).

On appelle chaîne du froid ou chaîne frigorifique l'ensemble des opérations logistiques et domestiques (transport, manutention, stockage) visant à maintenir des produits alimentaires à une température donnée pour assurer le maintien de leur salubrité ou de leur qualité gustative. Selon les produits, les normes fixent les températures limites et les tolérances de dépassement (01+2 oc pour le poisson frais, +21+8 "C pour de nombreux produits alimentaires frais, -18 "C pour les surgelés). L'intérêt du terme chaÎne est de souligner l'importance de la continuité des étapes ; aucun maillon ne devant céder et anéantir l'essentiel de l'effort général déployé pour aboutir en fin de chaîne à un produit préservé de tout échauffement.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 201 2

ÉTUDE D'UN SYSTÈME INFORMATISÉ - SUJET Code : IRSES Page: 2/21

Page 4: Sujet ESI du BTS IRIS 2012 (complet)

A. i La plateforme logistique La plateforme logistique Le plan de masse de la plateforme logistique (livrée en juillet 2008), d'une surface de 25 000 m2 au sol , est proposé ci-dessous. A gauche se situent 13 000 m2 de stockage de produits secs, et à droite les chambres froides (1 000 m2 de chambres en froid négatif et 9 000 m2 en froid positif). Le bâtimënl dispose de 50 portes de quais afin d'accueillir, en -moyenne, un flux de 200 poids lourds chaque jour. La salle des machines permettant la production de " froid » est repérée par l'abréviation SOM.

lzz;s-cl

Produits secs Produits secs

Zone réfrigérée

(dét~illée ci~après)

!2o,o•cj

!2o.s·cj

l2s.o·cl

11101111

l26,s•cl l21.s·cl 1 1 1 1 1 1 D 1 1 1 Bureauyx -~-~-~ -, -, 1--t'""'r_l_l -, -, 1-'-1-1-1 .........--1 1 1 1 D

Quai de chargement 1 déchargement Quai réfrigéré cte chargement 1 déchargement

Figure 1 : Plan de masse de la plateforme logistique

Cette plateforme comporte : • des quais pour la réception et la distribution des différents produits avec contrôle des

marchandises (qualité et quantité), et pour affectation dans une zone de stockage en fonction du type de produit. Deux types de quai sont utilisés :

• des quais pour produits secs.

• des quais réfrigérés pour les produits frais et surgelés afin de ne pas briser la chaîne du froid.

• des surfaces de stockage de produits secs, destinées aux produits alimentaires qui ne nécessitent pas de réfrigération. Exemple : pâtes, biscuits, boîtes de conserves .. .

• des surfaces de froid positif pour les produits frais qui nécessitent de maintenir les produits à une température de oo à ;oa C selon le type de produit. Exemple de produits stockés en froid positif :

o fruits et légumes : température de 7 à 1 0 OC.

o boucheries 1 volailles 1 poissonneries : température de 0 à 2 OC

o produits frais : les laitages, les jus de fruits frais, les quenelles, la charcuterie pré conditionnée ... :température de 1 à 3 OC.

• des surfaces de froid négatif pour les denrées congelées qui nécessitent de maintenir les produits à une température inférieure à -18 OC.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- SUJET Code: IRSES Page : 3/21

Page 5: Sujet ESI du BTS IRIS 2012 (complet)

_:o::alisation des capteurs de température (figures 1 et 2) :

• Pour les surfaces de produits secs et les surfaces de froid positif, les températures,

repérées par le symbole 1 xoc 1 dans les figures 1 et 2, sont mesurées au niveau du plafond de l'entrepôt.

• Pour-les surfaces de froid négatif :

o les températures repérées par le symbole 1 xoc 1 dans la figure 2, sont mesurées par des sondes implantées dans le sol. Les sondes de température, implantées dans les fondations du bâtiment, permettent de contrôler que le sol ne gèle pas. En cas de gel, un système de canalisations permet de réchauffer le sol à partir de la chaleur récupérée dans la salle des machines.

o les températures repérées par le symbole -q- x~c J dans la figure 2, sont mesurées _ dans les chambres froides. -

Produits svrgelés

Fruits & légumes

Produits frais

Quai réfrigéré de chargement f déchargement

Figure 2 : Plan de masse des chambres froides

Légende

Modlll~ de; gestion d'une unité réfrigérante (TL Y)

-G

Capteur de température relié à un module TDA

On dénombre cinq zones réfrigérées, chaque zone est composée d'un compresseur et de deux unités réfrigérantes (évaporateurs).

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- SUJET Code : IRSES Page: 4/21

Page 6: Sujet ESI du BTS IRIS 2012 (complet)

A.2 Description de la solution retenue L'architecture matérielle détaillée se trouve annexe 1 " Synoptique du réseau modbus "·

Le système contrôle/commande est constitué :

• D'un poste de supervision qui permet :

o D'enregistrer et de visualiser les températures dans les différentes zones.

o De définir les consignes de température des différentes zones de produits frais, pour le fonctionnement en mode régulation automatique.

o D'arrêter la production de froid dans une zone, pour des travaux de maintenance ou de nettoyage. On parlera alors d'un fonctionnement de la zone en mode manuel.

• De 5 automates programmables (appelés aussi centrales) qui assurent le fonctionnement des compresseurs (mise en marche/arrêt ON/OFF des compresseurs) .

• De modules d'acquisition de températures (TDA_08) : on utilise des modules

" simples , qui assurent l'acquisition des températures (symbolisées par 1 x·c 1 dans les figures 1 et 2). Trois modules TDA_08 permettent d'acquérir un total de 22 températures différentes sur les 24 qu'ils pourraient acquérir.

• De modules de gestion d'unité réfrigérante (TL Y35) : Pour les zones réfrigérées, il est nécessaire d'ajouter des modules plus " intel4entj "· Ces modules doivent assurer

l'acquisition d'une température (symbolisée par . x·c dans la figure 2) et la gestion des unités réfrigérantes (évaporateur). Ces modules assurent localement le dégivrage automatique de chaque unité réfrigérante et la régulation en mode automatique de la température. On dénombre la présence de 10 modules TL Y35 afin d'assurer le fonctionnement des 1 0 évaporateurs.

Il y a un - ----·----utomate

ammable)

/ 5 t...;;.;"""""""""",_.,;,w-modbus "'

compresseur par zone réfrigérée.

. «d.evl·ce.» .l; / V <::''' <•deviee» Il y a 2 évaporateurs par ·Poste de supervision · .. ·,1 '~:Pi~ÛI~ de gestion ç::;.:::::;::::::;::::::;::::::;:(lll,p zone réfrigérée, soit un

· ' modbus d;uÎlité réfrigérante (~·:Evaporateur · ___ ____ total de 10 unités ~1 10 ~!''-'~ '(TLY35) I·'H-------11 .;':,, ~. . ')

1. ': <.•""'

. .. . '1" """"'""""""""""""""""""'""'·=-··=-· w modbus

...... ~::=========;:;:!!

3 !<' S «deviee» ~ ~ Mo~ule acquisition \ : Sonde '· Température lfH---8-i ~i,'}~mpérature

(TDA_OB) ~~

,.~ l - - - - - -

Figure 3 : Diagramme d'architecture de l'application.

réfrigérantes pour la gestion des 5 zones réfrigérées.

Il y a au total, 22 sondes de température, sur un total de 24 possibles.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ - SUJET Code : IRSES Page : 5/21

Page 7: Sujet ESI du BTS IRIS 2012 (complet)

A.3 Cas d'utilisations L'analyse présentée ici ne couvre que la partie supervision des températures.

A.3.1 Organisation fonctionnelle -et~ système -

----------- ---------------------·--· -· ---- - ----------------- . .. -uc Les cas d'utilisations du système de supervision d'une plateforme logistique frigorifique

....... ... . . .. . . .......... . ............................... ······· ··· ·-·· ····

*'', OpérateurDeSurveillan~' ',

\ ~----

Technicien de maintenance

----

/ ·x ----::: _____ _ Responsable

logistique du Site {ou Administrateur)

' ....

Systeme de Supervision d'une plateforme logistique frigorifique

~ Horloge

1 1 1

', ~ r.G-e~rèr=-·: 1--:"és~c.,....h-am_b_re_s_tr_o_id-es---,· • (< ';..-· • . ·_) - .. ···- · .

!Eh Configuration & Maintenance ~ . Ill+ Acquerir et afficher les fempéraïùres œ +Archiver les températures . ' ... · Cl+ Fixer les températures âes chambrés froides t'l + Gérer la SDM {arrêt ou marche des compresseurs) D·+·~érsr le. dégivrage des unités réf~gérantes .

Figure 4 : Paquetages des cas d'utilisation

Les cas d'utilisation se décomposent en deux paquetages (packages).

--

~ ;:r)\

/ // Centrale

~ -Mocfille acquisition

Température {TDA_OB)

_Q_ ---~A

Module de gestion d'unité réfrigérante

{TLY35)

Le premier paquetage " Gérer les chambres froides , permet d'assurer le bon fonctionnement des différentes chambres froides. Il s'agit du système de supervision des chambres froides de l'installation. C'est cette partie qui assure également l'enregistrement des différentes températures dans la base de données.

Le deuxième paquetage " Gérer la traçabilité des produits , assure la traçabilité des produits, les informations sont enregistrées dans une base de données d'exploitation de la plateforme logistique.

La combinaison de ces enregistrements permet d'avoir les températures associées à un produit en fonction des différentes salles dans lesquelles il a transité.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- SUJET Code: IRSES Page: 6/21

Page 8: Sujet ESI du BTS IRIS 2012 (complet)

A.3.2 Cas d'utilisation « Gérer les chambres froides »

uc Gérer les chambres froides / -·-------------·-·-· --· ,--------------------------------------.

Gérer les chambres froides

~ _ _ _ _ _ _ _ _ _ _ _ _ !!iîl!ii9~\i!J!On & Maintenance i

Technicien e

~--~---~ Responsable

logistique du Site

-.in,;;;;,-,:- ~ . (o7mlnlstrateur)

~~ OpérateurDeSurveillance

2 A

Horloge

Figure 5 : Cas d'utilisation " Gérer les chambres fro ides ,

On retrouve dans cette partie les cas nominaux d'utilisation du système.

ule de gestion d'unité réfrigérante

(TLY35)

~ Module acquisition

Température (TDA_OS)

~· BaseDeDonnées

L'activité principale de la supervision est de contrôler les températures des différentes salles de la plateforme logistique. Se reporter à l'annexe 2 " Éléments d'analyse , où on retrouve le scénario d'acquisition et d'archivage des différentes températures.

Une telle configuration permet d'assurer le fonctionnement de la plateforme logistique, même en cas d'arrêt du système de supervision. Le fonctionnement de l'application est alors assuré en mode dégradé.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- SUJET Code: IRSES Page: 7/21

Page 9: Sujet ESI du BTS IRIS 2012 (complet)

A.3.3 Cas d'utilisation : Configuration & Maintenance

. uc Configuration & Maintenance/ '

l----------Technicien~ maintenance ~

Module acquisition Température

(TDA_08}

Module de gestion d'unité réfrigérante

(TLY35)

Figure 6 : Cas d'utilisation " Configuration & Maintenance »

Ces cas d'utilisations ne sont effectifs qu'à l'installation de la plateforme ou lors du remplacement d'un des différents modules de l'application. Ils sont assurés par la société de service qui a la responsabilité du fonctionnement de l'application.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- SUJET Code : IRSES Page : 8/21

Page 10: Sujet ESI du BTS IRIS 2012 (complet)

B. PRINCIPE DE PRODUCTION DU FROID PAR UNE MACHINE FRIGORIFIQUE

8.1 Bilan énergétique Dans un premier temps nous vous proposons une étude du système capable de produire le froid : le groupe frigorifiqüe. - -- - -- --- --- ---

Document à consulter : " Annexe 3 : Principe de production du froid par une machine frigorifique , . Réponses à inscrire dans le document réponses.

Question 8.1 En appliquant le pnnc1pe de la conservation de l'énergie au cycle thermodynamique d'une machine frigorifique (toute l'énergie entrante est égale à l'énergie sortante), retrouver à partir de la figure 1 de l'annexe 3, l'équation du bilan énergétique de cette machine (on négligera les pertes).

Question 8.2 Compléter le tableau du document réponse en précisant l'apport énergétique des quatre éléments de la machine frigorifique (choix possibles : positif si la machine prend de l'énergie, négatif si la machine rejette de l'énergie ou neutre). On négligera les pertes.

8.2 Dimensionnement du compresseur

Document à consulter: " Annexe 4: Éléments de thermodynamique"· Document à consulter: " Annexe 5 :Sélection des compresseurs ''· Réponses à inscrire dans le document réponses.

Soit une surface de froid positif pour laquelle le compresseur a été calculé théoriquement afin de conserver une certaine masse de viande.

Question 8.3 À masse égale, quel(s) autre(s) produit(s) pourrai(en)t également être entreposé(s) dans cette surface ? Cocher le(s) produit(s) possible(s) dans le document réponses.

On veut maintenant dimensionner un compresseur pour une surface de froid négatif destiné à stocker de la viande. Pour choisir le compresseur, il faut d'abord calculer l'énerqie qui sera nécessaire au refroidissement de la viande. Soit l'équation suivante :

1 E+ = m~ C.At

Avec: E+ :énergie en kJ (kilo Joule) ou kWh (kilo Watt-heures) m : masse en kg C : chaleur massique en kJ.kg-1.°K-1 ou en Wh.kg-1.0 K-1 11t = IT0 finale- T 0 initialel : Écart de température en degré Kelvin (ou degré Celsius)

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- SUJET Code: IRSES Page : 9/21

Page 11: Sujet ESI du BTS IRIS 2012 (complet)

Question 8.4 Calculer l'énergie nécessaire pour refroidir î 00 tonnes de viandes de - 1 Ror à-24"f' .

En pratique un compresseur fonctionne erÏvirori 80% du temps sur une journée de 24 heures (pour permettre des temps de dégivrage) et ne doit pas être démarré plus de 3 fois par heure (c'est au démarrage que le compresseur s'use le plus). Précision :

• Température d'évaporation= Température de la chambre froide+ (-7"C). • Température de condensation = Température extérieure max + î 5 "C (pour la région

lyonnaise, la température max vaut 35 "C). La puissance se calcule à partir de l'énergie et du temps selon la formule suivante :

~ ~

Question 8.5 Afin de maintenir une température de chambre froide à -î 8 oc, la quantité d'énergie à enlever est de 1200 kWh sur 24 heures. Le temps de fonctionnement du compresseur sera de 80% par jour. Choisir dans la liste fournie annexe 5, le compresseur qui conviendra. En cas de plusieurs choix possibles, on retiendra celui dont la puissance est la plus petite.

Question 8.6 Le propriétaire de l'installation souhaite intégrer dans la supervision la puissance instantanée et la consommation énergétique du groupe frigorifique, indiquer les grandeurs physiques à mesurer et le type de capteur que l'on pourra utiliser.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ - SUJET Code : IRSES Page : 10/21

Page 12: Sujet ESI du BTS IRIS 2012 (complet)

C. COMMUNICATION MODBUS

Documents à consulter : - " Annexe 1 : Synoptique du réseau modbus " ;

__ - " Annexe 6 : Extrait documentatior:unodbus , . Réponses à inscrire dans le document réponses.

C.1 Étude du protocole À partir du synoptique du réseau modbus présenté dans l'annexe 1, on vous demande de préciser pour chaque élément du réseau s'i l est vu comme élément maître ou esclave du réseau Modbus.

Question C.1 Compléter le tableau du document réponses en cochant les cases.

D'après l'annexe 1, la transmission se fait à 9600 bauds, 8 bits de données, 1 bit d'arrêt, parité paire.

Question C.2 Avec ces caractéristiques, combien de bits sont nécessaires à la transmission d'un octet ? Justifier.

Question C.3 Quel est le rôle du bit de parité ?

Question C.4 Sur la transmission de l'octet OxFF, quelle est la valeur de ce bit de parité?

Question C.S Quelle est la durée de transmission d'un octet ? Justifier.

Question C.6 Comment s'appelle, dans la notation UML, le type de diagramme présenté figure 14 annexe 6?

Question C.7 Quel est le temps maximal de silence entre deux octets consécutifs d'une même trame ? Justifier.

Question C.8 Quel est le temps minimal entre deux émissions de trame ? Justifier.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ - SUJET Code: IRSES Page : 11 /21

Page 13: Sujet ESI du BTS IRIS 2012 (complet)

C.2 Étude du fonctionnement des modules TDA08

Documents à consulter : - " Ann~~e 1 : Synoptique du réseau modbus , : - " Annexe 7 : Modules TDA08/TDA04 , .

Réponses à inscrire dans le document réponses.

Question C.9 Indiquer la position du switch rotatif du deuxième module TDA08 identifié TDA 2 sur le synoptique de l'annexe 1.

Question C.1 0 On doit remplacer un module défectueux par un module neuf. Expliquer pourquoi il n'est pas nécessaire de configurer la vitesse de transmission de ce nouveau module.

Lecture d'une température Nous prendrons pour cet exemple, la température de la sonde 2 d'un module TDA08. La température de cette sonde est de -19,3 "C. Précisions :

• Un module TDA08 gère plusieurs sondes. • les sondes sont numérotées à partir de la valeur 1. • toutes les températures des modules sont codées sur 16 bits en complément à deux et

exprimées en dixième de degrés Celsius.

Question C.11 Quelle est l'adresse du mot que vous devez exploiter pour obtenir la température de cette sonde ? Quelle est la valeur hexadécimale contenue dans ce mot pour une température de -19,3"C?

On vous propose page suivante le diagramme de séquence du relevé des températures (Figure 7: Diagramme de séquence du relevé des températures). Ce diagramme comporte deux possibilités pour la lecture des températures : la variante 1 et la variante 2. Une seule de ces deux variantes sera retenue à la fin lors de l'implémentation de la solution.

Question C.12 Pour chaque variante, combien de requêtes modbus sont envoyées par la supervision sur le réseau ? (compléter le tableau du document réponses)

Question C.13 À l'aide de l'annexe 7, remplir le tableau du document réponses.

Question C.14 Quelle est la variante la plus efficace en matière de charge réseau ? Justifier votre réponse.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES 1 Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- SUJET Code: IRSES Page: 12/21

Page 14: Sujet ESI du BTS IRIS 2012 (complet)

, sd Diagramme de séquence du relevé des températures/· ·- ~-- ~----· -·-· . -·-----------·-·-----·· · ..... u .

'

_18SB P_our }ous le~ ~()d~~~- ~!~,vas_ pré~~nts) : : _ : _ _ _ __ -: 1 1 1 1

ObtenirTemperature(unsigned char) :float ! 1 1

1' 1 1 1 1 1

: .. Il : : : reaéllnputSingleRegisters(int, short&, int, int) :int

: u 1 .. y 1 MemoriseTemperature(float) :

1 1 1

Variante 1 1

l~op~~ëcture Temperatures TOOB. V1) :

[Pour tous les fpdules TDA08] :

1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1

!'!OP Pour toutes les sondes) : : : : 1 1 1 1

ObtenirTemperature(int) :float 1 1 1 r----------~~~~~~~,_----~ 1

Il d l s· 1 R . i (' 1 1 1 1 1 1 1

rea nput mg e eg1sters mt, short&, int, int) :int ; u .. y i 1

Memorise Temperature(float)

Variante 2 !oop}eétureBioc Temperatures TDA08 V2)

[Pour tous les odules TDA08]

1 1 1 1 1 1 1 1 1 1 1 1 1 1 ·1 1 1 1 1 1

r---O_b_te_n_ir_T_o_ut_e_s_L_e_sT_e_m~p_e~ra~tu_r~e~s~()_:v_e~c~to~r_<_fl~oa~b~-~~1 : 1 1

1 (è l

Lecture des températures : associées à la première adresse

1 ;1

1

1 dl R - (~ rea nput eg1sters mt,

~=---~----------~- : 1 1 1 1 1 1

,---~-----~1 ~

Lecture des températures associées à la deuxième adresse

loop Ellregistre Temperature ) :

[tous les léments du vecteur] :

MemoriseTemperature(float) y

short*, int, int) :int 1

~ ~ ObtenirTouteslesTemperatures() : :r----' vectordloab1

1 1 1 1 1 1

readlnputRegisters(int, short*, int, int) :int ;

' : P ObtenirToute,slesTemperatures() :

vectordloat>l 1

1 1 1 1 1 1 1 1 1 1 1 1 ,

Figure 7 : Diagramme de séquence du relevé des températures

La mémorisation des informations dans la base de données n'a pas été représentée sur ce diagramme afin de ne pas alourdir celui-ci.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ - SUJET Code: IRSES Page : 13/21

Page 15: Sujet ESI du BTS IRIS 2012 (complet)

D. CONCEPTION ET CODAGE DE LA PARTIE SUPERVISION

0.1 Étude du paquetage FieldTalkTM Modbus®

ocument à consulter: " Annexes -: FieldTalk Modbus C++ Library "· · nses à inscrire dans le document réponses.

Pour mettre en œuvre la communication à travers le réseau Modbus, nous utiliserons la bibliothèque de classes proposée par la société FieldTatk"'. Cette société propose un ensemble de classes permettant de couvrir la totalité des possibilités de communication Modbus.

Dans le diagramme associé à la librairie sur les maîtres (Master) :

Question 0.1 Comment appelle-t-on la relation qui lie les classes MBusMasterFunctions et MBusSeria!MasterProtocol? Quel est l'intérêt de ce type de relation entre classes?

Dans le diagramme associé à la librairie sur les esclaves (Slave) :

Question 0.2 Comment s'appelle dans la notation UML l'identifiant DataTablePtrArr?

Question 0.3 À quoi correspond le symbole # devant l'identifiant DataTablePtrArr? Quelle est sa signification ?

Choix de la classe que vous allez instancier dans votre application.

Question 0.4 Choix de la catégorie de classes : définir la catégorie répondant à notre problème (cocher une des deux cases dans le document réponses).

Question 0.5 Parmi l'ensemble des classes proposées, indiquer cel le qu'il faudrait utiliser pour répondre à notre problème.

Cette bibliothèque est fournie avec un ensemble de fichiers. Un répertoire include, qui contient des fichiers ayant une extension " .h " · Un répertoire lib, qui contient des fichiers ayant comme extension " .lib " · Lors du développement de notre projet, un ensemble de fichiers est nécessaire à la génération de l'application de supervision (partie logicielle). On vous demande de préciser le contenu des fichiers manipulés (on demande de distinguer deux types de fichier, les fichiers textes et les fichiers binaires). On vous demande également d'indiquer la phase durant laquelle ces fichiers sont utilisés lors de la génération de l'application.

1 BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

1 ÉTUDE D'UN SYSTÈME INFORMATISÉ - SUJET 1 Code: IRSES Page : 14/21

Page 16: Sujet ESI du BTS IRIS 2012 (complet)

Question 0.6 Cocher les bonnes réponses concernant ces différents fichiers dans le tableau du document réponses.

Étude d'un des fichiers d'entête fourni par la société FieldTalk : le fichier MbusMasterFunctions.h (voir en annexe 8 un extrait de ce fichier).

Question 0.7 La classe proposée est-elle une classe abstraite ? Justifier votre réponse. Dans le cas d'une réponse positive, indiquer quelles sont les " conséquences " d'une classe abstraite.

Question 0.8 Identifier le ou les constructeur(s) de la classe.

Question 0.9 Y-a-t-il un constructeur public? Quelle est la conséquence?

A la fin du fichier MbusMasterFunctions.h , on trouve la déclaration suivante: Mbu sMaste rFunctions &op e rator= (MbusMasterFunctions &) ;

Question 0.10 À quoi correspond cette ligne?

On trouve dans le code de déclaration de la classe, l'extrait de code suivant :

enum

} ;

PDU_S I -ZE = 253 , // Jl.s per MODBUS APPLICATION PROTOCOL SPEC I FICATION V1 . 1a · i'lJl.X.:_DATA_S I ZE ~= PDU_SI ZE - 1 , // =" POU minus 1 byte f u nction code

MAX_FC03_\"iORDS = (MAX_ DATA_ SIZE - · 1) /2 , 1/ = max i mum words per read request / /1'1AX_FC04_l-'JORDS MAX_FC03_\I'JORDS , // same as function code 03 MAX_ FC0 1_COILS = 1'1AX_FC03_\"iORDS * 1 6 , 11 = maxi mum co i ls p e r read request //MAX_FC02_COILS 1'1AX_FC01_ COILS , // same as fund:ion code 1 MAX_ FC 1 5_ v'JORDS (MAX_ DATA_ SIZE - 5 ) /2 , 11 = maximum words per write request

. fvlAX_ FC15_COI LS !v1JI.X_FC16_ WORDS*16 , 11 = maximum co i ls per write request MAX_ FC23_READ MAX_FCO 3_vWRDS, // = maximum words for read M.Z\X_FC23 __ WRITE (MAX_ DATA_SIZE - 9) /2 // = maximum words for vnite

Question 0.11 Quelle est la valeur de MAX_FC23_READ ?

Le fichier d'entête étudié évoque l'utilisation ou non de bigEndianMachine.

Question 0.12 Qu'évoque pour vous la notion de bigEndianMachine?

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ - SUJET Code : IRSES Page : 15/21

Page 17: Sujet ESI du BTS IRIS 2012 (complet)

0.2 Gestion des classes contrôles

lter : " Annexe 2 : Eléments d'analyse "· dans le document réponses. -- -

À partir du poste de supervision, le dialogue sur le réseau modbus comporte, entre autre, deux types d'échanges :

La scrutation de tous les modules (TDA et TL Y) pour la remontée des températures sur I'IHM qui se fait de manière cyclique (cas d'utilisation «Acquérir et afficher les températures»).

L'ordre de M/A d'un compresseur qui peut être demandé à tout moment par le technicien, via I'IHM {cas d'utilisation «Gérer la SOM (arrêt ou marche des compresseurs)») .

La solution choisie pour permettre ces deux types d'échange (qui peuvent être simultanés) est la suivante:

La scrutation se fait dans un thread indépendant, le thread CAcquisitionTemperatures lancé au début de l'application. Ce thread scrutation tourne en parallèle avec le thread principal qui gère I'IHM et donc les interventions du technicien.

Quand le technicien fait une demande de M/A, un troisième thread COemandeMA est chargé de l'envoi de cette demande.

Question 0.13 Les deux threads CAcquisitionTemperatures et COemandeMA ayant besoin de faire des accès (requêtes et réponses) sur le réseau modbus, quel problème peut se poser ? Expliquer.

On vous propose pour résoudre ce problème de mettre en place un mutex.

Question 0.14 Que signifie le terme mutex ? Expliquer brièvement le fonctionnement d'un tel mécanisme.

Question 0.15 Indiquer, sur le diagramme de séquence du relevé des températures dans le document réponses, en utilisant le formalisme ci-dessous, où se trouve la (ou les) section(s) critique(s), évoquée(s) à la question 0 .13.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- SUJET Code: IRSES Page : 16/21

Page 18: Sujet ESI du BTS IRIS 2012 (complet)

0.3 Implémentation

Documents à consulter : ·--"--Annexe 2 : Eléments d'analyse , . -"Annexe 7: Modules TDA08/TDA04 "·

Réponses à inscrire dans le document réponses.

On s'intéresse maintenant aux classes CTDA08 et CModuleComModBus. Reportez-vous au diagramme de classes de la partie supervision de l'annexe 2.

Question 0.16 Comment appelle-t-on la relation entre la classe CTDAOB et la classe CModuleComModBus ?

Question 0.17 Indiquer, parmi les propositions (voir tableau dans le document réponses) , lesquelles implémentent ·correctement la relation précédente entre les deux classes CTDAOB et CModuleComModBus.

Question 0.18 Écrire la déclaration de la classe CTDA08, sans faire apparaître la relation précédente.

On s'intéresse maintenant à la lecture des températures via les modules TDA08.

Soit ci-dessous le code de la méthode ObtenirToutesLesTemperatures() de la classe CTDAOB:

• La méthode readlnputRegister() effectue la requête pour obtenir les températures des sondes ou la valeur de défaut des sondes en cas de dysfonctionnement ;

• Le tableau d'entiers Mots[4] contiendra alors ·4 températures exprimées en dixièmes de degré ou la valeur de défaut des sondes en cas de dysfonctionnement ;

• On devra rajouter à la classe CTDA08, la méthode ExtraitTemperaturesSondes() qui convertit le tableau d'entiers Mots[4] des températures en un vecteur de réels temperatures ;

• A la fin , le vecteur temperatures contiendra les 8 températures exprimées cette fo is en degrés ou la valeur de défaut des sondes en cas de dysfonctionnement ;

• Les valeurs de défaut des sondes sont listées annexe 7.

1 BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

1 ÉTUDE D'UN SYSTÈME INFORMATISÉ - SUJET J Code : IRSES Page : 17/21

Page 19: Sujet ESI du BTS IRIS 2012 (complet)

, Obtenir toutes les températures d ' un module CTDA08

vector<float> CTDi\08 :: Obteni rToutesLesTemperatures () {

vector<float.> t.emperatures ; short t-1ots [4] ;

Il li r e le premier sous-module Il " XXX_" symbolise le lien entre la classe CTDAOS et la clas se CModuJ.eCorrtt-1odbus XXX_ readinputRegister(adrModbusl , Mots , Ox200, 4) ; Il 200=adresse sonde 1 , 4 sondes

li extraire les 4 températures et les stocker dans le vecteur ExtraitTemperaturesSondes (Mots , temperatures) ;

li lire le second sous - module 11 " XXX_" symbolise le lien entre la cla sse CTDA08 et la classe CModuleComlviodbus XXX_readlnputRegister (adrModbus2 , lvJots , Ox204 , 4) ; 1! 204=adresse sonde 5 , 4 sondes

Il extraire les 4 températures et les stocker dans le vecteur ExtraitTemperaturesSondes(Mots , ternperatures) ;

return temperatures ;

On désire écrire la méthode ExtraitTemperaturesSondes().

Question 0.19 Écrire la déclaration (le prototype) de cette méthode dans la classe CTDA08.

Question 0.20 Écrire l'implémentation (le code) de cette méthode.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- SUJET Code: IRSES Page: 18/21

Page 20: Sujet ESI du BTS IRIS 2012 (complet)

E. RÉSEAU

Réponses à inscrire dans le document réponses.

La Figure 8 ci-dessous montre un schéma simplifié du réseau de la plateforme logistique frigorifique :

• Le réseau SOM (Salle Des Machines) est séparé du réseau logistique par un routeur NAT pour des raisons de sécurité (séparation classique du réseau de production et du réseau bureautique), mais aussi pour des raisons contractuelles et de confidential ité (la maintenance du réseau SOM étant confiée à une société partenaire). Le côté " WAN , du routeur NAT est côté réseau logistique, et le côté« LAN, est côté réseau SOM ;

• L'accès internet est permis grâce à un ensemble de routeurs et pare-feu que l'on a simplifié sur le schéma par un seul routeur ;

• On trouve sur le réseau logistique : o un serveur de base de données permettant l'enregistrement des produits et des

températures (traçabilité) , o différents serveurs, principalement : contrôleur de domaine, serveur ONS, serveur

DHCP, o plusieurs machines utilisateurs, imprimantes ;

• L'ordinateur de supervision possède deux liaisons réseaux : une liaison modbus et une liaison ethernet.

Serveur BOO

172.16.95.254

Contrôleur de domaine Serveur ONS

172.16.95.1

Switch

1 1 1

1 1 1

1 1 1

. 1 1 1 1 1 1

Switch

168.1.254

WAN 1 Routeur NAT « internet»

j +Pare-feu

RouteiiJr NAT « sqM »

1

/

1 /

LAN Machine utilisateur

Réseau logistique 172. 16.64.0/19

1 1 1 1 1 1 1 \ \ \ \ \

Réseau SOM (Salle Des Machines)

192.168.1.0/24

Figure 8 : Schéma simplifié du réseau de la plateforme logistique frigorifique.

Question E.1 Indiquer à quoi correspondent les deux abréviations WAN et LAN que l'on voit sur le schéma.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- SUJET Code : IRSES Page: 19/21

Page 21: Sujet ESI du BTS IRIS 2012 (complet)

Question E.2 Indiquer la topologie physique des réseaux ethernet et modbus bonne réponse dans le tableau du document réponses.

L'espace d'adressage du réseau SOM est 192.168.1.0/24.

Question E.3 En complétant le tableau du Jiocumeot réponses, indiquer le masque de sous- 1 réseau dans la notation décimale pointée, le nombre d'adresses disponibles pour ' les machines hôtes du sous-réseau, la première adresse disponible, la dernière adresse disponible et l'adresse de diffusion (broadcast).

L'espace d'adressage du réseau logistique est 172.16.64.0.

Question E.4 En complétant le tableau du document réponses, indiquer la classe d'adresse du réseau et le masque standard de sous-réseau dans la notation décimale pointée.

En prev1s1on d'autres sous-réseaux, l'administrateur réseau a choisi l'espace d'adressage en 172.16.64.0/19.

Question E.5 Compléter le tableau du document réponses.

Il est indiqué" Adresse IP publique, sur la liaison WAN du routeur NAT" internet" ·

Question E.6 Quelle est la différence entre une adresse IP publique et une adresse IP privée du point de vue routage ?

Question E.7 Quelles sont les adresses IP privées parmi les propositions du document réponses (plusieurs réponses possibles) ?

Question E.8 Indiquer l'adresse IP de la route par défaut (ou passerelle par défaut pour l'accès WAN) des machines précisées dans le tableau du document réponses.

Question E.9 Que signifie NAT ? (Cocher la bonne réponse dans le document réponses)

Question E.1 0 Lesquelles des propositions du document réponses s'appliquent à un route ur NAT ? (plusieurs réponses possibles)

Question E.11 Justifier la présence du routeur NAT " SOM ,

1 BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

1 ÉTUDE D'UN SYSTÈME INFORMATISÉ - SUJET 1 Code : IRSES Page : 20/21

Page 22: Sujet ESI du BTS IRIS 2012 (complet)

L'ordinateur de supervision (sur le réseau SOM) fait régulièrement des accès au serveur BOO (sur le réseau logistique) pour archiver les températures des différentes zones dans la base de données. Les trames échangées entre les deux machines transitent par le routeur NAT " SOM''·

Soit les notations suivantes : • Pour l'ordinateur de supervision :

_ _a _adresse IP : 192.168.1.1 o adresse MAC : @MACsup

• Pour le routeur NAT '' SOM " : o côté réseau SOM :

• adresse IP: 192.168.1.254 • adresse MAC : @MACrouteurSDM

o côté réseau logistique : • adresse IP: 172.16.95.1 • adresse MAC: @MACrouteurLOG

• Pour le serveur BOO : o adresse IP : 172.16.64.10 o adresse MAC: @MACbdd

Question -E.12 Compléter dans le document réponses les adresses IP et MAC manquantes dans les trames qui circulent sur les réseaux SOM et logistique lors d'une requête de l'ordinateur de supervision vers le serveur BOO.

Question E.13 On suppose à présent que le routeur NAT ,, SOM , est remplacé par un routeur classique (il n'y a plus de translation d'adresses). Compléter dans le document réponse les adresses IP et MAC manquantes dans les trames qui circulent sur les réseaux SOM et logistique lors d'une requête de l'ordinateur de supervision vers le serveur BOD.

Remarque : on ne s'intéresse pas dans cette question au routage de la réponse du serveur BOO.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES

ÉTUDE D'UN SYSTÈME INFORMATISÉ - SUJET Code: IRSES

Page 23: Sujet ESI du BTS IRIS 2012 (complet)

BREVET DE TECHNICIEN SUPERIEUR INFORMATIQUE ET RÉSEAUX

POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES

ÉTUDE D'UN SYSTÈME INFORMATISÉ

Session 2012

Durée : 6 heures Coefficient 5

ANNEXES

(28 PAGES)

Annexe 1 : Synoptique du réseau modbus ................... ......... : ···- ~ ·· · ···· · ···· ·· ··· · ······ · ··· · ·· · · ·· ··2

Annexe 2 : Éléments d'analyse ...... .... .. ...... ... ...... ..... ...... .. .. ...... .. ... .. ... ............. ... .. .. ...... .... 3

Annexe 3 : Principe de production du froid par une machine frigorifique ' ....... ... .. ............. 7

Annexe 4 : Éléments de thermodynamique ........................................... ..... .............. ..... .. . 9

Annexe 5 : Sélection des compresseurs ...... ....... ......... .... .. .. ... ....... ...... ..................... ... .. 11

Annexe 6 : Extrait documentation modbus ... ............................... .... .... .. ......... ... .......... .. . 12

Annexe 7 : Modules TDA08/TDA04 ...... .......... .. ........ ..... ... .... ..... ....... .... ......... .... ...... ...... î 5

Annexe 8: FieldTalk Modbus C++ Library .................... ............... ......... .............. ..... ...... 22

Annexe 9 : Extrait STL Vector ........ .......................... ................ ..... .... ...... .. .. .. .... ... ........ .. 27

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012 ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES Code: IRSES Page:1 /28

Page 24: Sujet ESI du BTS IRIS 2012 (complet)

m ' lJJ -l -l c (/)

0 z m 0

11 0

c ::0 z ::;:: (/) )>

-< ::i (/) 0 -! c m- m ::;:: m m

-l z ::0 11 m-0 (/) ::0 m ::;:: )> )> c -l >< (/) '"0 m, 0 ' c )> ::0 z r z z m x 0 m c (/) (/)

-l

0,~ o m a.m <D -l

r

::olm (/)(/) m(f) cnm

::0 < 0 m (/)

-l m 0 I z ô c m (/)

-'"0 (/) ru <D

<0 Ul <D Ul ,. 6 " ~ :J 1\.)1\.) ())0

...... 1\.)

Ordinateur de supervision Centrale négative 1

~,, .,.-

~; · ··· -

Centrale n'égative 2

:-~._...

~-·~ -;; '\ . . . ' - . -~ \!:-~

~- · ' -~ '

Centrale fruits et légumes

\'<· ~{~ ..... Pi ..-

~~ -\~ .• ~· .

Centrale positive 1

1 ~-"J. ~--~r;; _..., - ....

·~ • . .. «.!:!"

Centrale positive 2

.~,____,._._

~i .. .;,;,;,;. - .-

r< · -~4:•>~ •?>·,: '. .

Adresse 20 Adresse 21 Adresse 22 Adresse 23 Adresse 24

Réseau modbus 9600 bauds 8 bits de données 1 bit stop Parité paire

Le réseau comporte : - 5 centrales de commandes

Produits frais zone1

Produits frais zone2

- 1 0 TL Y qui contrôlent les unités réfrigérantes (il y en a un 11 ème qui gère le plancher chauffant non étudié ici)

- 3 modules TDA connectés aux 22 capteurs de températures (sol ou plafond)

Fruits légumes zone2

Boucherie volaille poisson

TDA 1

Fruits légumes zone1

Quai zone1

TDA2

Produits surgelés zone2

Quai zone2

TDA3

Produits surgelés zone1

Sas surgelés

(J)' c ..0::::~ c ••• -o· 0 <DQ_

-"WCJ13::ï 030~~

(J) - (J) 3o::::~enc oo..~en-. o..s.mco.. s. (J) (J) <" (J) <D en en m en -1 ......, ::::1 en -lom cne ')>S. ··-g -<oo -. w co 3 =5. c.nmm en m c (i) a· c >< en ::::1 >< m + ~ Q-(Q .... (J) "'"' <D en o cn en c en m-o <D en CD Ul +:-. () D; m- ~ m- c:.o -o .... W CD +:-. en

en (J) c "'"' ~ m c >< m 0.. .... CD en en (J) en 1\.) 0

Pl' 1\) +:-.

(J) en -.... CD

CD'

'"0 m .... c ::::1

"""" (J), en (J) m c

3 0 0.. cr c Ul

..--,

'"0 .... 0 -0 () 0 (i)

3 0 0.. cr c en

:::0 -l c m c ><

)> :::J :::J CD >< CD .....1.

(j) '< :::J 0

'"0 ......... ..0 c CD 0.. c ...... CD~ en CD Pl c 3 0 0.. rr c en

Page 25: Sujet ESI du BTS IRIS 2012 (complet)

2.2 Le diagramme de classes de la partie supervision

Pour des raisons de lisibilité, les classes associées exclusivement aux cas d'utilisations qui suivent, ne sont pas représentées: " Gérer la traçabilité des produits "• "Configuration et Maintenance " • " Fixer les températures des chambres froides, et "Gérer le dégivrage des unités Téfrigérantes ,, .

--------·--- -----· - ------·------~--- ------------··- --------- ----- ------------- -- ------ ----------- - -----·- -- -----------------------.-class Diagramme de classes de l'application : système de supervision d'une plateforme logistique frig ... ) '

((entity)) CTLY26-35

unsigned char

+ Ot)tèôirTemperah.Jre(unsigned char) : float +< ôbtenirTouteslesTemperah.Jres(): vector<floal>[]

_______________ __......../

10

Remarque : le Thread CAcquisitionTemperature accède aux différentes températures, via le process principal : CAssurerleFonctionnementDesChambresFroides. Il peut être vu comme une tâche périodique. De même, le process CAssurerleFonctionnementDesChambresFroides met à jour périodiquement I'IHM.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ - ANNEXES Code: IRSES Page:6/28

Page 26: Sujet ESI du BTS IRIS 2012 (complet)

Annexe 2 Éléments d'analyse

< i

1 Les principaux scenarii du système 1 .1 Acquisition des températures ·····-··--·--·-··-······- ... ---··---- ·- - -.- -- ........ ···· · ·---- ----

! sd Scenario :Acquerir température 1 C---·--··-------· ·· · ........... ···- ____ _ _ ::..:...:../

Scénario: acquisition des températures des différentes chambres froides.

Horloge

êYSlèmede supervisiof d'urie plate forme logistique ; ',)"''. '<, Module de gestion Module acquisition

1 d'unité réfrigérante Température 1 On TopHorloge(l 1 (TLY35) (TDA_08)

1 1 1 1 1

Iqop .PourTouteslesUriitéRéfrigérantes) 1 1 1 1 1 1

ObtenirTemperature() :Fioat : 1 1

~y 1 1

1 1

pTraiterTemperature() ! 1 1 1

Mi seAjouriHM(vaiTemp) 1

1 1

Archivage Temperature(vaiTemp)

1 1 1 1

!oo'p .·PourTousl~~fw1.pdlilesD'acquisition De Tem péniture) 1 1 1

toop PourC~a,q~~sorideDliModuteD'acquisition) 1 1

1 1 LireTempérature() :float 1

: 1 1

pTraiterTemperature() ! 1 1 1

MiseAJouriHM(vaiTemp) 1

1 1

ArchivageTempérature(vaiTemp) 1 1

1

~ !HM

1 1 1

..1 1 1 1 1 1 1 1 1 1 1 1 1

~ 1 1

1 ' 1 1

1 1 1 1 1 1 1 1 1 1 1 1

- Lf 1

1

1 BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES

1 ÉTUDE D'UN SYSTÈME INFORMATISÉ - ANNEXES 1 Code: IRSES

~ Base De Données

1 1 1 1 1 1 1 1

...... ..!:::!.

l 1 1

J 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ......

ï 1

Session 2012

Page:3/28

Page 27: Sujet ESI du BTS IRIS 2012 (complet)

1.2 Demande d'arrêt ou de démarrage d'un compresseur ...• ····-------··-·-········-···'" -··· ·

. sd Scénario : Demande Marche/arrêt des compresseurs de la SOM ; . - ·-· -···- ···---· ---······--·················--· ---····----------./

Scénario :Demande Marche/Arrêt Compresseur de la SOM

Responsable logistique du.Site (ou .-· -----ll:iM-Administrateur)

1

~Sys$me de sup1irvisîérn d'une 'pliileiorme logistique frigorifique .,:?.' ~ ... .. :'.:::.:.~· •. ' ,:;;;': . . • •

1 1 1

1 SélectionCompresseur à Démarrer ou à Stopper() 1 1

1 1

Demande Marche/Arrêt . Compresseur(ldCompresseur))

~ \ CentraiSè--

1 1 1 1 1 1 1 1

1

- .Compresseur 1 1 1

1 1 1 1 1 1 1 1

1 :~\LChoixCompresseur) [Id Compresseur]

DemandeMarcheArretCompresseur(identif!antCompresseur):

1. : Arret ou Marche():

MiseAJouriHM() ~ y 1 1

J 1 1 1 1

1

Les différentes centrales assurent la gestion des compresseurs.

Remarque : chaque compresseur possède un compresseur redondant. Chaque zone de réfrigération possède donc deux compresseurs. Le dimensionnement de ces derniers a été calculé afin de garantir le refroidissement de la zone réfrigérée même en cas de défaillance de l'un des deux. Une réparti~ion de charge d'utilisation des compresseurs permet. de garantir que ceux-ci sont toujours opérationnels et sans utilisation intensive. Les centrales assurent le fonctionnement optimal des compresseurs et donc la régulation en température des différentes chambres froides. En cas d'arrêt de la supervision, le fonctionnement en mode dégradé est pris en charge par les centrales.

Ainsi lorsque l'on veut arrêter un compresseur, la superv1s1on n'agit pas directement sur le compresseur lui-même dans la SOM (Salle Des Machines}, mais il en fait la demande à la centrale appropriée qui gèrera, elle, l'arrêt du compresseur. Idem pour la remise en marche.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES j Code: IRSES Page:4/28

Page 28: Sujet ESI du BTS IRIS 2012 (complet)

Le fluide circulant dans une machine frigorifique subit un cycle de transformation composé de quatre étapes :

• Dans l'évaporateur, le fluide à l'état liquide récupère de l'énergie sous forme de chaleur en s'évaporant. La pression reste constante et le fluide passe à l'état vapeur.

• À la sortie de l'évaporateur, le fluide est surchauffé et à faible pression. • Dans le compresseiJr, la.Yapeur est comprimée et passe donc d~une bass_e__pression à une

pression plus élevée grâce à l'énergie mécanique fournie par le compresseur. Conséquence, sa température s'élève aussi.

• À la sortie du compresseur, le fluide est à l'état vapeur, à haute pression et sa température est élevée.

• Dans le condenseur, le fluide passe à l'état liquide et cède de l'énergie qui est transférée vers l'extérieur (circuit de chauffage) sous forme de chaleur. Conséquence, à la sortie du condenseur, le fluide (en phase liquide) voit sa température fortement diminuer.

• Le fluide rentre dans le détendeur à l'état liquide et passe de la haute à la basse pression, sans échange d'énergie. La température du fluide baisse et le cycle recommence.

Groupe Moto-Compresseur (Salle des Machin.es)

Evaporateur à dégivragj!· él.ec;triqlfe

1 Ré~istances éle.ctriques

l ._,

. 1 Condenseur

(Extérieur) j Détendeur

L;-,_ Récupération des éorntensats ·

Chambre froide

Figure 2 : Synoptique du cycle thermodynamique d'une machine frigorifique

Les condensats sont constitués de l'eau de dégivrage des évaporateurs. L'humidité résiduelle, captée dans l'air ambiant des chambres froides, se condense sur l'évaporateur et forme du givre. Il faut donc périodiquement réchauffer ces derniers à l'aide de résistances électriques, afin de faire fondre la glace et conserver un maximum d'efficacité pour la production de froid.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012 1

ÉTUDE D'UN SYSTÈME INFORMATISÉ· ANNEXES ) Code: IRSES Page:8/28 1

Page 29: Sujet ESI du BTS IRIS 2012 (complet)

2 Diagramme de classes

2.1 Les différents « packages » utilisés pour l'application

cl~~~~~a~ramm~ de classe~ ~~sxstè~f! desuperv ision ~.·~".= ~~~~=!~r.~l! -~~~istique frigorifique/

Mo~~~i~~tlcm·qJsysteme de Supervision d'un~ plate forme logistique frigorifique. . !

,~r;rarpe'?{orks Ot4.6.2

.+ ~ctiveqt + c6reliti

+ CAsSUre·rLe-F.onctiOiï"fl"ë-rTù~~ntiT9i;Cfiarnl3'fëst=raraes····,.::. ··· ~ ~~ -~

+ CBaseDeDonnées ::. ... + CCentraJe

+ CChambreFroide

+ CModuleComModBus

+ CModuleTL Y ··

+ CProduit

+CO Image. (Framework Ot)

+ CT.DA08

+ CTempl)rature

+ CTLY26-35

+ PackageiHM

/ /

/ /

/

\ \

\ \

\

~ !f!~)éftàik Modbus ~

\

+multimedia ·~m + :M.od~le de classes FieldTalk Modbus Eselave ,

(li't+ ~ode le de classes FteldTalkl ModbusMattre

+ 6pengl

+OtGUI

+ testlib

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES

ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES Code: IRSES

Session 2012

Page:5/28

Page 30: Sujet ESI du BTS IRIS 2012 (complet)

Annexe 3 · Principe de production du froid par une machine frigorifique

Le système frigorifique, qui prélève de la chaleur à la source froide grâce à un circuit de captage, dispGse de-quatre-organes principaux (voir figure 1 ci-dessGt~s) :

1. L'évaporateur (c'est la source froide) : la chaleur est prélevée au fluide secondaire (eau, air) pour vaporiser le flu ide frigorigène. Soit E+ l'énergie prise dans la chambre froide (le frigo) par la machine frigorifique.

2. Le compresseur : actionné par un moteur électrique, il élève la pression et la température du fluide frigorigène gazeux en le comprimant. Soit W l'énergie consommée par le compresseur (travail, consommation électrique). Autrement dit W est l'énergie prise au réseau électrique par la machine frigorifique.

3. Le condenseur (c'est la source chaude) : le fluide frigorigène libère sa chaleur au fluide secondaire (eau, air ... ) en passant de l'état gazeux à l'état liquide. Soit E- l'énergie rejetée à l'extérieur.

4. Le détendeur : il réduit la pression du fluide frigorigène en phase liquide. L'apport du détendeur est neutre dans le bilan énergétique.

Vocabulaire métier : Un fluide frigorigène (ou réfrigérant) est un fluide pur ou un mélange tJe fluides purs présents en phase liquide, gazeuse ou les deux à la fois en fonction de la température et de la pression de celui-ci. La principale propriété des fluides frigorigènes est de s'évaporer à une faible température sous pression atmosphérique. Les fluides frigorigènes sont utilisés dans les systèmes de production de froid (climatisation, congélateur, réfrigérateur, etc.)

Energie prise dans la chambre

~ ~ Evaporateur

Energie consommée par le compresseur

Condenseur

Liquide haute pression HP

Figure 1 : Principe de fonctionnement du cycle thermodynamique d'une machine frigorifique

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES Code: IRSES Page:?/28

Page 31: Sujet ESI du BTS IRIS 2012 (complet)

Annexe 4 · Éléments de thermodynamique

3 Chaleur massique La chaleur massique ou chaleur spécifique (symbole c ou s) , qu'il convient d'appeler capacité thermique massique, est déterminée par la quantité d'énergie à apporter par échange thermique pour élever (ou abaisser) d'un degré Kelvin (ou Celsius) la température de l'unité de masse d'une substance.

L'unité du système international est alors le joule par kilogramme-kelvin (J.kg-1.K 1). La

détermination des valeurs des capacités thermiques des substances relève de la calorimétrie.

4 Chaleur latente La chaleur latente (ou enthalpie de changement d'état) correspond à la quantité de chaleur nécessaire à l'unité de masse (kg) d'une substance pour qu'e-ne change d'état ; cette transformation ayant lieu à pression constante. Il existe trois états physiques principaux pour toute substance pure : l'état solide, l'état liquide et l'état gazeux.

Par exemple, l'eau bout à 100 OC sous la pression d'1 atmosphère (1 atm = 101325 Pascal). La chaleur latente, égale à la quantité de chaleur fournie pour transformer l'eau liquide en vapeur, est de 2257 kJ/kg.

5 Chaleur massique et chaleur latente des aliments . Le tableau ci-après donne la chaleur massique (ou spécifique) des principaux aliments.

Comment lire ce tableau ?

Prenons le cas des laitages : • Au dessus de OOCelsius, il faut retirer (ou fournir) 1,05 Watt-heures à 1 kg de laitages pour

abaisser (ou élever) la température de ces laitages de 1 oKelvin (ou 1 o Celsius) ;

• En dessous de 0 <>Celsius, il faut retirer (ou fourn ir) 0,53 Watt-heures à 1 kg de laitages pour abaisser (ou élever) la température de ces laitages de 1 oKelvin (ou 1 o Celsius) ;

• Il faut retirer 80 Watt-heures à 1 kg de laitages pour le congeler.

l BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

/ ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES j Code: IRSES Page:9/28

Page 32: Sujet ESI du BTS IRIS 2012 (complet)

·. :-, ...

f. L~'~.~~~Œ·\/

{ ·~]~i~~~~~~rre ·.:.·· .. : . ' •-',",.'·'

~-:. ~..:" ~·.. ..~.<=:·· . .:i·~··. ~ :-~~:· . .;;, ;.~:~·: . ~ •.·. . -·-: '(:·:. >;;:;:~<.·:

ji2:1~i~4~t,,_]~·· •·· .. • l>aïri'z;~~~sêrie

.•-::=· .

; ...;,"W, • ,..,.;..,...;;.,; ... ,:::.~-·~~ .... Ao'-' '~'"' "

. ' /:Y""'~"":~':.'.'."'~~"·~~rr.··.?""'' .-., i .... · .. .;· .. ";..:·.,·;=

1 êhait:;~;.spécifique · rn1oY.~iines) ·

' auC:dêsslis de 0°C

.;.

'

cwn/ic!Jj<}.

0,87

' 0,93

1,04

... : ... :.--.... --..... -"""'''""''-'" ' '

Chaleur sp~dfique. (moyenn~s.) €n_:des5Qùsde 0°C (Wh/ikgKJ

0,47

0,50

0,53

0,53

0,41

0,56

0,52

chale~r latente de · rongélation

(moyennes) {Wh/kg)

64

67

47

87

37

Figure 1 : Chaleur massique et chaleur latente des aliments

Note:

1 t-Vk = 3,6k}' (1 Watt-heure est égal à 3,6 kilo-Joules)

1 BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

1 ÉTUDE D'UN SYSTÈME INFORMATISÉ - ANNEXES 1 Code : IRSES Page:1 0/28

Page 33: Sujet ESI du BTS IRIS 2012 (complet)

HSN5353-25

HSNS3Sl·30 ::'· '< • '·<. ~ -~-- 'i '

.• ,; -~

HSN6451-40

HSN7451·60

-.~t·. HS~7461 ;7Ô .. _;:,,_>:··.· :>'.

<>-·;:;:-::'

HSN7471-75

Annexe 5 · Sélection des compresseurs

28,70 37,20

31 .10 30,00 28,80 38,70 37,50 36.10

~ 44,00

44,70 43,00 41,70 104400 55.10 53,60 52,20

76600 62900 50800 64,50 63,80

· ~ 12i5oôv''iiô6i'ôo:\~Y874ôo :Y;-,·71 ooo · · 567oo ''44250'

.. :}6~~-?~f-;1f~~~0f:i:·i~~j~g, : :~,~~:'.:.l~~!~t 30 160100 134500 112100 92500 75500 60700 47850 57,00 54,60 52-.30 50,00 40 147100 123800 103300 85500 69800 56200 44400 69,30 66,50 63,70 60,90 50 130300 109800 91700 75800 61800 49450 38600

Température d'évaporation = Température de la chambre froide + (-JOC).

27,50 34,70 32.10

27,70 26,40 25,10 34,70 33.20 31 ,50 42,50 42.00 39,90

40,50 39,20 37,50 50,90 49,40 47,50 63,70 61.90 60,20

. 4;3,30 41 ~so> ·. ~9.6R4 : '.53,70 51 ,60 •• ~ :•:..4.9 ,30' !-'.6(,50 64,~0 1 :.~~.~.e.9~~

47,60 45.1 0 42,60 58.10 55,30 52.60

Température de condensation= Température extérieure max+ 15°C (pour la région lyonnaise, la température extérieure max vaut 35 "C).

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ - ANNEXES Code : IRSES Page:11/28

Page 34: Sujet ESI du BTS IRIS 2012 (complet)

Annexe 6 : Extrait documentation modbus Cette annexe est un extrait du document " MODBUS over seriai line specification and implementation guide V1 .02 , disponible sur le site http://www.modbus.org.

2.5 The two seriàiTràhsmission Modes

Two different seriai transmission modes are defined: The RTU mode and the ASCII mode.

lt defines the bit contents of message fields transmitted serially on the line. lt determines how information is packed into the message fields and decoded.

The transmission mode (and seriai port parameters) must be the same for ali deviees on a MODBUS Seriai Line.

Although the ASCII mode is reguired in some specifie applications, interoperability between MODBUS deviees can be reached only if each deviee has the same transmission mode: Ali deviees must implement the RTU Mode. The ASCII transmission mode is an option.

Deviees should be set up by the users to the desired transmission mode, RTU or ASCII. Default setup must be the RTU mode.

2.5.1 RTU Transmission Mode When deviees eommunicate on a MODBUS seriai line using the RTU (Remote Terminal Unit) mode, each 8-bit byte in a message contains two 4-bit hexadecimal characters. The main advantage of this mode is that its greater character density allows better data throughput than ASCII mode for the same baud rate. Each message must be transmitted in a continuous stream of characters.

The format (11 bits) for each byte in RTU mode is:

Coding System: 8-bit binary

Bits per Byte: 1 start bit

8 data bits, !east significant bit sent first

1 bit for parity completion

1 stop bit

Even parity is regu ired~ other modes (odd parity, no parity) may also be used. ln arder to ensure a maximum compatibility with other products, it is recommended to support also No parity mode. The default parity mode must be even parity.

Rerriark: the use of no parity requires 2 stop bits.

How Charaeters are Transmitted Serially: Each character or byte is sent in this arder (left to right): Least Significant Bit (LSB) .. . Most Significant Bit (MSB)

With Parity Checking

Figure 1 0: Bit Sequence in RTU mode

1 BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

[ÉTUDE D'UN SYSTÈME INFORMATISÉ - ANNEXES 1 Code: IRSES Page:12/28

Page 35: Sujet ESI du BTS IRIS 2012 (complet)

Deviees may accept by configuration either Even, Odd, or No Parity checking. If No Parity is implemented, an additional stop bit is transmitted to till out the character frame to a full 11-bit asynchronous character:

Without Parity Checking

Figure 11 : Bit Sequence in RTU mode (specifie case of No Parity)

Frame Checking Field: Cyclical Redundancy Checking (CRC)

Frame description:

Figure 12: RTU Message Frame

~ The maximum size of a MQDBUS RTU frame is 256 bytes.

2.5.1.1 MODBUS Message RTU Framing

A MODBUS message is placed by the transmitting deviee into a frame that has a kriown beginning and ending point. This allows deviees that receive a new frame to begin at the start of the message, and to know when the message is completed. Partial messages must be detected and errors must be set as a result.

ln RTU mode, message frames are separated by a silent interval of at least 3.5 character times. ln the following sections, this time interval is called t3,5.

Frame 1 Frame2 Frame 3

1 1 1 1.. ...: 1

t.,. ~: :.._ ... : : 3.5 char 1 :

atleast 3.5 char ~tleast 3.5 c~ar· :.. .: 4 .5 char

Start: · EnQ

:;::: 3.5 char ~ 3.5 char

Figure 13: RTU Message Frame

The entire message frame must be transmitted as a continuous stream of characters. If a silent interval of more than 1 .5 character times occurs between two characters, the message frame is declared incomplete and should be discarded by the receiver.

Frame '1 OK Frame2 NOK

ta

1 1 1 1 1 1 1 ' 1 1 1 Il 1 1 1 ' jli 'è ~1 lof IJol ...

~ 1 \-1 1 t .

s 1.::J char ~

>11.5 enar

1 BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

1 ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES 1 Code: IRSES Page:13/28

Page 36: Sujet ESI du BTS IRIS 2012 (complet)

Remark: The implementation of RTU reception driver may imply the management of a lot of interruptions due to the t1.5 and t3.5 timers. With high communication baud rates, this leads to a heavy CPU load. Consequently these two timers must be strictly respected when the baud rate is equal or lower than 19200 Bps. For baud rates greater than 19200 Bps, fixed values for the 2 timers should be used: it is recommended to use a value of 750j.ls for the inter-character ti me-out (t1 .5)-aml-a--value of 1. 750ms for inter-frame delay (t3,5}.-

The following drawing provides a description of the RTU transmission mode state diagram. Bath "master" and "slave" points of view are expressed in the same drawing:

1 hsexpired

1

(read

D~and of-emlssion

:comment :lfft.!me OK :'* praœss.fng frame lùtainaNOK -~ -qefete entiœ ftam.e

Finit character received · /lriit and star! t1.~ tu

Emîtled character· [if tast emitted character}

J init and start hs

Cha:raeter receï••ed t nag-= trame NOK

Rec~ption i

comment control trame (CR:c, Parity, Slave ader)

> flag =frame OK or NOK

Character received .finît: and. start t;.:S. tas

h.s.1;u; : lirners tu : 3 .5 cflaractertiffies l ts: 1.5 charactertimes

Figure 14: RTU transmission mode state diagram

Sorne explanations about the above state diaqram:

• Transition from "Initial State" to "ldle" state needs t3.5 time-out expiration: that insures inter-frame delay

• "ldle" state is the normal state when neither emission nor reception is active.

• ln RTU mode, the communication lirik is declared in "idle" state when there is no transmission activity after a time interval equal to at !east 3,5 characters.

• When the link is in idle state, each transmitted character detected on the link is identified as the start of a frame. The link goes to the "active" state. Then, the end of frame is identified when no more character is transmitted on the link after the time interval t3,5.

• After detection of the end of frame, the CRC calculation and checking is completed. Afterwards the address field is analysed to determine if the frame is for the deviee. If not the frame is discarded. ln arder to reduce the reception processing time the address field can be analysed as saon as it is received without waiting the end of frame. ln this case the CRC will be calculated and checked only if the frame is addressed to the slave (broadcast frame included).

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 201 2 1

ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES 1 Code: IRSES Page:14/28 1

Page 37: Sujet ESI du BTS IRIS 2012 (complet)

Tecnologic S.p.A. TDA08/TDA04- Protocole de communication

Annexe 7 : Modules TDA08/TDA04

TDA08/TDA04 Protocole de communication

Extraits du manuel d'utilisation

SOMMAIRE: (Note : plusieurs paragraphes qui ne sont pas utiles pour répondre aux questions du sujet ont été retirés)

1 Introduction .................................................... ................... . , .... , ......... ... .............. .......... 16

2 Connexion physique ....... .... ... .... ..... ...... ...................... ..... .................... ......... ......... ..... 16

2.1 Interface .. .. ........ .......... .......... ........ .. .. .................... ...... .. .............. ........ ............. ................ 16

3 Protocole de communication ....................................................................................... 17

3.1 Fonction 3 - lecture de n mots ........ ................. ........................................................... .. .. . 18 3.2 Fonction 6 - écriture d'un mot.. .... .. ............ ... ...... ...... ......... ................. .............................. 18

4 Echange des données .. ........... .... .. .... .......... .... ...... .... .. ... ............... .... .. ...................... . 19

4.1 Certaines définitions ......... .... .. .... .............................................. .. ........... .. ... ...... ...... ......... 19 4.2 Zones de mémoire ................ ........ ................................................... .. ................... .... ..... .. 19

4.2.1 Zone des paramètres ...... ................ ...... ....... .. ........................ .. ..................... ..... .... ..... ... ........ ........ 19 4.2.2 Zone des variables ................... ... ......... ....................... .. .. .. ........... ....... ........ .. ..... ......... ... ........ ..... .. 20

A.2 Appendice - Tableau de la zone des variables ..... ....... .. ...... .. ........ ............. .. ................... ....... 21

1 BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

1 ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES j Code: IRSES Page:1 5/28

Page 38: Sujet ESI du BTS IRIS 2012 (complet)

Te nologic S.p.A. TDA08ffDA04 - Protocole de communication

1 Introduction Ce document a le but de décrire les capacités de communication de tous les modules d 'acquisition TDA qui utilisent le protocole MODBUS et il est surtout adressé aux techniciens, intégrateurs de systèmes et créateurs de logiciel.

Il est subdivisé en quarre parties :

• la première décrit la connexion physique à la ligne ; • la seconde présente le protocole de communication, qui est un sous-ensemble du

MODBUS RTU 1 ;

• la troisième partie décrit les différents types de données qui peuvent être échangées ; • la quatrième reporte les performances typiques du système.

2 Connexion physique 2.1 Interface

Les modules TDA sont munis d'interface de communication sérielle optoisolée pour éviter l'apparition des problèmes dus aux potentiels de terre.

En position d'attente le module est en condition de réception et passe en transmission après avoir reçu et décodé un message correct qui lui est adressé.

Choque module est muni d'un switch rotatif à 16 positions qui permet de programmer son adresse modbus. Les positions volables sont 15 (de 1 à 15, l'adresse ZERO est réservée par le MODBUS RTU pour les messages de broodcasting, mais elle n'est pas adoptée pour le TDA vu le manque de fiabilité implicite de ce type de communication).

Le tableau suivant illustre les programmations possibles :

Position Adresse du module ----switch TDA08 TDA04 rotative 1-·--- ------------·- ---··--·-··-··---- ---0 Non valable Non valable 1 2 et 3 1 -- ···-----------2 4et5 2 3 6 et 7 3

- --·-4 8 et 9 4 5 lü et 11 5 -------------~----· ---- ----- ------··-·-----~-----

6 12 et 13 · 6 7 14et 15 7 ---------- -

js -----·- -----

8 16 et 17 5!__ ~~ :; ~i-f~o------A B ~? __ et 23 ----tu ________ __________ --·--··----····-··------- -·-c 24 et 25 ! 12 D 26 et 27 13 r-----------

114 E 28 et 29 F 30 et 31 15 '--- --·- --··-·-·-···-··-·---

1 Marque enregistrée par AEG Schneider Automation, lnc

1 BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

1 ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES 1 Code: IRSES Page:16/28

Page 39: Sujet ESI du BTS IRIS 2012 (complet)

\

Tecnologic S.p.A. TDA08ffDA04 - Protocole de communication

N.B.: Chaque module TDA08 possède 2 adresses pour permettre au data-logger TMSOl d'enregistrer les huit possibles entrées de la sonde. Sur le TMSOl, par exemple, il sera possible configurer deux dispositifs pour chaque module TDA08, le premier enregistrera les entrées IN l..IN4, le deuxième les entrées IN5 .. 1N8.

Le baud rate de chaque module a comme programmation d'usine la valeur de 9600 baud. On peut le-modif-ier~ pm ~ le modbus et la nouvelle progFemmation deviendra active au prochain cycle d'extinction-allumage du module.

3 Protocqle de communication Le protocole adopté par les TDA est un sous-ensemble du protocole largement utilisé MODBUS RTU. Ce choix garantit la facilité de connexion plusieurs PLC et à tous les programmes de supervision commerciaux. Pour ceux qui veulent développer leur propre logiciel d'application toutes les suggestions et les informations sont disponibles.

Les fonctions du protocole MODBUS RTU implémentées dans les TDA sont :

fonction 3 - lecture de n mots fonction 6- écriture d'un mot

Ces fonctions permettent au programme de supervision de lire et modifier toute donne du module. La communication se base sur des messages envoyés par la station master à une station slave CTDA) et le contraire. La station slave qui reconnaît dans le message sa propre adresse, en analyse le contenu et, si elle le trouve formellement et sémantiquement correct, elle engendre un message de réponse pour le master.

Le procédé de communication implique cinq types de message :

du master au slave du slave au master fonction 3 : demande de lecture de fonction 3 : réponse contenant n mots n mots. lus fonction 6: demande d'écriture fonction 6 : confirmation de l'écriture d'un mot d'un mot

Réponse d 'exception (en réponse aux deux fonction_s, en cas d ' ano_malie)

Tout message contient quatre zones :

adresse du slave : sont valables les valeurs comprises entre l et 31 (voir tableau a 2.1 ); l'adresse 0 (zéro) est réservée par le MODBUS RTU pour les messages de broadcasting, mais il n'est pas adopté pour le TDA vu le manque de fiabilité de ce type de communication ; code fonction : contient 3 ou 6 selon la fonction spécifiée ; zone d 'informations: contient les adresses ou la valeur des mots, selon la demande de la fonction utilisée ; mot de contrôle : contient un cyclic redundancy check (CRC) calculé selon les règles prévues pour le CRC 16.

Les caractéristiques de la communication asynchrone sont : 8 bits, aucune parité, un bit d'arrêt.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES J Code: IRSES Page:17/28

Page 40: Sujet ESI du BTS IRIS 2012 (complet)

T~cnologic S.p.A. TDA08/TDA04 - Protocole de communication

3.1 Fonction 3 -lecture de n mots

Le nombre de mots à lire, doit être inférieur ou égal à quatre.

La demande a la structure suivante :

·----- ···---- ··-----numéro ! adresse premier ! nombre de mots CRC du slave 3 mot

MSB LSB MSB LSB LSB MSB byteO byte l byte2 1 byte 3 byte4 lbyte? byte 6 lbyte 7

La réponse normale (au contraire d 'une réponse d'exception) a la structure suivante :

numéro nombre valeur du premier !mots CRC du slave 3 de bytes mot suivants

lus MSB LSB 1 LSB MSB 1

byteO -ibyte 1 byte 2 byte3 lbyte 4 lbyte 5 byte lbvfe ___

3.2 Fonction 6 - écriture d'un mot

La demande a la structure suivante :

,--------,-----numéro CRC du slave 6

La réponse normale (au contraire de la réponse d'exception) est purement un écho du message de demande :

----,-------------,----- - ---------,------,:----,----------~

Adresse premier mot Valeur à écrire CRC i MSB LSB MSB LSB LSB MSB J

byte 2 i byte 3 byte 4 1 byte 5 Byte 6 1 byte 7 1

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ - ANNEXES Code : IRSES Page:18/28

Page 41: Sujet ESI du BTS IRIS 2012 (complet)

Tecnologic S.p.A. TDA08/TDA04 - Protocole de communication

4 Echange des données

Cette section contient les informations concernant les données numenques et non _!}_UQ}~riques échangées avec les modui~~TDA et_l_eurs f_ormats et limites.

4.1 Certaines définitions

Toutes les données échangées sont constituées par un mot de 16 bits.

On distingue deux types de données : numériques et symboliques (ou no numériques). Les données numériques représentent la valeur d'une grandeur (par exemple la variable mesurée, etc ... ).

Les données symboliques représentent une valeur particulière à J'intérieur d 'une gamme de choix (par exemple, Unité de mesure peut valoir "OC" ou "oF").

Les deux types sont codifiés avec des numéros entiers : on adopte des numéros entiers avec signe pour les données numériques et les numéros entiers sans signe pour les symboliques. Une donnée numérique doit être associée avec le numéro approprié de chiffres décimaux, de façon à représenter une grondeur avec les mêmes unités d'ingénierie adoptées dans le module TDA

Les données numériques sont représentées avec une virgule fixe, et peuvent être entières ou avec un chiffre décimal.

4.2 Zones de mémoire

Pour les fonctions adoptées, toutes les données lisibles et que J'on peut écrire apparaissent comme des mots de 16 b its placés dans la mémoire du module.

Le plan de la mémoire a cinq zones :

Paramètres, variables, commandes, alarmes, code d'identification de l'instrument.

Les paragraphes suivants examinent les caractéristiques de chaque zone.

Un appendice approprié énumère tous les détails de chaque zone , de façon à permettre la connexion à un système de supervision.

4.2.1 Zone des paramètres

Les données de configuration ainsi que les données opérationnelles se trouvent dans la zone des paramètres et sont physiquement dans une mémoire non volatile située à l ' intérieur des TDA.

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES Code: IRSES Page:1 9/28

Page 42: Sujet ESI du BTS IRIS 2012 (complet)

Tècnologic S.p.A. TDA08/TDA04 - Protocole de communication

4.2.2 Zone des variables

Dans cette zone, on a regroupé les variables principales du TDA qui sont fréquemment calculées et mises à jour.

Onénumére id ies données disponibles :

v valeur mesurée de la sonde 1 , v valeur mesurée de la sonde 2, v valeur mesurée de la sonde 3, v valeur mesurée de la sonde 4, v valeur mesurée de la sonde 5, v valeur mesurée de la sonde 6, v valeur mesurée de la sonde 7, v valeur mesurée de la sonde 8, v état des entrées digitales, v état de la sortie, v état des alarmes, v état du TDA

Les conditions d 'anomalie des variables de procédé (sonde 1 ... sonde 8) sont reportées comme des valeurs spéciales de la mesure :

1

·---·-···--1 condition d 'anomalie valeur rendue 1

Unde~rg_Q_Q_'? ou court-circuit -10000 ----------------Overflow ou sonde ouverte 10000 Variable non disponible 10003

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES Code : IRSES Page:20/28

Page 43: Sujet ESI du BTS IRIS 2012 (complet)

Tecnologic S.p.A. TDA08/TDA04 - Protocole de communication

A.2 Appendice - Tableau de la zone des variables

1 adresse type chiffres

n. 1 (hex) nom variable donnée

Étendue de mesure unité décimaux r/w

1 02 0_0_ Valev_renfr~e INl 1

1

N -999 ... 9999 ___{ _*) JVgr 0240 1

r

2 0201 Valeur entrée IN2 1 N -999 ... 9999 ( *) 1Var024l r !

3 0202 Valeur entrée IN3 N -999 ... 9999 ( *~Var -0242 r

4 0203 . Valeur entrée IN4 N -999 .. . 9999 ( *) IVar 0243 !

r

(#) 5 0204 Valeur entrée IN5 N -999 .. . 9999 ( * *) Var 0244 r

( #) 6 1

1

0205 Valeur entrée IN6 N -999 ... 9999 ( * *) Var 0245 r

(#) 7 1 0206 Valeur entrée IN7 N -999 .. . 9999 ( * *) Var 0246 r

(#) 8 0207 Valeur entrée IN8 N -999 ... 9999 ( * *) Var 0247 r

9 021F Lit l'état de la s 0: OFF r sortie alarm OUT 1: ON

10 0220 Lit l'état de s O:ouvert r l'entrée DIOl 1: fermé

11 0221 Lit l'état de 1 s 0: ouvert r l'entrée DI02 1 1: fermé

12 0222 Lit l'état de 1

s 0: ouvert r 1 'entrée Dl03 1 l: fermé

13 0223 Lit l'état de 1

s 0: ouvert r l'entrée DI04 l: fermé

( #) 14 0224 Lit l'état de 1 s 0: ouvert i r 1

l'entrée DI05 ! 1: fermé l ( !Nl quand

1

~Q(j i=YE~_ 1

0225- 1 ------- ---------- ---- ·-

( #) 15 Lit 1' état de s 0: ouvert r l'entrée DI06

1 1: fermé

( IN2 quand 1

1 Endi=YES) 1

(#) 16 0226 Lit l'état de 1

s O:ouvert 1

r l'entrée DIO? 1: fermé ( IN3 quand 1 1

1

Endi=YËS) 1

( #) 171 0227 Lit l'état de 1

s 0: ouvert r l'entrée DI08 1 1: fermé ( IN4 quand i

1

c--::-· Endi=YES) 1 r-:----------------- --------· ~ ------- -----

( #) 18 0228 Lit l'état de ' s 0: ouvert r ! l'entrée DI09 1 l: fermé

1 ' ( IN5 quand 1 ~ (#)-i9 1-------- Endi=YES) --- ---=,-------------i

·--- -·--------·-···------------- -0229 Lit l'état de s O:ouvert r

1' entrée DilO 1

l : fermé 1

( IN6 quand ' Endi=YES)

( #) 20 022A Lit l'état de s 0: ouvert r l'entrée Dl l l l: fermé ( IN? quand

__ Endi=YES )

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES Code: IRSES Page:21 /28

Page 44: Sujet ESI du BTS IRIS 2012 (complet)

Annexe 8 : FieldTalk Modbus C++ Library Vous trouverez dans cette annexe des extraits de la documentation FieldTalk.

6 Diagramme de classes Deux catégories de classes sont proposées-:

1. The FieldTalk™ Modbus® Master C++ Library provides connectivity to Modbus slave compatible deviees and applications.

----' class FieldTalk Modbus Master /

MbusAsciiMasterProtocol .

-----------·---------·- ------ . ---- - ... ---------

2. The FieldTalk™ Modbus® Slave C++ Library allows you to incorporate Modbus slave functionality into your deviee or application.

class FieldTalk Modb~~~~;---;------ - - ... ~-------·------·--· · ---· ______________ /

#defaultDataTablePtr ~,~JsoataTablelnterface

flll.busSiaveServe 1!-i -----------;~~~j'

M~usSeriaiSiaveProtocol i . t.i_.~~/-·::.n·

~~~sTcpSiaveProtocol ~ ~-- :

,C:aUbackDataTable ' ;:· ... ,:: ~

.. ···· i

. 1 MbusAsciiSiav eProtocol f MbusRtuSiaveProtocol

~

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES Code : IRSES Page:22/28

Page 45: Sujet ESI du BTS IRIS 2012 (complet)

7 Extrait du fichier MbusMasterFunctions.h / **

* @file lvlbuslvlasterFunctions. h * * @i f NOTICE ...

. :*_ Copyright (c) 2002-2009 proconX-l2-ty Ltd.. A11 rights reserved. '* * THIS IS PROPRIETARY SOFTWARE AND YOU NEED A LICENSE TO USE OR REDISTRIBUTE.

* *THIS SOFTWARE IS PROVIDED BY PROCONX AND CONTRIBUTORS ''AS TS '' AND ANY * EXPRESS OR IMPLIED \'VARRANTIES, INCLUDING , BUT NOT LIMITED TO, THE * IHPLIED %'ARRANTIES OF fvJERCf:LZ\.NTABILITY ?.ND FI TNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PROCONX OR CONTRIBUTORS BE * LIABLE FOR ANY DIRECT , IND I RECT, INCIDENTAL, SPECIAL, EXEMPL.Z\.RY , OR * CONSEQUENTIZ\L Dl\!V1AGES ( INCL\JDING , BUT NOT LI!V1ITED TO , PROCUREi'1ENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR * BUSINESS INTERRUPTION) HOV'ŒVER Cl1\JSED ?.ND ON ANY THEORY OF LI!-I.BILITY , * WHETHER IN CONTRACT , STRICT LIABILITY , OR TORT (INCLUDING NEGLIGENCE OR * OTHER\-'JISE) ARIS I NG IN ANY ~vAY OUT OF THE USE OF THIS SOFT\-'JARE , EVEN IF * ADVISED OF THE POSSIBI LITY OF SUCH DAf,1AGE.

* * @endif */

#ifndef _MBUSt-'.tASTERFUNCT I ONS H INCLUDED #defi ne _l'1BUSJVI..ASTERFUNCTIONS_ H_ INCLUDED

# i fndef __ cplusplus # errer Must use C++ to compile this modu l e ! #endif

Il Platform header #include <stdlib .h>

Il Package header #include ~BusProtocolErrors.h "

/*************** ************************** ********* *************************** * Forward declaration *****************************************************************************1

class HmTimer ;

/***************************************************************************** * MbusMasterFunctions class declaration *****************************************************************************/

/** * @brief Base class whic h implements Modbus data and control func tions

* * The functions provided by this base class appl y to all proto col flavours * via inheritance . For a more detailed description see section @ref * mbusmaster . ...

* @see mbusmaster * @see MbusSe rialMasterP rotocol , MbusRtuMasterProtocol * @see IvlbusA.sci iMasterProtocol , MbusTcpivJasterProtocol */

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES

ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES Code : IRSES

Session 2012

Page:23/28

Page 46: Sujet ESI du BTS IRIS 2012 (complet)

/ ***************************************************************************** * MbusMasterFunctions class declaration *****************************************************************************/

class MbusMasterFunctions

protected :

enum

PDU_SIZE = 253 , // As per l'10DBUS APPLICJ.l.TI ON PROTOCOL SPECIFICATI ON V1.1a t1JI.X_DATA_ SIZE = PDU_SIZE - 1, // =POU minus 1 byt.e function code

MAX_FC 03_ WORDS = (HAX_DATA_SIZE - 1) / 2 , !/ maximum words per reac! request

! / MJ.l.X_FC04_vVORDS HAX_FC01_ COILS =

JVLI\X_.FCO 3_1iJORDS , MAX_FC03_WORDS * 16,

!! same as function code 03 / / = maximum coils per r e ac!

request / / MP.X_FC02_ COILS MAX_FC16_ WORDS

request

fvlAX - FC01 _ CO ILS, (MP.X_ DJI.TA_ S IZE - 5) 1

l-1AX_FC15_ COILS request

HAX FC16 - - \"'ORDS * 16,

} ;

fvlAX_FC2 3_READ MAX_FC23_ WRITE

HAX - FC03 _ WORDS , (MAX_DATA_S IZE - 9 )

volatile unsigned long totalCounter ; volatile unsigned long successCounter ; int retryCnt; // Retry counter int timeOut ; // Time- o ut in ms

1

,/ ! same as fu nction 2, /1 maximum word s

1 / '! maximum coi1s

! / maximum woràs 2 ! / maximum words

int pollDelay ; // Delay between two Moclbus reacl/writes in ms HmTimer &silenceTimer;

private :

char bufferArr [lvJAX_DATA~SIZE];

int bigEndianMachine; // Auto-configured by constructor int bigEndianFl oatMachine ; // Auto-configured by constructor int s wa pints; // Use~ flags int swapFloats ;

/1 /! Sl ave configuration data //

!/ User flags

int s laveConfigFlagsArr[ 256] ;

protected :

MbusMaste rFunctions() ;

public :

virtual - Mbust1asterFunctions();

code 1 per write

per wr ite

for re ad for writ e

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES 1 Session 2012 1

ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES 1 Code: IRSES 1 Page:24/28 1

Page 47: Sujet ESI du BTS IRIS 2012 (complet)

/************************************************ ** ************************ * Modbus function codes **************************************************************************/

public :

! ** * @name 16-bit Access * Table 4 : 0000 0 (Holding Registers) and Table 3 : 00000 (Input Registers ) * @ingroup mbusmaster .... 1

//@ {

int readinputSingleRegiste r (i nt slaveAddr, i.nt regAddr, short& regVal) ;

i.nt readinputRegi.sters(int slaveAddr , int startRef, short r egArr[] , i nt refCn t );

int writeSingleRegi ster (int slaveAddr, i nt regAddr , short regVal);

i.nt writeMultipleRegi.sters(int s l aveAddr , int startRef , const short regArr[] , int r efCnt) ;

int maskWriteRegister(int slaveAddr , short andMask ,

int readWri.teRegisters(int slaveAddr ,

i nt regAddr, short or!'1ask) ;

int readRef, short readArr[] , int readCnt , i.nt writeRef , const short writeArr[] , int writeCnt) ;

//@}

/****** ** ************ *** *** ************** ******* **** ********** ******* ****** * Slave Configuration ********** * ******************* ********* *********************************** /

public :

* @name Slave Configuration * @i.ngroup mbusmaster */

11 c~ {

void confi gureBi g Endianints();

void con f igureLittleEndianints();

//@}

1

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012 1

ÉTUDE D'UN SYSTÈME INFORMATISÉ - ANNEXES J Code : IRSES Page:25/28 1

Page 48: Sujet ESI du BTS IRIS 2012 (complet)

} ;

'************************************************************************** 1

* Utility routines **************************************************************************/

public :

/** * Returns whether the protocol is open or not .

* * @retval true = open * @retval false = closed *!

virtual int isOpen() = 0 ;

/** * Closes an open protocol including any associated communicat ion * resources (corn ports or sockets) * 1 1

virtual void closeProtocol() = 0 ;

static TCHAR *getPackageVersion{);

/************************************************************************** * Internai subroutines **************************************************************************/

protected:

virtual int deliverMe ssage(int address , int function ,

private:

int reidBits(int function , int bitArr[],

char sendDataArr[], int sendDataLen , c har rcvDataArr[], int rcvDataLen, int *actualRcvdPtr = NULL) = 0 ;

int slaveAddr , int refCnt) ;

int startRef,

int readRegisters(int function, int slaveAddr, int startRef , short regArr[], int refArrLen , int r egent);

int writeRegisters(int slaveAddr, int startRef, const short regArr[], int refCnt , int regCount) ;

private :

Il Disable default operator and copy construc tor rvmus!ViasterFunctions &opera tor= (JV1.buslv1asterFunctions & ) ; MbusMasterFunctions (const :VlbusMasterFunctions &) ;

#endif // ifdef . .. _H_INCLUDED

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ - ANNEXES Code: IRSES Page:26/28

Page 49: Sujet ESI du BTS IRIS 2012 (complet)

Annexe 9 · Extrait STL Vector

Constructor/Declaration:

vector<T> v(size_type n); · Declaration of vector containing type "T" and of size "n" (quantity).

' vector<T> v(size_type n,const T & t); Declaration of vector containing type "T", of size "n" (quantity) containing value "t".

· Declaration: vector (size_type n , const T& t) , o••• • - ··~•"·~·-~···•~·-RO ....... ______ , , >, ,, m ,. , o, R < ., . "o - · , .• ~, , , ,,,~,.~,,,,,, ,,,,,~,A~~ .. -A~.---~~->··-• •• ,,, ' '

: vector<T> i v(begin_iterator,end_iterator);

Copy of V ector of data type "T" and range begin_iterator to end_iterator.

· Declaration: template vector (Input Iterator, ; I nput i te r ator )

.... J -

Size methods/operators:

j empty() 1 Returns bool (true/false). Tme if empty. i Declaration: bool empty () const

~======~~~==~

size() 1 Number of elements of vector. i Declaration: s ize _ type s i ze () const

i====-cc=-::.....o=::=c=::::!

Adjust by adding or deleting elements of vector so that its size is "n". Declaration: vo i d resize (n , t = T ())

i Max number of elements of vector before reallocation. i Declaration: size_type capacit y () const

F=====~====~·~====~=~:~·~~=~============~~~--~======,=--~1 reserve(size_t n)

. max_size()

i Max number of elements of vector set to "n" before reallocation. : Declaration: void reserve (size_ t)

: Max number of elements of vector possible . Declaration: size_type max_size () con st

Note: size_type is an unsigned integer.

Other methods/operators:

. erase() : clear()

· at(index) v[index]

Erase all elements of vector. Declaration: void clear ()

Element of vector. Left and Right value assignment: · v.at(i)=e; and e=v.at(i);

Declaration: r eference operato r [ J (size _ type n)

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES Code: IRSES Page:27/28

Page 50: Sujet ESI du BTS IRIS 2012 (complet)

front() v[O]

i First element of vector. (Left and Right value j assignment.) ; Declaration: reference front ()

--~~~-~----~- ---~-- ~- ~--··..::::······;;;;;······=- =- ====~~~--~~~-~----l~~====~~--~~~~====~~~--~~~====~~1

l Last element of vector. (Left and Right value back() ' ! assignment.) j Declaration-: reference- back ()

_;;_ __ _.:..;: .. ·;..;;; .. ·;.;;;; .. -·.;;;;; .... :.;;: .... ·;;;;;;-...... ;;;;;;··-·..;;;;- .. ;:;;;; ...... .;;;;; .. ;;;;;;"•'_;;;;;'"";;;;;;'";;::;:""-= ·=··;;;;;;- -';:;;;;·--·-;;;;;;-· ;;_ .. '"-'=--"-'--'-'--""'""" =· .. ' --- .......................................... .. .. .. .... .. .................... ----·--------- .. ........ .. ................................... .. . .

push_back(const T& value) i Add element to end of vector.

'_:.:;;- .. ---'---'---..;;...;;...:=· ·=-··--:::::---·-=--=·-·::..:··= --=-··=---=--·-=-·--:::::·-·=- =· .... = .. -..:__...c=_;; .. .::::--·-::::::;J ~~~~~~:~~~-~?: void r:1..1_~-~=~=-~~-<:_~~ ~ .. T & ) .. .. _______ -·------------··

, pop_back() i Remove element from end of vector. ! Declaration: void pop_back ()

assign(size_type n,const T & t) ................. ~······-····-····-.. - ........... ...................... ··-~- -·

assign(begi n_i ter a tor ,end_i terator) ! Replace data in range defined by iterators. 1 Declaration:

• insert(iterator, const T & t) j In sert at element "iterator", element of value "t". 1 Declaration: iterator insert (iterator pos, const ! T& x)

_;;_'--";;.;_;_..;.;:_- .. ;..;;;··=----;_;;;;-· .. ;;;;:-·--·;;:;.;----::;;;----;;:;---= --=--· ===:...;_;;_;_;;_;_;_;;_ __ __;;;;· ;.;;. .. ;_:· ·;..;;;..;-' -- .............................. ..

insert(iterator pos, size_type n, const T & j Starting be fore element "pos", insert first n elements of x) 1 value "x" . ..

l Declaration: void insert (iterator pos, size_type ! n, const T& x)

............ , .... ......

.. insert(iterator pos, begin_iterator,end_iterator)

! Starting before element "pos", inse1t range begin_iterator : to end_iterator.

' --swap(vector& v2)

l Declaration: void insert (iterator pos, l Inputit e rato r f, Inputiterator 1)

Swap contents of two vectors. -; Declaration: void swap (Vector& )

Iterator methods/operators:

. begin()

· end()

- Return iterator to first element of vector. Declaration: const_iterator b egi n () const

l Return iterator to end of vector (not last element of vector but past last element) ! Declaration: const_i terato r end () const

~~~~~~;.;;.;:;;;;····-~--- -~i ~~~~~~~~~~~;_;;;;;_:~;_;;;;;_:~;_;;;;;_:;;_;;;;;;;_:;.;;.;_:;.;;.~;:;;;;.;;;;;;;;;_.;;;;;;_:;_:~~~-~~;_:;_:~~;.;;.;_;;;;;_:..;.;:_~!

rbegin()

rend()

++

: Return iterator to first element of vector (reverse order). Declaration: const_reverse_iterator rbegin () const

Return iterator to end of vector (not last element but past last element) (reverse order). Declaration: con st r everse_ iterator r·end () c o nst

BTS INFORMATIQUE ET RÉSEAUX POUR L'INDUSTRIE ET LES SERVICES TECHNIQUES 1 Session 2012

ÉTUDE D'UN SYSTÈME INFORMATISÉ- ANNEXES 1 Code : IRSES j Page:28/28