Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 5 von 5

Thema: Wago PLC 750-8202 Mehrere Ping-Anfragen

  1. #1
    Registriert seit
    28.10.2015
    Beiträge
    30
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo

    Ich versuche zyklisch für drei IP - Adressen Ping Anfragen zu erstellen. Mit dem FB das in in dem Beitrag (Wago PFC200 Ping Anfrage) gepostet wurde.
    Mein Problem ist bei einer IP-Addresse funktioniert die Ping-Anfrage, jedoch wenn ich drei Instanzen erstelle und jeder Instanz die entsprechende IP zuweise funktioniert das nicht mehr und liefert z.B connectet=true auch wenn der Rechner nicht erreichbar ist.

    Hier der Aufbau:
    oPFCPingRouter(
    sIpAddress:= IP_AddressRouter,
    tTimeout:= t#2s,
    xStart:= xSendRouter,
    xReset:= xResetRouter,
    xConnected=> xConnectedRouter,
    dwErrorCode=> dwRetVal1);


    oPFCPingVPN(
    sIpAddress:= IP_AddressVPN,
    tTimeout:= t#2s,
    xStart := xSendVPN,
    xReset:= xResetVPN,
    xConnected=> xConnectedVPN,
    dwErrorCode=> dwRetVal2);


    oPFCPingINET(
    sIpAddress:= IP_AddressInternet,
    tTimeout:= t#2s,
    xStart:= xSendINET,
    xReset:= xResetInternet,
    xConnected=> xConnectedINET,
    dwErrorCode=> dwRetVal3);




    xSendVPN := TRUE; xResetVPN := TRUE;
    IF oPFCPingVPN.xConnected THEN
    LED_SET_STATIC(diLED_No := LEDVPN, eColor := LED_COLOR_GREEN);
    ELSE
    LED_SET_STATIC(diLED_No := LEDVPN, eColor := LED_COLOR_RED);
    END_IF

    xSendRouter := TRUE; xResetRouter := TRUE;
    IF oPFCPingRouter.xConnected THEN
    LED_SET_STATIC(diLED_No := LEDVPN, eColor := LED_COLOR_GREEN);
    ELSE
    LED_SET_STATIC(diLED_No := LEDVPN, eColor := LED_COLOR_RED);
    END_IF

    xSendINET := TRUE; xResetInternet := TRUE;
    IF oPFCPingINET.xConnected THEN
    LED_SET_STATIC(diLED_No := LEDVPN, eColor := LED_COLOR_GREEN);
    ELSE
    LED_SET_STATIC(diLED_No := LEDVPN, eColor := LED_COLOR_RED);
    END_IF
    Zitieren Zitieren Wago PLC 750-8202 Mehrere Ping-Anfragen  

  2. #2
    Registriert seit
    11.10.2015
    Beiträge
    77
    Danke
    0
    Erhielt 11 Danke für 10 Beiträge

    Standard

    Moin, ohne mir den FB im Detail angesehen zu haben, klingt das danach, als würden sich die gegenseitig beeinflussen. Was spricht gegen eine kleine State Machine, die dafür sorgt, dass eine einizige Instanz des FB nacheinander die unterschiedlichen IPs durchpngt. Bsp. dazu findest Du in dem Projekt hier: IP-Check / Anwesenheit

  3. #3
    sadik ist offline Benutzer
    Themenstarter
    Registriert seit
    28.10.2015
    Beiträge
    30
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Funktioniert nicht, habe ich einen Denkfehler? Ich habe beobachtet wenn die xConnected variable einen bestimmten schwellwert erreicht kann man es als ein timeout interpretieren,
    aber es funktioniert trotzdem nicht einwandfrei?
    Weitere Vorschläge ?

    Folgendes habe ich bisher:

    CASE PING OF
    0:
    xResetRouter := TRUE; xSendRouter := TRUE;
    oPFCPingRouter(
    sIpAddress := IP_AddressRouter,
    tTimeout := t#2s,
    xStart := xSendRouter,
    xReset := xResetRouter,
    xConnected => xConnectedRouter,
    dwErrorCode => dwRetVal1);
    IF oPFCPingRouter.xConnected THEN
    Irouter := 0;
    LED_SET_STATIC(diLED_No := LEDROUTER, eColor := LED_COLOR_GREEN);
    ELSE
    Irouter := Irouter + 1;
    IF Irouter > 12 THEN
    LED_SET_STATIC(diLED_No := LEDROUTER, eColor := LED_COLOR_RED);
    ELSE
    LED_SET_STATIC(diLED_No := LEDROUTER, eColor := LED_COLOR_GREEN);
    END_IF
    END_IF
    tonRouter1(in:=NOT tonRouter2.q,pt:=t#0.7s);
    tonRouter2(in:=tonRouter1.q,pt:=t#0.7s);
    IF tonRouter2.Q THEN
    PING := 1;
    END_IF


    1:
    xResetVPN := TRUE; xSendVPN := TRUE;
    oPFCPingVPN(
    sIpAddress := IP_AddressVPN,
    tTimeout := t#2s,
    xStart := xSendVPN,
    xReset := xResetVPN,
    xConnected => xConnectedVPN,
    dwErrorCode => dwRetVal2);
    IF oPFCPingVPN.xConnected THEN
    Ivpn := 0;
    LED_SET_STATIC(diLED_No := LEDVPN, eColor := LED_COLOR_GREEN);
    ELSE
    Ivpn := Ivpn + 1;
    IF Ivpn > 20 THEN
    LED_SET_STATIC(diLED_No := LEDVPN, eColor := LED_COLOR_RED);
    ELSE
    LED_SET_STATIC(diLED_No := LEDVPN, eColor := LED_COLOR_GREEN);
    END_IF
    END_IF
    tonVPN1(in:=NOT tonVPN2.q,pt:=t#1s);
    tonVPN2(in:=tonVPN1.q,pt:=t#1s);
    IF tonVPN2.Q THEN
    PING := 2;
    END_IF


    2:
    xResetInternet := TRUE; xSendINET := TRUE;
    oPFCPingINET(
    sIpAddress := IP_AddressInternet,
    tTimeout := t#2s,
    xStart := xSendINET,
    xReset := xResetInternet,
    xConnected => xConnectedINET,
    dwErrorCode => dwRetVal3);
    IF oPFCPingINET.xConnected THEN
    Iinternet := 0;
    LED_SET_STATIC(diLED_No := LEDINTERNET, eColor := LED_COLOR_GREEN);
    ELSE
    Iinternet := Iinternet + 1;
    IF Iinternet > 12 THEN
    LED_SET_STATIC(diLED_No := LEDINTERNET, eColor := LED_COLOR_RED);
    ELSE
    LED_SET_STATIC(diLED_No := LEDINTERNET, eColor := LED_COLOR_GREEN);
    END_IF
    END_IF
    tonInet1(in:=NOT tonInet2.q,pt:=t#1.5s);
    tonInet2(in:=tonInet1.q,pt:=t#1.5s);
    IF tonInet2.Q THEN
    PING := 0;
    END_IF
    END_CASE

  4. #4
    Registriert seit
    21.02.2014
    Ort
    Sachsen-Anhalt
    Beiträge
    1.096
    Danke
    156
    Erhielt 168 Danke für 155 Beiträge

    Standard

    - gestrichen wegen falsch -


    Eine Frage trotzdem: Muß xReset immer true sein? Du setzt xStart statisch unmittelbar vor Aufruf des Bausteins auf True. Wenn ich das richtig überflogen habe, ist das Rücksetzen von xStart durch den Baustein aber die Rückmeldung für fertig --> Daten gültig.
    Geändert von weißnix_ (12.08.2016 um 00:30 Uhr)

  5. #5
    sadik ist offline Benutzer
    Themenstarter
    Registriert seit
    28.10.2015
    Beiträge
    30
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Der Bastein kann ON->OFF Zustand erkennen wenn der xStart := TRUE gesetzt wird, bei OFF->ON Übergang muss der Baustein reset:= TRUE durchgeführt werden.
    Was aber das problem ist bei mehreren ping-anfragen mit unterschiedlichen ips wird auch bei offline hosts connected = true auch mit der CASE Ansatz

Ähnliche Themen

  1. Wago PLC 750-8202
    Von sadik im Forum WAGO
    Antworten: 2
    Letzter Beitrag: 01.04.2016, 13:09
  2. Modbus PLC 750-8202
    Von sadik im Forum WAGO
    Antworten: 3
    Letzter Beitrag: 22.03.2016, 15:23
  3. Modbus PLC 750-8202
    Von sadik im Forum CODESYS und IEC61131
    Antworten: 0
    Letzter Beitrag: 21.03.2016, 16:38
  4. Wago 750-8202 und 750-315 mit Modbus RTU koppeln
    Von Boernie1967 im Forum WAGO
    Antworten: 1
    Letzter Beitrag: 28.12.2015, 10:55
  5. Wago 750-8202 Problem Enocean 750-642
    Von hofstetter im Forum WAGO
    Antworten: 1
    Letzter Beitrag: 20.11.2014, 11:33

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •