-Menü

Beiträge anzeigen

Dieser Abschnitt erlaubt es Ihnen, alle Beiträge anzusehen, die von diesem Mitglied geschrieben wurden. Beachten Sie, dass Sie nur Beiträge sehen können, die in Teilen des Forums geschrieben wurden, auf die Sie aktuell Zugriff haben.

Beiträge anzeigen-Menü

Beiträge - Ignat

#1
Hallo Bodensee123,

das Ding ist, der FT_RMP Block ist mit "in" Wert erst initialisiert. In dem Block steht:

IF NOT init THEN
init := TRUE;
last := tx;
tx := t#0s;
out := in;
END_IF;


So in deinem Fall, du rufst den Block mit IN:=1000 und aufm erstem Zyklus der Program ist OUT mit diesem Wert initialisiert.

Was du ausprobieren könnte ist:
- haben noch eine Variable für "rSpeed_SET", und wechseln die dynamisch in der Programm

test2: OSCAT_BASIC.FT_RMP;
out: REAL;
rSpeed_SET :REAL;
xStart :BOOL;

test2(RMP := TRUE, in := rSpeed_SET, KR:= 100,KF:=100);
out := test2.out;

IF xStart THEN
rSpeed_SET := 1000; // give a SP to the Ramp Block, ramp up
ELSE
rSpeed_SET := 0; // stop by ramp, when no command


UPD1: zu spät gerade, glaube ich... =)