Tipos de datos
En CODESYS Safety Extension, se hace una distinción entre datos no orientados a la seguridad (los tipos de datos estándar IEC) y datos orientados a la seguridad (con el prefijo SAFE). Al mapear los canales de entrada y salida, los de los dispositivos de campo seguro siempre tienen el tipo SAFExxx y los de los dispositivos de campo no seguros siempre tienen un no-SAFE tipo. La comprobación de las reglas de enlace de PLCopen para SAFEBOOL datos y reglas de vinculación análogas para los demás SAFEXXX Los tipos de datos son parte de la verificación de condiciones de error en el sistema de programación.
| Tipo de datos | Longitud de bits | Rango de valores | Descripción | 
|---|---|---|---|
| 
 | 
 | 
 | 
 
 | 
| 
 | 
 | 
 | |
| 
 | 
 | 
 | |
| 
 | 
 | 
 | Duración | 
| 
 | 
 | 
 ( | 
Sugerencia
El BYTE, DWORD, SAFEBYTE, y SAFEDWORD Los tipos de datos solo pueden aparecer en el E/S lógicas y se pueden utilizar en programas de nivel Extendido como variables de canal (categoría: variables globales, declaración como VAR_EXTERNAL).
| Tipo de datos | Longitud de bits | Rango de valores | Descripción | 
|---|---|---|---|
| 
 | 
 | 
 | 
 
 | 
| 
 | 
 | 
 | |
| 
 | 
 | 
 | |
| 
 | 
 | 
 | |
| 
 | 
 | 
 ( | 
Sugerencia
El REAL Este tipo de datos no está permitido en la programación de seguridad. Si se utiliza, se produce un error de traducción.
Tipos de datos definidos por el usuario
El Tipos definidos por el usuario La categoría de tipo de datos contiene bloques de funciones de la aplicación de seguridad y las bibliotecas. Esta categoría se puede seleccionar en el Asistente de entrada, que se abre en el Insertar declaración de variable diálogo haciendo clic en el  Botón. En el caso de variables ya declaradas, el Asistente de entrada del tipo de datos se abre de la siguiente manera:
 Botón. En el caso de variables ya declaradas, el Asistente de entrada del tipo de datos se abre de la siguiente manera:
- En la ventana de declaración, seleccione la celda tipo de la variable correspondiente. 
- En el cuadro de lista, haga clic en el ... símbolo. 

Reglas generales de tipificación
Polimorfismo INT
Un valor del tipo INT o SAFEINT siempre tiene el tipo DINT o SAFEDINT también. El vínculo de INT y DINT conduce a una DINT valor (int + dint tiene el tipo DINT).
Polimorfismo SAFE
Un valor del tipo SAFEXXX siempre tiene el tipo XXX también; es decir, un valor de alta integridad siempre se puede utilizar también como un valor de baja integridad. Esto significa que la función de conversión SAFEBOOL_TO_BOOL mencionado en PLCopen está implícito en CODESYS Safety Extension y no está escrito explícitamente.
Constantes SAFE
Las constantes son siempre valores de máxima integridad (es decir, SAFEXXX). Debido a la SAFE polimorfismo, todavía pueden servir como valores normales. De esta manera, se evita tener dos tipos diferentes de valores (safebool#1 así como bool#1).bool#1 es SAFEBOOL (y BOOL); lo mismo se aplica a las otras constantes literales.
Baja de categoría SEGURA
La regla general para vincular valores es la siguiente: si y solo si todos los operandos tienen un SAFE tipo, entonces el resultado tiene un SAFE tipo.
Excepción: SAFEBOOL AND BOOL tiene el valor SAFEBOOL.