sps_klassik
Level-2
- Beiträge
- 769
- Reaktionspunkte
- 91
Machbar ist fast alles, nur die Übersichtlichkeit/Wartungsfreundlichkeit und die schnelle Bearbeitung von dritten wird darunter leiden.Soviele Verknuepfungen kann man ja auch mit Zwischenvariablen machen?
Vor allem vergisst man oft, das man boolesche Ausdruecke gar nicht mit if Orgien vergewaltigen muss.
Ich kann ja hinten dran immer noch if then Konstrukte verwenden.
Aber die 11 hätte die "doppelthöchste" Priorität (wegen zweimal die 1) !?Ein Logiker würde da allerdings nicht uneingeschränkt zustimmen, dass 2 die 2. höchste Priorität hat : D Wir wissen nur, dass die 1 die höchste Priorität hat! ;P
Bi. ch bei dir.Machbar ist fast alles, nur die Übersichtlichkeit/Wartungsfreundlichkeit und die schnelle Bearbeitung von dritten wird darunter leiden.
Ich verstehe unser Handwerk so, wir erstellen kein Laufzeit optimierten Code sondern fangen jeglichen falschen Zustand ab und versuchen eine Programm zu erstellen welches von anderen Programmierern möglichst intuitiv verstanden werden kann.
Zwischvariablen sind ein gutes Mittel wenn diese logisch sind z.B.
alleTürenOffen:=Tür1offen & Tür2offen …
Bi. ch bei dir.
Allerdings ist empfinde ich die Verknüpfung von 40 Bits egal in welcher Sprache, als unübersichtlich
Back to the roots:A:= (B OR A) AND NOT C
(mit Klammer = SR, ohne Klammer = RS),
in codesys gibt dies ohne dass man IF/ELSE Konstrukt bilden mussEtwas Offtopic, aber ich wollte anmerken, dass das logisch nicht ganz richtig ist.
Nehmen wir an B (S) = 1 und C (R) =1
Für A := (B OR A) AND NOT C wäre das Ergebnis demnach A = 0, also ein rücksetzdominater Speicher.
Die Aussage A := A OR B AND NOT C bringt uns bei obiger Annahme einen undefinierten Zustand. A würde lediglich von seinem vorherigen Zustand abhängen. Das AND hat Vorrang vor dem ODER, damit hätten wir weder eine Setz- oder Rücksetzdominanz.
Ich finde deshalb die Umsetzung von RS/SR FlipFlops über ein IF/ELSE Konstrukt besser.
Zum Thema:
Bei bis zu 4 Ausdrücken in einer Verknüpfung schreibe ich alles in eine Zeile. Der Bildschirm hat ja 16:9
Darüber hinaus würde ich Zwischenvariablen nutzen.
Nicht immer, deshalb existieren auch so viele Formen der Darstellung. Wenn man viele Wörter oder Doppel Wörter mit and/or/xor… kombiniert oder maskiert ist FUP oder KOP schlecht Leserlich, ja fast schon eine Art Kopierschutz.Ich find das in FUP oder KOP trotzdem übersichtlicher.
dass das logisch nicht ganz richtig ist.Back to the roots:A:= (B OR A) AND NOT C
(mit Klammer = SR, ohne Klammer = RS),
...
Die Aussage A := A OR B AND NOT C bringt uns bei obiger Annahme einen undefinierten Zustand. A würde lediglich von seinem vorherigen Zustand abhängen. Das AND hat Vorrang vor dem ODER, damit hätten wir weder eine Setz- oder Rücksetzdominanz.
A := (B OR A) AND NOT C
ohne KlammernA := A OR B AND NOT C
A := B OR A AND NOT C
A := (B OR A) AND NOT C
ohne Klammern
ist allerdings nicht:
A := A OR B AND NOT C
sondern:
A := B OR A AND NOT C
Vielleicht liest Du Dir noch mal die ersten Posts dieses Threads durch.Und wo kommt sowas zur Anwendung?
Ich kenne Selbsthaltungen wo der Ausgang als Parallelzweig wieder auf die Spule zurückgeht.
Aber dort halte ich KOP fuer am uebersichtlichsten.Das ist doch ein theoretisches Konstrukt.
Bitte mal ein Bsp. nennen.
In meinem Fall handelte es sich um 3 Förderbänder, diese können ihre Lage jeweils auf vier Positionen verfahren um 8 Silos anzufahren, die Position wurde mit einen induktiven Sensor festgestellt. Die alle Position für ein Band (6) wurden in einem Byte untergebracht, der zielbehälter hatte nur ein Bit in einem Byte, wenn ich jetzt die Bytes mit UND verknüpfe kann ich feststellen in welche Richtung ich das Band verfahren muss um schnellstmöglich dort zu sei.Da empfehlen sich dann aber Funktionen?Kommen mehrere solche Maskierungen vor sind halt die Bausteine
mehrfach hintereinander aufzurufen.Wird natürlich dann länger.
In SCL ist das dann aber kompakter, da hat er schon recht.Aber wer maskiert soviele Doppelwörter?
Das muss man ja auch durchschauen.
Hier muesste mann dann den Anwendungsfall kennen.
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?