ГОСТ Р МЭК 61784-3-12—2016
Переход
Условие
Действие
Следующее
состояние
SESSION_FAIL7
Reset (Сброс)
Frame.Commend
-
Parameter
OR
Frame.Command
-
PiocessOata
OR
Frame.Commend
—
FariSafeData
LastCrc0;
OlfiMasterCrc0;
OldSIaveCrc C;
MasterSeqNo 1;
SlaveSeqNo 1;
DalaCommanO
FailSateD ata;
CommFaultReason INVALID CMD;
SenaFrame(Reset
,
AD R
(CommFaultReason)
,
LastCrc,
0,
ADR(SlaveSeqNo)
,
ADR(OldSlaveCtc),
FALSE);
Sla4’eSeqNo1;
SESSION_FAIL8
<Frame.Command <>
Reset
LastCrcC;
Reset (Сброс)
QldMasterCrt- 0,-
AND
Frame.Command
<>
SeesIon
AMD
Frame.Command
<>
Connectгол
AND
Frame.Command
<>
Paramef.er
AND
Frame.Command
<>
ProcesaCara
AND
Frame.Command
<>
F dllS dtoD jita)
OldSIaveCrcC;
MasterSeqNo1;
SlaveSeqNo 1;
DataCommand
FdilSateD ata;
CommFaultReasonUNKNOWN CMD;
SendFrame(Reset
,
ADR(CojrimFaultReason)
,
LastCrc,
0,
ADR(SlaveSeqNo)
,
ADR(OldSIaveCrc)
,
FALSE)
?
SlaveSeqNo1;
а>Два состояния SESSION_FAIL4 и SESSION_FAIL5 являются единственными состояниями, в которых
должны вычисляться две проверки CRC. Единственное отличив заключается в другом CommFaultReason, т. е.
только диагностическая информация, не информация важная для безопасности. Разрешается сокращать эти
состояния до одного: в этом состоянии только условие «IS_CRC_CORRECT(Frame. 0. ADR(lnitSeqNo). ADR(Old-
MasterCrc). FALSE) = FALSE» должно проверяться с помощью CommFaultReason := INVALID_CRC.
7.5.3.2 Событие истекшего сторожевого таймера
Невозможно в данном состоянии, так как сторожевой таймер еще не был запущен.
7.5.3.3 Событие сброса соединения__________________________________________
Переход
Условие
Действие
Следующее
состояние
SESSION_
LastCrc
0;
RESET2OldMast.erCic0;
OldSIaveCrc 0;
MasterSeqNo 1;
SlaveSeqNo 1;
DataCommand : • FallSafeData,-
CommFaultReason0;
SendFrame(Reset,
ADR(CommFaultReason), LastCrc,
0,
ADR(SlaveSeqNo), ADR(OldSIaveCrc),
FALSE);
SlaveSeqNo1;
Reset (Сброс)
53