TIA PROFINET Teilnehmererweiterung ohne CPU Stop

SanjaDO

Level-1
Beiträge
177
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo

Gibt es eine Möglichkeit ein PROFINET-Netzwerk um Kommunikationsteilnehmer zu erweitern ohne dass die CPU auf den Betriebszustand "STOP" gesetzt werden muss?

Danke
 
Ich behaupte mal: das geht nicht.

Aber du kannst vorausschauend Busteilnehmer projekieren, inaktiv schalten und bei Bedarf aktivieren. Dafür gibts extra Bausteine.

Ein Panel bekommst du evtl. auch online an die CPU (keine Hardware übertragen/ kein Stop).

Gruß
Holger
 
Zuletzt bearbeitet:
Ich glaube Dummyteilnehmer gibt es nicht.

Das folgende stammt zwar aus meinem Profibuskatalog/ nicht Profinet, aber das währe evtl. so etwas wie ein sehr beschränkter variabler Slave.

20.jpg

:???:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Bei 400er CPUen und profibus geht das auf jeden Fall. Bei Profinet weiß ichs nicht.
Aber man muss vorher schon so genannte CiR-Objekte in HW-Konfig angelegt haben.
Sag doch erstmal was du für eine CPU hast.
Vielleicht ist sowas bei der 1500er ja auch möglich.
 
Hallo,

auch wenn das Thema schon etwas älter ist, schließe ich mich diesem an, da ich zwei ähnliche Fragen habe:

1. Ich habe eine ET200S IM151-8 PN, also eine mit CPU.
Wenn nun ein Profinet-Teilnehmer abgesteckt wird, geht die CPU sofort in Stop.
Ist es möglich, dies zu verhindern?

2. Ist es möglich, das kein Bus-Fehler oder Systemfehler an der CPU S7-1513 aufkommt, wenn ich einen Profinet-Teilnehmer entferne?

Ich habe in meinem Netzwerk nur Profinet-Teilnehmer die zum Bedienen und Beobachten dienen. Wenn mal einer getauscht oder entfernt wird,
hat dies keinen Einfluss auf den Normal-Ablauf und ich möchte nicht, das jedes Mal die CPU auf Stop geht oder einen Fehler erscheint.


Vielen Dank!
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Man kann mit der Systemfunktion "D_ACT_DP" (SFC12) projektierte Profinet-IO-Devices im laufenden Betrieb deaktivieren bevor man sie abzieht bzw. aktivieren nachdem man sie angesteckt hat. Außerdem muß die CPU bei Teilnehmer-Ausfall nicht in Stop gehen - der Stop kommt vermutlich deshalb, weil ein aufgerufener Fehler-OB nicht auf der CPU vorhanden ist (OB86). Was steht im Diagnosepuffer der CPU?

Müssen die HMI überhaupt Profinet-IO-Devices sein? Das ist normalerweise nur nötig, wenn man die Profinet-Direkttasten-Funktionalität benutzen will.

Harald
 
Hallo,

hier ein Beispiel, wie wir das gelöst haben (mittels SFC12).


// Trigger Anmelden bilden
U #ON_OFF_PN_Device //An-/Abmelden PN-Device
= #Anm_PN_Device //Anmelden PN-Device

// Trigger Abmelden bilden
UN #ON_OFF_PN_Device //An-/Abmelden PN-Device
= #Abm_PN_Device //Abmelden PN-Device

// Wandlung INT --> WORD (Parameter LADDR)
L #IN_STADR_HW //Startadresse (Hardware)
T #HW_ADR_PN_Device //Hardware-Adresse PN-Device

// PROFINET-Device Anmelden/Aktivieren
CALL "D_ACT_DP"
REQ :=#Anm_PN_Device //Anmelden PN-Device
MODE :=B#16#1 //1 = PROFINET-Device aktivieren
LADDR :=#HW_ADR_PN_Device //Hardware-Adresse PN-Device
RET_VAL:=#Dummy //Status Dummy = 0 i.O., <> 0 Error
BUSY :=#Busy //Status Busy = 1 Auftrag aktiv, 0 = Auftrag beendet

