SysSetPhrDO, configura la salida digital periférica

Lista

Esta página es parte del Manual de programación IEC 61131-3. Ir al índice.

El bloque de funciones realiza la gestión de salida digital en el módulo indicado en Dirección de acuerdo con el comando de Moda definida. Para gestionar las salidas digitales en el módulo de la CPU, es necesario definir Address:=255 e Mode:=DO_MODE#DO_8_LL.

con la variable Mask es posible enmascarar las salidas a gestionar, el FB sólo transferirá los bits de Value donde el bit relativo de Mask está puesto. por ejemplo con Value:=16#FFFFFFFF e Mask:=16#00000003 sólo se activarán las salidas 0 y 1 del módulo. Esto permite:

  • CODESYS: Para usar el FB en la misma tarjeta en diferentes POUs incluso en diferentes tareas.
  • LogicLab: Utilizar el FB para gestionar las tarjetas de salida que se gestionan automáticamente en la imagen del proceso.
Círculo de información

Función de bloqueo

CÓDIGOS: eCDSXUnificado12Lib

Laboratorio lógico: eLLabXUnified12Lib

Address (USINT) Es necesario especificar la dirección del módulo en el que gestionar las salidas digitales (Rango de 0 a 15). El valor 0 indica el primer módulo de extensión, 1 el segundo, y así sucesivamente. La dirección 255 indica el módulo de la CPU.
Mode (DO_MODE) Se debe especificar el modo de gestión de salidas digitales (definición).
Value (UDINT) Configure el valor a transferir a las salidas digitales.
Mask (UDINT) Máscara de salidas a gestionar. Solo los pedacitos de Value correspondiente al bit relativo de Mask colocar.
Done (BOOL) Conjunto de datos. Se activa para un lazo al final del ajuste de la salida digital.
Fault (BOOL) Error. Se activa en caso de error en la secuencia de configuración

Imagen FB SysSetPhrDO

Ejemplos

Cómo utilizar los ejemplos..
Las salidas digitales bajas (de Out 8 a Out 0) del módulo de expansión con dirección 7 se transfieren a 0, el valor en OutValue.

LogicLab (Ptp116)
PROGRAM ST_SysSetPhrDO
VAR
    OutValue : UDINT; (* Digital output value *)
    DOut : SysSetPhrDO; (* Digital output management *)
END_VAR

// *****************************************************************************
// PROGRAM "ST_SysSetPhrDO"
// *****************************************************************************
// This program manages digital outputs.
// -----------------------------------------------------------------------------

    // -------------------------------------------------------------------------
    // DIGITAL OUTPUT MANAGEMENT
    // -------------------------------------------------------------------------
    // Manage digital outputs Out 0 to Out 7 on module with address 0.

    DOut.Address:=0; //Module address
    DOut.Mode:=DO_MODE#DO_8_LL; //Management mode
    DOut.Value:=OutValue; //Digital ouput value
    DOut.Mask:=16#000000FF; //Output mask
    DOut(); //Digital output management

// [End of file]
CODESIS (Ptp161)
PROGRAM ST_SysSetPhrDO
VAR
    OutValue : UDINT; //Digital output value
    DOut : SysSetPhrDO; //Digital output management
END_VAR

// *****************************************************************************
// PROGRAM "ST_SysSetPhrDO"
// *****************************************************************************
// This program manages digital outputs.
// -----------------------------------------------------------------------------

    // -------------------------------------------------------------------------
    // DIGITAL OUTPUT MANAGEMENT
    // -------------------------------------------------------------------------
    // Manage digital outputs Out 0 to Out 7 on module with address 0.

    DOut.Address:=0; //Module address
    DOut.Mode:=DO_MODE.DO_8_LL; //Management mode
    DOut.Value:=OutValue; //Digital ouput value
    DOut.Mask:=16#000000FF; //Output mask
    DOut(); //Digital output management

// [End of file]
¿Le resultó útil este artículo?