-> Hier kostenlos registrieren
Hallo zusammen,
ich bin ganz neu in der SPS Programmierung. Mein Ziel ist es Sensor Daten, welche von einer SPS an Matlab zu Übergebe (ADS Notification/Server).
Um dies zu testen, habe ich Sensordaten aus einer CSV Datei in eine Datenbank in der SPS gespeichert.
Jetzt würde ich gerne die Sensordaten in einer Dauerschleife immer wieder durchlaufen lassen. So dass sie sich immer wiederholen und ich sie Testweise auslesen kann.
Wenn ich das Programm laufen lasse, ende ich in einem Absturz oder es passiert gar nichts.
While-Schleife dient als Start und Ende der Übertragung, möchte es gerne über die Variablen setzten steuern können.
In der For-Schleife möchte ich definieren wie viele Daten der gesamten Daten ausgelesen werden sollen.
Mit dem Timer möchte ich gerne die Zykluszeit beeinflussen können, falls die Verarbeitung der Daten nicht schnell genug ist.
Die Variable welche ich auslesen will ist: data (eindimensionaler Array, Globale-Variable)
Falls jemand noch eine Idee hat, wie die Zeitliche Abstimmung zwischen der SPS und Matlab funktionieren kann, bin ich ganz Ohr. Die Sensordaten sollen am Ende verglichen werden. Dazu bräuchte ich aber einen Startpunkt der eindeutig ist. (Ob der Sensor richtig arbeitet oder nicht).
ich bin ganz neu in der SPS Programmierung. Mein Ziel ist es Sensor Daten, welche von einer SPS an Matlab zu Übergebe (ADS Notification/Server).
Um dies zu testen, habe ich Sensordaten aus einer CSV Datei in eine Datenbank in der SPS gespeichert.
Jetzt würde ich gerne die Sensordaten in einer Dauerschleife immer wieder durchlaufen lassen. So dass sie sich immer wiederholen und ich sie Testweise auslesen kann.
Wenn ich das Programm laufen lasse, ende ich in einem Absturz oder es passiert gar nichts.
While-Schleife dient als Start und Ende der Übertragung, möchte es gerne über die Variablen setzten steuern können.
In der For-Schleife möchte ich definieren wie viele Daten der gesamten Daten ausgelesen werden sollen.
Mit dem Timer möchte ich gerne die Zykluszeit beeinflussen können, falls die Verarbeitung der Daten nicht schnell genug ist.
Die Variable welche ich auslesen will ist: data (eindimensionaler Array, Globale-Variable)
Falls jemand noch eine Idee hat, wie die Zeitliche Abstimmung zwischen der SPS und Matlab funktionieren kann, bin ich ganz Ohr. Die Sensordaten sollen am Ende verglichen werden. Dazu bräuchte ich aber einen Startpunkt der eindeutig ist. (Ob der Sensor richtig arbeitet oder nicht).
Code:
WHILE start = TRUE DO
DelayTimer(IN:= NOT DelayTimer.Q, PT := T#0.5S);
FOR zaehler := 1 TO 310 BY 1 DO
data := DB.DataSensor[zaehler];
IF zaehler = 305 THEN
zaehler := 1;
END_IF
IF stop = TRUE THEN
EXIT;
END_IF
END_FOR;
END_WHILE;