Показать сообщение отдельно
Старый 01.04.2018, 17:23   #1
ailcat
Senior Member
 
Аватара для ailcat
 
Регистрация: Oct 2010
Адрес: Москва
Сообщения: 403
Благодарил(а): 29 раз(а)
Поблагодарили: 2 раз(а) в 2 сообщениях
Question Защита от "дребезга" данных, получаемых по RS485? (проблема решена)

Добрый день!
Столкнулся с вроде несложной задачей, но туплю уже не первый день. Помогите, кто сталкивался, пожалуйста.

Исходные данные:
Опрос удаленного оборудования с максимально возможной частотой (опрос с малым периодом). На основании вычитанных данных (29 запросов) рассчитываются 102 переменых, нужных на следующем уровне АСУ ТП.

Проблема в том, что больше трети точек опроса имеют непредсказуемый ответ (могут кинуть "случайные" - точнее, промежуточные - данные). При этом известно, что если несколько опросов дали одинаковые данные - на выходе будеь установившаяся величина.

Простейшим решением видится фильтр "дребезга" на переменные (например, трижды пришли одни и те же данные - защелкиваем это значение для следующего уровня управления).
Но хоть убей, не могу привязать это "трижды" так, чтобы оно отсчитывалось не по тикам контроллера, а именно по успешным опросам оборудования...
Может кто знает, как?
ailcat вне форума   Ответить с цитированием