I’m using TC3 Ramp function block FB_CTRL_RAMP_GENERATOR. The function block configure as below
stCTRL_RAMP_GENERATOR_PARAMS.tTaskCycleTime := T#10s;
stCTRL_RAMP_GENERATOR_PARAMS.tCtrlCycleTime := T#10s;
stCTRL_RAMP_GENERATOR_PARAMS.fVeloPos:= (fTargetTemp-fInitTemp)/(60.0*fRampTime); (* in units per second *)
stCTRL_RAMP_GENERATOR_PARAMS.fVeloNeg:= 0; (* in units per second *)
bCTRL_RAMP_GENERATOR(bEnable := True,
fStart := fInitTemp,
fTarget := fTargetTemp,
stParams:= stCTRL_RAMP_GENERATOR_PARAMS,
fOut => fRampOut,
bValueReached=> bValueReached,
bError => bError,
eErrorId => eErrorId);
The fStart set to 25 degree and the target set to 30 degree. When I start the program, the bValueReached become true although the target value not reached yet. What’s going wrong? Is it VeloPos and VeloNeg configure wrong?