ГОСТ Р МЭК 61784-3-12—2016
7.4.6 Состояние данных
7.4.6.1 Событие получения кадра
Переход
Условие
Действие
Следующее
состояние
DATA ОК1
Data (Данные)
Frame.Command -
Prосе»aData
AND
Fi«me.ConnId - ConnData.
ConnId
AND
IS CRC CORRECT(Frame,
LastCrc, ADR(SlaveSeqNo),
ADR(OldSlaveCxc),
TRUE) - TRUE
SateinputsFrame.SaleData;
LastCrc Frame.CrcO;
SendFrane(DataCoee.and,
ADR(SaleOutputs), Frame.CrcO,
ConnData.Connld, ADR(MasterSeqNo),
ADR(OidMaSterCrc), TRUE);
LastCrcSendFrame.CrcO; START
XD(SafeFaia.Xatchdog);
DATA_OK2
Data (Данные)
FIome.Command -
FariSafeData
AND
Frame.Connld - ConnData.
Connld
AND
IS CRC CORRECT)Flame,
LastCrc,
ADR(SlaveSeqNo),
ADR(OldSlaveCxc),
TRUE) - TRUE
SateinputsFS_VALUE;
LastCrc Frame.CrcO;
SendFrane(DataCccetand,
ADR(SaleOutputs), Frame.CrcO,
ConnData-Connld, ADR(MasterSeqNo),
ADR(OidMaSterCrc), TRUE);
LastCrcSendFrame.CrcO; START
XD(SaleFara.Xatchdog);
Reset (Сброс)
0;
0;
1;
1;
DATA_FAIL1
(Fxame.Commend -
ProceaaDaia
OR
Frame.Command -
FdiiSafePata)
AND
LastCrc0
OidMaSterCrc
OidS.aveCrc
MasterSeqNo
SlaveSeqNo
DataCocrtiand
F a l ^ S x fe rD a L /l;
Frame.Connld - ConnData.
Connld
AND
IS CRC CORRECT(Frame,
LaStClC,
ADR(SlaveSeqNo),
ADR(CldSlaveCic),
TRUE) - FALSE
DATA_FAIL2
(Frame.Command -
ProcessData
OR
Frame.Command -
FajlSaleData)
AND
Flame.Connld <> ConnData.
Connld
SateinputsFS VALUE;
Ccme.FauitReasonINVALID CRC;
SendFrane(Reset,
ADR (Ccrrrr.FaultReaSOn), LastCrc,
0,
ADR(MasterSeqNo),
ADR(OidMaSterCrc), FALSE);
MasterSeqNoI; START_
XD(SaleFara.Xatchdogl;
LastCrc0
Reset (Сброс)
OldMasterCrc 0;
OidS.aveCrc :- 0;
MasteiSeqNo
Z ;
S-aveSeqNc I;
Da;aCcmrr.and
F a i l S a l e D A L A ;
Sateinputs FS_VALUE;
Cotr.-r,Fau11Rea3on :- INVALID_CONNID
SendFrane(Reset,
ADR(Come.FauItReason), LastCrc,
0 ,
ADR(MaSterSeqNo),
ADR(OidMaSterCrc), FALSE);
MasteiSeqNoI;
STARTJXD(SaleParЛ.Xatchdoq);
42