// Auswertung PROFINET-Device angemeldet
U #Anm_PN_Device //Anmelden PN-Device
U(
L #Dummy //Status Dummy = 0 i.O., <> 0 Error
L 0
==I
)
UN #Busy //Status Busy = 1 Auftrag aktiv, 0 = Auftrag beendet
S #OUT_STATUS_PN_DEVICE //Status PROFINET-Device

// PROFINET-Device Abmelden/Deaktivieren
CALL "D_ACT_DP"
REQ :=#Abm_PN_Device //Abmelden PN-Device
MODE :=B#16#2 //2 = PROFINET-Device deaktivieren
LADDR :=#HW_ADR_PN_Device//Hardware-Adresse PN-Device
RET_VAL:=#Dummy //Dummy
BUSY :=#Busy //Busy

// Auswertung PROFINET-Device abgemeldet
U #Abm_PN_Device //Abmelden PN-Device
U(
L #Dummy //Status Dummy = 0 i.O., <> 0 Error
L 0
==I
)
UN #Busy //Status Busy = 1 Auftrag aktiv, 0 = Auftrag beendet
R #OUT_STATUS_PN_DEVICE //Status PROFINET-Device


Und dazu noch die Beschreibung zum SFC12:


Beschreibung Parameter SFC12
============================
REQ =
Pegelgetriggerter Steuerparameter
REQ=1: Aktivieren bzw. Deaktivieren durchführen
MODE =
Auftragskennung. Mögliche Werte:
- 0: Auskunft einholen, ob die angesprochene Komponente aktiviert oder
deaktiviert ist
- 1: DP-Slave/PROFINET IO-Device aktivieren
- 2: DP-Slave/PROFINET IO-Device deaktivieren
- 3: DP-Slave/PROFINET IO-Device aktivieren und nach durchgeführtem Wechsel des
Aktivierungszustands OB86 aufrufen
- 4: DP-Slave/PROFINET IO-Device deaktivieren und nach durchgeführtem Wechsel
des Aktivierungszustands OB86 aufrufen
LADDR =
Beliebige logische Adresse des DP-Slaves/PROFINET IO-Devices
RET_VAL =
Tritt während der Bearbeitung der Funktion ein Fehler auf, enthält der
Rückgabewert einen Fehlercode.
BUSY =
Aktivkennung:
- BUSY=1: Der Auftrag ist noch aktiv.
- BUSY=0: Der Auftrag wurde beendet.

