375 lines
11 KiB
Markdown
375 lines
11 KiB
Markdown
# Sistema de Componentes Hidráulicos - CtrEditor
|
|
|
|
## 📋 Resumen del Sistema
|
|
|
|
Este documento describe todos los componentes necesarios para implementar un sistema hidráulico completo en CtrEditor. El sistema está diseñado con una arquitectura modular que permite simular circuitos hidráulicos industriales complejos.
|
|
|
|
---
|
|
|
|
## 🎯 Componentes Existentes
|
|
|
|
### ✅ **Tanque Hidráulico** - `osHydTank`
|
|
- **Archivo**: `osHydTank.cs` / `ucHydTank.xaml`
|
|
- **Descripción**: Tanque hidráulico con gestión dinámica de nivel y presión configurable
|
|
- **Tipos**: Suction, Intermediate, Storage, Process
|
|
- **Características**:
|
|
- Múltiples tipos de tanque via enum `HydraulicTankType`
|
|
- Presión fija o variable (`IsFixedPressure`)
|
|
- Gestión completa de flujos entrada/salida
|
|
- Cálculos dinámicos de nivel y volumen
|
|
- Propiedades visuales para UI (colores, indicadores)
|
|
- Conexiones configurables de entrada y salida
|
|
|
|
### ✅ **Tubería Hidráulica** - `osHydPipe`
|
|
- **Archivo**: `osHydPipe.cs` / `ucHydPipe.xaml`
|
|
- **Descripción**: Tubería para transporte de fluido hidráulico
|
|
- **Características**:
|
|
- Cálculo de pérdidas de carga por fricción
|
|
- Diferentes materiales y rugosidades
|
|
- Diámetros configurables
|
|
- Longitud variable
|
|
- Resistencia hidráulica calculada
|
|
|
|
### ✅ **Bomba Hidráulica** - `osHydPump`
|
|
- **Archivo**: `osHydPump.cs` / `ucHydPump.xaml`
|
|
- **Descripción**: Bomba para generar presión y caudal en el sistema
|
|
- **Tipos**: Centrifugal, Positive Displacement, Variable Displacement
|
|
- **Características**:
|
|
- Curvas características configurables
|
|
- Control de velocidad variable
|
|
- Eficiencia energética
|
|
- Protección contra cavitación
|
|
- Control PID integrado
|
|
|
|
---
|
|
|
|
## 🔧 Componentes de Control (Por Implementar)
|
|
|
|
### **Válvulas** - `osHydValve`
|
|
- **Archivo**: `osHydValve.cs` / `ucHydValve.xaml`
|
|
- **Descripción**: Válvula general configurable para control de flujo
|
|
- **Tipos**:
|
|
- `Ball` - Válvula de bola (on/off)
|
|
- `Gate` - Válvula de compuerta
|
|
- `Globe` - Válvula de globo
|
|
- `Check` - Válvula de retención
|
|
- `Relief` - Válvula de alivio
|
|
- `Throttle` - Válvula de estrangulación
|
|
- **Estados**: `Open`, `Closed`, `Partial`
|
|
- **Propiedades**:
|
|
- Coeficiente de flujo (Cv)
|
|
- Pérdida de presión
|
|
- Posición del actuador
|
|
- Tiempo de operación
|
|
|
|
### **Actuadores Hidráulicos** - `osHydActuator`
|
|
- **Archivo**: `osHydActuator.cs` / `ucHydActuator.xaml`
|
|
- **Descripción**: Cilindros y actuadores hidráulicos
|
|
- **Tipos**:
|
|
- `SingleAction` - Cilindro de simple efecto
|
|
- `DoubleAction` - Cilindro de doble efecto
|
|
- `Rotary` - Actuador rotativo
|
|
- **Propiedades**:
|
|
- Diámetro del pistón
|
|
- Carrera (stroke)
|
|
- Fuerza desarrollada
|
|
- Velocidad de actuación
|
|
- Posición actual
|
|
|
|
---
|
|
|
|
## 📊 Instrumentación (Por Implementar)
|
|
|
|
### **Sensor de Presión** - `osHydPressureSensor`
|
|
- **Archivo**: `osHydPressureSensor.cs` / `ucHydPressureSensor.xaml`
|
|
- **Descripción**: Medición de presión en el sistema
|
|
- **Propiedades**:
|
|
- Rango de medición (0-1000 bar)
|
|
- Precisión (±0.1%)
|
|
- Tiempo de respuesta
|
|
- Señal de salida (4-20mA, 0-10V)
|
|
- Calibración automática
|
|
|
|
### **Sensor de Caudal** - `osHydFlowSensor`
|
|
- **Archivo**: `osHydFlowSensor.cs` / `ucHydFlowSensor.xaml`
|
|
- **Descripción**: Medición de caudal volumétrico
|
|
- **Tipos**: Electromagnetic, Turbine, Vortex, Ultrasonic
|
|
- **Propiedades**:
|
|
- Rango de caudal (L/min)
|
|
- Pérdida de presión
|
|
- Precisión de medición
|
|
- Compensación de temperatura
|
|
|
|
### **Sensor de Nivel** - `osHydLevelSensor`
|
|
- **Archivo**: `osHydLevelSensor.cs` / `ucHydLevelSensor.xaml`
|
|
- **Descripción**: Medición de nivel en tanques
|
|
- **Tipos**: Ultrasonic, Radar, Capacitive, Float
|
|
- **Propiedades**:
|
|
- Altura de medición
|
|
- Zona muerta
|
|
- Material del tanque
|
|
- Constante dieléctrica del fluido
|
|
|
|
### **Sensor de Temperatura** - `osHydTemperatureSensor`
|
|
- **Archivo**: `osHydTemperatureSensor.cs` / `ucHydTemperatureSensor.xaml`
|
|
- **Descripción**: Medición de temperatura del fluido
|
|
- **Tipos**: Thermocouple, RTD, Thermistor
|
|
- **Propiedades**:
|
|
- Rango de temperatura (-40°C a +200°C)
|
|
- Tiempo de respuesta térmica
|
|
- Exactitud (±0.1°C)
|
|
- Inmersión requerida
|
|
|
|
---
|
|
|
|
## 🔀 Conexiones y Distribución (Por Implementar)
|
|
|
|
### **Conexión en T** - `osHydTee`
|
|
- **Archivo**: `osHydTee.cs` / `ucHydTee.xaml`
|
|
- **Descripción**: Conexión de tres vías para dividir flujo
|
|
- **Propiedades**:
|
|
- Diámetro de entrada
|
|
- Diámetros de salida
|
|
- Coeficiente de pérdida
|
|
- Material de construcción
|
|
|
|
### **Codo 90°** - `osHydElbow`
|
|
- **Archivo**: `osHydElbow.cs` / `ucHydElbow.xaml`
|
|
- **Descripción**: Cambio de dirección a 90 grados
|
|
- **Propiedades**:
|
|
- Radio de curvatura
|
|
- Ángulo (45°, 90°, custom)
|
|
- Factor de pérdida K
|
|
- Diámetro interno
|
|
|
|
### **Conexión Cruzada** - `osHydCross`
|
|
- **Archivo**: `osHydCross.cs` / `ucHydCross.xaml`
|
|
- **Descripción**: Conexión de cuatro vías
|
|
- **Propiedades**:
|
|
- Configuración de flujos
|
|
- Pérdidas por turbulencia
|
|
- Diámetros de conexión
|
|
|
|
### **Reductor de Diámetro** - `osHydReducer`
|
|
- **Archivo**: `osHydReducer.cs` / `ucHydReducer.xaml`
|
|
- **Descripción**: Cambio gradual de diámetro de tubería
|
|
- **Tipos**: Concentric, Eccentric
|
|
- **Propiedades**:
|
|
- Diámetro de entrada
|
|
- Diámetro de salida
|
|
- Ángulo de reducción
|
|
- Pérdida por expansión/contracción
|
|
|
|
### **Distribuidor Multiple** - `osHydManifold`
|
|
- **Archivo**: `osHydManifold.cs` / `ucHydManifold.xaml`
|
|
- **Descripción**: Distribuidor de múltiples salidas
|
|
- **Propiedades**:
|
|
- Número de salidas (2-12)
|
|
- Distribución de caudal
|
|
- Válvulas integradas opcionales
|
|
- Presión de entrada común
|
|
|
|
---
|
|
|
|
## 🎛️ Control Avanzado (Por Implementar)
|
|
|
|
### **Regulador de Presión** - `osHydPressureRegulator`
|
|
- **Archivo**: `osHydPressureRegulator.cs` / `ucHydPressureRegulator.xaml`
|
|
- **Descripción**: Control automático de presión
|
|
- **Propiedades**:
|
|
- Presión de consigna (setpoint)
|
|
- Banda proporcional
|
|
- Control PID integrado
|
|
- Rango de regulación
|
|
- Precisión de control
|
|
|
|
### **Regulador de Caudal** - `osHydFlowRegulator`
|
|
- **Archivo**: `osHydFlowRegulator.cs` / `ucHydFlowRegulator.xaml`
|
|
- **Descripción**: Control automático de caudal
|
|
- **Propiedades**:
|
|
- Caudal de consigna
|
|
- Compensación de presión
|
|
- Tiempo de respuesta
|
|
- Estabilidad de flujo
|
|
|
|
### **Válvula de Alivio** - `osHydPressureRelief`
|
|
- **Archivo**: `osHydPressureRelief.cs` / `ucHydPressureRelief.xaml`
|
|
- **Descripción**: Protección contra sobrepresión
|
|
- **Propiedades**:
|
|
- Presión de apertura
|
|
- Presión de cierre
|
|
- Capacidad de descarga
|
|
- Tipo de pilotaje
|
|
|
|
---
|
|
|
|
## 🌡️ Gestión Térmica (Por Implementar)
|
|
|
|
### **Filtro Hidráulico** - `osHydFilter`
|
|
- **Archivo**: `osHydFilter.cs` / `ucHydFilter.xaml`
|
|
- **Descripción**: Filtración de partículas y contaminantes
|
|
- **Tipos**:
|
|
- `Suction` - Filtro de aspiración
|
|
- `Return` - Filtro de retorno
|
|
- `Pressure` - Filtro de presión
|
|
- `Bypass` - Filtro de bypass
|
|
- **Propiedades**:
|
|
- Grado de filtración (micrones)
|
|
- Capacidad de retención
|
|
- Pérdida de presión
|
|
- Indicador de saturación
|
|
|
|
### **Enfriador** - `osHydCooler`
|
|
- **Archivo**: `osHydCooler.cs` / `ucHydCooler.xaml`
|
|
- **Descripción**: Enfriamiento del fluido hidráulico
|
|
- **Tipos**: Air-cooled, Water-cooled
|
|
- **Propiedades**:
|
|
- Capacidad de enfriamiento (kW)
|
|
- Temperatura de entrada/salida
|
|
- Caudal de fluido refrigerante
|
|
- Eficiencia térmica
|
|
|
|
### **Calentador** - `osHydHeater`
|
|
- **Archivo**: `osHydHeater.cs` / `ucHydHeater.xaml`
|
|
- **Descripción**: Calentamiento del fluido hidráulico
|
|
- **Propiedades**:
|
|
- Potencia de calentamiento (kW)
|
|
- Temperatura objetivo
|
|
- Control de temperatura
|
|
- Protección contra sobrecalentamiento
|
|
|
|
### **Intercambiador de Calor** - `osHydHeatExchanger`
|
|
- **Archivo**: `osHydHeatExchanger.cs` / `ucHydHeatExchanger.xaml`
|
|
- **Descripción**: Intercambio térmico entre fluidos
|
|
- **Tipos**: Plate, Shell-and-tube, Coaxial
|
|
- **Propiedades**:
|
|
- Coeficiente de transferencia térmica
|
|
- Área de intercambio
|
|
- Configuración de flujos
|
|
- Eficiencia térmica
|
|
|
|
---
|
|
|
|
## 🔄 Componentes Especializados (Por Implementar)
|
|
|
|
### **Acumulador Hidráulico** - `osHydAccumulator`
|
|
- **Archivo**: `osHydAccumulator.cs` / `ucHydAccumulator.xaml`
|
|
- **Descripción**: Almacenamiento de energía hidráulica
|
|
- **Tipos**:
|
|
- `Bladder` - Membrana elastomérica
|
|
- `Piston` - Pistón separador
|
|
- `Diaphragm` - Diafragma metálico
|
|
- **Propiedades**:
|
|
- Volumen total
|
|
- Presión de precarga
|
|
- Volumen útil
|
|
- Tiempo de descarga
|
|
|
|
### **Motor Hidráulico** - `osHydMotor`
|
|
- **Archivo**: `osHydMotor.cs` / `ucHydMotor.xaml`
|
|
- **Descripción**: Conversión de energía hidráulica a mecánica rotativa
|
|
- **Tipos**:
|
|
- `Gear` - Motor de engranajes
|
|
- `Vane` - Motor de paletas
|
|
- `Piston` - Motor de pistones
|
|
- `Radial` - Motor radial
|
|
- **Propiedades**:
|
|
- Cilindrada (cm³/rev)
|
|
- Velocidad nominal (rpm)
|
|
- Par motor (Nm)
|
|
- Eficiencia volumétrica/mecánica
|
|
|
|
---
|
|
|
|
## 📋 Plan de Implementación
|
|
|
|
### **Fase 1 - Componentes Básicos** ⭐⭐⭐
|
|
1. `osHydValve` (Ball, Check, Relief)
|
|
2. `osHydPressureSensor`
|
|
3. `osHydFlowSensor`
|
|
4. `osHydTee`
|
|
|
|
### **Fase 2 - Control Intermedio** ⭐⭐
|
|
5. `osHydActuator`
|
|
6. `osHydPressureRegulator`
|
|
7. `osHydFilter`
|
|
8. `osHydManifold`
|
|
|
|
### **Fase 3 - Componentes Avanzados** ⭐
|
|
9. `osHydAccumulator`
|
|
10. `osHydMotor`
|
|
11. `osHydCooler`
|
|
12. `osHydHeatExchanger`
|
|
|
|
### **Fase 4 - Instrumentación Completa**
|
|
13. `osHydLevelSensor`
|
|
14. `osHydTemperatureSensor`
|
|
15. `osHydFlowRegulator`
|
|
16. Componentes de conexión restantes
|
|
|
|
---
|
|
|
|
## 💡 Arquitectura de Interfaces
|
|
|
|
### **Interfaces Base**
|
|
```csharp
|
|
// Control de flujo
|
|
public interface IHydraulicFlowController
|
|
{
|
|
double FlowCoefficient { get; set; }
|
|
double PressureDrop { get; }
|
|
ValveState CurrentState { get; set; }
|
|
}
|
|
|
|
// Actuadores
|
|
public interface IHydraulicActuator
|
|
{
|
|
double Force { get; }
|
|
double Stroke { get; set; }
|
|
double Velocity { get; }
|
|
ActuatorType Type { get; }
|
|
}
|
|
|
|
// Sensores
|
|
public interface IHydraulicSensor
|
|
{
|
|
double MeasuredValue { get; }
|
|
string Units { get; }
|
|
bool IsCalibrated { get; set; }
|
|
double Accuracy { get; }
|
|
}
|
|
|
|
// Componentes térmicos
|
|
public interface IHydraulicThermalComponent
|
|
{
|
|
double ThermalCapacity { get; }
|
|
double HeatTransferCoefficient { get; }
|
|
double OperatingTemperature { get; set; }
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## 🎯 Objetivos del Sistema
|
|
|
|
- **Modularidad**: Cada componente es independiente y reutilizable
|
|
- **Realismo**: Cálculos basados en principios de ingeniería hidráulica
|
|
- **Flexibilidad**: Configuración adaptable a diferentes aplicaciones
|
|
- **Integración**: Compatible con el sistema de simulación existente
|
|
- **Escalabilidad**: Fácil adición de nuevos componentes
|
|
- **Documentación**: Cada componente bien documentado y ejemplificado
|
|
|
|
---
|
|
|
|
## 📚 Referencias Técnicas
|
|
|
|
- ISO 1219-1: Símbolos gráficos para esquemas de circuitos hidráulicos
|
|
- ISO 4413: Transmisiones hidráulicas - Reglas generales y requisitos de seguridad
|
|
- NFPA T3.5.17: Hidráulica industrial - Estándares de filtración
|
|
- API 610: Bombas centrífugas para servicios de refinería petroquímica
|
|
|
|
---
|
|
|
|
*Documento generado automáticamente - CtrEditor v2024*
|
|
*Última actualización: Septiembre 2025*
|