Changements reliés au Modbus CC

-Possibilité d'émettre des rangs invalide en mode entretien (compilation
spéciale seulement avec #define COMPILE_MODBUS_TEST_MODE).
-Correction de la valeur du flag de mise à jour de l'heure.
-Implémentation du flag d'itinéraire principal/secondaire dans la trame
Modbus
-Possibilité d'inhiber le watchdog Modbus à partir du mode entretien.
This commit is contained in:
jfmartel
2017-09-26 11:28:50 -04:00
parent 945f4ccb6b
commit a4df2627b3
14 changed files with 137 additions and 34 deletions
+31 -15
View File
@@ -39,12 +39,14 @@
#include <QMessageBox>
#include "ZTLog.h"
#include "ZTData.h"
#include "ZTconfigmgr.h"
CMaintenancePage::CMaintenancePage(QGraphicsWidget *Parent)
{
Q_UNUSED(Parent)
bool IsModbusEnabled = CZTConfigMgr::instance()->GetModbusCCEnabled();
mProgramHandle = 0;
@@ -82,19 +84,19 @@ CMaintenancePage::CMaintenancePage(QGraphicsWidget *Parent)
mGenerateAlarmBtn = new CTextButtonWidget("Envoyer Alarme",0,30);
mGenerateAlarmBtn->setParentItem(this);
mGenerateAlarmBtn->setPos(540,170);
mGenerateAlarmBtn->setPos(540,160);
connect(mGenerateAlarmBtn,SIGNAL(TxtButtonClicked(CTextButtonWidget*)),this,SLOT(ButtonClicked(CTextButtonWidget*)));
mClearAlarmButton = new CTextButtonWidget("Acquitter Alarme",0,30);
mClearAlarmButton->setParentItem(this);
mClearAlarmButton->setPos(540,210);
mClearAlarmButton->setPos(540,200);
mClearAlarmButton->hide();
connect(mClearAlarmButton,SIGNAL(TxtButtonClicked(CTextButtonWidget*)),this,SLOT(ButtonClicked(CTextButtonWidget*)));
QGraphicsProxyWidget *Proxy = new QGraphicsProxyWidget(this);
mAlarmTypeList = new QComboBox();
Proxy->setWidget(mAlarmTypeList);
Proxy->setPos(100,200);
Proxy->setPos(100,190);
QStringList AlarmTypes;
AlarmTypes << "Erreur de comptage ZT1"
<< "Détection Frotteur Négatif"
@@ -112,17 +114,17 @@ CMaintenancePage::CMaintenancePage(QGraphicsWidget *Parent)
connect(mAlarmTypeList,SIGNAL(currentIndexChanged(int)),this,SLOT(AlarmTypeSelectionChanged(int)));
Proxy->setZValue(2);
mAlarmDescription = new QGraphicsTextItem(this);
mAlarmDescription->setPos(100,170);
mAlarmDescription->setPos(100,160);
mAlarmDescription->setPlainText("Type d'alarme");
Proxy = new QGraphicsProxyWidget(this);
mAlarmRankSpinBox = new QSpinBox();
Proxy->setWidget(mAlarmRankSpinBox);
Proxy->setPos(420,200);
Proxy->setPos(420,190);
mAlarmRankSpinBox->resize(100,30);
mRankDescription = new QGraphicsTextItem(this);
mRankDescription->setPos(420,170);
mRankDescription->setPos(420,160);
mRankDescription->setPlainText("Rang");
QPen FramePen;
@@ -188,10 +190,10 @@ CMaintenancePage::CMaintenancePage(QGraphicsWidget *Parent)
mMaintenanceModeAutoExitTimer->setSingleShot(true);
connect(mMaintenanceModeAutoExitTimer,SIGNAL(timeout()),this,SLOT(AutoExit()));
mAlarmRankSpinBox->setValue(1);
mAlarmRankSpinBox->setMinimum(1);
mAlarmRankSpinBox->setMaximum(1);
mRankDescription->setPlainText("N/A");
mAlarmRankSpinBox->setValue(1);
mAlarmRankSpinBox->setMinimum(1);
mAlarmRankSpinBox->setMaximum(1);
mRankDescription->setPlainText("N/A");
HideMaintenanceItems();
}
@@ -240,19 +242,33 @@ void CMaintenancePage::AlarmTypeSelectionChanged(int index)
case DETECTION_PPE_DETECTION:
case DETECTION_ZT2_PPI_DETECTION:
case DETECTION_ZT2_PPE_DETECTION:
{
{
#ifdef COMPILE_MODBUS_TEST_MODE
mAlarmRankSpinBox->setValue(1);
mAlarmRankSpinBox->setMinimum(1);
mAlarmRankSpinBox->setMaximum(36);
mAlarmRankSpinBox->setMinimum(0);
mAlarmRankSpinBox->setMaximum(99);
mRankDescription->setPlainText("Rang");
#else
mAlarmRankSpinBox->setValue(1);
mAlarmRankSpinBox->setMinimum(1);
mAlarmRankSpinBox->setMaximum(36);
mRankDescription->setPlainText("Rang");
#endif
break;
}
case DETECTION_FN_DETECTION:
{
#ifdef COMPILE_MODBUS_TEST_MODE
mAlarmRankSpinBox->setValue(1);
mAlarmRankSpinBox->setMinimum(1);
mAlarmRankSpinBox->setMaximum(18);
mAlarmRankSpinBox->setMinimum(0);
mAlarmRankSpinBox->setMaximum(99);
mRankDescription->setPlainText("Bogie");
#else
mAlarmRankSpinBox->setValue(1);
mAlarmRankSpinBox->setMinimum(1);
mAlarmRankSpinBox->setMaximum(18);
mRankDescription->setPlainText("Bogie");
#endif
break;
}
case DETECTION_MAGNETIC_SENSOR_COUNT: