4 Werte vergleichen (CMP Gatter mit 4 Eingängen?)

superkato

Level-1
Beiträge
220
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich habe 4 DInt Werte V1, V2, V3 und V4
Jeder Wert hat einen Zählerwert. Jetzt würde ich gerne alle Werte Vergleichen um herauszufinden welche Variable den kleinsten Wert hat.
Also theoretisch ein CMP<D mit 4 Eingängen.
Habt ihr eine Idee?


Viele Grüße
SK
 
Wie wärs mit der IEC-Funktion "MIN" aus der Standard Bibliothek? Hat zwar nur 3 Eingänge, aber da kann man ja zwei hintereinanderschalten. Ansonsten ist es doch kein Hexenwerk sich die paar Verknüpfungen selber zu programmieren.
 
Danke. Ich frage nach einem Tipp, kann ja sein das jemand etwas gut funktionierendes bereits entwickelt hat.

Meine Lösung war 4 CMP's mit Move-Gattern zu kaskadieren. Das Problem war aber das die Zykluszeit dadurch stark angestigegen ist.
 
Code:
L Wert1
L Wert2
>I
SPB M001
POP
M001: NOP 0
L Wert3
>I
SPB M002
POP
M002: NOP 0
L Wert4
>I
SPB M003
POP
M003: NOP 0
T Minimum
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Meine Lösung war 4 CMP's mit Move-Gattern zu kaskadieren. Das Problem war aber das die Zykluszeit dadurch stark angestigegen ist.

Was hast Du für eine SPS? Ein Logo?
Die Cmp und Move-Funktion sollte kaum Auswirkungen auf die Zykluszeit haben - selbst wenn Du die 100 mal einsetzt.
 
sind 8 vergleicher und 8 move's drin @ s7-313C

Das ist ja nichts. Wie hat sich die Zykluszeit verändert? Hat die SF oder eine andere rote LED geleuchtet? Hast du mal in den Baugruppenzustand der CPU nachgeschaut. Wenn Zykluszeiterhöhung, dann muss das eine andere Ursache gehabt haben.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
...
ich habe 4 DInt Werte V1, V2, V3 und V4
Jeder Wert hat einen Zählerwert. Jetzt würde ich gerne alle Werte Vergleichen um herauszufinden welche Variable den kleinsten Wert hat.
Also theoretisch ein CMP<D mit 4 Eingängen.
Habt ihr eine Idee?
Schau Dir mal das einfache Motorenpendel von zotos an.

Da werden sechs Werte (Betriebsstunden) miteinander verglichen, um den Motor mit dem niedrigsten bzw. höchsten BS auszufiltern.
 
was passiert wenn zwei Werte gleich niedrig sind? Soll der niedrigste Wert auch für etwas verwendet werden oder geht es nur darum festzustellen, welches der niedrigste Wert ist (wie oben geschrieben)?

Zum Überwachen welches der niedrigste Wert ist reichen 6 Vergleicher und 4 Logikverknüpfungen (siehe Beispiel in LOGO), wenn der niedrigste Wert verwendet werden soll kommen noch 4 MOVs dazu.


Vergleicher.GIF
 
Zurück
Oben