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

Seite 10 von 31 ErsteErste ... 8910111220 ... LetzteLetzte
Ergebnis 91 bis 100 von 304

Thema: DotNetSiemensPLCToolBoxLibrary (LibNoDave) Zugriff auf Dual-Port RAM / FB15

  1. #91
    Registriert seit
    29.03.2004
    Beiträge
    5.800
    Danke
    144
    Erhielt 1.709 Danke für 1.240 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Werden die Daten übers Netzwerk übertragen? Wenn ja, dann einen Mitschnitt machen und hier einstellen.
    Die Genialität einer Konstruktion liegt in ihrer Einfachheit – Kompliziert bauen kann jeder.

    (Sergei Pawlowitsch Koroljow, sowjetischer Konstrukteur von Raketen und Weltraumpionier)

  2. #92
    Hans54216 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    06.04.2013
    Beiträge
    208
    Danke
    10
    Erhielt 5 Danke für 5 Beiträge

    Standard

    Zitat Zitat von Thomas_v2.1 Beitrag anzeigen
    Werden die Daten übers Netzwerk übertragen? Wenn ja, dann einen Mitschnitt machen und hier einstellen.
    Leider nicht. PLC und NC sind bei der 840d ja im selben Gehause.

  3. #93
    Registriert seit
    29.03.2004
    Beiträge
    5.800
    Danke
    144
    Erhielt 1.709 Danke für 1.240 Beiträge

    Standard

    Zitat Zitat von Hans54216 Beitrag anzeigen
    Leider nicht. PLC und NC sind bei der 840d ja im selben Gehause.
    Du könntest mal in die aufgerufenen FBs hineinschauen, und dort prüfen ob dort zumindest im Ansatz Telegrammaufbauten wiederzufinden sind die womöglich auch übers Netzwerk funktionieren könnten.
    Bzw. wenn der intern aufgerufene FB15 für die NCK-Kommunikation die wir hier gelöst haben verwendet wird, ist der Aufbau evtl. identisch, und es müssen nur entsprechende Werte für die Parameter eingetragen werden.
    Die Genialität einer Konstruktion liegt in ihrer Einfachheit – Kompliziert bauen kann jeder.

    (Sergei Pawlowitsch Koroljow, sowjetischer Konstrukteur von Raketen und Weltraumpionier)

  4. #94
    Hans54216 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    06.04.2013
    Beiträge
    208
    Danke
    10
    Erhielt 5 Danke für 5 Beiträge

    Standard

    Zitat Zitat von Thomas_v2.1 Beitrag anzeigen
    Du könntest mal in die aufgerufenen FBs hineinschauen, und dort prüfen ob dort zumindest im Ansatz Telegrammaufbauten wiederzufinden sind die womöglich auch übers Netzwerk funktionieren könnten.
    Bzw. wenn der intern aufgerufene FB15 für die NCK-Kommunikation die wir hier gelöst haben verwendet wird, ist der Aufbau evtl. identisch, und es müssen nur entsprechende Werte für die Parameter eingetragen werden.
    Ich vermute mal, dass der Aufbau der selbe ist.

    Die entscheidende Frage ist, wie bekommt man die Parameter.

    Gibt es vielleicht ne SoftSPS Demo, die den FB15 unterstützt oder hat jemand ne SoftSPS und kann nen Mitschnitt der Kommunikation zur NC machen?

    Aus dem FB5 definitiv nicht.

    FB5 "GetGUD":
    Code:
     
          L     DINO
          T     #C_LInstanzDb
          TAR2  
          T     #AR2_rett
          SRD   3
          T     #C_LInstanzOff
    
    
          L     W#16#8005
          T     #C_LBlockNo
          L     15
          T     #BpBlockNo
          UC    FB [#BpBlockNo]
    
    
          L     #C_LBlockFB15Return
          L     B#16#0
          ==I   
          SPBNB end
    
    
          UN    #Error
          SAVE  
    
    
    end:  LAR2  #AR2_rett
          BE
    Geändert von Hans54216 (29.03.2016 um 17:41 Uhr)

  5. #95
    Hans54216 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    06.04.2013
    Beiträge
    208
    Danke
    10
    Erhielt 5 Danke für 5 Beiträge

    Standard

    @Thomas_v2.1

    Ich hab ein Wireshark des File up/download gemacht. Kannst du dir das mal anschauen und mir sagen wie das Protokoll auszusehen hat?

    Beim Upload wird die Datei: "
    /_N_MPF_DIR/_N_TEILEPROG1_MPF" aus der NC gelesen.

    Beim Download wir die Datei: "
    /_N_MPF_DIR/_N_TEILEPROG2_MPF" zur NC übertragen.

    NC_File_transfer.rar


    PI-Dienst File Delete: Datei "/_N_MPF_DIR/_N_TEILEPROG2_MPF" aus NC löschen.

    NC_File_Delete.rar
    Geändert von Hans54216 (05.04.2016 um 11:56 Uhr)
    Zitieren Zitieren NC file transfer  

  6. #96
    Registriert seit
    29.03.2004
    Beiträge
    5.800
    Danke
    144
    Erhielt 1.709 Danke für 1.240 Beiträge

    Standard

    Also die Grundstruktur habe ich soweit denke ich mal.

    Evtl. muss ich aufgrund der Erkenntnisse mit deinen Logfiles einige Dinge im Wireshark-Dissector anpassen. Bei den üblichen SPS-Funktionen hatten nämlich bisher bestimmte Felder immer den gleichen Wert. Jetzt bei deinen Logfiles gibt es auch mal andere Werte zu sehen.

    Der "Upload" scheint die gleichen Methoden zu verwenden, die auch beim SPS Programmieren verwendet werden. Im Datenteil sind das (mehr oder weniger) zwei ASCII-Strings, mit einer Längenangabe vorweg. Wobei das erste Byte bei einer SPS noch bedeutet, in wie viele Teile der String zu zerlegen ist, dann folgt auch noch ein Null-Byte. Dieses wird z.B. beim Befehl zum Einketten der vorher hochgeladenen Bausteine angewendet. Bei deinem NC Upload gibt es auch ein vorangestelltes Byte mit dem Wert 3, aber der restliche String ist dann nur der Dateipfad den du hier angegeben hast, und ggf. ein P01 vorangestellt, also max. 2 Teile.

    Wie auch immer. Wenn du das in/mit libnodave komplett umgesetzt haben möchtest, musst du dich da schon selber reinfuchsen. Ohne direkten Zugriff auf eine NC, und dann noch über den Umweg über Jochen und seine Bibliothek sind wir andernfalls noch Jahre mit dem Pingpongspielen beschäftigt.

    Ich selber habe auch nur insofern Interesse daran, dass ich das in Wireshark korrekt anzeigen kann.
    Angehängte Dateien Angehängte Dateien
    Die Genialität einer Konstruktion liegt in ihrer Einfachheit – Kompliziert bauen kann jeder.

    (Sergei Pawlowitsch Koroljow, sowjetischer Konstrukteur von Raketen und Weltraumpionier)

  7. #97
    Registriert seit
    29.03.2004
    Beiträge
    5.800
    Danke
    144
    Erhielt 1.709 Danke für 1.240 Beiträge

    Standard

    Der String beim Upload ließe sich doch als 3 Teile interpretieren:
    1) P01
    2) _N_MPF_DIR/_N_TEILEPROG1_MPF
    3) _N_F_XFER

    Wobei _N_F_XFER nach meiner bisherigen Intepretation der PI-Service ist, beim SPS-Programmieren gibt es z.B. _INSE zum Einketten von Bausteinen. Theoretisch sollte der Aufbau beim Upload zwischen SPS und NC Kommunikation identisch sein, evtl. lassen sich dann doch Teile von den schon in libnodave vorhandenen Programmierfunktionen weiterbenutzen.
    Die Genialität einer Konstruktion liegt in ihrer Einfachheit – Kompliziert bauen kann jeder.

    (Sergei Pawlowitsch Koroljow, sowjetischer Konstrukteur von Raketen und Weltraumpionier)

  8. #98
    Hans54216 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    06.04.2013
    Beiträge
    208
    Danke
    10
    Erhielt 5 Danke für 5 Beiträge

    Standard

    Zitat Zitat von Thomas_v2.1 Beitrag anzeigen
    Wie auch immer. Wenn du das in/mit libnodave komplett umgesetzt haben möchtest, musst du dich da schon selber reinfuchsen. Ohne direkten Zugriff auf eine NC, und dann noch über den Umweg über Jochen und seine Bibliothek sind wir andernfalls noch Jahre mit dem Pingpongspielen beschäftigt.
    Danke schon mal!

    Ein bisschen hab ich mich schon eingearbeitet. Hab in der libnodave sowie der Toolbox von Jochen auch das schreiben auf NC Variablen erfolgreich eingebaut.
    Das reine programmieren und testen sollte kein Problem sein.
    Die Schwierigkeit sehe ich vor allem im Protokoll.

    Wenn du, Jochen oder wer sonst möchte mich dabei unterstützt, sollte es in einem überschaubaren Zeitraum funktionieren.

    Zitat Zitat von Thomas_v2.1
    Ich selber habe auch nur insofern Interesse daran, dass ich das in Wireshark korrekt anzeigen kann.

    Um das korrekt anzeigen zu können benötigst du ja den Aufbau des Telegramms. Was mir wiederum hilft das Telegramm nachzubilden und zu befüllen.
    Geändert von Hans54216 (11.04.2016 um 15:54 Uhr)

  9. #99
    Registriert seit
    29.03.2004
    Beiträge
    5.800
    Danke
    144
    Erhielt 1.709 Danke für 1.240 Beiträge

    Standard

    Wir können ja erstmal mit dem NC Upload anfangen, denn der Ablauf ist noch in Teilen mit dem identisch welche die SPS verwendet, außerdem bekomme ich dadurch evtl. auch noch eine etwas bessere Struktur in die SPS-Teile.

    Bei der SPS gibt es nämlich auch PI-Dienste. Aus dem SPS-Programm heraus lässt sich aber nur der für Stop und für Start aufrufen, darum fehlt mit da etwas der Vergleich.
    Wie aus diesem Thread ersichtlich:
    Sinumerik 840D: Kennt jemand den PI-Dienst "_N_F_PROR" oder nur "PROR"

    sind bei der NC noch weitere Funktionen möglich. Mir ist bisher unbekannt, wie die Parameter des Funktionsaufrufs auf dem Netzwerk übertragen werden. Laut den NC-Handbüchern existieren dabei nur zwei Typen von Parametern: INT oder STRING.

    In dem 1. Telegramm in deinem File Upload mit Function 0x28, wäre meine aktuelle Vermutung, dass die erste Längenangabe für die Länge der Argumente (gesamt) ist, und dann wie auch immer die einzelnen Argumente dort hintereinandergehängt werden. Als letztes kommt dann der PI-Dienst der aufgerufen werden soll als STRING.
    Oder der Partner entscheidet anhand des angegebenen PI-Dienstnamens, wie die Argumente zu interpretieren sind. Das wäre unschön, denn dann muss ich vorab alle Argumente und Argumenttypen kennen.

    Vielleicht kannst du noch von anderen PI-Dienstaufrufen mit diversen Parametern Mitschnitte machen, um hoffentlich damit herausfinden zu können wie die Argumente codiert werden. Dann lässt sich hoffentlich eine universelle Funktion schreiben, die einen PI-Dienstaufruf auf dem Netzwerk abschickt.
    Geändert von Thomas_v2.1 (11.04.2016 um 17:44 Uhr)
    Die Genialität einer Konstruktion liegt in ihrer Einfachheit – Kompliziert bauen kann jeder.

    (Sergei Pawlowitsch Koroljow, sowjetischer Konstrukteur von Raketen und Weltraumpionier)

  10. #100
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.758
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ich hab deinen commit auf github mal gemerged....

    Komm aber grad nicht wirklich dazu da was zu machen! Helfen kann iCH DIR NATÜRLICH GERNE (SOFERN ES MIR MÖGLICH IST)
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

Ähnliche Themen

  1. Zugriff auf WinAC RTX mit LibnoDave
    Von rm2001 im Forum Hochsprachen - OPC
    Antworten: 2
    Letzter Beitrag: 27.04.2012, 20:31
  2. Libnodave & VB.NET Zugriff auf geschützte Speicherbereiche
    Von KJ1234 im Forum Hochsprachen - OPC
    Antworten: 1
    Letzter Beitrag: 10.11.2007, 16:02
  3. Zugriff mit libnodave (unter Delphi) auf S7-CP443-1
    Von Frank im Forum Hochsprachen - OPC
    Antworten: 19
    Letzter Beitrag: 29.04.2007, 13:59
  4. Zugriff auf Siemens S7 per libnodave (MPI)
    Von Anonymous im Forum Hochsprachen - OPC
    Antworten: 15
    Letzter Beitrag: 02.11.2005, 17:09
  5. Fehler bei Zugriff auf COM- Port
    Von h_matthias im Forum Simatic
    Antworten: 16
    Letzter Beitrag: 08.03.2004, 22:14

Stichworte

Lesezeichen

Berechtigungen

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