Configuration / Programmation
3.6 Accès applicatif via l'adresse logique
Le bit de synchronisation SYNC se trouve dans le bit 8 du mot d'état du module :
Bit
Fonction
"-" signifie réservé, utilisation interdite
Bit de synchronisation (bit 8) :
SYNC = 0 →
SYNC = 1 →
Si vous voulez surveiller la synchronisation au moyen d'accès E/S, nous vous recommandons
de configurer une variable d'entrée WORD sur le mot d'état des modules TM1x avec "Valeur
de remplacement=0" ou d'exécuter l'accès en utilisant la fonction système sécurisée
getSafeValue.
Si vous utilisez une version de SIMOTION SCOUT antérieure à 4.1 SP2, vous ne pouvez
accéder au mot d'état depuis le programme utilisateur qu'avec une variable WORD (les
différents bits doivent ensuite être isolés par un masquage).
Dès que le bit SYNC = 1, le module est synchronisé et les accès via accès directs aux E/S ou
objets technologiques sont possibles.
3.6.9.2
Surveillance de la synchronisation avec PeripheralFaultTask
Lors du passage de l'état DÉMARRAGE à l'état RUN, tous les modules TM1x sont dans l´état
"NOT_SYNCHRONIZED".
● Dès que la synchronisation est atteinte, PeripheralFaultTask est appelé avec l'ID
d'interruption "_SC_IO_MODULE_SYNCHRONIZED" (=214).
● En cas de défaillance de la synchronisation, PeripheralFaultTask est appelé avec l'ID
d'interruption "_SC_IO_MODULE_NOT_SYNCHRONIZED" (=215).
Exemple
Pour la synchronisation de la tâche utilisateur, une variable utilisateur TM_SYNC est mise sur
FALSE dans StartUpTask et sur TRUE dans PeripheralFaultTask avec l'ID d'interruption =
SC_IO_MODULE_SYNCHRONIZED. Dans la tâche utilisateur, l'état de la variable
TM_SYNC est scruté avant le (premier) accès direct.
Dans PeripheralFaultTask, l'information suivante concernant le démarrage de la tâche est
fournie à chaque appel :
DINT
DINT
70
15
14
13
12
11
-
-
-
-
-
Le module n'est pas synchronisé
Le module est synchronisé
TSI#logBaseAdrIn
TSI#logBaseAdrOut
10
9
8
7
-
ERR SYNC
-
TM15 / TM17 High Feature manuel de mise en service
6
5
4
3
2
-
-
-
-
FPGA
// seulement valide lorsque dif‐
férent de _SC_INVALID_AD‐
DRESS
// seulement valide lorsque dif‐
férent de _SC_INVALID_AD‐
DRESS
Manuel de mise en service, 01/2015
1
0
PS
MF