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

Seite 2 von 8 ErsteErste 1234 ... LetzteLetzte
Ergebnis 11 bis 20 von 80

Thema: mit libnodave komplette Bausteine sichern

  1. #11
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Tupo13
    Funktioniert es denn bei einer 300?
    Ja. Außer wenn man SDBs in falscher Reihenfolge einspielt oder wenn der Speicher nicht reicht. Über TCP/IP habe ich allerdings nur mit einer VIPA Speed7 getestet und das ist schon eine Weile (ca. 1 Jahr?) her.
    Du probierst es immer noch mit reinem ISO??
    Der Drei-Wege-Handshake baut die Verbindung auf
    Syn an die SPS
    Syn und Ack von Sps
    Ack an SPS
    Das macht bei dir glaube ich initialize
    SYN und ACK klingt aber nach TCP. Bei ISO over TCP macht das wohl das Betriebssystem, wenn ein socket geöffnet bzw. connect() aufgerufen wird.

    Nein. Du kannst nur in den Quellcode schauen oder die debug-Ausgabe von Libnodave mit dem vergleichen, was PG und S7 miteinander "reden".
    Na ja das mache ich ja auch, aber es sind ja um die 120 Pakete die pro Baustein hinundhergeschickt werden.
    Also PDUs (Pakete der S7-Kommunikation sind es für einen kurzen Baustein nur einige wenige:
    PG an SPS: Ich will dir den Baustein OB1 mit der Länge 123 schicken (Funktionscode 0x1A)
    SPS an PG: ok
    SPS an PG: gib mir den Anfang (Funktionscode 0x1B)
    PG an SPS: Anfang vom Baustein + Kennung, ob noch mehr folgt
    Falls noch was folgt SPS an PG: gib mir mehr (Funktionscode 0x1B)
    PG an SPS: Fortsetzung Baustein + Kennung, ob noch mehr folgt
    Falls nix mehr folgt SPS an PG: ok, laden beendet (Funktionscode 0x1C)
    PG an SPS: Übernimm den Baustein ins Programm (Funktionscode 0x28 +Schlüsselwort _INSE)
    Das müßtest du irgendwie auch in der Kommunikation PG<->SPS wiederfinden. Sonst lade mal einen kurzen OB1 und schick mir die mitgeschnittenen Pakete.

  2. #12
    Tupo13 ist offline Benutzer
    Themenstarter
    Registriert seit
    05.09.2005
    Beiträge
    43
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    @ Zottel Danke

    Also ich verwende TCP/IP - kein ISO over TCP

    Wie verschickst du denn in libnodave deine Packete?

    Ich habe dir dann noch die aufgezeichneten Pakete OB1
    geschickt

    Gruß Tupo13

  3. #13
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard

    Also ich verwende TCP/IP - kein ISO over TCP
    Wie das? Welche Port-Nummer?
    Wie verschickst du denn in libnodave deine Packete?
    Ganz normal, per write auf ein verbundenes socket...

  4. #14
    Tupo13 ist offline Benutzer
    Themenstarter
    Registriert seit
    05.09.2005
    Beiträge
    43
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Wie das? Welche Port-Nummer?
    Wie libnodave auch benutze ich den Port 102 der SPS.
    Mein Sourceport ist ein zufälliger der über 10000 liegt.

    Momentan verschicke ich jedes Paket einzeln, ich berechne die Checksummen selber, zähle die Sequenznummern hoch...

    aber so wie es aussieht werde ich dann wohl auch auf sockets umsteigen müssen

    Hast du meine email bekommen?

    Gruß Tupo13

  5. #15
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard

    Zitat Zitat von Tupo13
    Wie libnodave auch benutze ich den Port 102 der SPS.
    Also ist es ISO over TCP.
    Mein Sourceport ist ein zufälliger der über 10000 liegt.
    Das ist normal.
    Momentan verschicke ich jedes Paket einzeln, ich berechne die Checksummen selber, zähle die Sequenznummern hoch...
    Eine Quälerei und möglicherweise kollidiert es mit anderen TCP/IP-Verbindungen, die andere Programme über das OS abwickeln.
    aber so wie es aussieht werde ich dann wohl auch auf sockets umsteigen müssen
    Solltest du auf jeden Fall tun. Könnte zur Abwertung deiner Diplomarbeit führen, wenn dur er IP und TCP nachbildest, weil du nicht erkannt hast, daß das im OS schon drin ist...
    Hast du meine email bekommen?
    Noch nicht. web.de scheint ein Problem mit dem login zu haben.

  6. #16
    Tupo13 ist offline Benutzer
    Themenstarter
    Registriert seit
    05.09.2005
    Beiträge
    43
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    @ Zottel
    Ok vielen Danke für die Hinweise - werde mich dann an das Socket-Lernen machen

    Ich dachte immer ISO over TCP sei das Protocoll mit dem S5 (oder auch S7 SPSen ohne IP-Adresse) komunizieren.
    Sobald ein IP Header im Protocol enthalten ist - dachte ich ist es TCP/IP
    ist das etwa falsch?

  7. #17
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard

    Zitat Zitat von Tupo13
    @ Zottel
    Ok vielen Danke für die Hinweise - werde mich dann an das Socket-Lernen machen
    Da kannst du eigentlich allen nötigen Code in libnodave finden.
    [/quote]
    Ich dachte immer ISO over TCP sei das Protocoll mit dem S5 (oder auch S7 SPSen ohne IP-Adresse) komunizieren.
    [quote]
    Nee das war ISO.
    Sobald ein IP Header im Protocol enthalten ist - dachte ich ist es TCP/IP
    ist das etwa falsch?
    Bei ISO over TCP packen sie das ISO-Paket als "Nutzlast" in ein IP-Paket.

  8. #18
    Tupo13 ist offline Benutzer
    Themenstarter
    Registriert seit
    05.09.2005
    Beiträge
    43
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ok kapiert danke

    Code:
    Da kannst du eigentlich allen nötigen Code in libnodave finden.
    Ich habe MS VC++ kann ich damit den Sourcecode von libnodave.dll anschauen oder vielleicht sogar kompilieren? Das wäre ja super

  9. #19
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard

    Zitat Zitat von Tupo13
    Ok kapiert danke

    Code:
    Da kannst du eigentlich allen nötigen Code in libnodave finden.
    Ich habe MS VC++ kann ich damit den Sourcecode von libnodave.dll anschauen oder vielleicht sogar kompilieren? Das wäre ja super
    Ja sicher kannst du das. Aber bevor du die graphische Oberfläche "anwirfst:" Der Sourcecode braucht zwei conditional defines und ein weiteres, wenn er als .dll kompiliert wird. Es sind diverse Makefiles dabei, die alles von der Kommandozeile aus kompilieren, weil ich erstens kein Visual Studio habe und zweitens alles (Linux, Windows-Bibliothek, Testprogramme, .NET.dll) in einem Rutsch per Skript auf einer Linux-Kiste kompiliere.
    MAKEFILE.VC sollte mit dem Make-Tool von VC++ laufen.
    Es könnte aber seien, daß irgendwas nicht up to date ist. Dann mußt du schauen, was in MAKEFILE.VC.WINE steht; das ist das, womit ich die Windows-Teile übersetze.

  10. #20
    Tupo13 ist offline Benutzer
    Themenstarter
    Registriert seit
    05.09.2005
    Beiträge
    43
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Also ich habe das mit dem Makefile nicht hinbekommen
    keine ahnung an was es liegt. Er bringt mir jedesmal Fatal Error

    In der openSocket.c verbindest du dich zu einem Socket oder?

Ähnliche Themen

  1. Komplette Bausteine gelöscht
    Von Waelder im Forum Simatic
    Antworten: 11
    Letzter Beitrag: 26.04.2017, 10:05
  2. Libnodave und schreibgeschützte Bausteine?
    Von Cliff im Forum Hochsprachen - OPC
    Antworten: 14
    Letzter Beitrag: 20.01.2011, 18:46
  3. DB's in SQL DB sichern? Libnodave?
    Von H00K im Forum Hochsprachen - OPC
    Antworten: 4
    Letzter Beitrag: 21.12.2009, 11:54
  4. Bausteine mit Libnodave übertragen
    Von ronnie.b im Forum Hochsprachen - OPC
    Antworten: 0
    Letzter Beitrag: 08.03.2008, 10:58
  5. Antworten: 0
    Letzter Beitrag: 23.05.2006, 10:56

Lesezeichen

Berechtigungen

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