ermitteln der eigenen MPI-Adresse

patx

Level-1
Beiträge
16
Reaktionspunkte
3
Zuviel Werbung?
-> Hier kostenlos registrieren
Ein MPI-Netz besteht aus mehreren gleichen S7-CPU313C, die alle das selbe Programm haben und sich nur in der MPI-Adresse, also der Hardware-Config unterscheiden. Unter Step7 V5.5 suche ich nach Möglicheiten

a) die eigene MPI-Adresse zu ermitteln

b) die eigene MPI-Adresse aus dem Programmcode heraus dynamisch zu ändern

Für Lösungsvorschläge wäre ich sehr dankbar.
 
a) die eigene MPI-Adresse zu ermitteln

b) die eigene MPI-Adresse aus dem Programmcode heraus dynamisch zu ändern


a: Die eigene? der angeschlossenen CPU? -->Netpro . Oder Zielsystem erreichbare Teilnehmer

b: Wozu? Die Kommunikation zu einem evtl. angeschlossenem Display würde abbrechen. Vielleicht hast mal ein Beispiel, wofür man das brauchen kann
 
Zuviel Werbung?
-> Hier kostenlos registrieren
:confused: Vielleicht hab ich mich ja undeutlich ausgedrückt:

a) Aus dem laufenden Step7-Programm in der CPU selbst soll deren EIGENE MPI-Adresse ermittelt werden. Das hat dem Zweck, dass die Adresse in einem am Profibus angeschlossenen Touchpanel angezeigt werden kann.

b) Das TP ist am Profibus angeschlossen und nur ein PC, der alle SPSen via OPC steuert, hängt am MPI-Netz. Sinn des ganzen ist, mehrere exakt gleiche Maschinen auch exakt gleich (also auch die selbe MPI-Adresse) zur Auslieferung konfigurieren zu können, und dann je nach Aufstellungsort (kann wechseln) und bereits vorhandenen MPI-Teilnehmern eine freie Teilnehmeradresse festlegen zu können (via TP am Profibus). Also quasi ein DHCP am MPI-Netz. Mit Profinet geht's ja auch, warum also nicht bei MPI?
 
Mein erster Lösungsansatz war folgender:
:idea: Es wird ständig der SFC68 "X-PUT" aufgerufen, der zu einer zyklisch durchzählenden MPI-Adresse immer zum gleichen Datenwort (das Programm auf allen CPUs ist ja gleich) genau die MPI-Adresse schreibt, an die gerade gesendet wird. Somit müsste nach kurzer Zeit in jeder CPU die eigene MPI-Adresse in diesem Datenwort stehen. Das klappt aber nur, wenn mindestens 2 CPUs sich gegenseitig beschreiben, denn zur eigenen MPI-Adresse bricht X-PUT mit Returncode 80C3 "Fehler beim Verbindungsaufbau" ab. Das lässt sich aber auch nicht abfangen, da der Versuch zu einer nicht vorhandenen Adresse zu schreiben exakt den selben Returncode liefert. :cry:
 
Also das auslesen der eigenen MPI-Adresse würde ich jetzt mal behaupten sollte mit den SZL "System Zustands Listen" funktionieren (in Verbindung mit SFC51?),
das dynamische Ändern der MPI-Adresse hingegen würde ich für eher unmöglich halten, da man imho den SDB nicht beeinlussen kann,
weil dieser noch nicht mal Teil des Arbeitsspeichers ist, sich also nur auf der MMC befindet.

Mfg
Manuel
 
Zuviel Werbung?
-> Hier kostenlos registrieren
SZL? Die hab ich noch nie verwendet. Gibt's dazu irgendwo ein Beispiel?

Die Möglichkeit, die MPI-Adresse während des Betriebs zu ändern wäre auch zu schön gewesen.
 
Zurück
Oben