diff --git a/Configuration/ZTSettings.ztc b/Configuration/ZTSettings.ztc index d4476a5..d7191e9 100644 Binary files a/Configuration/ZTSettings.ztc and b/Configuration/ZTSettings.ztc differ diff --git a/sftpbatch b/sftpbatch index ea11de0..98c05f1 100644 --- a/sftpbatch +++ b/sftpbatch @@ -1,3 +1,3 @@ -put ./Trains/LOGZT1_2024-06-07-14-19-16-025.bin CVRT-D-LOGZT1_2024-06-07-14-19-16-025.bin +put ./Trains/LOGZT1_2024-07-04-15-45-02-320.bin CVRT-D-LOGZT1_2024-07-04-15-45-02-320.bin put ./LOG/LogZT.txt CVRT-LogZT.txt put ./ING/IngLog.txt CVRT-IngLog.txt \ No newline at end of file diff --git a/sources/Modbus/PIHistorianDefs.h.autosave b/sources/Modbus/PIHistorianDefs.h.autosave deleted file mode 100644 index d5b76ca..0000000 --- a/sources/Modbus/PIHistorianDefs.h.autosave +++ /dev/null @@ -1,139 +0,0 @@ -#ifndef PIHISTORIANDEFS_H -#define PIHISTORIANDEFS_H - -#define PI_HISTORIAN_WATCHDOG_TIMEOUT 3000 - -//PI HISTORIAN modbus table masks - - -//Flags definitions for HR2000 -#define ZT1_FN_ACTIVE_FLAG_MASK 0x0001 -#define ZT1_PP_INT_ACTIVE_FLAG_MASK 0x0002 -#define ZT1_PP_EXT_ACTIVE_FLAG_MASK 0x0004 -#define ZT1_PG_ACTIVE_FLAG_MASK_4 0x0008 -#define ZT2_PP_INT_ACTIVE_FLAG_MASK 0x0010 -#define ZT2_PP_EXT_ACTIVE_FLAG_MASK 0x0020 -#define ZT_MAINTENANCE_MODE_FLAG_MASK 0x0040 -#define ZT1_PP_EXT_FLAG_MASK 0x0080 -#define ZT1_PG_FLAG_MASK_1 0x0100 -#define ZT1_PG_FLAG_MASK_2 0x0200 -#define ZT1_PG_FLAG_MASK_3 0x0400 -#define ZT1_PG_FLAG_MASK_4 0x0800 -#define ZT1_FN_FLAG_MASK_1 0x1000 -#define ZT1_FN_FLAG_MASK_2 0x2000 -#define ZT1_FN_FLAG_MASK_3 0x4000 -#define ZT1_FN_FLAG_MASK_4 0x8000 - -//Flags definitions for HR2017 -#define ZT2_PP_INT_FLAG_MASK_1 0x0001 -#define ZT2_PP_INT_FLAG_MASK_2 0x0002 -#define ZT2_PP_INT_FLAG_MASK_3 0x0004 -#define ZT2_PP_INT_FLAG_MASK_4 0x0008 -#define ZT2_PP_EXT_FLAG_MASK_1 0x0010 -#define ZT2_PP_EXT_FLAG_MASK_2 0x0020 -#define ZT2_PP_EXT_FLAG_MASK_3 0x0040 -#define ZT2_PP_EXT_FLAG_MASK_4 0x0080 - ///UNUSED FLAGS NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 -#define ZT2_PG_DUMMY_MASK_1 0x0100 //UNUSED FLAG NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 -#define ZT2_PG_DUMMY_MASK_2 0x0200 //UNUSED FLAG NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 -#define ZT2_PG_DUMMY_MASK_3 0x0400 //UNUSED FLAG NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 -#define ZT2_PG_DUMMY_MASK_4 0x0800 //UNUSED FLAG NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 -#define ZT2_FN_DUMMY_MASK_5 0x1000 //UNUSED FLAG NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 -#define ZT2_FN_DUMMY_MASK_6 0x2000 //UNUSED FLAG NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 -#define ZT2_FN_DUMMY_MASK_7 0x4000 //UNUSED FLAG NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 -#define ZT2_FV_DUMMY_MASK_8 0x8000 //UNUSED FLAG NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 - //////////////////////////////////////////////////////////////////// - -//Flags definitions for HR2026 -#define ZT1_V00_ALARM_FLAG_MASK 0x0001 -#define ZT1_PEQ1_ALARM_FLAG_MASK 0x0002 -#define ZT1_ALARM_ITI_FLAG_MASK 0x8000 -#define ZT2_V02_ALARM_FLAG_MASK 0x0004 -#define ZT2_PEQ2_ALARM_FLAG_MASK 0x0008 -#define ZT2_ACTIVATED_ITI_DUMMY_MASK 0x4000 //UNUSED FLAG NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 -#define ZT_ACTIVATED_ITI_FLAG_MASK 0x8000 - -//Flags definitions for HR2027 -#define ZT_WATCHDOG_ON_VALUE 0x8000 -//#define ZT_WATCHDOG_ON_VALUE 0x0001 //JFM 2020-09-25 modifie pour essais ATS (V1.21_TEST_ATS), doit etre 0x8000 en exploitation -#define ZT_WATCHDOG_OFF_VALUE 0x0000 - - -//Register addressing -//Outgoing -#define MODBUS_ZT_DATA_BASE_REG 2000 -#define MODBUS_ZT_TABLE_DATA_SIZE 36 //Taille de la table en écriture = 36 registres (2000 à 2035) //28 //Taille de la table en écriture = 28 registres (2000 à 2027) - -#define MODBUS_ZT1_ALARM_DATA_BASE_REG_ADD 2000 -#define MODBUS_ZT2_ALARM_DATA_BASE_REG_ADD 2017 -#define MODBUS_MISC_DATA_BASE_REG_ADD 2026 -#define MODBUS_ZT_WATCHDOG_REG_ADD 2027 - -#define MODBUS_ZT1_ALARM_RANKS_BASE_ADD 2001 -#define MODBUS_ZT1_RANK_PP_INT_1_REG_ADD 2001 -#define MODBUS_ZT1_RANK_PP_INT_2_REG_ADD 2002 -#define MODBUS_ZT1_RANK_PP_INT_3_REG_ADD 2003 -#define MODBUS_ZT1_RANK_PP_INT_4_REG_ADD 2004 -#define MODBUS_ZT1_RANK_PP_EXT_1_REG_ADD 2005 -#define MODBUS_ZT1_RANK_PP_EXT_2_REG_ADD 2006 -#define MODBUS_ZT1_RANK_PP_EXT_3_REG_ADD 2007 -#define MODBUS_ZT1_RANK_PP_EXT_4_REG_ADD 2008 -#define MODBUS_ZT1_RANK_PG_1_REG_ADD 2009 -#define MODBUS_ZT1_RANK_PG_2_REG_ADD 2010 -#define MODBUS_ZT1_RANK_PG_3_REG_ADD 2011 -#define MODBUS_ZT1_RANK_PG_4_REG_ADD 2012 -#define MODBUS_ZT1_RANK_FN_1_REG_ADD 2013 -#define MODBUS_ZT1_RANK_FN_2_REG_ADD 2014 -#define MODBUS_ZT1_RANK_FN_3_REG_ADD 2015 -#define MODBUS_ZT1_RANK_FN_4_REG_ADD 2016 - -#define MODBUS_ZT2_ALARM_RANKS_BASE_ADD 2018 -#define MODBUS_ZT2_RANK_PP_INT_1_REG_ADD 2018 -#define MODBUS_ZT2_RANK_PP_INT_2_REG_ADD 2019 -#define MODBUS_ZT2_RANK_PP_INT_3_REG_ADD 2020 -#define MODBUS_ZT2_RANK_PP_INT_4_REG_ADD 2021 -#define MODBUS_ZT2_RANK_PP_EXT_1_REG_ADD 2022 -#define MODBUS_ZT2_RANK_PP_EXT_2_REG_ADD 2023 -#define MODBUS_ZT2_RANK_PP_EXT_3_REG_ADD 2024 -#define MODBUS_ZT2_RANK_PP_EXT_4_REG_ADD 2025 - ///UNUSED FLAGS NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 -#define MODBUS_ZT2_DUMMY_RK_PG_1_REG_ADD 2028 //UNUSED FLAG NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 -#define MODBUS_ZT2_DUMMY_RK_PG_2_REG_ADD 2029 //UNUSED FLAG NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 -#define MODBUS_ZT2_DUMMY_RK_PG_3_REG_ADD 2030 //UNUSED FLAG NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 -#define MODBUS_ZT2_DUMMY_RK_PG_4_REG_ADD 2031 //UNUSED FLAG NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 -#define MODBUS_ZT2_DUMMY_FN_PG_1_REG_ADD 2032 //UNUSED FLAG NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 -#define MODBUS_ZT2_DUMMY_FN_PG_2_REG_ADD 2033 //UNUSED FLAG NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 -#define MODBUS_ZT2_DUMMY_FN_PG_3_REG_ADD 2034 //UNUSED FLAG NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 -#define MODBUS_ZT2_DUMMY_FN_PG_4_REG_ADD 2035 //UNUSED FLAG NECESSARY FOR CC IMPLEMENTATION. MUST ALWAYS BE 0 - /////////////////////////////////////////////////////////////////// - - -//Incoming -#define MODBUS_CC_FCYCLE_ZT1_FLAG_MASK 0x0001 -#define MODBUS_CC_FCYCLE_ZT2_FLAG_MASK 0x0002 -#define MODBUS_CC_INHIBIT_ZT1_FLAG_MASK 0x0004 -#define MODBUS_CC_INHIBIT_ZT2_FLAG_MASK 0x0008 -#define MODBUS_CC_CLK_UPDATE_FLAG_MASK 0x8000 - -#define MODBUS_CC_DATA_BASE_REG_ADD 2036//2028 -#define MODBUS_CC_TABLE_DATA_SIZE 15 //Taille de la table en lecture = 15 registres (2036 à 2050 ///(2028 à 2042) - - -#define MODBUS_CC_WATCHDOG_BASE_REG_ADD 2036 -#define MODBUS_CC_AN_BASE_REG_ADD 2037 -#define MODBUS_CC_ZT1_TRAIN_TYPE_REG_ADD 2038 -#define MODBUS_CC_ZT2_TRAIN_TYPE_REG_ADD 2039 -#define MODBUS_CC_ZT1_TRAIN_ID_1_REG_ADD 2040 -#define MODBUS_CC_ZT1_TRAIN_ID_2_REG_ADD 2041 -#define MODBUS_CC_ZT1_TRAIN_ID_3_REG_ADD 2042 -#define MODBUS_CC_ZT2_TRAIN_ID_1_REG_ADD 2043 -#define MODBUS_CC_ZT2_TRAIN_ID_2_REG_ADD 2044 -#define MODBUS_CC_ZT2_TRAIN_ID_3_REG_ADD 2045 -#define MODBUS_CC_CLK_UPDATE_BASE_REG_ADD 2046 -#define MODUBS_CC_CLK_SEC_BASE_REG_ADD 2047 -#define MODUBS_CC_CLK_HR_MIN_BASE_REG_ADD 2048 -#define MODUBS_CC_CLK_MNT_DAY_BASE_REG_ADD 2049 -#define MODUBS_CC_CLK_YEAR_BASE_REG_ADD 2050 - - -#endif // PIHISTORIANDEFS_H diff --git a/sources/Modbus/PIHistorianManager.cpp b/sources/Modbus/PIHistorianManager.cpp index f71a860..7de4dc4 100644 --- a/sources/Modbus/PIHistorianManager.cpp +++ b/sources/Modbus/PIHistorianManager.cpp @@ -90,7 +90,7 @@ int CPIHistorianManager::UpdateDetectionFunctions(CZTDetectionFunctionConfig *De if(OK == false) return RET_ERROR; - if(DetectionCfg->mZTDetectionConfig[DETECTION_FCT_FN].AnalysisActive == true || DetectionCfg->mZTDetectionConfig[DETECTION_FCT_FN].TKActive == true) + if(DetectionCfg->mZTDetectionConfig[DETECTION_FCT_FN].AnalysisActive == true && DetectionCfg->mZTDetectionConfig[DETECTION_FCT_FN].TKActive == true) { StatusReg |= HISTORIAN_ZT1_FN_ENABLED_FLAG_MASK; } @@ -99,7 +99,7 @@ int CPIHistorianManager::UpdateDetectionFunctions(CZTDetectionFunctionConfig *De StatusReg &= ~HISTORIAN_ZT1_FN_ENABLED_FLAG_MASK; } - if(DetectionCfg->mZTDetectionConfig[DETECTION_FCT_PG].AnalysisActive == true || DetectionCfg->mZTDetectionConfig[DETECTION_FCT_PG].TKActive == true) + if(DetectionCfg->mZTDetectionConfig[DETECTION_FCT_PG].AnalysisActive == true && DetectionCfg->mZTDetectionConfig[DETECTION_FCT_PG].TKActive == true) { StatusReg |= HISTORIAN_ZT1_PG_ENABLED_FLAG_MASK; } @@ -108,7 +108,7 @@ int CPIHistorianManager::UpdateDetectionFunctions(CZTDetectionFunctionConfig *De StatusReg &= ~HISTORIAN_ZT1_PG_ENABLED_FLAG_MASK; } - if(DetectionCfg->mZTDetectionConfig[DETECTION_FCT_PP].AnalysisActive == true || DetectionCfg->mZTDetectionConfig[DETECTION_FCT_PP].TKActive == true) + if(DetectionCfg->mZTDetectionConfig[DETECTION_FCT_PP].AnalysisActive == true && DetectionCfg->mZTDetectionConfig[DETECTION_FCT_PP].TKActive == true) { StatusReg |= HISTORIAN_ZT1_PP_ENABLED_FLAG_MASK; } @@ -117,7 +117,7 @@ int CPIHistorianManager::UpdateDetectionFunctions(CZTDetectionFunctionConfig *De StatusReg &= ~HISTORIAN_ZT1_PP_ENABLED_FLAG_MASK; } - if(DetectionCfg->mZTDetectionConfig[DETECTION_FCT_PP2].AnalysisActive == true || DetectionCfg->mZTDetectionConfig[DETECTION_FCT_PP2].TKActive == true) + if(DetectionCfg->mZTDetectionConfig[DETECTION_FCT_PP2].AnalysisActive == true && DetectionCfg->mZTDetectionConfig[DETECTION_FCT_PP2].TKActive == true) { StatusReg |= HISTORIAN_ZT2_PP_ENABLED_FLAG_MASK; } @@ -126,7 +126,7 @@ int CPIHistorianManager::UpdateDetectionFunctions(CZTDetectionFunctionConfig *De StatusReg &= ~HISTORIAN_ZT2_PP_ENABLED_FLAG_MASK; } - if(DetectionCfg->mZTDetectionConfig[DETECTION_FCT_ZT1].AnalysisActive == true || DetectionCfg->mZTDetectionConfig[DETECTION_FCT_ZT1].TKActive == true) + if(DetectionCfg->mZTDetectionConfig[DETECTION_FCT_ZT1].AnalysisActive == true && DetectionCfg->mZTDetectionConfig[DETECTION_FCT_ZT1].TKActive == true) { StatusReg |= HISTORIAN_ZT_ZT1_ENABLED_FLAG_MASK; } @@ -135,7 +135,7 @@ int CPIHistorianManager::UpdateDetectionFunctions(CZTDetectionFunctionConfig *De StatusReg &= ~HISTORIAN_ZT_ZT1_ENABLED_FLAG_MASK; } - if(DetectionCfg->mZTDetectionConfig[DETECTION_FCT_ZT2].AnalysisActive == true || DetectionCfg->mZTDetectionConfig[DETECTION_FCT_ZT2].TKActive == true) + if(DetectionCfg->mZTDetectionConfig[DETECTION_FCT_ZT2].AnalysisActive == true && DetectionCfg->mZTDetectionConfig[DETECTION_FCT_ZT2].TKActive == true) { StatusReg |= HISTORIAN_ZT_ZT2_ENABLED_FLAG_MASK; }