text: WAGO: 6 Pumpen in Abh�ngigkeit der Temperatur und der Betriebsdauer aktivieren - Page 2
  WAGO: 6 Pumpen in Abh�ngigkeit der Temperatur und der Betriebsdauer aktivieren
  Thread: WAGO: 6 Pumpen in Abh�ngigkeit der Temperatur und der Betriebsdauer aktivieren
  25.04.2008, 18:06
  Join Date 25.04.2008
  Waow, seid ihr schnell!!! Danke
  Okay...ich bastel mir ein Array aus INTs (Betriebsstunden). Mit BubbleSort erhalte ich damit das kleinste INT. Aber wie ordne ich diesen Wert wiederum der Pumpe zu? Oder anders gefragt, woher wei� ich welches Betriebsstunden-INT zu welcher Pumpe geh�rt? Versteht Ihr was ich meine?
  Und au�erdem: das Array muss ja dynamisch sein. Ist ja in der nullten Stufe mit 6 gef�llt, in der ersten Stufe mit 5 gef�llt (einer ja schon aktiv) und so weiter. Wie geht nen das?
  Okay...ich bastel mir ein Array aus INTs (Betriebsstunden). Mit BubbleSort erhalte ich damit das kleinste INT. Aber wie ordne ich diesen Wert wiederum der Pumpe zu? Oder anders gefragt, woher wei� ich welches Betriebsstunden-INT zu welcher Pumpe geh�rt?
  Siehe dazu das Programmbeispiel von mir aus dem folgendem Thread:
  http://www.sps-forum.de/showthread.php?t=14527
  http://www.sps-forum.de/showpost.php...11&postcount=7
  http://www.sps-forum.de/showpost.php...36&postcount=9
  25.04.2008, 18:25
  Ach du sch... f�r nen Newbie siehts heftig aus. Aber dann wei� ich ja, womit ich mich am Wochenende besch�ftige Aber vielen Dank...
  Werde dann mal schauen, wie ich durchkomme!!!
  Ich finde Bubblesort f�r 6 Pumpen einen etwas zu hohen aufwand. Man ben�rtigt doch nur eine Schleife durch alle Pumpen und hat dann die Pumpe mit der geringsten Betriebszeit. Bubblesort d�rfte einen h�heren Aufwand haben, auch wenn man die CPU-Zeit betrachtet.
  Zu den Datenstrukturen:
  Eine Struktur f�r jede Pumpe in einem Array:
  betriebsdauer : TIME,
  allepumpen: ARRAY[1..6] OF pumpe;
  Jedes instanziierte FB einer Pumbe bekommt dann als Argument genau eine Var vom Typ Pumpe �berreicht. Z.B.:
  pumpe1 : FB_pumpe;
  pumpe1(ST_PUMPE:=allepumpen[1]);
  ST_PUMPE ist dann In_Output im Kopf des FB.
  Last edited by drfunfrock; 27.04.2008 at 23:18.
  28.04.2008, 16:42
  bin da nicht abgeneigt Bubblesort zu ersetzen...bin ich n�mlich nicht durchgestiegen. Habe wirklich meine Probs mit ST. Hab mich �bersch�tzt oder ST untersch�tzt Bin gerade dabei den Tipp von drfunfrock umzusetzen. Aber da scheitere ich auch wieder kl�glich. Habe es bislang noch nicht 100%ig verstanden.
  Ich habe mir nun 6 Funktionsbl�cke gebastelt (in FUP, da ich so den WAGO-Betriebsdauer Baustein verwenden kann). Die Betriebsdauer in (VAR Output Retain REAL) und die Einschaltbedingungen (Motorsch�tz aus, Motorschutz aus etc. als VAR OUTPUT BOOL) werden ausgegeben. Ein weiterer FB wertet die jeweilige Stufe aus (auch wieder in FUP, da ich den WAGO-Baustein nutzen wollte). 5 mal Var Output BOOL f�r jede einzelne Stufe. (in der letzten Stufe sollen zwei Pumpen laufen)
  Jetzt muss ich mir doch die 6 Betriebsdauern ins Array of struct schieben, oder??? Dazu habe ich mir nen Unterprogramm (ST) erstellt und dort das Array lokal deklariert. Aber nun komme ich nicht mehr weiter, weil ich die letzten 3 Zeilen von drfunfrock nicht verstehe
  Ganz vorsichtig gefragt: w�re es m�glich mir an diesem auf die Spr�nge zu helfen? Und ganz ehrlich: irgendwie f�llt es mir schwer die Zuordnung (Pumpe mit geringster Betriebszeit) zu verstehen?!? Bin weiterhin �ber jeden Tipp dankbar!!!
  01.05.2008, 22:02
  Also, nach meinem kleinem Urlaub will ich mal wieder loslegen:
  Eine Struktur ist eine Variablentype, die andere Variablen enth�lt und kann damit z.B. alle Variablen f�r eine Pumpe zusammenfassen. Um so ein Ding anzulegen, musst du nur das linke Fenster betrachten, um dann unten den 2.Tab anzuw�hlen. Dann im Fenster ein Rechtsklick f�r ein neues Objekt und schon hast du das Grundger�st mit struct und so weiter.
  Deine Variable stundenzaehler legst du da rein und alles was f�r eine pumpe ben�tigt wird. STRUCT pumpe