vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: TCP/IP Timeout überbrücken 
Autor: SuperEbse
Datum: 25.02.14 12:21

Hallo Jennsy,

ich selbst nutze die Libnodave DLL im .net Umfeld in einigen Projekten, wo ich periodisch Daten mit den PLC´s austausche (lesend + schreibend).

Ich löse das meist so, dass ich vor dem Verbidnungsaufbau die IP der PLC anpinge und nur bei Erfolg die Verbindung über LibnoDave aufbaue.

Hier ein kleiner Auszug aus einem meiner Projekte:

            Dim ping_to_server As New Ping
            Dim ping_reply As PingReply
 
            _DB_NUmber = DB
            _Start_Address = start_Byte
            _Length = NumberOfBytes
            _PLC_Slot = SLOT
            _PLC_Rack = RACK
            _plc_IP = IP_Adress
 
 
            ping_reply = ping_to_server.Send(_plc_IP, 2000)
 
            If Not ping_reply.Status = IPStatus.Success Then 'zweiter versuch, 
            ' vielleicht ging der erste ping auf timeout
                ping_reply = ping_to_server.Send(_plc_IP, 2000)
            End If
 
 
            If Not ping_reply.Status = IPStatus.Success Then
 
                connection_IO = False
                Diagnostics.EventLog.WriteEntry( _
                  My.Application.Info.ProductName, Format(Now, "dd/MM/yyyy" & _
                  "HH:mm:ss.fff") & " - Status Network Connection PLC NOK ping" & _
                  "failed", EventLogEntryType.Error)
            Else
                Diagnostics.EventLog.WriteEntry( _
                  My.Application.Info.ProductName, Format(Now, "dd/MM/yyyy" & _
                  "HH:mm:ss.fff") & " - Status Network Connection PLC OK ping" & _
                  "succeeded", EventLogEntryType.Information)
                Diagnostics.EventLog.WriteEntry( _
                My.Application.Info.ProductName, Format(Now, "dd/MM/yyyy" & _
                "HH:mm:ss.fff") & " - Trying to connect to PLC port", _
                EventLogEntryType.Information)
 
                fds.rfd = libnodave.openSocket(102, _plc_IP) 'Portstatus - lesen
                fds.wfd = fds.rfd 'Portstatus schreiben = Portstatus - lesen
 
                di = New libnodave.daveInterface(fds, "Mein Interface", _
                  localMPI, _
                libnodave.daveProtoISOTCP, libnodave.daveSpeed187k)
                di.setTimeout(2000000)
                connection_IO = True
            End If
Vielleicht ist auch das ein Lösungsansatz für Dich.

Greetz SuperEbse
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
TCP/IP Timeout überbrücken2.433Jennsy25.02.14 09:01
Re: TCP/IP Timeout überbrücken2.234Manfred X25.02.14 11:07
Re: TCP/IP Timeout überbrücken1.981Jennsy25.02.14 11:31
Re: TCP/IP Timeout überbrücken2.158Manfred X25.02.14 11:42
Re: TCP/IP Timeout überbrücken1.939Jennsy25.02.14 11:49
Re: TCP/IP Timeout überbrücken2.129SuperEbse25.02.14 12:21
Re: TCP/IP Timeout überbrücken1.864Jennsy25.02.14 13:30

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel