Académique Documents
Professionnel Documents
Culture Documents
Les instructions logiques n'affectent pas les registres mathématiques S13 et S14.
TRANSDUCTEUR
DE COUPLE
DÉTECTEUR DE
PROXIMITÉ INDUCTIF
MODULE D'ENTRÉE
ANALOGIQUE NI4
POWER 0 4 8 12 0 4 8 12
POWER
1 5 9 13 1 5 9 13
2 6 10 14 2 6 10 14
3 7 11 15 3 7 11 15 ANALOG
AB ALLEN-BRADLEY Triac/100-240V
480VCA
3 phases
F I G UR E 2 -1 : B A NC DE T E S T S P OUR M O T E U R C. A.
Les sorties des transducteurs de couple, de tension et de courant possèdent des sorties linéaires.
Ce système permet de mesurer les caractéristiques des moteurs sur un banc d’essai. Dans
l’exemple qui suit, nous voulons mesurer la puissance fournie au moteur et nous ne nous
préoccuperons pas du couple de ce dernier. Chaque sortie de transducteur alimente une entrée du
module analogique et doit être graduée pour obtenir les valeurs suivantes:
Tension = 0-10V : canal 0 pour 500 Vca résolution 1 V
Courant = 4-20mA : canal 1 pour 30.00 A résolution 0.01 A
Couple = 4-20mA : canal 3 pour 100.0 pi*lb/s
À chaque détection du capteur de proximité inductif, les valeurs doivent être graduées et la
puissance doit être évaluée. Cette puissance doit être représentée sur un afficheur 3½ «digits»
dont la valeur maximale a été calibrée à 1.999V.
PROGRAMME:
Mise à l’échelle de la tension de 0-500Vca -> 0-10V -> 0-32767 -> 0-500
Cette première section du programme permet la mise à l’échelle de la tension de ligne. Si l’on
désire obtenir une valeur de 0 à 500Vca avec une résolution de 1V, le code résultant doit être
entre 0 et 500. Pour ce faire, nous devons exécuter les calculs suivants :
code à l’entrée = 0-500Vca = 0 à 10V = 0 à 32767 code dans un registre N7 :1 = 0-500
Il faut donc diminuer de 32767 à 500 la valeur à l’entrée. Une division de 65.534 est alors de
mise. Puisqu’on travaille avec des nombres entiers, il est impossible de diviser par un nombre tel
65.54. La solution est simple, multiplions d’abord par 100 pour ensuite diviser par 6553.
Mathématiquement, nous arriverons au même résultat, i.e. une division par 65.53.
Un problème surgit par contre lorsque le résultat d’une multiplication dépasse +32767, une faute
mineure se produit et le résultat est faussé. Heureusement, le manufacturier a prévu cette
éventualité. Lorsqu’une multiplication dépasse +32767, le résultat se retrouve dans le registre
mathématique à 32 bits, S13 et S14, sinon le résultats se trouve là où l’on désire l’envoyer.
Par l’utilisation du bit de dépassement («overflow» S :0/1), nous pouvons décider d’utiliser une
division simple DIV, si le résultat de la multiplication est <+32767, ou une division double DDV
si le résultat est >+32767. Cette division double agit directement sur le registre mathématique, il
est donc superflu d’indiquer la source A qui est par défaut S13 et S14.
Ligne 2:0
º INDUCTIF º
º I:2 ÚMULÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ º
ÇÄÄÄ] [ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´MULTIPLICATION ÃĶ
º 1 ³Source A VOLT_BIT³ º
º ³ 32767³ º
º ³Source B 100³ º
º ³ ³ º
º ³Dest X_100³ º
º ³ 32767³ º
º ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ º
Ligne 2:1
º INDUCTIF OVERFLOW º
º I:2 S:0 ÚDIVÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ º
ÇÄÄÄ] [ÄÄÄÄÄÄ]/[ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´DIVISION ÃĶ
º 1 1 ³Source A X_100³ º
º ³ 32767³ º
º ³Source B 6553³ º
º ³ ³ º
º ³Dest VOLT_CA³ º
º ³ 500³ º
º ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ º
Ligne 2:2
º INDUCTIF OVERFLOW º
º I:2 S:0 ÚDDVÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ º
ÇÄÄÄ] [ÄÄÄÄÄÄ] [ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´DIVISION 32 BITS ÃĶ
º 1 1 ³Source 6553³ º
º ³ ³ º
º ³Dest VOLT_CA³ º
º ³ 500³ º
º ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ º
FI G UR E 2-2 : M I S E À L ' É C HE LL E DE LA T E NS I O N DE LI G NE
Dans la section d’imprimé représentée par la figure 2-2, la valeur à l’entrée est maximum 32767
(10V). On peut remarquer la valeur dans la variable N7 :1 (VOLT_CA) qui indique 500. La
destination de la multiplication (X_100) indique 32767 puisqu’elle est en dépassement. Le
résultat de la multiplication est alors dans les registres mathématiques S13 et S14.
Mise à l’échelle du courant de ligne 0-30.00Ac.a. -> 4-20mA ->3277-16384 -> 0-3000
Cette deuxième section du programme permet la mise à l’échelle du courant de ligne. Puisqu’on
désire obtenir une valeur de 0 à 30.00 Aca avec une résolution de 0.01A, le code résultant doit
être entre 0 et 3000. Pour ce faire, nous devons exécuter les calculs suivants :
code à l’entrée = 0-30.00Aca = 4-20mA = 3277à 16384 code dans un registre N7 :3 = 0-3000
La première opération consiste à éliminer le décalage de 3277 à l’entrée. Pour ce faire, une
opération de soustraction est utilisée. Par la suite, le même processus que la tension de ligne est
utilisé pour le courant, i.e. une multiplication avant la division afin d’obtenir une division plus
précise par 4.379. L’entrée est multipliée par 1000 pour ensuite être divisée par 4379.
Ligne 2:3
º INDUCTIF º
º I:2 ÚSUBÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ º
ÇÄÄÄ] [ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´SOUSTRACTION ÃĶ
º 1 ³Source A AMP_BIT³ º
º ³ 16384³ º
º ³Source B 3277³ º
º ³ ³ º
º ³Dest SUB_OFSSET³ º
º ³ 13107³ º
º ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ º
Ligne 2:4
º INDUCTIF º
º I:2 ÚMULÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ º
ÇÄÄÄ] [ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´MULTIPLICATION ÃĶ
º 1 ³Source A SUB_OFSSET³ º
º ³ 13107³ º
º ³Source B 1000³ º
º ³ ³ º
º ³Dest X_1000³ º
º ³ 32767³ º
º ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ º
Ligne 2:5
º INDUCTIF OVERFLOW º
º I:2 S:0 ÚDIVÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ º
ÇÄÄÄ] [ÄÄÄÄÄÄ]/[ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´DIVISION ÃĶ
º 1 1 ³Source A X_1000³ º
º ³ 32767³ º
º ³Source B 4379³ º
º ³ ³ º
º ³Dest AMP_CA³ º
º ³ 2993³ º
º ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ º
Ligne 2:6
º INDUCTIF OVERFLOW º
º I:2 S:0 ÚDDVÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ º
ÇÄÄÄ] [ÄÄÄÄÄÄ] [ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´DIVISION 32 BITS ÃĶ
º 1 1 ³Source 4379³ º
º ³ ³ º
º ³Dest AMP_CA³ º
º ³ 2993³ º
º ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ º
Dans la section d’imprimé représentée par la figure 2-3, la valeur à l’entrée est maximum 16384
20mA). On peut remarquer la valeur dans la variable N7:4 (AMP_CA) qui indique 2993, ce qui
signifie un courant de 29.93 ampères. La destination de la multiplication (X_1000) indique 32767
puisqu’elle est en dépassement. Le résultat de la multiplication est alors dans les registres
mathématiques S13 et S14.
Dans la section d’imprimé représentée par la figure 2-4, la valeur de 500 multiplié par 2993
donne un résultat dans le registre mathématique de 1 496 500. Une fois divisé par 305, le code
résultant est de 4907. Ce code permet une sortie de 1.4974 V, ce qui représente une puissance de
14974 VA.
La ligne 2 :10 de l’imprimé permet la remise à zéro du bit de faute mineure avant chaque fin de
cycle. Si cette ligne n’est pas présente, le programme ne fonctionne pas correctement.
FIGURE 2-5 : A FF I C H AG E DE L A P UI S S A NC E L OR S DU T E S T DU M OT E UR
Ligne 2:1
º I:2 ÚCTDÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ º
ÇÄÄ] [ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´DECOMPTAGE ÃÄ(CD)Ķ
º 3 ³Compteur C5:1ÃÄ(DN) º
º ³Pr‚s‚lection 300³ º
º ³Val. Cumul‚e 0³ º
º ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ º
Les lignes ci-haut ne représentent qu’un compteur (C5 :1) et un décompteur de la même adresse
permettant ainsi d’agir sur la même variable accumulée.
En utilisant des instructions de transferts, il est possible de modifier la valeur accumulée et la
valeur de présélection. Pour ce faire, il s’agit d’adresser les variables appropriées.
Ainsi, lorsqu’on initialise un compteur/décompteur, on réserve trois adresses dans la mémoire du
fichier C5. Lorsque l’adresse est C5 :1 on peut répartir les adresses selon :
C5 :1.0 = code de contrôle
C5 :1.1 ou C5 :1.PRE = valeur de présélection
C5 :1.2 ou C5 :1.ACC = valeur accumulée.
Les lignes qui suivent permettent le transfert de la valeur de présélection lorsque la logique est
telle que la ligne 2 :2 ou 2 :3 devient valide. La ligne 2 :4 permet la remise à zéro de la valeur
accumulé. N’oubliez pas que si deux ou les trois instructions de transfert deviennent valides dans
le même cycle de scrutation, la dernière ligne l’emporte toujours. Dans ce cas-ci, puisque la ligne
de présélection à 100 se trouve la dernière rencontrée par le processeur, c’est cette valeur qui
sera placée dans la variable C5 :1.1.
Ligne 2:2
º I:2 ÚMOVÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ º
ÇÄÄ] [ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´TRANSFERT ÃĶ
º 5 ³Source 200³ º
º ³ ³ º
º ³Dest C5:1.PRE³ º
º ³ 300³ º
º ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ º
Ligne 2:3
º I:2 ÚMOVÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ º
ÇÄÄ] [ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´TRANSFERT ÃĶ
º 7 ³Source 300³ º
º ³ ³ º
º ³Dest C5:1.PRE³ º
º ³ 300³ º
º ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ º
Ligne 2:4
º I:2 ÚMOVÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ º
ÇÄÄ] [ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄ´TRANSFERT ÃÄÂĶ
º 0 ³ ³Source 100³ ³ º
º ³ ³ ³ ³ º
º ³ ³Dest C5:1.PRE³ ³ º
º ³ ³ 300³ ³ º
º ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³ º
º ³ C5:1 ³ º
º ÀÄÄ(RES)ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ º
º º
Ligne 2:5
º º
ÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ENDÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ
º º
FI G UR E 2 -7 : S U I T E E T F I N DU PR O G R A M M E D E T R AN S F E R T D A NS U N C O M PT E U R / DÉ C OM P T E UR