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

Ergebnis 1 bis 5 von 5

Thema: Struct aus Bytes auf Ausgänge abbilden

  1. #1
    Registriert seit
    26.05.2009
    Beiträge
    14
    Danke
    1
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich habe hier einen Profibusteilnehmer, mit dem ich teste und der evtl. später als Serienmodul verwendet werden soll.
    Um diesen zu konfigurieren muss ich ihm 16 Byte übermitteln.
    Mit einem einfachen Testprogramm, bei dem ich die entsprechenden Hex-Werte direkt in die ABs geschrieben habe, hat das auch funktioniert.
    Nun will ich aber in der fertigen Version nur noch das Startbyte an den Call antragen und nicht mehr die 16 einzelnen ABs. Sprich, der Teilnehmer ist Adressiert auf AB201 bis 216, ich gebe dem FB im Call die Information mit, dass das erste Byte auf 201 liegt und er schiebt mir das Abbild eines Structs mit 16 Byte von der Startadresse an automatisch auf die Ausgänge.
    Gibt es eine Möglichkeit, dieses Struct direkt auf die entsprechenden Ausgangsregister zu laden?
    Dachte am Anfang, BLKMOV könnte das, der kann aber nur als Quellen Ein- und Ausgänge Blockweise verschieben.

    Danke
    Zitieren Zitieren Struct aus Bytes auf Ausgänge abbilden  

  2. #2
    Registriert seit
    25.05.2009
    Ort
    Raum Zürich CH
    Beiträge
    85
    Danke
    15
    Erhielt 15 Danke für 15 Beiträge

    Standard

    Da es sich beim Ziel um einen Profibusteilnehmer handelt, würde ich das
    mit dem SFC15 (DPWR_DAT) machen:
    Code:
     
    CALL "DPWR_DAT"
      LADDR :=W#16#C9                 //Adresse 201
      RECORD :=P#DB10.DBX 0.0 BYTE 16 //Pointer auf die Struktur
      RET_VAL:=#dummy
    Gruss SW-Mech

  3. #3
    Registriert seit
    11.10.2006
    Ort
    Verden (Aller)
    Beiträge
    532
    Danke
    31
    Erhielt 58 Danke für 49 Beiträge

    Standard

    Zitat Zitat von Kaffeesüchtig Beitrag anzeigen
    Dachte am Anfang, BLKMOV könnte das, der kann aber nur als Quellen Ein- und Ausgänge Blockweise verschieben.

    Danke

    Erst mal stimme ich SW-Mech vorbehaltlos zu.

    Aber zum einen verschiebt die SFC20 nicht, sondern kopiert, auch wenn das Ding Blokmove heißt.
    Und zum anderen, habe ich durchaus auch schon DB- und Merkerbereiche als Quelle parametriert.
    "Ein lahmer Drecksplanet ist das, ich habe nicht das geringste Mitleid" (Prostetnik Vogon Jeltz)

  4. #4
    Kaffeesüchtig ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    26.05.2009
    Beiträge
    14
    Danke
    1
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Hi,

    @SW-Mech:
    Muss das mit dem SFC15 mal in Ruhe durchprobieren. Ein erster Schnellschuss hat nicht geklappt.

    @derWestermann:
    Als Quelle kann man alles definieren, aber als Ziel gehen keine Ein- und Ausgänge. Und genau da war mein Problem.

    Ich komme erst am Freitag dazu, aber ich schaue mir den SFC15 noch mal in Ruhe durch.

    Gruß

  5. #5
    Registriert seit
    25.11.2008
    Ort
    Westpfalz
    Beiträge
    1.550
    Danke
    187
    Erhielt 212 Danke für 186 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Un wenn du nich immer die doofen Hexzahlen am SFC15 nehmen willst schreibst so (Variablendeklaration nicht vergessen):

    L inAddr_int //Also an Eingangsvariable 201 angeben
    T tmpAddr_hex //201 wird automatisch in die als "word" deklarierte temporäre Variable geschoben

    Zitat Zitat von SW-Mech Beitrag anzeigen
    Code:
     
    CALL "DPWR_DAT"
      LADDR :=tmpAddr_hex                 //Adresse 201
      RECORD :=P#DB10.DBX 0.0 BYTE 16 //Pointer auf die Struktur
      RET_VAL:=#dummy
    and we all support the team (S.King - Die Arena)

Ähnliche Themen

  1. Antworten: 5
    Letzter Beitrag: 08.04.2011, 14:36
  2. 32Bit Datentyp auf 2x16Bit abbilden
    Von Itus im Forum CODESYS und IEC61131
    Antworten: 4
    Letzter Beitrag: 25.08.2008, 06:55
  3. Antworten: 2
    Letzter Beitrag: 14.03.2008, 00:25
  4. DB-Struct in DB-Struct transferieren
    Von Marvin II im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 20.11.2007, 08:29
  5. Antworten: 11
    Letzter Beitrag: 05.12.2006, 12:50

Lesezeichen

Berechtigungen

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