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

Ergebnis 1 bis 1 von 1

Thema: [ S7-200 ] libnodave mit CP 243-1

  1. #1
    Registriert seit
    29.07.2005
    Beiträge
    82
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hardware: S7-200 mit 224XP CPU und 256kB EEPROM
    Software: libnodave-java-0.1 mit Sun 1.6 SDK

    Wenn ich versuche mittels
    dc.readBytes(Nodave.DB, 1, 2200, 180, null);
    180 Bytes ab VB2000 zu lesen bekomme ich die folgende Fehlermeldung:

    --- 8< ---------------------------------------------------------

    enter TCP.Exchange
    send packet 03,00,00,1f,02,f0,80,32,01,00,00,00,00,00,0e,00,00,04,01,12,0a,10,0
    2,00,01,00,01,84,00,4b,60,
    Interface.write 03,00,00,1f,02,f0,80,32,01,00,00,00,00,00,0e,00,00,04,01,12,0a,1
    0,02,00,01,00,01,84,00,4b,60,
    Interface.read
    got 4bytes
    Interface.read
    got 189bytes
    PDU header 04,01,ff,04,05,a0,07,08,19,06,
    PDU header 04,01,ff,04,05,a0,07,08,19,06,
    plen: 1800 dlen: 6406
    Parameter 1d,2e,00,00,01,07,08,19,06,1d,2f,00,00,02,07,08,19,06,1d,30,00,00,03,0

    ... eine ganze Menge HexWerte ...

    Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2048
    at libnodave.Nodave.dump(Nodave.java:186)
    at libnodave.PDU.dump(PDU.java:206)
    at libnodave.PDU.setupReceivedPDU(PDU.java:317)
    at libnodave.S7Connection.readBytes(S7Connection.java:192)
    at MyTest.run(MyTest.java:140)
    at MyTest.main(MyTest.java:203)

    --- 8< ---------------------------------------------------------

    Frage: Woran liegt das? Wenn ich weniger als 100 Byte einlese funktioniert der Aufruf nämlich einwandfrei. Weiss da jemand Rat? In der Doku steht wohl, dass die max. Anzahl einzulesender Bytes von der PDU Größe abhängt. Normalerweise liegt die aber bei 240 Byte (ca. 220 Byte ohne Header). Das sollte also kein Problem sein. Oder hat die S7-200 mit 224XP CPU eine kleinere PDU Größe. readBytes liefert übrigends als Fehlercode 0 zurück (= alles o.k.).

    Frage: Ich hab mit dem 256KB EEPROM und dem Rezepturassistenten ein eigenes DataLog implementiert. Zum auswerten übertrage ich die kompletten 256kB per libnodave an den PC. Rechnen wir mal mit 220 Byte PDU Größe, dann macht das 256*1024/220= ca. 1200 readBytes Aufrufe. Da der Rezepturassistent auch nur max. 212 Byte pro Rezept akzeptiert bin ich gezwungen Blockweise aus dem EEPROM in die SPS zu lesen und dann Blockweise per libnodave an den PC übertragen. Da fallen also noch ein paar Synchronisationsaufrufe an. Meine Tests ergaben im BEST CASE ca. 15 Min. für die 256 kB. Das lässt sich nicht irgendwie beschleunigen, oder? Mit Beschleunigung meine ich eine drastische Beschleunigung, z.B. auf 15 Sek. oder so.

    Frage: Mit dem Ethernet-Assistenten von MicroWin lässt sich ja das CP 243-1 Modul konfigurieren. Dort gibt es auch die Möglichkeit IP/Gateway per BOOTP zu beziehen. Heute gängige Router machen aber nur DHCP und kein BOOTP. Weiss jemand ob das CP 243-1 Modul irgendwie mit einem DHCP-Server laufen tut? DHCP soll ja angeblich zu BOOTP abwärtskompatibel sein. Aber irgendwie funktioniert das bei mir nicht.
    Geändert von caret (25.08.2007 um 07:56 Uhr)
    Zitieren Zitieren [ S7-200 ] libnodave mit CP 243-1  

Ähnliche Themen

  1. Antworten: 0
    Letzter Beitrag: 09.09.2010, 00:27
  2. ÄÖnderungen am libnodave.net.cs File von libnodave
    Von Jochen Kühner im Forum Hochsprachen - OPC
    Antworten: 5
    Letzter Beitrag: 12.05.2010, 16:56
  3. LibNoDave unter VB.Net ohne libnodave.net.dll
    Von Earny im Forum Hochsprachen - OPC
    Antworten: 2
    Letzter Beitrag: 09.03.2010, 18:57
  4. libnodave: Woher kommt die "libnodave.net.dll"?
    Von Thomas_v2.1 im Forum Hochsprachen - OPC
    Antworten: 2
    Letzter Beitrag: 10.11.2008, 12:07
  5. VB.Net und Libnodave
    Von oliverlorenz im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 07.05.2008, 10:54

Lesezeichen

Berechtigungen

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