Siemens SIMATIC S7-1200 Manuel page 548

Masquer les pouces Voir aussi pour SIMATIC S7-1200:
Table des Matières

Publicité

Protocoles des processeurs de communication
12.5 Communication Modbus
● Nous vous conseillons d'appeler toutes les exécutions de MB_MASTER pour un port
● Une fois qu'une instruction maître déclenche une transmission, cette instance doit
Paramètre REQ
0 = Pas de demande ; 1 = Demande d'envoi de données à un esclave Modbus
Vous pouvez commander cette entrée à l'aide d'un contact déclenché sur niveau ou sur
front. Dès que cette entrée est activée, un automate fini est démarré pour garantir qu'aucune
autre instruction MB_MASTER utilisant le même DB d'instance n'a le droit d'émettre de
demande, et ce jusqu'à ce que la demande en cours soit achevée. Tous les autres états
d'entrée sont capturés et conservés en interne pendant la demande en cours jusqu'à ce que
la réponse soit reçue ou qu'une erreur soit détectée.
Si la même instance de MB_MASTER est à nouveau exécutée avec l'entrée REQ à 1 avant
l'achèvement de la demande en cours, il n'y aura pas d'émissions suivantes. Toutefois, dès
que la demande aura été achevée, une nouvelle demande sera émise si MB_MASTER est à
nouveau exécuté avec l'entrée REQ à 1.
Sélection du type de fonction Modbus via les paramètres DATA_ADDR et MODE
DATA_ADDR (adresse Modbus de début dans l'esclave) : Indique l'adresse de début des
données auxquelles accéder dans l'esclave Modbus.
L'instruction MB_MASTER utilise une entrée MODE et non une entrée Code de fonction. La
combinaison de MODE et de l'adresse Modbus déterminent le code de fonction qui est
utilisé dans le message Modbus réel. Le tableau suivant montre la correspondance entre le
paramètre MODE, le code de fonction Modbus et la plage d'adresses Modbus.
548
donné dans un OB de cycle de programme. Les instructions maître Modbus ne peuvent
s'exécuter que dans un niveau d'exécution, cycle de programme ou alarme
cyclique/temporisée. Elles ne peuvent pas s'exécuter dans les deux niveaux de priorité
d'exécution. L'interruption d'une instruction maître Modbus par une autre instruction
maître Modbus dans un niveau de priorité d'exécution supérieur entraîne un
fonctionnement incorrect. Les instructions maître Modbus ne doivent pas s'exécuter dans
les niveaux de priorité mise en route, diagnostic ou erreur de temps.
s'exécuter en continu avec l'entrée EN activée jusqu'à ce qu'un état DONE égal à 1 ou
qu'un état ERROR égal à 1 soit renvoyé. Une instance particulière de MB_MASTER est
considérée comme active jusqu'à ce que l'un de ces deux événements se produise. Tant
que l'instance initiale est active, tout appel à une autre instance avec l'entrée REQ
activée entraîne une erreur. Si l'exécution continue de l'instance initiale est interrompue,
l'état de la demande reste actif pendant une durée indiquée par la variable statique
"Blocked_Proc_Timeout". A l'expiration de cette durée, l'instruction maître suivante
appelée avec l'entrée REQ activée devient l'instance active. Cela empêche une instance
maître Modbus unique de monopoliser un port ou d'en verrouiller l'accès. Si l'instance
active initiale n'est pas activée pendant la durée indiquée par la variable statique
"Blocked_Proc_Timeout", l'exécution suivante par cette instance (avec REQ non activé)
annulera l'état actif. Si REQ est activé, cette exécution déclenche une nouvelle demande
maître comme si aucune autre instance n'était active.
Automate programmable S7-1200
Manuel système, 07/2011, A5E02486682-04

Hide quick links:

Publicité

Table des Matières
loading

Table des Matières