Files
ats0002/ats0002/21_53_88.h
T
2026-10-12 18:57:28 +03:00

154 lines
5.3 KiB
C

#pragma once
#include "ats0002.h"
#ifdef __cplusplus
extern "C"
{
#endif
/**
* @file 21_53_88.h
*
* @brief Liebherr Condenser CMM 21-53-88 configuration data.
*
* This module provides static configuration data for Liebherr Condenser CMM
* 21-53-88 heat exchanger, including pressure-to-airflow anchor points for
* cooling and hot sides, air passage definitions, and heat exchanger type
* mappings for part numbers 969A0000-01 and 969A0000-02.
*
* Key features:
* - Cooling side performance data (Figure 4002)
* - Hot side performance data (Figures 4003 and 4004)
* - Complete air passage configuration with operational limits
*
* @note All data arrays are static and const-qualified for read-only access.
*/
/**
* @brief Liebherr Condenser CMM 21-53-88, Figure 4002 (P/N 969A0000-01).
*
* Cooling side dependence of ΔPS (KPA) on air flow rate (LB/MIN), UPPER line (+20%).
*/
static const airflow_to_pressure_anchors_data_t _cooling_side_969A0000_01[] = {
{25.0, 0.26},
{30.0, 0.36},
{40.0, 0.61},
{50.0, 0.91},
{60.0, 1.26},
{70.0, 1.75},
{80.0, 2.33},
{90.0, 2.80},
{100.0, 3.50},
{200.0, 13.20}};
/**
* @brief Liebherr Condenser CMM 21-53-88, Figure 4002 (P/N 969A0000-02).
*
* Cooling side dependence of ΔPS (KPA) on air flow rate (LB/MIN), UPPER line (+20%).
*/
static const airflow_to_pressure_anchors_data_t _cooling_side_969A0000_02[] = {
{25.0, 0.26},
{30.0, 0.36},
{40.0, 0.61},
{50.0, 0.91},
{60.0, 1.26},
{70.0, 1.75},
{80.0, 2.33},
{90.0, 2.80},
{100.0, 3.50},
{200.0, 13.20}};
/**
* @brief Liebherr Condenser CMM 21-53-88, Figure 4003 (P/N 969A0000-01).
*
* Hot side dependence of ΔPS (PSIG) on air flow rate (LB/MIN), UPPER line (+20%).
*/
static const airflow_to_pressure_anchors_data_t _hot_side_969A0000_01[] = {
{20.0, 0.25},
{30.0, 0.48},
{40.0, 0.80},
{50.0, 1.25},
{60.0, 1.67},
{70.0, 2.25},
{80.0, 2.75},
{90.0, 3.57},
{100.0, 4.70},
{120.0, 11.00}};
/**
* @brief Liebherr Condenser CMM 21-53-88, Figure 4004 (P/N 969A0000-02).
*
* Hot side dependence of ΔPS (PSIG) on air flow rate (LB/MIN), UPPER line (+20%).
*/
static const airflow_to_pressure_anchors_data_t _hot_side_969A0000_02[] = {
{20.0, 0.17},
{30.0, 0.34},
{40.0, 0.57},
{50.0, 0.83},
{60.0, 1.18},
{70.0, 1.56},
{80.0, 1.93},
{90.0, 2.55},
{100.0, 3.42},
{120.0, 9.51}};
static const air_passage_data_t _air_passage_969A0000_01_data[] = {
{.air_passage_description = "Cold Air Side",
.air_passage_anchors = _cooling_side_969A0000_01,
.anchors_data_size = ARRAY_SIZE(_cooling_side_969A0000_01),
.recalculated_required = false,
.airflow_pressure_unit = KPA,
.min_barometric_pressure = 840.0,
.max_barometric_pressure = 1070.0,
.min_airflow_temperature = 15.0,
.max_airflow_temperature = 33.0,
.min_airflow_pressure = 0.01,
.max_airflow_pressure = 2.0},
{.air_passage_description = "Hot Air Side",
.air_passage_anchors = _hot_side_969A0000_01,
.anchors_data_size = ARRAY_SIZE(_hot_side_969A0000_01),
.recalculated_required = false,
.airflow_pressure_unit = PSIG,
.min_barometric_pressure = 840.0,
.max_barometric_pressure = 1070.0,
.min_airflow_temperature = 15.0,
.max_airflow_temperature = 33.0,
.min_airflow_pressure = 0.01,
.max_airflow_pressure = 15.0}};
static const air_passage_data_t _air_passage_969A0000_02_data[] = {
{.air_passage_description = "Cold Air Side",
.air_passage_anchors = _cooling_side_969A0000_02,
.anchors_data_size = ARRAY_SIZE(_cooling_side_969A0000_02),
.recalculated_required = false,
.airflow_pressure_unit = KPA,
.min_barometric_pressure = 840.0,
.max_barometric_pressure = 1070.0,
.min_airflow_temperature = 15.0,
.max_airflow_temperature = 33.0,
.min_airflow_pressure = 0.01,
.max_airflow_pressure = 2.0},
{.air_passage_description = "Hot Air Side",
.air_passage_anchors = _hot_side_969A0000_02,
.anchors_data_size = ARRAY_SIZE(_hot_side_969A0000_02),
.recalculated_required = false,
.airflow_pressure_unit = PSIG,
.min_barometric_pressure = 840.0,
.max_barometric_pressure = 1070.0,
.min_airflow_temperature = 15.0,
.max_airflow_temperature = 33.0,
.min_airflow_pressure = 0.01,
.max_airflow_pressure = 15.0}};
static const heat_exchanger_type_data_t heat_exchanger_21_53_88_data[] = {
{.part_number_description = "969A0000-01",
.air_passages_data = _air_passage_969A0000_01_data,
.air_passages_data_size = ARRAY_SIZE(_air_passage_969A0000_01_data)},
{.part_number_description = "969A0000-02",
.air_passages_data = _air_passage_969A0000_02_data,
.air_passages_data_size = ARRAY_SIZE(_air_passage_969A0000_02_data)}};
#ifdef __cplusplus
}
#endif