Рассмотрен вариант повышения качества измерений дальности ультразвуковыми датчиками за счет применения медианной фильтрации. Подобный подход позволяет исключить негативную особенность ультразвуковых датчиков, которая заключается в том, что из-за особенностей окружающей среды, в которой производится измерение расстояния, датчик периодически определяет это расстояние некорректно. Метрологически это означает, что в ряду измерений расстояния часто появляются результаты измерения, резко отличающиеся от остальных в этом ряду
медианная фильтрация, пьезоэлектрический эффект, качество измерений
Для измерения расстояний до 4 метров находят широкое применение ультразвуковые датчики. Их работа основана на прямом и обратном пьезоэффектах. Типовой датчик содержит две пластины кварца, вырезанных определенным образом. На одну пластину подается переменное напряжение с ультразвуковой частотой, из-за чего пластина начинает деформироваться с этой же частотой и излучать в окружающую среду звуковые колебания. Эти колебания доходят до объекта, который не должен обладать звукопоглощающей поверхностью, и отражаются от него. После чего они возвращаются и начинают воздействовать на вторую пластину кварца, деформируя её. На гранях этой пластины возникают заряды и, соответственно, напряжение, которое и фиксирует измерительная цепь датчика. Зная время с момента излучения ультразвуковых колебаний до мента их возвращения, а также скорость распространения ультразвука в воздухе, можно определить расстояние до объекта. Подобные датчики используют не только для измерения расстояний, а также для определения уровня жидкостей, скорости потока жидкости или газа, определения расхода [1].
При практическом применении подобных датчиков можно столкнуться с одной их особенностью, которая заключается в том, что при измерении расстояния до неподвижного объекта, из-за особенностей окружающей среды и распространения ультразвука, часто в ряду измерений присутствуют значения расстояния, которые однозначно попадают под определение грубых промахов, т.е. это значения, которые резко отличаются от значений других измерений в этом же ряду. Очевидно, что использовать данные с датчика без их предварительной обработки нельзя.
Решить подобную проблему можно при помощи применения медианной фильтрации, реализовать которую можно непосредственно на микроконтроллере, который получает сигнал измерительной информации с датчика.
Медианная фильтрация выполняется следующим образом.
1. На первом этапе микроконтроллер получает от датчика несколько значений расстояния до объекта. Их число ограничено быстродействием датчика и расстоянием до объекта.
2. На втором этапе значения расстояний данной выборки ранжируются (выстраиваются) в порядке возрастания.
3. Если число значений расстояния нечетное, то за результат измерения принимается значение, расположенное посередине в данной выборке. Если число измерений четное, то за результат измерения принимается среднее арифметическое значение двух измерений, расположенных посередине данной выборки.
4. На последнем этапе из выборки исключается первое значение измерения (сделанное первым) и добавляется новое измерение, после чего весь алгоритм повторяется.
Данный алгоритм позволяет исключить грубые промахи и использовать данные с датчика напрямую, без предварительной обработки. Недостатком же подобного алгоритма является необходимость сортировки значений измерений, которая требует времени и снижает общее быстродействие измерительной системы, в которой реализован подобный алгоритм.
Данный алгоритм был успешно экспериментально опробован на лабораторной установке, состоящей из ультразвукового датчика расстояния HC-SR04, платы Arduino Uno, жидкокристаллического индикатора MT-16S2D, а также мишени из фанеры и измерительной рулетки. Анализ результатов эксперимента подтвердил отсутствие грубых промахов в ряду измерений.
1. Келим, Ю. М. Типовые элементы систем автоматического управления / Ю. М. Келим. – Москва : ФОРУМ: ИНФРА–М, 2002. – 384 с.