Siemens SCL Programación versión actualizada: 12 casos prácticos industriales
2025-07-03
12 Casos prácticos en el sector industrial (1-6)
Caso 1: Control de arranque y parada del motor
- ¿ Qué?
FUNCION_BLOCK FB_Control del motor
VAR_INPUT ¿ Qué está pasando?
Botón de inicio: BOOL;
Botón de parada: BOOL;
Señales de sobrecarga: BOOL;
¿ Qué es esto?
VAR_OUTPUT
Estado de ejecución: BOOL;
Indicador de fallo: BOOL;
¿ Qué es esto?
Comienza.
// Comienza-Detener la lógica
Si el botón de inicio y no el botón de parada y no la sobrecarga, entonces la señal
El estado de ejecución es:
ELSIF Botón de parada o sobrecargaSignal entonces
Estado de ejecución:= FALSO;
En el caso de los sistemas de gestión de datos, el número de datos que deben ser almacenados será el siguiente:
// Indicación de fallo
Indicador de fallo: = señal de sobrecarga;
El número de unidad de control
Caso 2: Aplicación del temporizador
- ¿ Qué?
FUNCCION_BLOCK FB_DelayStart Se puede hacer un seguimiento
VAR_INPUT ¿ Qué está pasando?
StartSignal: BOOL;
El tiempo de demora: TIEMPO:= T#5S;
¿ Qué es esto?
VAR_OUTPUT
La señal de salida es BOOL.
¿ Qué es esto?
El VAR
El tiempo de espera: TON;
¿ Qué es esto?
Comienza.
Las señales de inicio de la señal de inicio de la señal de inicio de la señal de inicio de la señal de inicio de la señal de inicio de la señal de inicio de la señal de inicio.
La señal de salida: = DelayTimer.Q;
El número de unidad de control
Caso 3: Control de la temperatura en el PID
- ¿ Qué?
FUNCTION_BLOCK FB_TempControl ¿ Qué está pasando con el control de tiempo?
VAR_INPUT ¿ Qué está pasando?
Punto de referencia: REAL;
El valor del proceso: REAL;
¿ Qué es esto?
VAR_OUTPUT
Control de salida: en tiempo real;
¿ Qué es esto?
El VAR
Kp: REAL: = 2.0;
Ki: REAL: = 0.05;
Kd: REAL: = 0.5;
IntegralTerm: REAL: = 0;
LastError: REAL := 0;
El tiempo: TON;
¿ Qué es esto?
Comienza.
// Ejecutar periódicamente (100 ms)
Los datos de las pruebas de seguridad de los equipos de ensayo deberán estar disponibles en el sitio web de la autoridad de ensayo.
Si el temporizador.Q Entonces
Error de VAR := Punto de ajuste - Valor del proceso;
IntegralTerm: = IntegralTerm + Error;
VAR DerivativeTerm := Error - LastError;
LastError:= Error;
ControlOutput := Kp * Error + Ki * IntegralTerm + Kd * DerivadoTerm;
ControlOutput:= LIMIT(0. El control de salida es el mismo que el control de salida.0, ControlOutput, 100.0);
El tiempo de ejecución de las operaciones se calcula en función de las características de las operaciones de las mismas.
En el caso de los sistemas de gestión de datos, el número de datos que deben ser almacenados será el siguiente:
El número de unidad de control
Caso 4: Gestión de las colas de la línea de producción
- ¿ Qué?
FUNCION_BLOCK FB_productionQueue
VAR_INPUT ¿ Qué está pasando?
Nuevo orden: BOOL;
El número de orden: INT;
CompleteSignal: BOOL;
¿ Qué es esto?
VAR_OUTPUT
Orden actual: INT
La longitud de la cola: INT;
¿ Qué es esto?
El VAR
En el caso de las operaciones de transferencia de datos, el valor de las operaciones de transferencia de datos será el valor de las operaciones de transferencia de datos.
Cabeza de cola: INT:= 1;
Cuadernilla: INT:= 1;
¿ Qué es esto?
Comienza.
// Nueva cola de pedidos
Si NewOrder y queueLength < 50 entonces
Se puede utilizar el código de código de la orden.
QueueTail:= QueueTail MOD 50 + 1;
Cuadros de espera:= Cuadros de espera + 1;
En el caso de los sistemas de gestión de datos, el número de datos que deben ser almacenados será el siguiente:
// Completado la cola de orden
Si CompleteSignal AND QueueLength > 0 entonces
Cabeza de cola:= Cabeza de cola MOD 50 + 1;
Cuadros de tiempo de espera:= Cuadros de tiempo de espera - 1;
En el caso de los sistemas de gestión de datos, el número de datos que deben ser almacenados será el siguiente:
// Orden actual
Si la longitud de la cola es > 0 entonces
En el caso de los datos de la orden de orden, se utilizará el número de orden de orden.
El otro.
Orden actual: = 0;
En el caso de los sistemas de gestión de datos, el número de datos que deben ser almacenados será el siguiente:
El número de unidad de control
Caso 5: Control de bloqueo de puertas de seguridad
- ¿ Qué?
FUNCTION_BLOCK FB_SafetyGate ¿ Qué está pasando?
VAR_INPUT ¿ Qué está pasando?
Puerta 1 cerrada, Puerta 2 cerrada: BOOL;
El botón EStop es BOOL.
Botón de restablecimiento: BOOL;
¿ Qué es esto?
VAR_OUTPUT
SeguridadEstado: BOOL
¿ Qué es esto?
El VAR
LocalizaciónEstado: BOOL:= FALSO;
El tiempo de bloqueo: TON;
¿ Qué es esto?
Comienza.
- En condiciones de seguridad.
VAR Todas las puertas cerradas:= Puerta1Cerrada Y Puerta2Cerrada;
- Detención de emergencia con máxima prioridad.
Si EStopButton entonces
Estado de seguridad: = FALSO;
El estado de bloqueo es: = TRUE;
En el caso de los sistemas de control de velocidad, se utilizará el sistema de control de velocidad.
el nombre de la empresa;
En el caso de los sistemas de gestión de datos, el número de datos que deben ser almacenados será el siguiente:
Desbloquea la lógica.
Si el botón de restablecimiento y bloqueoEstado y tiempo de bloqueo.
El estado de bloqueo:= FALSO;
En el caso de los sistemas de gestión de datos, el número de datos que deben ser almacenados será el siguiente:
- Funcionamiento normal.
Si no localiza, entonces.
Estado de seguridad: todas las puertas cerradas.
En el caso de los sistemas de gestión de datos, el número de datos que deben ser almacenados será el siguiente: