Welcome to our new forum
All users of the legacy CODESYS Forums, please create a new account at account.codesys.com. But make sure to use the same E-Mail address as in the old Forum. Then your posts will be matched. Close

Anfänger Sucht Schieberegister

bertl71
2006-03-24
2006-08-30
  • bertl71 - 2006-03-24

    Hallo,

    benötige ein Schieberegister. In diesem Schieberegister müsste ich ein

    eigenes struct hinterlegen.

    bräuchte dringend Tipps oder hat schon jemand so etwas ähnlicheds implementiert ??

    gruß und vielen Dank

    bertl71

     
  • CuBe - 2006-03-24

    Selberbauen:

    Man nehme:

    1 Struct

    1 Array [0..wievielauchimmer] of Struct

    1 FB PushPop

    PushPop:

    1 VAR_IN_OUT Array of Struct

    1 VAR_IN Inhalt der eingegeben werden soll : Struct

    1 VAR_OUT Inhalt der Ausgegeben werden soll : Struct

    noch backen, dann benutzen...

     
  • J Schohaus - 2006-03-25

    Eine einfache Struktur für ein Schieberegister ist dieses Beispiel.

    Hat den Nachteil das der Baustein die Zykluszeit sehr belastet.

    Deshalb wird meistens ein Ringregister benutzt der aber wesentlich aufwendiger ist.

    VAR

    aDataStruct : ARRAY [1..100] OF myStruct ;

    xStart : BOOL ;

    i: INT;

    END_VAR

    ( um zu Schieben das bit xStart auf TRUE Setzen )

    IF xStart THEN

    FOR i := 0 TO 98 DO

    aDataStruct [100 - i] := aDataStruct [99 - i];
    

    END_FOR

    ( aDataStruct [1] := ??? ; neue Daten )

    xStart := FALSE ; ( Solange xStart TRUE darf aus einer anderen task nicht auf Daten zugegriffen werden Inkonsistenz )

    END_IF

     

    Related

    Talk.ru: 1

  • hugo - 2006-08-29

    schau dir mal die sachen von oscat (open source community for automation technology) an

    dort gibts eine freie bibliothek mit vielem in st und alles mit source code

    schieberegister findest du unter logic

     
  • Penzkofer - 2006-08-30

    Hallo

    Ich kann trotz intensiven Googeln nichts über OSCAT finden.

    Bitte einen Link posten.

    Grüße Paul

     
  • hugo - 2006-08-30
     

Log in to post a comment.