e!cockpit ST bei einer Messreihe Messwerte verarbeiten und in einem array speichern

mag81

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

ich hoffe ihr könnt mir helfen. Ich bin gerade dabei ein Programm zu schreiben bei dem eine Messreihe ablaufen soll, bei dem zu erst die Wetterdaten(Luftdruck, Temperatur; Luftfeuchtigkeit) ausgelesen und gespeichert werden sollen.
Danach soll eine Messreihe mit 7 Werten durch geführt werden bei dem jeder Wert ins Array geschrieben werden soll. Zusätzlich muss nach jedem Messwert ein Befehl an eine Schrittmotorsteuerung ausgegeben werden, das fertig Signal verarbeitet und ein Timer angestossen werden. Nach Ablauf des Timers soll der nächste Messwert ermittelt werden usw... Ich bin dabei das Ganze mit einer FOR Schleife in ST zu realisieren hänge aber im Moment etwas fest.

Wie bekomme ich es hin, das ich das Signal für meine Schrittmotorsteuerung nur als Impuls ausgebe?
Was sagt ihr zu meinem Ansatz, wird man daraus schlau und könnte das so in etwa funktionieren? :D


Code:
    Temp[1]:=%IW3;    Luftfeuchte[1]:=%IW4;
    Luftfeuchte[1]:=%IW2;
FOR i:=1 TO 7 BY 1 DO
    Befehl_entarretieren:=TRUE;
    IF Meldung_entarretiert=TRUE
        THEN Timer_Tara_on:=TRUE;
        Befehl_entarretieren:=FALSE;
    END_IF; 
    IF M1:=FALSE THEN
    MW_Digitalanzeige[i]:=%IW6;
    END_IF;
    
    i:=+1;    
END_FOR
i:=1;
 
Hallo,
Ich bin mir über dein Vorhaben nicht ganz im Klaren.

Was mir dennoch aufgefallen ist:
Du beschreibst deine Indexvariable nach deiner FOR Schleife nochmal?!
Behindert deine Applikation als solches nicht unbedingt. Deine FOR Schleife beinhaltet aber schon die Zuweisung „i := 1“nach Erreichen der Transition „i = 7“.

Auf deine erste Frage hin:
Du könntest deinen Motor über einen TOF ansteuern. Ich weiß natürlich nicht was dieser Motor bewegt. Eine überwachen der Endlagen wäre in diesem Fall auch sehr wichtig (vielleicht hat dieser bereits eine eigene Endlagenabschaltung???).

Auf deine zweite Frage hin (denke dieses ist deine Hauptfrage):
Also ich werde daraus noch nicht wirklich schlau. Die Zuweisung der WS Werte auf die Array Segmente über eine FOR Schleife umzusetzen, kann man machen. Denke aber, dass folgende Fragen den eigentlichen Weg ebnen:

Mir ist nicht klar wann die Werte der Wetterstation in die Arrays geschrieben werden sollen??
Bekommst du diese Werte zyklisch und es sollen immer sieben Werte für eine Berechnung zur Verfügung stehen??
Wie soll die Berechnung aussehen??
Wann soll die Berechnung durchgeführt werden??
Soll die Berechnung, die Transition für das Anfahren des Motors sein??
Überschreibst du die Werte der Array Segmente von 1 an wieder, wenn die Segmente des Index 7 beschrieben wurde??
Wann soll der Motor fahren??
Wie lange soll der Motor fahren??

Sind ein wenig viele Fragen. Vielleicht könntest du uns ja eine Kurze Beschreibung deiner Anlage geben und welche Aufgaben diese hat.
Darin sollten die Angaben zu den oben genannten Fragen aufgeführt sein.
 
Zurück
Oben