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

Ergebnis 1 bis 7 von 7

Thema: Boolschen Array mit einem Bool auf True setzen bzw. auf False setzen

  1. #1
    Registriert seit
    25.02.2010
    Beiträge
    93
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich habe eine Bool Array Var. , diese besteht aus 90 Boolschen Werten, es sind eine Art Schalter....ist es möglich , dies z.B. über eine SEL Funktion kompl. auf
    einmal mit 0 bzw. 1 zu überschreiben?

    Wenn ja , wie muss ich vorgehen ?
    Würde dies gerne in FUP machen, oder es hat für jemand eine ST Anweisung???

    Ich danke euch.

    Grüße
    Step7N
    Zitieren Zitieren Boolschen Array mit einem Bool auf True setzen bzw. auf False setzen  

  2. #2
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.163
    Danke
    921
    Erhielt 3.286 Danke für 2.655 Beiträge

    Standard

    - in einer Schleife jedem Array-Element FALSE zuweisen
    - ein anderes Array (mit alles FALSE) auf das Array kopieren
    - eine MemSet- oder Fill-Funktion benutzen, falls es für die Steuerung eine solche Funktion gibt
    - eine Reset-Funktion zufügen, da wo die Array-Elemente bisher bearbeitet werden

    Wie kommst Du auf die SEL-Funktion? Das ist eine ziemlich umständliche Variante, MOVE wäre wohl einfacher.
    Was ist eigentlich "eine Art Schalter"?

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  3. #3
    Registriert seit
    15.08.2011
    Beiträge
    383
    Danke
    2
    Erhielt 73 Danke für 71 Beiträge

    Standard

    In FUP (dieser seltsamen Malsprache) ist SEL ja die einzige Möglichkeit, eine Art IF-Bedingung zu implementieren....wenn Step7N also noch nicht viel Erfahrung in ST hat, wirds wohl daran liegen.

  4. #4
    Registriert seit
    25.02.2010
    Beiträge
    93
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    naja ich muss ja das alles so machen, das es jeder lesen kann.
    Nicht jeder kann ST.

    In ST wäre es wohl das einfachste, aber ich würde halt gerne wissen, wie es in FUP geht.
    Aber mit der Schleife ist es wohl die bequemste Art.

  5. #5
    Registriert seit
    27.06.2009
    Ort
    am Nordharz
    Beiträge
    3.713
    Danke
    443
    Erhielt 914 Danke für 739 Beiträge

    Standard

    Zitat Zitat von Step7Neuling Beitrag anzeigen
    Aber mit der Schleife ist es wohl die bequemste Art.
    Zitat Zitat von PN/DP Beitrag anzeigen
    - ein anderes Array (mit alles FALSE bzw. TRUE) auf das Array kopieren
    Ich würde diesen Vorschlag von Harald für am Bequemsten Halten, da es sich um eine einzige Zuweisung handelt.
    Die beiden Arrays mit alles TRUE bzw. FALSE werden ja nur einmal beim Programmieren eingerichtet.
    Die Schleife müsste jedes Mal durchlaufen werden.

  6. #6
    Registriert seit
    13.10.2013
    Ort
    shertogenbosch niederlande
    Beiträge
    120
    Danke
    0
    Erhielt 8 Danke für 6 Beiträge

    Standard

    such mal in oscat.de da geht es mit pointer zum array.
    wenn die variabelen alle unterschieldiche nahmen haben ja leider dan muss es in regeln gemacht werden.
    mann kan auch schreiben aus:=AND(eingang,NOT test) fur null
    und aus1:=OR(eingang,test) fur eins.
    dan brauchst du nur einen bit zu setzen um alle eingange zu setzen.
    ich benutzte dies fur eine testknopf um zu sehen ob alle warnlampen functionieren.

  7. #7
    Registriert seit
    04.02.2013
    Beiträge
    271
    Danke
    12
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Wenn es ein Array ist und du nicht extra noch zwei Array erstellen willst, dann mache es doch so:
    Code:
    FOR Counter := 1 TO 90 BY 1 DO
              Testarray[Counter] := TRUE; // oder FALSE;
    END_FOR

Ähnliche Themen

  1. Antworten: 10
    Letzter Beitrag: 01.08.2014, 06:17
  2. Step 7 Bool Variable in einem DB auf false setzen
    Von Stephan25 im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 14.05.2014, 16:39
  3. DB20 (0.0 BOOL) als Ausgang bzw. TRUE setzen wie?
    Von superkato im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 11.05.2011, 00:41
  4. Antworten: 2
    Letzter Beitrag: 15.02.2011, 19:38
  5. bool Eingang "True" setzen - wie??
    Von hugo_83 im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 07.07.2010, 22:33

Lesezeichen

Berechtigungen

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