Beschreibung Fehlercode SFC12 (RET_VAL W#16#....)
===========================================
0000 =
Der Auftrag wurde fehlerfrei durchgeführt.
0001 =
DP-Slave/PROFINET IO-Device ist aktiviert (Dieser Fehlercode ist nur möglich
bei
Mode = 0).
0002 =
DP-Slave/PROFINET IO-Device ist deaktiviert (Dieser Fehlercode ist nur möglich
bei Mode = 0).
7000 =
Erstaufruf mit REQ=0. Der über LADDR festgelegte Auftrag ist nicht aktiv; BUSY
hat den Wert 0.
7001 =
Erstaufruf mit REQ=1. Der über LADDR festgelegte Auftrag wurde angestossen;
BUSY
hat den Wert 1.
7002 =
Zwischenaufruf (REQ irrelevant). Der aktivierte Auftrag ist noch in
Bearbeitung;
BUSY hat den Wert 1.
8090 =
- Sie haben keine Baugruppe mit der in LADDR angegebenen Adresse projektiert.
- Sie betreiben Ihre CPU als I-Slave und haben in LADDR eine Adresse dieses
I-Slaves angegeben.
8092 =
Der laufende Deaktivierungsvorgang eines DP-Slaves/PROFINET IO-Devices (MODE=2)
kann nicht durch seine Aktivierung (MODE=1) abgebrochen werden. Aktivieren sie
die Komponente zu einem späteren Zeitpunkt.
8093 =
Zu der in LADDR angegebenen Adresse gehört kein DP-Slave/PROFINET IO-Device (Es
liegt keine Projektierung vor.), oder der Parameter MODE ist nicht bekannt.
8094 =
Sie haben versucht, ein Gerät zu aktivieren, das ein möglicher Partner eines
Werkzeugwechselports ist. Zu diesem Zeitpunkt ist an diesem Werkzeugwechselport
aber bereits ein anderes Gerät aktiviert. Das aktivierte Gerät bleibt aktiviert.
80A1 =
Die angesprochene Komponente konnte nicht parametriert werden. (Dieser
Fehlercode ist nur möglich bei MODE=1.)
Hinweis: Diese Fehlerinformation liefert die SFC nur dann, wenn während der
Parametrierung des aktivierten Slaves/Devices diese Komponente wieder ausfällt.
Wenn nur die Parametrierung einer einzelnen Baugruppe nicht erfolgreich war,
liefert die SFC die Fehlerinformation W#16#0000.
80A2 =
Der angesprochene DP-Slave gibt keine Rückmeldung (diese Fehlerinformation gibt
es nicht bei PROFINET IO-Devices. Der Aktivierungsauftrag wird bei PROFINET
nicht zeitüberwacht).
80A3 =
Der betroffene DP-Master/PROFINET IO-Controller unterstützt diese Funktion
nicht.
80A4 =
Die CPU unterstützt diese Funktion bei externen DP-Mastern/PROFINET
IO-Controllern nicht.
80A6 =
Steckplatzfehler im DP-Slave/PROFINET IO-Device; es kann nicht auf alle
Nutzdaten zugegriffen werden (Dieser Fehlercode ist nur möglich bei MODE=1).
Hinweis: Diese Fehlerinformation liefert die SFC nur dann, wenn nach der
Parametrierung der aktivierten Komponente und vor dem Ende der SFC die
Komponente wieder ausfällt. Wenn nur eine einzelne Baugruppe nicht verfügbar
ist, liefert die SFC die Fehlerinformation W#16#0000.
80C1 =
Die SFC12 wurde gestartet und wird mit einer anderen logischen Adresse
fortgesetzt. (Dieser Fehlercode ist nur möglich bei MODE=1 und bei MODE=2.)
80C3 =
- Temporärer Ressourcenfehler: Die CPU bearbeitet momentan das mögliche Maximum

an Aktivierungs-/Deaktivierungsaufträgen. (Dieser Fehlercode ist nur möglich

bei MODE=1 und bei MODE=2.)
- Die CPU erhält gerade eine geänderte Konfiguration. Das Deaktivieren und
Aktivieren von DP-Slaves/PROFINET IO-Devices ist daher momentan nicht möglich.
80C5 =
DP: Vom Anwender noch nicht abgeholte aufträge werden durch Wiederanlauf
verworfen.
80C6 =
PROFINET: Vom Anwender noch nicht abgeholte aufträge werden durch Wiederanlauf
verworfen.
8xyy =
allgemeine Fehlerinformation, siehe Fehlerauswertung mit dem Ausgangsparameter
RET_VAL


Funktioniert tadellos ohne Makel. Viel Erfolg.
pretender2009
 
Hallo,

vielen Dank für eure Antworten.
Ich habe mehrere KP8-Panels als "Taster"-Ersatz im Einsatz und möchte lediglich verhindern, dass die CPU auf Stop geht, wenn mal ein Gerät entfernt wird.
Ich werde das Ganze mal mit dem OB86 ausprobieren.
Ansonsten werde ich wohl auf die Lösung von pretender2009 zurückgreifen.

Gruß und ein schönes Wochenende
 
Zurück
Oben