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

Seite 1 von 5 123 ... LetzteLetzte
Ergebnis 1 bis 10 von 44

Thema: Kommunikation zwischen VB6.0-Visu und PLCSim über NetToPLCSim

  1. #1
    Registriert seit
    04.04.2008
    Beiträge
    389
    Danke
    85
    Erhielt 39 Danke für 24 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich will meine VB6.0-Visu über NEtToPLCSim mit PLCSim kommunizieren lassen. (Die Kommunikation zu ACCONTrol hat immer geklappt.)
    Zuerst die Frage: Geht das überhaupt, das Tool heißt schließlich NetToPLCSim - ich habe hier keine .Net-Anwendung, sondern eine VB6.0-Visu.

    Die wichtigsten Schritte:
    HW-Konfig mit 314C-2PNDP - IP-Adresse z.B. 192.68.0.80
    Programm + Systemdaten in PLCSim-CPU (TCP/IP)

    NetToPLCSim starten, Rechnernetzwerkkarte IP 192.168.0.81, PlCSim-IP 192.168.0.80, Starten, Running wird angezeigt

    Visu in Entwicklungsumgebung starten, dabei muss es schon beim Verbindungsaufbau zum Fehler kommen:

    Code:
    Private Sub Form_Load()
    'Automatische Bildschirmanpassung
    SetDeviceIndependentWindow Me
     
    On Error GoTo Err1
    'Verbindungsaufbau mit Libnodave
    Dim port As String, peer As String, Rack As String, Slot As String
    port$ = 102
    peer$ = "192.168.53.80"
    ph = openSocket(port$, peer$)
    If (ph > 0) Then
        di = daveNewInterface(ph, ph, "IF1", 0, daveProtoISOTCP, daveSpeed187k)
        res = daveInitAdapter(di)
         If res = 0 Then
            Rack$ = 0
            Slot$ = 2
            dc = daveNewConnection(di, 0, Rack$, Slot$)
            res = daveConnectPLC(dc)
        End If
    End If
    'Ende Verbindungsaufbau mit Libnodave
    .....
    .....

    Die Anwendung stürzt. Der Task-Manager hat Mühe, die Anwendung (ohne Rückmeldung) zu beenden.

    Hat jemand eine Idee, was die Ursache für den Absturz sein kann?



    Gruß
    Earny
    Zitieren Zitieren Kommunikation zwischen VB6.0-Visu und PLCSim über NetToPLCSim  

  2. #2
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.746
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Warum ist die IP im VB programm
    192.168.53.80 und nicht 192.168.0.80 ?
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  3. #3
    Earny ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    04.04.2008
    Beiträge
    389
    Danke
    85
    Erhielt 39 Danke für 24 Beiträge

    Standard

    Danke Jochen,

    danke für den Tip. Ich habe das jetzt korrigiert. Nützt nichts.

    In HW-Konfig bekommt die CPU 192.168.0.80

    Im VB6.0-Form-Load steht jetzt 192.168.0.80

    In NetToPLCSim steht bei Netzwerk 192.168.0.81 (Dieses IP hat meine Netzwerkkarte)

    In NetToPLCSim steht bei PLCSim 192.168.0.80



    Das Problem bleibt. In dem Moment, wo der Verbindungsaufbau erfolgen soll, stürzt VB6.0 ohne Rückmeldung ab.


    Habs eben nochmal mit ACCOntrol getestet. Das funktioniert. Das VB6.0-Projekt dürfte keinen Fehler haben. Für ACControl stelle ich wieder die 127.0.0.1 ein.


    Gruß
    Earny
    Geändert von Earny (06.05.2012 um 13:07 Uhr)

  4. #4
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.746
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Wenn in nettoplc sim die 81 steht, musst du nicht das angeben? Du willst dich ja mit nettoplcsim verbinden!
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  5. #5
    Earny ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    04.04.2008
    Beiträge
    389
    Danke
    85
    Erhielt 39 Danke für 24 Beiträge

    Standard

    Hallo Jochen,

    ich verstehe nicht ganz, was du meinst.
    Wenn ich NetToPLCSim nach PLCSim starte, dann muss ich drei Sachen in NetToPLCSim eintragen:
    Zuerst den Namen der Verbindung (beliebig), dann die Netzwerkadresse des Rechners (192.168.0.81) und dann die IP-ADresse der PN-CPU, die in PLCSim arbeitet (192.168.0.80). Ich kann die IP-Adressen auch über die Auswahlbuttons auswählen. Das klappt auch. Der Server geht auch auf "Running", wenn ich ihn starte.

    Hab ich das was falsch gemacht?

    Die VB6.0-Visu stürzt aber ab, wenn sie versucht eine Verbindung zu 192.168.0.80 aufzubauen.


    Hab eben nochmal getestest.
    VB stürzt schon bei ph = openSocket(...) ab:

    Code:
    Private Sub Form_Load()
    'Automatische Bildschirmanpassung
    SetDeviceIndependentWindow Me
     
    On Error GoTo Err1
    'Verbindungsaufbau mit Libnodave
    Dim port As String, peer As String, Rack As String, Slot As String
    port$ = 102
    peer$ = "192.168.0.80"
    ph = openSocket(port$, peer$)
    ...
    ...
    ...

    Gruß
    Earny
    Geändert von Earny (06.05.2012 um 18:47 Uhr)

  6. #6
    Registriert seit
    29.03.2004
    Beiträge
    5.739
    Danke
    143
    Erhielt 1.686 Danke für 1.225 Beiträge

    Standard

    Hi Earny,
    wie Jochen schon schrieb musst du die IP-Adresse der Netzwerkkarte verwenden, also die 81.

    Dass du das bei nettoplcsim einstellen musst hat nur den Hintergrund, wenn mehrere Verbindungen/CPUs gleichzeitig simuliert werden sollen die Zuordnung CPU zur IP zu treffen.
    Bei der alten Version (0.7.2) musste man garnichts einstellen, da war die Plcsim-CPU immer über alle IP-Adressen des Computers erreichbar - aber eben auch die des Computers, und nicht der IP der PN-CPU oder des Ethernet-CPs.

  7. #7
    Earny ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    04.04.2008
    Beiträge
    389
    Danke
    85
    Erhielt 39 Danke für 24 Beiträge

    Standard

    Hallo Jochen, hallo Thomas,
    irgendwie verstehe ich nicht was ihr meint. Ich glaube aber, ihr meint beide das Gleiche.
    Könnt ihr mir mal folgende Fragen beantworten, wobei von folgender Voraussetzung ausgegangen werden soll:
    Die Netzwerkkarte meines Rechners hat die IP 192.168.0.81 !

    1. Was soll in der HW-Konfig der CPU314C-2PN/DP als IP-Adresse eingegeben werden? Geht 192.168.0.80?
    2. Was wird im Eingabefeld "Network IP Adress" von NetToPLCSim eingetragen?
    3. Was wird im Eingabefeld "PLCSim IP Adress" von NetPLCSim eingetragen?

    Gruß
    Earny

  8. #8
    Registriert seit
    29.03.2004
    Beiträge
    5.739
    Danke
    143
    Erhielt 1.686 Danke für 1.225 Beiträge

    Standard

    Zitat Zitat von Earny Beitrag anzeigen
    1. Was soll in der HW-Konfig der CPU314C-2PN/DP als IP-Adresse eingegeben werden? Geht 192.168.0.80?
    Du kannst dort die Adresse eingeben die deine CPU später haben soll. Über Nettoplcsim ist die CPU jedoch immer nur über die IP der Netzwerk-Schnittstelle deines Computers erreichbar.
    Zitat Zitat von Earny Beitrag anzeigen
    2. Was wird im Eingabefeld "Network IP Adress" von NetToPLCSim eingetragen?
    Die IP-Adresse der Netzwerk-Schnittstelle über die du die Plcsim-CPU erreichen willst. Über das Auswahlfeld (...) werden alle IP-Adressen die dein Computer momentan besitzt angezeit. Mal angenommen du hast eine LAN-Verbindung mit verbundenem Netzwerkkabel und eine WLAN-Verbindung die ebenfalls verbunden ist, würdest du dort zwei IP-Adressen zur Auswahl finden. In deinem VB Client Programm musst du dann die IP-Adresse einstellen die du an diesem Punkt ausgewählt hast. Bei dir z.B. 192.168.0.81
    Zitat Zitat von Earny Beitrag anzeigen
    3. Was wird im Eingabefeld "PLCSim IP Adress" von NetPLCSim eingetragen?
    Die IP-Adresse die du unter 1. eingestellt hast. Diese Adresse sollte dir auch im Auswahfeld über den Button (...) angezeigt werden.

  9. Folgender Benutzer sagt Danke zu Thomas_v2.1 für den nützlichen Beitrag:

    Earny (07.05.2012)

  10. #9
    Earny ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    04.04.2008
    Beiträge
    389
    Danke
    85
    Erhielt 39 Danke für 24 Beiträge

    Standard

    Hallo Thomas,
    besten Dank. Jetzt klappts.

    Mein Fehler war, dass von meiner VB-Visu eine Verbindung zur IP-Adresse der PLCSim-CPU versucht wurde. Es muss aber die IP-Adresse der Netzwerkkarte sein.

    Jetzt habe ich versucht, NetToPLCSim auf meinem neuen Windows7 64Bit Prof-Rechner zum Laufen zu bringen. Sollte NetToPLCSim (0.9.1) auf diesem System?
    Beim Start kam eine Fehlermeldung über eine "Unbehandelte Ausnahme in der Anwendung....". NetToPLCsim sah auch nicht die IP-Adresse der Netzwerkkarte, sondern die IP von ACCONtrol (127.0.0.1), was ich auch mal auf meinen neuen Rechner installiert hatte. Es könnte aber auch sein, dass meine Netzwerkkarte noch nicht richtig konfiguriert ist.

    Außerdem gibt es für meine div. VB-Visus mit NetToPLCSim noch ein strukturelles Problem: Da die Visu bei der Verwendung von NetToPLCSim sich mit der IP-Adresse des Rechners verbinden muss (siehe oben), müsste vom Nutzer meiner Visus die Eingabe der IP seiner Netzwerkkarte verlangen. Das ist ungünstig. Bei ACCONtrol war die 127.0.0.1 eine feste Größe.


    Gruß
    Earny

  11. #10
    Registriert seit
    29.03.2004
    Beiträge
    5.739
    Danke
    143
    Erhielt 1.686 Danke für 1.225 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Die fertig kompilierten Versionen von Nettoplcsim die bei Sourceforge liegen sind alle nur unter 32-Bit Betriebssystemen lauffähig.
    Damit es unter 64-Bit Windows läuft, müsste das C#-Projekt mit den entsprechenden Einstellungen neu übersetzt werden. Ich habe aber keinen 64-Bit Rechner zur Verfügung, darum kann ich das nicht selber machen. Es hat mir aber schon einer geschrieben der das erfolgreich durchgeführt hat (zumindest für die 0.7er Version). Alternativ soll es auch mit dem CorFlags [1] Utility funktionieren die exe zu manipulieren, ohne alles neu übersetzen zu müssen. Aber ich kann es selber nicht testen.

    Wenn du zu 127.0.0.1 verbinden willst, funktioniert es wenn du diese Adresse bei "Network Address" eingibst, auch wenn diese nicht zur Auswahl angeboten wird. Oder nimmst die alte 0.7 Version, diese war immer unter allen Adressen erreichbar (so wie Accontrol). Bei der neuen Version ist die Adressangabe notwendig, da du damit theoretisch eine beliebige Anzahl an Plcsim-CPUs auf einem Rechner gleichzeitig simulieren kannst.

    [1] http://lostechies.com/gabrielschenke...s-on-64bit-os/

Ähnliche Themen

  1. Antworten: 12
    Letzter Beitrag: 27.06.2014, 12:23
  2. Antworten: 6
    Letzter Beitrag: 16.06.2013, 14:41
  3. Antworten: 2
    Letzter Beitrag: 22.02.2012, 17:04
  4. Antworten: 4
    Letzter Beitrag: 02.11.2010, 12:59
  5. Kommunikation zwischen S5 und S7
    Von Msyou im Forum Simatic
    Antworten: 19
    Letzter Beitrag: 10.02.2010, 09:47

Lesezeichen

Berechtigungen

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