ГОСТ Р МЭК 61784-3-1—2016
ц
-----------------------------------------------------------------------------------------------
enum {BUFSLZE= 1024}; //Groesse des Read-Buffers
int main(int argc. char’ argvQ) {
if (argc != 2) {
std::cerr« -Usage;" « std:;endl;
std:;cerr« " * « argv[0]« " infile’« std::endi:
return 2;
}
std;:ifstream infile:
infile.open(argv{1], std;;ios_base;;in | std:;ios_base:;binary);
if (iinfile) {
std;;cerr« "ERR; unable to open file * « argv{1l « std:;endl;
exit(1);
}
char buf(BUFSIZE]: //буфер-считывания
size_t totalCount= 0; //Laenge в байтах
unsigned long sig= CRC32ETHER_PRESET; //Предварительное значение srgnatur
while (infile) {
infile.read(&buflO], BUFSIZE);
size_t portionCount= infile.gcount();
totalCount+= portionCount;
sig= GetCRC32Ether(&buf(0]. portionCount. sig);
}
if (!infile.eof()) {
std::cerr« "ERR; ошибка чтения файла" « argv[1] « std:;endl:
exit{1);
}
infile.dose():
std;;cout « argvlO] « *: байты, считанные из файла * « argv(1J «" « totalCount « std;;endl;
std;;cout « argv[0] « *; CRC; Ox* « std;;hex « std;;setw(8)« std;;setfill( 0 ) « sig « std;;endl;
return 0;
}
A.2 Условия сбоев, возникающие за пределами функционального блока вывода
Когда средства диагностирования на устройстве вывода обнаруживают полевой сбой, возникающий за пре
делами функционального блока вывода или за пределами самого устройства, например в подсоединенном испол
нительном устройстве, то предпринимаемое действие определено не в функциональном блоке вывода, а скорее в
блоке преобразователя или в аппаратных средствах. При сбое устройства вывод переходит в обесточенное
состояние так. как если бы было отключено питание у самого устройства. Некоторые устройства вывода могут ис
пользовать резервное питание для исполнительного устройства, и если эта возможность утрачена, то физическое
устройство вывода переходит в обесточенное состояние. Так как эти сбои происходят вне функционального блока
вывода, то конфигурация состояния сбоя не применима. В таблице А.1 представлено такое поведение.
Отказ устройства всегда завершается зафиксированным выводом, который пользователю потребуется
перезапустить.
Т а б л и ц а А.1 — Условия сбоя, возникающие за пределами функционального блока вывода
Условие
Пример
Коккомтармй
Полевой
сбой
Отказ при испытании клапана при не
полном ходе (сбой клапана или испол
нительного устройства), разрыв обмот
ки или короткое замыкание в соленоиде
Диагностические средства и действия, определенные
блоком преобразователя и аппаратными средствами.
Обратная связь через функциональный блок вывода
Отказ
резервного
питания
Потеря поступления воздуха, питания
на шине или гидравлического давления
Действие, определенное аппаратными средствами.
Обратная связь через функциональный блок вывода
Отказ
устройства
питания
Питание шины или независимый источ
ник питания утрачены
Действие, определенное аппаратными средствами
46