Communication S7 unidirectionnelle dans Simatic. Comment organiser l'échange PLC-PLC en programmant et ne chargeant qu'un seul PLC?

Les liaisons S7 utilisées pour échanger des informations entre les appareils des séries S7-300, 400, 1200, 1500 sont configurables. Cela signifie que vous devez indiquer explicitement aux appareils qui communiquent avec qui. En général, ces connexions sont bidirectionnelles (bidirectionnelles ou bilatérales), c'est-à-dire l'ajout d'une connexion configurable se produit pour les deux automates, ce qui entraîne la nécessité de télécharger les deux automates. Cela ne pose pas de problèmes particuliers si les deux automates sont dans le département du système de contrôle de processus de l'entreprise et que pour les deux automates, un logiciel d'application est disponible. Mais il y a aussi des cas particuliers - il est nécessaire d'établir un échange entre «l'ancien» S7-300 et le «nouveau» S7-1500, de plus, le code source de l'ancien programme a été perdu. Eh bien, ou l'opération a simplement peur de toucher l'API. Ou il n'y a tout simplement aucune opération, la tâche d'organisation de l'échange "pend" à l'intégrateur du "nouveau" système,ce qui conduit à la condition précédente - personne ne veut vraiment toucher le logiciel d'un système inconnu.





Dans de tels cas, la possibilité existante de configurer une connexion unilatérale (unilatéralement), de la rendre active (c'est-à-dire que «notre» automate lancera la connexion), d'ajouter des blocs de programme de communication PUG / GET (cette méthode ne fonctionne pas avec d'autres blocs, tous les autres blocs sont bidirectionnels ) et ne téléchargez qu'un seul automate. Nous supposerons que nous avons d'une manière ou d'une autre conservé les informations sur le contenu des blocs de données - soit de la documentation du système, soit de la description des balises du système SCADA.





Brièvement sur les connexions unidirectionnelles et bidirectionnelles est écrit dans la base de connaissances au niveau du lien .





Herr Berger écrit beaucoup de choses intéressantes sur le sujet:





Hans Berger "Automatisation avec SIMATIC S7-1500", p. 761





: S7- CPU, «» (active side), PUT/GET « », connection resource  03. , 03 , S7-.





«» ET200S CPU, S7-300 din-. ip- , .





ip-: 192.168.43.4





: DB1.DBD0, DB1.DBD4, DB1.DBD8





«» S7-1516, .





, . DB13. , PUT/GET «» .





Devices & networks.





Connections S7 connection





CPU Add new connection





S7-1516 , , . X1. Local ID (0x100) — , GET.





Add, Connections





ip-





Address details rack/slot , Connection resource 03. Rack — «», slot — «», «» CPU Simatic. ( «» ) 0/2.





OB1 GET .





GET , Properties ( ), . .





Req — , .





ID — , 0x100





ADDR_1 — , ANY





RD_1 — , , ANY. , .





DB1.DBD0.





ADDR_1. — ANY, Simatic. P#DB1.DBX0.0 BYTE 4





DB1 — 1





DBX0.0 — 0 ( 0 )





BYTE 4 — 4





P#DB1.DBX0.0 BYTE 4 DB1.DBD0. , , TIA Portal .





R0 "xEchangeDB".R0 ( ANY , P#DB13.DBX0.0 BYTE 4).





( Tag_1) , . , REQ , / .





Tag_1 :





, , 666. CPU S7-300 , . , 4 . , R1 R2 — .





3 ANY :





:





. , GET: NDR — , ERROR — STATUS — , . , «» , , . .





ANY, . GET ( ), PUT ( ). , PUT STATUS. .





GET . () PUT. , . R0 DB13. PUT .









Ensuite, nous écrirons les données en définissant la valeur de la variable Tag_7 égale à "1". Eh bien, maintenant, pour être honnête, regardons la valeur de cette variable dans la "boîte noire".





L'écriture des données a réussi. Ainsi, même sans avoir le programme original du contrôleur en main, nous pouvons à la fois lire des informations et les écrire. La quantité de données est limitée et dépend du type de CPU. EMNIP, pour la "trois centième série" le paquet est limité à 160 octets, vous pouvez en savoir plus dans la documentation. L'absence de nécessité d'apporter des modifications au logiciel d'application n'est valable que pour les séries 300e et 400e, pour des milliers d'unités, il est nécessaire d'autoriser l'accès au processeur en utilisant la méthode PUT / GET, en cochant la case correspondante dans les paramètres système.








All Articles