DelayTimerresp_Delay;// таймер для формирования задержки на отпускание (пропадание связи)
DelayTimerresp_Delay;// таймер для формирования задержки на отпускание (пропадание связи)
PassiveTimerresp_ptInit;// таймер для формирования задержки на инициализацию связи (задержка на выставление датчика связи после запуска)
PassiveTimerresp_ptInit;// таймер для формирования задержки на инициализацию связи (задержка на выставление датчика связи после запуска)
boolresp_state;
boolresp_state={false};
boolresp_invert;
boolresp_invert={false};
boolresp_force={false};
boolresp_force={false};
TriggertrInitOK;// триггер для "инициализации"
TriggertrInitOK;// триггер для "инициализации"
std::atomic<size_t>numreply;// количество успешных запросов..
std::atomic<size_t>numreply={0};// количество успешных запросов..
std::atomic<size_t>prev_numreply;
std::atomic<size_t>prev_numreply={0};
//
//
boolask_every_reg;/*!< опрашивать ли каждый регистр, независимо от результата опроса предыдущего. По умолчанию false - прервать опрос при первом же timeout */
boolask_every_reg={false};/*!< опрашивать ли каждый регистр, независимо от результата опроса предыдущего. По умолчанию false - прервать опрос при первом же timeout */
- \b force [1,0] - "1" - обновлять значение датчика связи в SM принудительно на каждом цикле проверки ("0" - только по изменению).
- \b force [1,0] - "1" - обновлять значение датчика связи в SM принудительно на каждом цикле проверки ("0" - только по изменению).
- \b exchangeModeID - идентификатор датчика режима работы (см. MBExchange::ExchangeMode).
- \b exchangeModeID - идентификатор датчика режима работы (см. MBExchange::ExchangeMode).
- \b ask_every_reg - 1 - опрашивать ВСЕ регистры подряд, не обращая внимания на timeout. По умолчанию - "0" Т.е. опрос устройства (на текущем шаге цикла опроса), прерывается на первом же регистре, при опросе которого возникнет timeout.
- \b ask_every_reg - 1 - опрашивать ВСЕ регистры подряд, не обращая внимания на timeout. По умолчанию - "0" Т.е. опрос устройства (на текущем шаге цикла опроса), прерывается на первом же регистре, при опросе которого возникнет timeout.
- \b safemodeSensor - датчик для управления "безопасным режимом". см. \ref MBTCPM_SafeMode
- \b safemodeSensorValue - значение датчика, при котором происходит сброс в "безопасные значения"
Секция <GateList> позволяет задать несколько каналов связи со Slave-устройством. Это удобно для случая, когда Slave имеет
Секция <GateList> позволяет задать несколько каналов связи со Slave-устройством. Это удобно для случая, когда Slave имеет
более одного канала связи с ним (основной и резервный например).
более одного канала связи с ним (основной и резервный например).
<itemid="1027"mb="2"mbtype="rtu"mbaddr="0x01"mbreg="41"mbfunc="0x10"vtype="F2"iotype="AO"name="TestWrite1027_F2"precision="1"textname="F2: Тестовый регистр для 0x10"/>
<itemid="1027"mb="2"mbtype="rtu"mbaddr="0x01"mbreg="41"mbfunc="0x10"vtype="F2"iotype="AO"name="TestWrite1027_F2"precision="1"textname="F2: Тестовый регистр для 0x10"/>
<itemid="1028"mb="2"mbtype="rtu"mbaddr="0x01"mbreg="47"mbfunc="0x03"vtype="F2"iotype="DI"name="TestWrite1028_F2"textname="F2: Тестовый регистр для 0x10"/>
<itemid="1028"mb="2"mbtype="rtu"mbaddr="0x01"mbreg="47"mbfunc="0x03"vtype="F2"iotype="DI"name="TestWrite1028_F2"textname="F2: Тестовый регистр для 0x10"/>
<itemid="1041"safeval="42"mb="1"mbtype="rtu"mbaddr="0x01"mbreg="10"mbfunc="0x03"iotype="AI"name="SafeMode_TestRead03"textname="(safemode): Тестовый регистр для 0x03"/>
<itemid="1042"safeval="1"mb="1"mbtype="rtu"mbaddr="0x01"mbreg="11"mbfunc="0x02"iotype="DI"name="SafeMode_TestRead02"textname="(safemode): Тестовый регистр для 0x02"/>