Step 7 FB55 Fehler mit DB

Rusticus

Level-2
Beiträge
30
Reaktionspunkte
2
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich würde gerne mit meiner S7-400 und einem CPU443 eine Netzwerkverbindung im Programm parametrieren. Die Parametrierung über NetPro funktioniert, allerdings bekomme ich bei der Verwendung des FB55 immer den Fehler 8186H und ich komme nicht mehr weiter, wo mein Fehler liegt.

Vielleicht habt ihr noch einen Rat für mich, wo mein Fehler liegen könnte, damit ich in Zukunft die IP während der Laufzeit ändern kann...


Schöne Grüße und Danke im Voraus,
Rusticus
 

Anhänge

  • DB116.pdf
    15 KB · Aufrufe: 17
  • FB113.pdf
    24,7 KB · Aufrufe: 15
  • FB55.jpg
    FB55.jpg
    33,8 KB · Aufrufe: 29
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Harald,

ja, leider ist es nicht so einfach
Ich bin mir sicher das es ein unzulässiger Parameter ist, ich habe mich schon ein wenig damit gespielt, wie absichtlich falsche Längen angegeben zB um so sehen was dann passiert.

Code:
0    1    8186H    Unzulässiger Parameter erkannt
                                  Der ANY-Pointer CONF_DB verweist nicht auf einen Datenbaustein
 
Ist der DB initialisiert, sprich: haben die Aktualwerte die gewünschten Werte (z.B. die selben Werte wie die Anfangswerte)?

Gibt es Diagnosepuffereinträge in der CPU? Leuchten Fehler-LED?
Hast Du den richtigen FB55 für CP_400 verwendet?

Harald
 
Ist der IDB für den FB55 (DB84) in die CPU geladen?
Gibt es Konsistenzprobleme?

Vielleicht hilft es, wenn Du den FB-Aufruf komplett löschst und neu einfügst.

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Bist du sicher das du im NetPro und am Baustein die gleiche ID genommen hast, denn das sagt der Fehler 8186H (Parameter ID ungültig : S7-400 = 1...64)[
damit ich in Zukunft die IP während der Laufzeit ändern kann...
Verstehe ich das Richtig, du willst zur Laufzeit die ID (und somit die IP) wechseln ?
Das geht meines Wissens nicht!
 
Hallo Harald,

ja ist auch initialisiert, Werte sind gleich
Das einzige was ich mir im Moment noch vorstellen kann, ist die Sache mit dem Namen, da dieser eine ungerade Länge hat, ist quasi ein Byte nicht besetzt


@Paule: Genau dafür ist ja eben der FB55 da, die Projektierung wird dann vom NetPro in das Programm verschoben

Code:
Bedeutung des Bausteins

Der FB55 überträgt die in einem Datenbaustein (Konfigurations-DB) spezifizierte IP-Konfiguration sowie die Verbindungsdaten an den CP. Der Konfigurations-DB enthält sämtliche Verbindungsdaten, um die Verbindungen für die SEND/RECEIVE-Schnittstelle eines Ethernet-CP einzurichten.
Diese Variante der programmierten Kommunikationsverbindungen können Sie alternativ zur Verbindungsprojektierung mit STEP 7 einsetzen.
Je nach Größe des Konfigurations-DB erfolgt die Übertragung zum CP in mehreren Segmenten. Sie müssen daher den FB so lange erneut aufrufen, bis der FB mit dem DONE-Bit=1 die vollständige Übertragung signalisiert
 

Anhänge

  • ScreenHunter_02 Jul. 13 17.48.jpg
    ScreenHunter_02 Jul. 13 17.48.jpg
    279,8 KB · Aufrufe: 9
Verstehe ich das Richtig, du willst zur Laufzeit die ID (und somit die IP) wechseln ?
Das geht meines Wissens nicht!
Doch. Dafür is FB55 IP_CONFIG gemeint.

Blöde Frage. Ist es FB55 aus das "CP 400" Bibliotek, nicht aus das "CP 300" Bibliotek ?
Ich weis, der Fehler 8186H weist auf ein Parameterfehler, aber vielleicht ist der Fehlercode falsch, wegen falschen FB.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

FB55 gibt es für CP300 und CP400

//edit: Noch aus der Übersicht mein Baustein
 

Anhänge

  • ScreenHunter_03 Jul. 13 18.12.jpg
    ScreenHunter_03 Jul. 13 18.12.jpg
    119,7 KB · Aufrufe: 16
  • ScreenHunter_04 Jul. 13 18.15.jpg
    ScreenHunter_04 Jul. 13 18.15.jpg
    26 KB · Aufrufe: 7
Zuletzt bearbeitet:
Dein CONF_DB DB116:
Die Kommentare passen oft nicht zu den Variablen/Blöcken. Da wurde beim zusammenkopieren einiges verwurstelt. Sind da womöglich auch noch Formatfehler drin?
(die teilweise falschen Variablennamen sehen nur unschön aus, sind aber für die Funktion unerheblich)

Wenn Du den ganzen BLOCK_2_UDP rauslöschst, bleibt dann immer noch der Fehlercode 8186?

BLOCK_2_UDP.SUBBLOCK_6_KBus_Adr.KBUs
muß da vielleicht der Steckplatz der eigenen CPU angegeben werden? Steckt Deine CPU auf Steckplatz 2?

Harald
 
Code:
21 SUB_KBUS_ADR 5  Bei S7-400KBUS-Adresse der CPU
                   Bei S7-300Als fester Wert für die Steckplatzadresseeinzutragen: 2

Ich hab jetzt mal die KBUS-Adresse von 2 auf 3 geändert, das ändert leider nichts, wobei mir 3 plausibler erscheint als 2. Ist aber die KBUS-Adresse das selbe wie Steckplatznummer?

Aber leider kommt der Fehler 8186H auch wenn ich den UDP-Block entferne :-(
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ist das bei Dir eine normale S7-400 oder sind da redundante/hochverfügbare Sachen dabei?
Kannst Du erstmal einen rudimentären CONF_DB erstellen oder aus einen FB55-Beispielprojekt verwenden?
Kannst du mal alle beteiligten DB und IDB löschen und neu erstellen und alles neu in die CPU spielen?
Was sagt die Baustein-Konsistenzprüfung?
Sind die Firmware-Versionen der CPU und des CP443 eventuell auffällig alt?

Mit KBUS-Adresse ist die Steckplatznummer gemeint.

Der FB55 IP_CONFIG liefert den Fehlerstatus 16#8186, wenn der ANY-Pointer am Eingang CONFIG_DB nicht die Speicherbereichskennung "DB" B#16#84 hat oder wenn der unterlagert aufgerufene SFC59 einen RET_VAL 16#80E5 liefert.

Vielleicht solltest Du mal den Siemens Support kontaktieren.

Harald
 
Hallo Harald,

vielen Dank für die super Antwort! Wie hast du das herausgefunden? Eventuell könnte ich mir direkt anschauen was los ist, aber mein Know-How wie man diesen Schutz aufhebt ist nonexistent...

Ich hab nun wirklich den Siemens Support kontaktiert. Ich lasse euch wissen, was herausgekommen ist.

Gruß
 
Zurück
Oben