Вы должны учитывать специфику приложений в которых езеркат используется. Это системы управления технологией.
Там не важна потеря одного или нескольких пакетов. Просто пропускаем без выполнения битый пакет.
Там не важна потеря одного или нескольких пакетов. Просто пропускаем без выполнения битый пакет.
Специфика спецификой, но хотелось бы знать цифры (статистику), полученные на практике. Как часто пакеты приходят "битыми". В том числе как часто "коцает" пакеты именно ПЛИСина. Она же тоже может сбойнуть (пропустить такт например), а не только помехи коцают пакеты. А когда таких ПЛИСин шесть и более в цепочке, то вероятность получить "битый" пакет экспоненциально растет.
Вот я и стремаюсь. У меня в цеху жесткая электромагнитная обстановка (инверторы, сварочные автоматы, плазменная резка, куча силовых контакторов и реле клацают, станки шумят и ШИМят и т.п.), а я ещё 8 территориально разнесенных EtherCAT слейвов в цепочку поставить хочу.
Насколько надёжно все это будет работать?
Не получится ли так, что каждый второй пакет будет битый.
Но это еще полбеды.
А вот что два ПОДРЯД и более пакетов будут битыми - вот это пипец.
Потому что у ИУ цикл должен быть порядка 50 мкс.
А если пакеты будут часто биться, то можно и не уложиться
На мокроконтроллере это не сделаешь.
Жаль
Я реализовал слейв на плисе без поддержки всего стандарта. Задача была узкой специализации. Просто пропускал ненужные поля.
Т.е. Вы сделали не EtherCAT, а просто некий самопальный протокол похожий на EtherCAT, в котором реализован метод "суммарного фрейма"?