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

Seite 6 von 21 ErsteErste ... 4567816 ... LetzteLetzte
Ergebnis 51 bis 60 von 207

Thema: 840D sl NCU Variablen und Antriebsparameter lesen/schreiben

  1. #51
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.224
    Danke
    630
    Erhielt 955 Danke für 769 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Thomas_v2.1 Beitrag anzeigen
    Mal so nebenbei:
    Wie ist denn der Aufbau der Variablen mit dieser Syntax ID 0x82?
    Schau doch mal in die ACCON-AGLink-Header oder in die AWL-Quelle oben
    Rainer Hönle
    DELTA LOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

  2. #52
    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 LowLevelMahn Beitrag anzeigen
    Sorry - das Wireshark-Log bringt eh nicht soo viel denn AGLink kann die Werte ja schon lesen - muss also die internen Typen schon kennen
    Kannst du oder jemand hier schreiben, Screenshots machen, wie ich das Wireshark-Log lesen kann? Speziell wie ich auf den eNCK_Block oder den Rückgabewert z.B. 22.0°C finde.

    wäre schön (und wenn du kaum Zeit/Lust hast reicht auch nur ein int32 in jedem Block) wenn du noch die anderen Blöcke testen könntest
    Schonmal Danke für die AGLink-Bug Meldung denk dann an dich wenn ich mal Antriebsdaten lesen muss
    Wenn ich weiß für was die anderen Blöcke sind, kann ich diese Testen.

    Zitat Zitat von LowLevelMahn Beitrag anzeigen
    und was fehlt dir dann noch?

    Beispiel:

    Code:
    V1_M_r0035_35:
       STRUCT
       SYNTAX_ID : BYTE  := B#16#82;
       bereich_u_einheit : BYTE := B#16#A1;
       spalte : WORD := W#16#23;
       zeile : WORD := W#16#1;
       bausteintyp : BYTE := B#16#1A;
       ZEILENANZAHL : BYTE := B#16#1;
       typ : BYTE := B#16#8;
       laenge : BYTE := B#16#4;
       END_STRUCT ;
    Für AGLink muss man bereich_u_einheit in Breich und Einheit zerlegen

    aus bereich_u_einheit = 0xA1 =>0b10100001
    Bitmaske: aaauuuuu
    a = bit [5-7] Area ==> 0b101 => 5
    aus der Datei AGL_Defines.h im enum NCK_Area ergibt AGLink.Area = eNCK_AreaFeedDrive
    u = bit [0-4] Unit ==> 0b00001 => 1
    ergibt die AGLink.Unit = 1

    Spalte = 0x23 => AGLink.Column: 35
    Zeile = 1 => AGLink.Row = 1

    bausteintyp => 0x1A
    aus der Datei AGL_Defines.h im enum NCK_Block ergibt AGLink.Block = eNCK_BlockM

    typ == 0x8 => eNCK_MDB_Float32

    damit kannst du jetzt mit API-Guide die Variable lesen

    aber man sollte vielleicht noch einen AWL, NCVAr-DB oder var-Quellen-Parser anbieten...
    Laut dem Eintrag bist du von Bausteintyp => 0x1A auf eNCK_BlockM gekommen.
    Bausteintyp ist auch M. Variable wird aber per eNCK_Block0x82 gelesen.

    Hab mir ein bisschen Code geschrieben, der die Werte der .awl Quelle für AGLink umwandelt. Funktioniert aber nur bei NCK oder Kanal MDs. Bei Area Drives scheint Unit und Block anders vergeben zu werden.

    Und kannst du nochmal genau erklären wo die Variablen-Parameter genau herkommen ich hab die in meinem NC-Varselektor damals nicht gefunden (war irgendeine 2013 Version) - oder
    öffnest du eine spezielle Datenbank?
    Ich öffne die normale Datenbank, die beim NC-Var-Selector dabei ist. (ncv_SinamicsServo.mdb)

    NC-VAR-Selector.pngncv_SinamicsServo _ Datenbank.png

  3. #53
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.224
    Danke
    630
    Erhielt 955 Danke für 769 Beiträge

    Standard

    Zitat Zitat von Hans54216 Beitrag anzeigen
    Laut dem Eintrag bist du von Bausteintyp => 0x1A auf eNCK_BlockM gekommen.
    Bausteintyp ist auch M. Variable wird aber per eNCK_Block0x82 gelesen.
    Das sind unterschiedliche Variablen in unterschiedlichen Blöcken und unterschiedlichen Units.
    Rainer Hönle
    DELTA LOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

  4. #54
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.224
    Danke
    630
    Erhielt 955 Danke für 769 Beiträge

    Standard

    @Hans54216: Kannst Du mit dem NC-Var-Selektor so ein Massen-Export für AWL oder Var-Dateien machen und damit einfach alles exportiert was so da ist. Ich kann dann schauen, ob ich
    darin die Blöcke 0x80-0x85 finde und ggf. auf deren Bedeutung schließen?
    Rainer Hönle
    DELTA LOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

  5. #55
    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 Rainer Hönle Beitrag anzeigen
    @Hans54216: Kannst Du mit dem NC-Var-Selektor so ein Massen-Export für AWL oder Var-Dateien machen und damit einfach alles exportiert was so da ist. Ich kann dann schauen, ob ich
    darin die Blöcke 0x80-0x85 finde und ggf. auf deren Bedeutung schließen?
    Mit dem NC-Var-Selektor kann man keinen richtigen Massen-Export machen. Mann muss jede Variable einzeln anklicken und zur Auswahl hinzufügen.
    Die Auswahl wird dann jedoch in eine Datei exportiert. Inhalt der .var Datei entspricht der Auswahl aus der Datenbank.

    Ich schick dir die Datenbanken. Somit hast du jede Menge Maschinendaten. Informationen zu den MDs gibts auf DocOnCD oder DocOnWeb.

  6. #56
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.224
    Danke
    630
    Erhielt 955 Danke für 769 Beiträge

    Standard

    @hans54216: Habe Dir ein Update von ACCON-AGLink geschickt, in dem die Variablen mit den neuen Typen entsprechend gedreht werden. Bitte mal testen und rückmelden, ob jetzt alles ok ist. Danke.
    Rainer Hönle
    DELTA LOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

  7. #57
    Registriert seit
    29.03.2004
    Beiträge
    5.741
    Danke
    143
    Erhielt 1.687 Danke für 1.226 Beiträge

    Standard

    Zitat Zitat von Hans54216 Beitrag anzeigen
    Kannst du oder jemand hier schreiben, Screenshots machen, wie ich das Wireshark-Log lesen kann? Speziell wie ich auf den eNCK_Block oder den Rückgabewert z.B. 22.0°C finde.
    Ich habe dir dazu mal eine kleine Anleitung erstellt, ich hoffe es ist einigermaßen nachvollziehbar. Für die Screenshots habe ich das von dir hier im Forum angehängte Logfile verwendet.
    Angehängte Dateien Angehängte Dateien

  8. Folgende 2 Benutzer sagen Danke zu Thomas_v2.1 für den nützlichen Beitrag:

    Hans54216 (17.11.2014),Rainer Hönle (16.11.2014)

  9. #58
    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

    @Rainer Hönle: Hatte heute nicht so viel Zeit zum Testen. Hab den Parameter r0035 gelesen. Dieser scheint richtig anzukommen.

    @Thomas_v2.1: Vielen Dank für die ausführliche Anleitung!

  10. Folgender Benutzer sagt Danke zu Hans54216 für den nützlichen Beitrag:

    Rainer Hönle (17.11.2014)

  11. #59
    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

    @Rainer Hönle: Hatte heut ein wenig mehr Zeit zum Testen.
    Vom Lesen her sieht alles gut aus. Hast du beim schreiben der Variable auch das
    Umkehren eingebaut? Buffer muss jedenfalls noch Umgekehrt werden, bevor der Wert richtig ankommt.

  12. Folgender Benutzer sagt Danke zu Hans54216 für den nützlichen Beitrag:

    Rainer Hönle (22.11.2014)

  13. #60
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.224
    Danke
    630
    Erhielt 955 Danke für 769 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Habe das beim Schreiben noch nicht eingebaut. Wollte erst abwarten, ob das Lesen funktioniert. Beim Schreiben hab ich allerdings die Herausforderung zu erkennen, ob die Variablen gedreht werden müssen oder nicht. Beim Lesen erkenne ich das am Typ. Beim Schreiben muss ich mir da noch etwas dazu überlegen. Aber da fällt mir sicher noch etwas ein. Es kann allerdings sein, dass ich diese Änderung erst nach der SPS-Messe einpflegen kann.
    Rainer Hönle
    DELTA LOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

Ähnliche Themen

  1. OPC Variablen via C++ lesen und schreiben
    Von AkrapovicSPS im Forum Hochsprachen - OPC
    Antworten: 4
    Letzter Beitrag: 12.09.2013, 08:38
  2. Variablen schreiben und lesen aus TwinCat3-Projekt
    Von patzer103040 im Forum CODESYS und IEC61131
    Antworten: 5
    Letzter Beitrag: 08.04.2013, 12:11
  3. C#-Variablen in TwinCAT lesen und Schreiben
    Von kcirtap im Forum CODESYS und IEC61131
    Antworten: 2
    Letzter Beitrag: 29.11.2010, 10:18
  4. GUDs lesen und schreiben 840D
    Von PG710 im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 20.12.2008, 12:12
  5. Antworten: 0
    Letzter Beitrag: 08.11.2008, 08:36

Stichworte

Lesezeichen

Berechtigungen

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