/*
 * modbus_hmi_read.c
 *
 *  Created on: 21 δεκ. 2020 γ.
 *      Author: star
 */
#include <adc_tools.h>
#include <edrk_main.h>
#include <modbus_hmi.h>
#include <modbus_hmi_read.h>
#include <protect_levels.h>


#define DELTA_ABNORMAL_P_WATER_MIN      50
#define DELTA_ABNORMAL_P_WATER_MAX      100

void parse_protect_levels_HMI() {

    if (modbus_table_analog_in[91].all > 0) {
        protect_levels.abnormal_temper_acdrive_winding_U1 = modbus_table_analog_in[91].all * 10;
    }
    if(modbus_table_analog_in[92].all > 0) {
        protect_levels.abnormal_temper_acdrive_winding_V1 = modbus_table_analog_in[92].all * 10;
    }
    if(modbus_table_analog_in[93].all > 0) {
        protect_levels.abnormal_temper_acdrive_winding_W1 = modbus_table_analog_in[93].all * 10;
    }
    if (modbus_table_analog_in[94].all > 0) {
        protect_levels.abnormal_temper_acdrive_winding_U2 = modbus_table_analog_in[94].all * 10;
    }
    if (modbus_table_analog_in[95].all > 0) {
        protect_levels.abnormal_temper_acdrive_winding_V2 = modbus_table_analog_in[95].all * 10;
    }
    if (modbus_table_analog_in[96].all > 0) {
        protect_levels.abnormal_temper_acdrive_winding_W2 = modbus_table_analog_in[96].all * 10;
    }
    if (modbus_table_analog_in[97].all > 0) {
        protect_levels.abnormal_temper_acdrive_bear_DNE = modbus_table_analog_in[97].all * 10;
    }
    if(modbus_table_analog_in[98].all > 0) {
        protect_levels.abnormal_temper_acdrive_bear_NE = modbus_table_analog_in[98].all * 10;
    }

    if (modbus_table_analog_in[99].all > 0) {
        protect_levels.alarm_temper_acdrive_winding_U1 = modbus_table_analog_in[99].all * 10;
    }
    if (modbus_table_analog_in[100].all > 0) {
        protect_levels.alarm_temper_acdrive_winding_V1 = modbus_table_analog_in[100].all * 10;
    }
    if (modbus_table_analog_in[101].all > 0) {
        protect_levels.alarm_temper_acdrive_winding_W1 = modbus_table_analog_in[101].all * 10;
    }
    if (modbus_table_analog_in[102].all > 0) {
        protect_levels.alarm_temper_acdrive_winding_U2 = modbus_table_analog_in[102].all * 10;
    }
    if (modbus_table_analog_in[103].all > 0) {
        protect_levels.alarm_temper_acdrive_winding_V2 = modbus_table_analog_in[103].all * 10;
    }
    if (modbus_table_analog_in[104].all > 0) {
        protect_levels.alarm_temper_acdrive_winding_W2 = modbus_table_analog_in[104].all * 10;
    }
    if (modbus_table_analog_in[105].all > 0) {
        protect_levels.alarm_temper_acdrive_bear_DNE = modbus_table_analog_in[105].all * 10;
    }
    if (modbus_table_analog_in[106].all > 0) {
        protect_levels.alarm_temper_acdrive_bear_NE = modbus_table_analog_in[106].all * 10;
    }

    if (modbus_table_analog_in[107].all > 0) {
        protect_levels.abnormal_temper_u_01 = modbus_table_analog_in[107].all * 10;
    }
    if (modbus_table_analog_in[108].all > 0) {
        protect_levels.abnormal_temper_u_02 = modbus_table_analog_in[108].all * 10;
    }
    if (modbus_table_analog_in[109].all > 0) {
        protect_levels.abnormal_temper_u_03 = modbus_table_analog_in[109].all * 10;
    }
    if (modbus_table_analog_in[110].all > 0) {
        protect_levels.abnormal_temper_u_04 = modbus_table_analog_in[110].all * 10;
    }
    if (modbus_table_analog_in[111].all > 0) {
        protect_levels.abnormal_temper_u_05 = modbus_table_analog_in[111].all * 10;
    }
    if (modbus_table_analog_in[112].all > 0) {
        protect_levels.abnormal_temper_u_06 = modbus_table_analog_in[112].all * 10;
    }
    if (modbus_table_analog_in[113].all > 0) {
        protect_levels.abnormal_temper_u_07 = modbus_table_analog_in[113].all * 10;
    }
    if (modbus_table_analog_in[114].all > 0) {
        protect_levels.alarm_temper_u_01 = modbus_table_analog_in[114].all * 10;
    }
    if (modbus_table_analog_in[115].all > 0) {
        protect_levels.alarm_temper_u_02 = modbus_table_analog_in[115].all * 10;
    }
    if (modbus_table_analog_in[116].all > 0) {
        protect_levels.alarm_temper_u_03 = modbus_table_analog_in[116].all * 10;
    }
    if (modbus_table_analog_in[117].all > 0) {
        protect_levels.alarm_temper_u_04 = modbus_table_analog_in[117].all * 10;
    }
    if (modbus_table_analog_in[118].all > 0) {
        protect_levels.alarm_temper_u_05 = modbus_table_analog_in[118].all * 10;
    }
    if (modbus_table_analog_in[119].all > 0) {
        protect_levels.alarm_temper_u_06 = modbus_table_analog_in[119].all * 10;
    }
    if (modbus_table_analog_in[120].all > 0) {
        protect_levels.alarm_temper_u_07 = modbus_table_analog_in[120].all * 10;
    }

    if (modbus_table_analog_in[123].all > 0) {
        protect_levels.abnormal_temper_water_int = modbus_table_analog_in[123].all * 10;
    }
    if (modbus_table_analog_in[124].all > 0) {
        protect_levels.abnormal_temper_water_ext = modbus_table_analog_in[124].all * 10;
    }
    if (modbus_table_analog_in[125].all > 0) {
        protect_levels.alarm_p_water_min_int = modbus_table_analog_in[125].all * 10;
        protect_levels.abnormal_p_water_min_int = protect_levels.alarm_p_water_min_int + DELTA_ABNORMAL_P_WATER_MIN;
    }
    if (modbus_table_analog_in[126].all > 0) {
        protect_levels.alarm_temper_water_int = modbus_table_analog_in[126].all * 10;
    }
    if (modbus_table_analog_in[127].all > 0) {
        protect_levels.alarm_temper_water_ext = modbus_table_analog_in[127].all * 10;
    }
    if (modbus_table_analog_in[128].all > 0) {
        protect_levels.alarm_p_water_max_int = modbus_table_analog_in[128].all * 10;
        protect_levels.abnormal_p_water_max_int = protect_levels.alarm_p_water_max_int - DELTA_ABNORMAL_P_WATER_MAX;
    }

    if (modbus_table_analog_in[129].all > 0) {
        protect_levels.abnormal_temper_air_int_01 = modbus_table_analog_in[129].all * 10;
    }
    if (modbus_table_analog_in[130].all > 0) {
        protect_levels.abnormal_temper_air_int_02 = modbus_table_analog_in[130].all * 10;
    }
    if (modbus_table_analog_in[131].all > 0) {
        protect_levels.abnormal_temper_air_int_03 = modbus_table_analog_in[131].all * 10;
    }
    if (modbus_table_analog_in[132].all > 0) {
        protect_levels.abnormal_temper_air_int_04 = modbus_table_analog_in[132].all * 10;
    }
    if (modbus_table_analog_in[133].all > 0) {
        protect_levels.alarm_temper_air_int_01 = modbus_table_analog_in[133].all * 10;
    }
    if (modbus_table_analog_in[134].all > 0) {
        protect_levels.alarm_temper_air_int_02 = modbus_table_analog_in[134].all * 10;
    }
    if (modbus_table_analog_in[135].all > 0) {
        protect_levels.alarm_temper_air_int_03 = modbus_table_analog_in[135].all * 10;
    }
    if (modbus_table_analog_in[136].all > 0) {
        protect_levels.alarm_temper_air_int_04 = modbus_table_analog_in[136].all * 10;
    }

    if (modbus_table_analog_in[137].all > 0) {
        edrk.iqMIN_U_IN = _IQ(((float)modbus_table_analog_in[137].all) / NORMA_ACP);
    }
    if (modbus_table_analog_in[138].all > 0) {
        edrk.iqMIN_U_IN = _IQ(((float)modbus_table_analog_in[138].all) / NORMA_ACP);
    }

    if (modbus_table_analog_in[139].all > 0) {
        edrk.iqMIN_U_ZPT = _IQ(((float)modbus_table_analog_in[139].all) / NORMA_ACP);
    }
    if (modbus_table_analog_in[140].all > 0) {
        edrk.iqMIN_U_ZPT = _IQ(((float)modbus_table_analog_in[140].all) / NORMA_ACP);
    }

    if (modbus_table_analog_in[142].all > 0) {
        edrk.iqMAX_U_IN = _IQ(((float)modbus_table_analog_in[142].all) / NORMA_ACP);
    }
    if (modbus_table_analog_in[143].all > 0) {
        edrk.iqMAX_U_IN = _IQ(((float)modbus_table_analog_in[143].all) / NORMA_ACP);
    }

    if (modbus_table_analog_in[144].all > 0) {
        edrk.iqMAX_U_ZPT = _IQ(((float)modbus_table_analog_in[144].all) / NORMA_ACP);
    }
    if (modbus_table_analog_in[145].all > 0) {
        edrk.iqMAX_U_ZPT = _IQ(((float)modbus_table_analog_in[145].all) / NORMA_ACP);
    }

    if (modbus_table_analog_in[146].all > 0) {
        protect_levels.alarm_Izpt_max = modbus_table_analog_in[146].all;
    }

    if (modbus_table_analog_in[155].all > 0) {
        protect_levels.alarm_Imax_U01 = modbus_table_analog_in[155].all;
    }
    if (modbus_table_analog_in[156].all > 0) {
        protect_levels.alarm_Imax_U02 = modbus_table_analog_in[156].all;
    }
    if (modbus_table_analog_in[157].all > 0) {
        protect_levels.alarm_Imax_U03 = modbus_table_analog_in[157].all;
    }
    if (modbus_table_analog_in[158].all > 0) {
        protect_levels.alarm_Imax_U04 = modbus_table_analog_in[158].all;
    }
    if (modbus_table_analog_in[159].all > 0) {
        protect_levels.alarm_Imax_U05 = modbus_table_analog_in[159].all;
    }
    if (modbus_table_analog_in[160].all > 0) {
        protect_levels.alarm_Imax_U06 = modbus_table_analog_in[160].all;
    }
    if (modbus_table_analog_in[161].all > 0) {
        protect_levels.alarm_Imax_U07 = modbus_table_analog_in[161].all;
    }
    if (modbus_table_analog_in[162].all > 0) {
        protect_levels.alarm_Iged_max = modbus_table_analog_in[162].all;
    }





}



