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

Ergebnis 1 bis 6 von 6

Thema: libnodave keine Verb. mehr nach 3. Versuch

  1. #1
    Registriert seit
    02.08.2006
    Beiträge
    150
    Danke
    47
    Erhielt 5 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich bin erade dabei mit Libnodave zu experimentieren.
    Dabei habe ich ein VB6-Programm mit dem ich die Verbindung Auf- und Abbauen und auch Daten lesen kann.
    Das ganze funktioniert genau 3x. Nach dem 3. Mal bekomme ich keine Verbindung mehr.
    Woran kann das liegen ?

    libnodave Version 0.8.4.4

    noeppkes ...
    Zitieren Zitieren libnodave keine Verb. mehr nach 3. Versuch  

  2. #2
    Registriert seit
    27.11.2005
    Ort
    im Osten
    Beiträge
    1.183
    Danke
    141
    Erhielt 271 Danke für 248 Beiträge

    Standard

    Zitat Zitat von noeppkes Beitrag anzeigen
    ich bin erade dabei mit Libnodave zu experimentieren.
    Dabei habe ich ein VB6-Programm mit dem ich die Verbindung Auf- und Abbauen und auch Daten lesen kann.
    Das ganze funktioniert genau 3x. Nach dem 3. Mal bekomme ich keine Verbindung mehr.
    Woran kann das liegen ?
    das kann mehrer Ursachen haben, z.b. das du deine Verbindung nicht richtig abbaust und dadurch die Kommunikationresourcen der CPU belegt bleiben.
    am besten du stellst mal deinen Code mit dem Verbindungsaufbau- und abbau
    hier rein.
    Die rückgabewerte des fehlgeschlagen Verbindungsaufbau wären auch nicht schlecht

    ohne genauere info´s zum Problem kann dir da wohl kaum jemand helfen.
    Es ist nicht schwierig, mit noch nicht erreichten Zielen zu Leben; schwierig ist, ohne Ziele zu Leben !
    (Günther Kraftschik)

  3. #3
    noeppkes ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    02.08.2006
    Beiträge
    150
    Danke
    47
    Erhielt 5 Danke für 2 Beiträge

    Standard

    Hallo,

    der Code stammt von dem Beispielprojekt.
    Sobald ich das 3. mal die Verbindung abgebaut habe, bekomme ich keine Verbindung mehr.
    Klar, ist vielleicht kein unbedingter Anwendungsfall, stört jedoch trotzdem.

    'Verbindungsabbau:
    Die Rückgabewerte von hConection und hInterface sind immer 0, hSocket ist immer 1.

    Verbindungsaufbau beim Versuch > 3:
    hSocket irgend ein Wert um die 600 ... 800.
    RetCode ist dann immer 0 ?

    Nach irgend einer Zeit (Timeout-Zeit ? schätze so um die halbe Stunde, muss ich aber noch einmal prüfen) geht es dann wieder 3 mal.

    noeppkes ...

    Code:
    ´
    ' Verbindungsaufbau über das Beispiel von libnodave
    Private Sub cmdConnect_Click()
      ' Verbindung herstellen
      Dim RetCode As Long
      lblConnect.Caption = "connected to " & S7_IP & " ... failed!"   ' ... von Natur aus pessimistisch ;-)
      hSocket = openSocket(102, S7_IP)                               ' for ISO over TCP, siehe Doku zu libnodave
     
      If hSocket > 0 Then
        hInterface = daveNewInterface(hSocket, hSocket, "DEMO", 0, daveProtoISOTCP, 0)
        RetCode = daveInitAdapter(hInterface)
        If RetCode = daveResOK Then
          hConnection = daveNewConnection(hInterface, 0, 0, 2)
          RetCode = daveConnectPLC(hConnection)
          If RetCode = daveResOK Then
             lblConnect.Caption = "connected to " & S7_IP
             tcp_connection = True
          End If
          cmdConnect.Enabled = (RetCode <> 0)
          cmdDisconnect.Enabled = (RetCode = 0)
          cmdRead.Enabled = (RetCode = 0)
          cmdWrite.Enabled = (RetCode = 0)
        End If
      End If
     
    End Sub
     
     
    ' Verbindungsabbau über das Beispiel von libnodave
    Private Sub cmdDisconnect_Click()
      ' Verbindung abbauen
      Dim RetCode As Long
      If hConnection <> 0 Then
        RetCode = daveDisconnectPLC(hConnection)
        'MsgBox ("1: " & RetCode)
        daveFree hConnection
        hConnection = 0
      End If
     
      If hInterface <> 0 Then
        RetCode = daveDisconnectAdapter(hInterface)
        'MsgBox ("2: " & RetCode)
        daveFree hInterface
        hInterface = 0
      End If
     
      If hSocket <> 0 Then
        'MsgBox ("CP: " & hSocket)
        RetCode = closePort(hSocket)
        'MsgBox ("3: " & RetCode)
        hSocket = 0
      End If
     
      tcp_connection = False
     
      cmdConnect.Enabled = True
      cmdDisconnect.Enabled = False
      cmdRead.Enabled = False
      cmdWrite.Enabled = False
      lblConnect.Caption = ""
    End Sub

  4. #4
    Registriert seit
    12.07.2007
    Beiträge
    16
    Danke
    5
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Hallo noeppkes,

    habe gerade dein Code ausprobiert, funktioniert bei mir ohne Probleme. Ich kann die Verbindung beliebig oft auf- und abbauen.
    Ich habe mit einer 313C und einem IBHsoftec Link S7++ getestet.
    Ist deine Konfiguration von dem MPI/LAN Wandler richtig?

    Gruß Thomas

  5. #5
    noeppkes ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    02.08.2006
    Beiträge
    150
    Danke
    47
    Erhielt 5 Danke für 2 Beiträge

    Standard

    Hallo Thomas,

    was für ein MPI/LAN-Wandler ?
    Ich gehe mit meinem Laptop direkt auf's Netzwerk über den Netzwerkanschluss in meinem Laptop.
    Beim CP343-1 LEAN kann ich in der HW-Konfig nichts finden.
    Der CP343-1 LEAN hängt direkt am Netzwerk-Switch.

    Es funktioniert ja auch soweit, nur wie gesagt:
    3 mal hintereinander auf- und abbauen, dann ist erst mal tutti.
    Die Keep-alive Timout-Zeit im CP343-1 LEAN ist auf 30 Sekunden eingestellt.

    noeppkes ...

  6. #6
    Registriert seit
    12.07.2007
    Beiträge
    16
    Danke
    5
    Erhielt 2 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo noeppkes,

    Sorry, bin von einem MPI/LAN Wandler ausgegangen. Den CP343-1 LEAN kenne ich nicht. Ich habe es eben noch kurz mit einer Vipa 313SC mit eingebauten LAN versucht, hat auch ohne Probleme funktioniert. Hast du es mal ohne Switch versucht also mit einem Crossover Netzwerkkabel direkt zwischen Laptop und CP343, nur um den Switch als Fehler auszuschließen. Da das Programm bei mir funktioniert, denke ich mal das der Fehler eher an der Hardware zusuchen ist. Tut mir leid, dass ich dir nicht weiter helfen kann.

    Gruß Thomas

Ähnliche Themen

  1. Antworten: 9
    Letzter Beitrag: 03.07.2011, 13:15
  2. FM350-1 nach Überlauf keine Werte mehr
    Von Mecki im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 19.11.2009, 11:44
  3. Antworten: 1
    Letzter Beitrag: 18.01.2009, 18:22
  4. Antworten: 4
    Letzter Beitrag: 23.10.2008, 22:51
  5. Antworten: 12
    Letzter Beitrag: 07.10.2006, 22:53

Lesezeichen

Berechtigungen

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