Primera version

This commit is contained in:
2026-07-14 10:21:52 +02:00
parent 273e2be076
commit 430e3b4db0
222 changed files with 176320 additions and 0 deletions
@@ -0,0 +1,94 @@
FUNCTION "FC15025_ZC_CONTADOR_TIEMPO" : Void
TITLE = FC15025_ZC_CONTADOR_TIEMPO
{ S7_Optimized_Access := 'TRUE' }
AUTHOR : HCR
FAMILY : ZeusControl
VERSION : 1.0
//Funcion contador de tiempo
VAR_INPUT
Pulso1seg : Bool; // Pulso de 1 segundo
Iniciar : Bool; // Orden iniciar contador
Reset : Bool; // Reset contador
END_VAR
VAR_IN_OUT
Contador : "UDT_ZC_CONTADOR_TIEMPO";
END_VAR
VAR CONSTANT
MAX_HORAS : UDInt := 10000000; // Valor maximo de horas
END_VAR
BEGIN
REGION DESCRIPCION
(*
###### (C)Copyright ZeusControl 2023 - 2023
---
### Información del Sistema
| Hardware Compatible | Entorno de Ingeniería |
|---------------------|-----------------------|
| PLC serie 1200/1500 | TIA Portal 18 |
---
> **Restricciones:** Ninguna.
---
### Descripción Funcional
Función encargada de contar tiempo.
---
### Dependencias Requeridas
| Tipo | Elementos |
|------|-----------|
| FC | - |
| FB | - |
| DB | - |
| UDT | - |
---
### Historial de Cambios
| Versión | Fecha | Técnico | Cambios |
|----------|------------|---------|---------|
| 01.00.00 | 16.03.2023 | (HCR) | Primera version. |
| 01.00.01 | 25.07.2023 | (HCR) | Se añade valor maximo DINT para limitar contador horas. En caso de alcanzar valor maximo, se resetea el contador de horas. |
*)
END_REGION DESCRIPCION
// ==========================================================================================================
REGION GESTION_CONTADOR
// ==========================================================================================================
REGION RESET_CONTADOR
IF #Reset OR #Contador.Hora >= #MAX_HORAS THEN
#Contador.Hora := #Contador.Minuto := #Contador.Segundo := 0;
END_IF;
END_REGION RESET_CONTADOR
// ==========================================================================================================
REGION GESTION_CONTADOR
IF #Iniciar AND #Pulso1seg THEN
#Contador.#Segundo += 1;
IF #Contador.#Segundo >= 60 THEN
#Contador.#Segundo := 0;
#Contador.#Minuto += 1;
IF #Contador.#Minuto >= 60 THEN
#Contador.#Minuto := 0;
#Contador.Hora += 1;
END_IF;
END_IF;
END_IF;
END_REGION RESET_CONTADOR
END_REGION
END_FUNCTION
@@ -0,0 +1,90 @@
FUNCTION "FC15027_ZC_CONTADOR_MINUTOS" : Void
TITLE = FC15027_ZC_CONTADOR_MINUTOS
{ S7_Optimized_Access := 'TRUE' }
AUTHOR : ABH
FAMILY : ZeusControl
VERSION : 1.0
//Funcion contador de minutos
VAR_INPUT
Pulso1seg : Bool; // Pulso de 1 segundo
Iniciar : Bool; // Orden iniciar contador
Reset : Bool; // Reset contador
END_VAR
VAR_IN_OUT
Contador : "UDT_ZC_CONTADOR_MINUTOS";
END_VAR
VAR CONSTANT
MAX_MINUTOS : UDInt := 10000000; // Valor maximo de minutos
END_VAR
BEGIN
REGION DESCRIPCION
(*
###### (C)Copyright ZeusControl 2024 - 2024
---
### Información del Sistema
| Hardware Compatible | Entorno de Ingeniería |
|---------------------|-----------------------|
| PLC serie 1200/1500 | TIA Portal 18 |
---
> **Restricciones:** Ninguna.
---
### Descripción Funcional
Función encargada de contar tiempo en minutos.
---
### Dependencias Requeridas
| Tipo | Elementos |
|------|-----------|
| FC | - |
| FB | - |
| DB | - |
| UDT | - |
---
### Historial de Cambios
| Versión | Fecha | Técnico | Cambios |
|----------|------------|---------|---------|
| 01.00.00 | 13.05.2024 | (ABH) | Primera version. |
*)
END_REGION DESCRIPCION
// ==========================================================================================================
REGION GESTION_CONTADOR
// ==========================================================================================================
REGION RESET_CONTADOR
IF #Reset OR #Contador.Minuto >= #MAX_MINUTOS THEN
#Contador.Minuto := #Contador.Segundo := 0;
END_IF;
END_REGION RESET_CONTADOR
// ==========================================================================================================
REGION GESTION_CONTADOR
IF #Iniciar AND #Pulso1seg THEN
#Contador.#Segundo += 1;
IF #Contador.#Segundo >= 60 THEN
#Contador.#Segundo := 0;
#Contador.#Minuto += 1;
END_IF;
END_IF;
END_REGION GESTION_CONTADOR
END_REGION GESTION_CONTADOR
END_FUNCTION