Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo,

eine Frage.

Kann man mit VB6 eine TCP/IP Socket Verbindung programmieren ?

Ich habe schon mal mit dem Comm Control (MScomm) eine serielle Verbindung

zu einer Textanzeige programmiert.

Gibt es für eine TCP/IP Socket Verbindung auch ein Steuerelement ?

Hat das schon mal jemand gemacht und kann mir ein paar Tipps geben.

Zum Beispiel, um auf die Prozessdaten einer S7 -SPS zuzugreifen.

(Handücher / Dokus / Links, Beispielcode etc.)

Gruß

Eleu

Geschrieben

Du kannst aus VB6 mit Sicherheit auf die WinAPI der Sockets zugreifen.

Dort gibt es:

socket()

connect()

recv()

send()

recvfrom()

sendto()

...

Und damit kann man rudimentäre Aufgaben sehr zuverlässig lösen.

Ich habe selber mit Delphi das SAIA-Protokoll Ether-S-Net (UDP/IP Port 5050) implementiert und eben keine Komponenten genommen.

Das funktioniert so gut, dass die Verzögerung vom Abholen aus der SPS und Rausgeben ins WinCC Netzwerk + max. 5ms liegt und nur mit RDTSC genau messbar ist.

Das Protokoll der S7 interessiert mich auch. Also wenn Du da Unterstützung brauchst würd ich Dir gern helfen.

Geschrieben

OPC heißt in diesem Fall aber auf einen OPC-Datenserver von SIEMENS zuzugreifen, der seinerseits selber die Daten per Ethernet abholt.

Aus eigener und Erfahrung mit anderen Firmen, die diverse OPC-Server eingesetzt haben (SAIA, SIEMENS, WinCC) sind die entweder nicht immer stabil, nicht gut zu parametrieren, nicht besonders performant oder schlicht einfach zu teuer, weil beispielsweise Lizenzierung pro x-Datenpunkte, pro Verbindung oder eine Kombination davon.

Einen OPC würd ich nur einsetzen, wenn es a) nicht anders geht oder B) sich der andere Aufwand nicht lohnt.

Geschrieben

Hallo,

mit dem OPC Server von Siemens (SimaticNET) und VB 6 habe ich schon einmal eine

Prozessanbindung zu einer S7 realisiert.

Das Ganze ist sehr komfortabel beim Programmieren der VB Anwendung.

Man kann über ein DATA Steuerelement direkt auf die Items browsen

und diese problemlos (ohne irgendeine Eingabe von Quellcode)

z.B. an ein Textfeld binden.

Eine weitere Variante, ist zum Beispiel "Prodave MPI/IE" von Siemens

oder die freie Library "Libnodave".

Es funktioniert in VB 6 ,indem man die entsprechende

dll über eine Declare Anweisung im allgemeinen Moduteil aufruft.

Der Zugriff auf die API (Vorschlag von VaNaTic) ist im

Prinzip das, woran ich interessiert bin.

Das Problem ist nur, ich habe kein VB 6 Beisielprojekt mit Quellcode

oder eine Doku die mir den Zugriff über eine Windows Socket Verbindung

beschreibt.

Wie müsste denn die Declare Anweisung aussehen ?

Welche dll im Ordner "System32" muss ich einbinden.

Ich nehme an die Winsock.dll ?

Also ich stelle mir das so vor, dass meine Anwendung beim Start im ersten Schritt

die TCP Verbindung als aktiver Kommunikationspartner zur S7 SPS aufbaut.

In der S7 SPS wären dann zwei passive TCP-Verbindungen angelegt (Fetch/Write)

Wie muss das in der Anwendung aussehen, wenn man dann in einen DB senden

und aus einem DB empfangen möchte.

Kann mir da jemand helfen ?

Gruß

Eleu

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...