PWM_M241: control de una señal de modulación de ancho de pulsos

Descripción general

El bloque de funciones de Pulse Width Modulation controla una salida de señal modulada de ancho de pulsos en la frecuencia y ciclo de servicio especificados.

Representación gráfica

Esta ilustración corresponde a un bloque de funciones Pulse Width Modulation:

G-SE-0027947.3.gif-high.gif

 

 

Representación IL y ST

Para ver la representación general en lenguaje IL o ST, consulte el capítulo Diferencias entre una función y un bloque de funciones.

Variables de entrada

En esta tabla se describen las variables de entrada:

Entradas

Tipo

Comentario

EN_Enable

BOOL

TRUE = autoriza la habilitación de PWM mediante la entrada IN_EN (si se ha configurado).

F_Enable

BOOL

TRUE = habilita la Pulse Width Modulation.

EN_SYNC

BOOL

TRUE = autoriza el reinicio mediante la entrada IN_Sync del temporizador interno correspondiente a la referencia de tiempo (si se ha configurado).

F_SYNC

BOOL

En un flanco ascendente, fuerza un reinicio del temporizador interno correspondiente a la referencia de tiempo.

HighPrecision

BOOL

 Si es FALSE (predeterminado), el ciclo de servicio se especifica en unidades del 1 %. Consulte Duty a continuación.

Si es TRUE, el ciclo de servicio se especifica en unidades del 0,1 %.

NOTA: El valor del parámetro Duty se actualiza automáticamente a 0-100 o 0-1000 según el valor seleccionado.

Frequency

DWORD

Frecuencia de la señal de salida de Pulse Width Modulation en décimas de Hz (rango: de 1 [0,1 Hz] a 200.000 [20 kHz]).

Duty

UINT

Ciclo de servicio de la señal de salida de Pulse Width Modulation en unidades del 1 % (rango: 0-100 [0 %-100 %]).

NOTA: Si la entrada HighPrecision se establece en TRUE, el ciclo de servicio es en unidades del 0,1 % (rango: 0-1000 [0 %-100 %]).

Variables de salida

En esta tabla se describen las variables de salida:

Salidas

Tipo

Comentario

InFrequency

BOOL

TRUE = La señal de Pulse Width Modulation se está emitiendo actualmente en la frecuencia y ciclo de servicio especificados.

FALSE =

oNo se puede acceder a la frecuencia requerida por algún motivo.

oF_Enable se establece en False.

oEN_Enable se establece en False o no se detecta señal en la entrada física EN Input (si se ha configurado).

Ocupado

BOOL

Busy se emplea para indicar que se está modificando un comando: se modifica la frecuencia.

Se establece en TRUE cuando se ha establecido el comando Enable y cuando ha cambiado la frecuencia o el ciclo de trabajo.

Se restablece en FALSE cuando InFrequency o Error están establecidos o cuando el comando Enable se ha restablecido.

Error

BOOL

TRUE = indica que se ha detectado un error.

ErrID

FREQGEN_PWM_ERR_TYPE

Cuando se establece Error: tipo de error detectado.

NOTA: Cuando por algún motivo no se puede alcanzar la frecuencia requerida, la salida InFrequency no se establece como TRUE, pero Error permanece como FALSE.