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

Seite 5 von 21 ErsteErste ... 3456715 ... LetzteLetzte
Ergebnis 41 bis 50 von 207

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

  1. #41
    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
    @Hans54216: Den Typ der in der Antwort kommt, habe ich noch nicht implementiert. Werde dies nachholen. Kannst Du mir per PN eine Emailadresse schicken, an die ich dann die Version zum Testen mailen kann? Ich hoffe, ich komme heute noch dazu ansonsten hast Du die Version morgen.
    Rainer Hönle
    DELTA LOGIC GmbH

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

  2. #42
    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: Mail ging raus
    Rainer Hönle
    DELTA LOGIC GmbH

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

  3. #43
    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

    Werte kommen im Buffer an, jedoch ist die Ausgabe noch nicht richtig.

    AGLink40_neu_dll_r35.png

  4. #44
    Registriert seit
    22.11.2007
    Beiträge
    731
    Danke
    6
    Erhielt 89 Danke für 62 Beiträge

    Standard

    sieht aus als ob die Werte von den Drives Endian-Verdreht kommen

    Code:
    byte[] Buff = { 65, 183, 210, 16 };
    Array.Reverse(Buff);
    float value = BitConverter.ToSingle(Buff, 0);

  5. #45
    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

    Ja, hab ich mir auch gedacht. Nach dem Umkehren des Arrays passt der Wert.

    Umwandeln des Buffer zum Ausgabewert erfolgt aber normalerweise durch das AGLink per "CreateString".

  6. #46
    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

    LLM scheint recht zu haben. Die "internen" NC-Variablen haben eine andere Byteorder als die "externen" Antriebsvariablen. Kannst Du mal Test machen, ob dies auch bei den anderen Typen (Word, Dword, Int, UInt, ...) in den Blöcken 0x80 bis 0x85 der Fall ist? Dann kann ich ein automatisches Drehen einbauen.
    Oder weiß einer hier im Forum etwas darüber, in welchen Bereichen (oder bei welchen Typen) die Drehung erfolgen muss?
    Rainer Hönle
    DELTA LOGIC GmbH

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

  7. #47
    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

    Hab es nur für Block 0x82 getestet. Typen: int16, int32, uint32, float

    Da musste der Puffer jeweils umgekehrt werden.

    Lesen/Schreiben scheint somit immer Byte-weise zu funktionieren.

  8. #48
    Registriert seit
    22.11.2007
    Beiträge
    731
    Danke
    6
    Erhielt 89 Danke für 62 Beiträge

    Standard

    hast du auch ein Wireshark-Log davon?

  9. #49
    Registriert seit
    22.11.2007
    Beiträge
    731
    Danke
    6
    Erhielt 89 Danke für 62 Beiträge

    Standard

    Sorry - das Wireshark-Log bringt eh nicht soo viel denn AGLink kann die Werte ja schon lesen - muss also die internen Typen schon kennen

    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

    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?
    Geändert von LowLevelMahn (13.11.2014 um 17:15 Uhr)

  10. #50
    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
    Mal so nebenbei:
    Wie ist denn der Aufbau der Variablen mit dieser Syntax ID 0x82?

    Was ich aus den bereitgestellten Logfiles und den Screenshots entnehmen konnte:
    Code:
    0: Länge 8 bytes
    1: aa	a2	??
    
    2: bb	00	
    3: bb	02	Parameternummer
    
    4: cc	00
    5: cc	01	??
    
    6: dd	82	??
    7: ee	01	??
    Wäre schön wenn das plugin das auch richtg entschlüsseln könnte. Ich habe leider kein Zugriff auf die entsprechende Hardware.

Ä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
  •