Les objets mots du logiciel PL7-Pro

Transcription

Les objets mots du logiciel PL7-Pro
Lycée Lislet GEOFFROY
Date :
Note /20 :
EVALUATION
Nom :
Prénom :
Classe :
Traitement sur mots
API-1
Etre capable de :
•
•
•
•
•
•
•
•
•
•
•
•
Sélectionner un format de mot adapté au type de donnée à traiter par
un API.
D’interpréter les données contenues dans les différents formats de mots
d’un API.
Convertir les données de différents formats afin de les rendre homogènes
pour le calcul sur API.
Adressage des mots en PL7 Junior/Pro.
Codes et numération
Nombres fractionnaires en virgule flottante
Aide en ligne du logiciel PL7-Pro
Manuel de référence PL7 TLX DR PL713 F intercalaire A
Maquette API-1
1 API TSX 37-21/22
1 cordon TSX PCU1030
1 PC équipé de :
o logiciel PL7-Pro
o Intranet MAI
4h
1/9
Lycée Lislet GEOFFROY
1 Les objets mots du logiciel PL7-Pro
o
A partir du logiciel PL7-pro, créez une nouvelle application en la paramétrant en fonction du
matériel mis à votre disposition.
o
Créez une table d’animation faisant apparaître les objets suivants et complétez le tableau en
précisant pour chacun d’eux, son type et sa dimension en Bits :
Objet
Nb
bits
Type
%MB2
%MB3
%MW0
%MW1
%MW2
%MW3
%MD1
%MD2
%MF0
%MF2
o
En mode connecté, assurez-vous que tous les mots de la table précédente soient à zéro.
o
Attribuez ensuite les valeurs 50 et 83 respectivement à %MB2 et %MB3 et notez alors les
valeurs prises par les mots %MW0, %MW1, %MW2, %MD1, %MD2, %MF0, %MF2:
%MB1
%MB2
%MW0
%MW1
%MW2
50
83
%MD1
%MD2
%MF0
%MF2
Pour quelle(s) raison(s) la modification de %MB2 et %MB3 entraîne-t-elle celle de certains autres mots de la
table ?
2 Formatage des mots du PL7-Pro
2.1
Mots Entiers
- Sélectionnez les valeurs des mots %MB2 à %MB3 de la table d’animation précédente (pour sélectionner
plusieurs valeurs de la table d’animation, sélectionnez la première puis appuyez sur la touche Maj (⇑) et
sélectionnez la dernière à l’aide de la souris.).
- Remettez alors à Zéro ces valeurs sélectionnées
.
- Attribuer la valeur 2#10101000 00111011 à %MW1 (Pour taper une valeur en binaire vous devez la
précéder des caractères 2#).
- Notez ci-dessous les valeurs prises par les différents mots.
Mots
%MB2
%MB3
%MW1
%MD1
Décimal
Binaire
Nota: vous pouvez changer le mode d’affichage d’une valeur à partir de la liste déroulante « Affichage ».
2/9
Lycée Lislet GEOFFROY
Comment expliquez-vous certaines de ces valeurs soient POSITIVES et d’autres NEGATIVES ?
2.2
Mots flottants norme IEEE 754
- Réinitialisez les valeurs de la table en écrivant 0 dans %MW1
- Ecrire la valeur 12.25 dans le mot %MF0.
- En vous aidant de la norme IEEE 754, décomposez le mot %MF0 en mettant en évidence les différents
groupes de bits significatifs du mot (s, e, f). Utilisez des couleurs différentes.
%MF0
Ecrire alors la valeur correspondante de %MF0 sous la forme N
x 2y
3 Calculs sur mots
Transférez le programme « TP_API_1 » du dossier « F:\Public\TP_Prog » dans l’API.
Ce programme en littéral structuré réalise les équations suivantes :
!
%L10:
(*Exemples de calculs sur mots*)
%MW0:=%MW1+%MW2;
%MW3:=%MW1*%MW2;
%MD4:=%MD1+%MD7;
%MD14:=%MD10+%MD12;
%MW20:=SQRT(%MW21);
%MF30:=SQRT(%MF32);
(*Addition de deux mots simples*)
(*Produit de deux mots simples*)
(*Addition de deux mots doubles*)
(*Racine carrée d'un nombre entier*)
(*Racine carrée d'un nombre réel*)
Nota: pour initialiser une table d'animation automatiquement pour les entités utilisées dans ce programme,
procédez de la manière suivante:
1) Sélectionnez la zone du
programme pour laquelle
vous souhaitez créer une
table d'animation.
2) Dans le menu "Services"
cliquez l'option "Initialiser
une table d'animation"
- Passez l'API en mode RUN
- Attribuez les valeurs 100 et 200 respectivement à %MW1 et %MW2.
- Observez le changement des valeurs de la table d'animation.
- Bien que vous n'ayez attribué aucune valeur ni à %MD1 et %MD4, celles-ci ont néanmoins changé
3/9
Lycée Lislet GEOFFROY
Comment expliquez-vous ce changement de %MD1 et %MD4 ?
- Attribuez la valeur 10 à %MD7 et vérifiez que %MD4 = %MD1 + %MD7
- Attribuez les valeurs 25000 et 26000 respectivement à %MD10 et %MD12 et vérifiez la cohérence de
%MD14
- Attribuez les valeurs 25000 et 26000 respectivement à %MW1 et %MW2 et vérifiez l'incohérence des
valeurs de %MW0 et %MW3
Comment expliquez-vous l'incohérence de ces résultats ?
- Attribuez la valeur 144 à %MW21 et vérifiez que %MW20 affiche bien la racine carrée de %MW21
(SQRT(%MW21)).
- Attribuez la valeur 144.0 à %MF32 (une valeur dans un mot flottant doit toujours être saisie avec une
virgule) et vérifier que %MF30 affiche bien la racine carrée de %MF32.
- Attribuez les valeurs 10 et 10.0 à %MW21 et %MF32
Comment expliquez-vous le résultat affiché par %MW20 ?
4 Conversion des mots
Ajouter la phrase suivante à votre programme:
!
%L20:
(*Conversion de mots*)
%MD50:=%MW1;
(*Transfert du mot simple %MW1 dans le mot double %MD50*)
%MD52:=%MW2;
(*Transfert du mot simple %MW2dans le mot double %MD52*)
%MD54:=%MD50*%MD52;
- Attribuez les valeurs 20000 et 2 respectivement à %MW1 et %MW2 .
- D’après le programme, %MW3 est égal au produit de %MW1 et %MW2 de même sue %MD54 puisque
%MD50 = %MW1 et %MD52 = %MW2.
Pour quelle raison la valeur de %MD54 est-elle correcte alors que celle de %MW3 est erronée ?
4/9
Lycée Lislet GEOFFROY
- Essayez d’ajouter la phrase suivante au programme:
%L30:
(*Instructions de conversion*)
%MF60:=%MD50+%MW2;
Vous remarquerez qu'il n'est pas possible de valider une telle équation.
Explication:
%MF60 doit contenir un nombre réel en virgule flottante,
%MD50 contient un nombre réel double (32 bits)
%MW2 contient un nombre réel simple (16 bits)
%MD50 + %MW2 donne un résultat qui représente un mot double réel (32 bits)
Pour pouvoir stocker cette valeur dans un mot Flottant il est nécessaire de convertir préalablement ce
résultat afin de rendre l'équation homogène.
4 instructions de conversion sont proposées par le logiciel:
- INT_TO_REAL : conversion mot entier --> flottant
- DINT_TO_REAL : conversion double mot entier --> flottant
- REAL_TO_INT : conversion flottant --> mot entier (le résultat est la valeur entière inférieure la plus proche)
- REAL_TO_DINT : conversion flottant --> double mot entier (le résultat est la valeur entière inférieure la
plus proche)
Pour plus d'information sur l'utilisation de ces instructions, rechercher les dans l'aide en ligne du logiciel à
partir de l'onglet "Rechercher".
Cette équation génère donc une erreur.
%L30:
(*Instructions de conversion*)
%MF60:=%MD50+%MW2;
Solutions possibles:
%L30:
(*Instructions de conversion*)
%MF60:=DINT_TO_REAL(%MD50+%MW2);
ou
%L30:
(*Instructions de conversion*)
%MF60:=DINT_TO_REAL(%MD50)+INT_TO_REAL(%MW2);
- Programmez tour à tour ces 2 solutions et testez-les.
5/9
Lycée Lislet GEOFFROY
5 Application
5.1
Présentation du problème
C
V mini
hMaxi
hmini
p
d1
V Maxi
Dmini
DMaxi
d2
Figure 1
La remplisseuse SOBORIZ est composée de 8 doses identiques montées sur un plateau tournant.
Le réglage de la masse de produit à transférer dans les boîtes est obtenu en faisant varier la hauteur h du
cylindre mobile de diamètre d2 par rapport au cylindre fixe de diamètre d1 entre les valeurs h mini et h
Maxi.
Afin d’assister l’opérateur au cours de l’opération de réglage des doses en fonction de la masse volumique
des produits à conditionner, un capteur photoélectrique analogique c a été installé sur la machine.
Le capteur analogique c délivre une tension comprise entre 0 et 10 V en fonction de la distance D de
détection. Les caractéristiques du détecteur sont données en annexe.
La sortie 0-10 V du capteur c est connectée à l’entrée N° 2 de l’interface analogique de l’API TSX 37-22
utilisé sur la machine (voir câblage en annexe).
Au cours de l’opération de réglage de la dose, la masse de produit correspondant au volume réglé est
affichée sur un terminal d’exploitation.
Constantes
d1 (mm)
p (mm)
d2 (mm)
h mini (mm)
h Maxi (mm)
D mini (mm)
D Maxi (mm)
U (0 - 10V)
(capteur analogique c)
Paramètres
Programme de
calcul de la masse
Masse volumique
D (mm)
Masse calculée
(à afficher en g)
6/9
Lycée Lislet GEOFFROY
Les valeurs d1, d2, h mini, h Maxi, D mini, D Maxi sont des constantes que l’on peut déterminer
directement en les mesurant sur la machine.
La masse volumique du produit à conditionner est un paramètre que l’opérateur devra fournir au
programme.
Le programme devra fournir la masse calculée en fonction de la masse volumique du produit et du volume
de la dose qui dépend directement de la distance D réglée.
U (volt)
Le signal U en volt délivré par le capteur est
proportionnel à la distance D entre le capteur et
l’élément réfléchissant du bâti de la machine.
U Maxi
Une variation de la distance D entraîne la même
variation de la distance h
U mini
D mini
D Maxi
D(mm)
U (volt)
Uo
U(
h)
.h
=a
+U
o
La variation de volume étant directement liée à
la variation de h, il est préférable d’exprimer U
en fonction de h.
U Maxi
U mini
h (mm)
5.2
h Maxi
h mini
Détermination des paramètres de l’équation U(h)=a.h + Uo
5.2.1 Détermination du coefficient directeur (a)
U
− U min i
a = max i
hmin i − hmax i
Umaxi et Umini peuvent être déterminés en mesurant directement la tension délivrée par le capteur pour les
positions hmini et hmaxi.
5.2.2 Détermination de l’ordonnée à l’origine Uo
U max i = a.hmin i + U 0
U 0 = U max i − a.hmin i
7/9
Lycée Lislet GEOFFROY
5.3
Détermination du volume correspondant à h
Dans l’équation U(h) = a.h + Uo
a et Uo sont des constantes calculées précédemment.
U(h) correspond à la tension en Volt délivrée par le capteur analogique. Pour chaque valeur de U, la valeur
de h correspondante se déduit donc de l’équation ci-dessus :
h=
U −U0
a
D’après la figure 1 ci-dessus, le volume (V) de produit est égal à :
V = V1 + V2
avec
π .d 1
.p
4
2
V1 =
(volume fixe)
et
π .d 2
.h
4
2
V2 =
(volume variable)
5.4 Détermination de la masse du produit
Connaissant la masse volumique ρ du produit et son volume V , sa masse s' obtient par la formule :
M = ρ .V
Unités :
M ( g ), ρ ( Kg / dm 3 ), V ( mm 3 )
En tenant compte des unités, l' équation de M devient :
M = 10 −3. ρ .V
5.5
Programmation
Tous les mots internes de l’API sont disponibles.
5.5.1 Affectation des constantes
Les différentes constantes de l’application seront mémorisées dans les mots constants suivants :
Repère
d1
p
d2
h mini
h Maxi
U Maxi
U mini
Valeur
150
120
160.8
50.5
130.5
8.25
6.92
Unité
mm
mm
mm
mm
mm
Volt
Volt
Mot interne
%KW1
%KW2
%KF3
%KF5
%KF7
%KF9
%KF11
8/9
Lycée Lislet GEOFFROY
5.5.2 Affectation des paramètres
Le seul paramètre de l’application est la masse volumique du produit :
Repère
ρ
Valeur
0,8 ≤ ρ ≤ 1,5
Unité
Kg/dm
Mot interne
3
%MF0
5.5.3 Affectation des variables calculées
Complétez le tableau suivant en précisant :
• les limites de chaque valeur à calculer
• la variable automate que vous utiliserez pour la représenter.
Repère
a
Uo
h
V1
V2
V
M
Valeur
≤h≤
≤V2 ≤
≤V ≤
≤M ≤
Unité
Mot interne
Volt
mm
3
mm
3
mm
3
mm
g
%MW100
5.5.4 Programme en PL7-Pro
Comme indiqué en annexe, la valeur numérique correspondant à la tension présente sur la voie 2 du module
d’entrée analogique à laquelle est connecté le capteur analogique est stockée dans le mot %IW0.2.
%IW0.2 représente la valeur de la tension U x 1000 (soit U en mV).
•
Créez une nouvelle application
•
Ecrire le programme permettant le calcul de a, Uo, h, V1, V2, V et M en utilisant un réseau différent
pour chacune de ces variables calculées. (Le langage de programmation est laissé à votre choix).
•
Testez votre programme
•
Comme indiqué en annexe, la conversion analogique / numérique d’une voie d’entrée analogique du
module de base de l’API TSX 3722 s’effectue sur 8 bits. Quelle sera alors la précision obtenue sur le
calcul de la masse ?
Nota : Le listing de votre programme devra être joint à ce dossier pour la correction.
9/9