RAMP

Gera rampa de valores de X0 a X1 em um período de tempo TR.

Bloco

       RAMP
      +-----+
RUN---|     |---BUSY
      |     |
 X0---|     |---XOUT
      |     |
 X1---|     |
      |     |
 TR---|     |
      +-----+

Parâmetros

Nome

Classe

Tipo

Dim.

V. Ini.

Descrição

RUN

Entrada

BOOL

FALSE

0 - track X0, 1 - ramp to/track X1

X0

Entrada

REAL

0.0

Input value

X1

Entrada

REAL

0.0

Tracking value

TR

Entrada

TIME

T#0ms

Ramp duration

BUSY

Saída

BOOL

FALSE

BUSY = 1 during ramping period

XOUT

Saída

REAL

0.0

Output value

Exemplo

Declaração de Variáveis

Nome

Tipo

Descrição

RAMP_X0

REAL

Valor inicial da rampa

RAMP_X1

REAL

Valor final da rampa

RAMP_TR

TIME

Duração da rampa

Clique aqui para baixar a tabela de variáveis

Código ST

(* ... *)

(* inicializa parametros para bloco RAMP *)
(* por exemplo rampa dos valores 0.0 a 100.0 em 30 seg. *)
RAMP_X0    := 0.0;   (* parametro X0 *)
RAMP_X1    := 100.0; (* parametro X1 *)
RAMP_TR    := T#30s; (* parametro TR *)

(* executa bloco RAMP *)
my_RAMP(
       RUN   := gl_RAMP_RUN,    (* RUN *)
       X0    := gl_RAMP_X0,     (* X0  *)
       X1    := gl_RAMP_X1,     (* X1  *)
       TR    := gl_RAMP_TR      (* TR  *)
       );

(* testa se finalizou a rampa *)
if (my_RAMP.BUSY) then
  if (my_RAMP.XOUT < 50.0) then
  (* ... *)
  end_if;
else
  (* ... *)
end_if;
(* ... *)