Обсуждаем контроллеры компании Atmel.
Ответить

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 14:21:31

отсечь с права и с лева несколько показаний

Не обязательно отсекать. Классический медианный фильтр - сортировка N значений по возрастанию и выбор значения из середины отсортированного массива.

А разве это не есть "отсекать"? ... причем под корень, остается только одно значение.

По subj.
Для того, чтобы получить среднее значение из N отсчетов, есть только один способ - взять среднее арифметическое. При этом (нормальный) шум уменьшается пропорционально корню из N. Т.е. на 4 отсчета шум уменьшается в 2 раза, на 9 - в 3 раза и т.д..
При любом нелинейном воздействии вы получите сдвиг от среднего, причем случайный, а потому его нельзя скомпенсировать.
При обработке сигнала в целях измерения, следует применять только 'линейные' алгоритмы. ... и не забывать ставить аппаратные фильтры.

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 14:29:23

При любом нелинейном воздействии вы получите сдвиг от среднего, причем случайный

Во первых, просто среднее значение - это КИХ ФНЧ с прямоугольным окном. Такое окно имеет значительный уровень боковых лепестков. Если учесть, что шум АЦП (исключая шум квантования) на самом деле далек от нормального распределения и по сути является не шумом а суперпозицией большого количества ПЕРИОДИЧЕСКИХ сигналов-помех, то боковые лепестки дают плохой результат фильтрации. Поэтому гораздо эффективнее применять правильно выбранную оконную функцию. И это будет уже не среднеарифметическое значение.
По поводу нелинейной фильтрации. Импульсная помеха по своей природе ПЕРЕКАШИВАЕТ среднее значение массива и потому должна быть удалена. Иначе как раз линейная фильтрация даст перекос.
ЗЫ. Кстати. Доминирующей помехой в устройствах типа заданного ТС является частота 50Гц и ее гармоники. Поэтому частота дискретизации и антиалиасинговый фильтр на входе должны учитывать именно этот помеховый спектр прежде всего.

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 14:35:11

один способ - взять среднее арифметическое.

Возьмите. То, что вы получите - я уже показывал ранее.
8, 10, 9, 25, 22, 11, 12. Среднеарифметическое - 14. Медиана по упорядоченным значениям - 11. Среднеарифметическое "схватило" импульс, и хоть и размазало его, но он там все равно присутствует. Среднеарифметическое размазывает шум по шкале времени. Но не убирает его.
Да, ребзя, вы тут щас насочиняете "олгоритмоф". "Крайнее среднеарифметическое" :)))
Поиск "крайних" макс и мин работает тупо в лоб. И особенно впаривает еще и проверка на это "пустое" число. Алгоритмы сортировки - это всё-таки вероятностные алгоритмы. Благодаря этому они во многисх случаях могут работать быстрее, чем метод "в лоб".
Последний раз редактировалось MLX90640 Вс фев 05, 2023 14:41:31, всего редактировалось 1 раз.

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 14:38:43

КРАМ, всё так (в первой половине), но вы путаете вносимые искажения и уменьшение шума.
Матчасть говорит, что ... давайте я не буду повторять еще раз весь свой пост, перечитайте его сами.
По поводу шумов ADC - если вы применяете средства измерения (оцифровки) сигнала, которые необратимо искажают выходные данные - вы сам себе злой Буратино.

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 14:53:30

По поводу шумов ADC - если вы применяете средства измерения (оцифровки) сигнала, которые необратимо искажают выходные данные

Давайте начнем с того, что данные ВХОДНЫЕ. Какие будут выходные - это мы и обсуждаем.
Во вторых, входные данные УЖЕ ИСКАЖЕНЫ наличием в них шума, периодических помех, а так же импульсных помех. Исходного сигнала у нас вообще нет. Наша задача к нему приблизиться и для этого требуется фильтрация разного рода.
В третьих, непериодическая случайная (импульсная) помеха очень плохо фильтруется линейными методами. Она может быть только размыта на длину массива. Именно для этого и применяют нелинейную фильтрацию.
Что не так? Кто тут и что собрался искажать?

Добавлено after 6 minutes 32 seconds:
Поиск "крайних" макс и мин работает тупо в лоб. И особенно впаривает еще и проверка на это "пустое" число. Алгоритмы сортировки - это всё-таки вероятностные алгоритмы. Благодаря этому они во многисх случаях могут работать быстрее, чем метод "в лоб".

Еще раз вам повторю. Мы обсуждаем МЕДИАННЫЙ ФИЛЬТР. В самом алгоритме медианного фильтра нет ничего вероятностного. Алгоритм строго детерминирован и дает однозначный, а не вероятностный результат для любого наперед заданного массива. Не путайте вероятность помех и вероятность алгоритма.
У меня ощущение, что вы не желаете вникнуть в то, о чем я написал. Полная медианная фильтрация требует кратно более высоких ресурсов от МК. И главное, оно не дает эффекта на 3/4 и более затраченных ресурсов.
Последний раз редактировалось КРАМ Вс фев 05, 2023 14:55:15, всего редактировалось 1 раз.

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 14:53:34

Эмм ... похоже, матобработку вы забыли. Хорошо, давайте переходить в голую матчасть.
1. возьмите бумажку и нарисуйте график кривой с всплеском, скажем посередине. Т.к. речь о наведенных помехах, то нарисованная помеха не должна вносить DC смещение.
2. вырежте помеху путем зачеркивания центрального пика, путем проведения горизонтальной линии вместо него.
3. Положим, что в графике п1 средний уровень был V1 (просто V1, не важно какой). Вопрос - какой уровень станет после выполнения п2?
а. V1>V2
б. V1=V2
в. V1<V2
Если вы выбрали вариант "б", у вас ошибка, ищите ее.
Т.о., нелинейный прием уменьшил колебания, но необратимо исказил результат измерений.

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 14:59:56

Эмм ... похоже, матобработку вы забыли. Хорошо, давайте переходить в голую матчасть.
1. возьмите бумажку и нарисуйте график кривой с всплеском

А с какого перепуга мне нужно рисовать КРИВУЮ? Вы видимо не стали разбираться с исходной задачей...
Тут никто не обсуждает фильтрацию изменяющегося сигнала. Сигнал на входе - это ПОСТОЯННОЕ НАПРЯЖЕНИЕ с шумом и помехами. Требуется определить истинное значение этого напряжения.
А для изменяющихся сигналов нелинейная фильтрация применима только к АНСАМБЛЮ МАССИВОВ этого сигнала. То есть нужно иметь идентичные массивы сигнала. Как они получаются - это другой вопрос. Но такие ансамбли типичны для локации и для анализа изображений.
Последний раз редактировалось КРАМ Вс фев 05, 2023 15:01:23, всего редактировалось 1 раз.

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 15:00:43

У меня ощущение, что вы не желаете вникнуть в то, о чем я написал. в.

Да я ВНИК, вник :) Не зря ж я прикинулся малограмотным и спрашивал :) Посмотрел, оценил, и вынес для себя вывод - топорно. Особенно с вот этими вот "пустыми" значениями. Это топорность какая-то. И притом, она ничуть не быстрее. Работает "в лоб", да еще и по-колхозному. Уж простите за прямоту.

Медианный фильтр работает все-же с упорядоченными значениями, а не с "крайними выброшенными". Лучше сами вникните в тему и не считайте себя умнее других.

Да, кстати, помнится, вначале вы имели неосторожность сказать, что
Расчет СКЗ таким накоплением не является.

А как же, извините, вы его вообще считаете? :) Умножаете на 0,7? Хехе, дак это ж только для синусоиды справедливо. А так то - среднеквадратичное - есть сумма квадратов/N и кв.кор. из всего этого.

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 15:07:08

Медианный фильтр работает все-же с упорядоченными значениями, а не с "крайними выброшенными". Лучше сами вникните в тему и не считайте себя умнее других.

Увы, я бессилен что либо вам объяснить. Добавлю только, что лет так 14 назад я тоже делал сортировку. А мой начальник (кандидат наук и специалист в обработке сигналов) "вычеркивал". Рассказать какой у нас получался результат? :))) :))) :))) Расскажу - идентичный. Только у него на порядок быстрее.
Да, кстати, помнится, вначале вы имели неосторожность сказать, что
Расчет СКЗ таким накоплением не является.

А как же, извините, вы его вообще считаете?

СКЗ копит сигнал скалярно. То есть не фильтрует помеху, а накапливает её. Это принцип СКЗ. Он для этого и создан. Учите матчасть.

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 15:14:14

А мой начальник (кандидат наук и специалист в обработке сигналов) "вычеркивал"

Ну передайте "превеД" этому вашему "начальнику" :) Как говорится, не все начальники одинаково полезны. Я бы его "вычеркнул" в первом же проходе, как крайний элемент :) Кандидат наук - это еще не доктор философии.
Ладно, хрен с ним, с начальником этим, вычеркиваем его. Всё, на пустое значение его заменим! Пусть радуется.

А с СКР, накапливающем помеху, тоже "начасьника сказаланама"? А этот кандидат в насяльники не говорил, что сигнал может лежать целиком в положительной области значений?
Дааа, халосый насяльника, а главное - умный! Кандидат целый, во как! Только он чота не сказаланама, шо есть помеханама? Помеха помехе - розньнамана. Да и медианный фильтр не всесиленнамана. Ох уж эти кандидаты в насяльникинама.

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 15:46:21

Я не собираюсь обсуждать что либо с паталогическим хамом. Да еще и малограмотным.
На том и закончим наше общение. Аминь.

Добавлено after 14 minutes 9 seconds:
мы использовали фильтр-гистерезис...
фильтр-гистерезис устраняет шум квантования АЦП...

Вы шум не устранили, а преобразовали его вниз по частоте.
Шум квантования устранить нельзя. Его можно только понизить. Оверсемплингом и линейной фильтрацией.

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 15:48:26

Ну, на этом и закончим. Марк, я был лучшего о тебе мнения. Но годы идут, а ты так и остаешься хамлом малограмотным, да еще и обидчивым как.... ну ты понял, да.
Вобщем, учи матчасть, чувак. И не считай себя умнее других. А коль закончились аргументы - НЕ ХАМИ.

Вобщем, когда поймешь что к чему - заходи, обсудим. А пока не разобрался в "крайних" значениях - не ерепенься, а слушай, что тебе говорят грамотные опытные коллеги. Не "насяльники"-кандидаты в науки, а реальные пасаны. Вот так то. Превед твоему насяльнику. :) Учись, студень

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 15:53:52

Это очень эпично...
Во первых, я вам на ты переходить не позволял.
Во вторых, я вам не хамил. В отличии от вас.
Быдло - оно такое быдло, увы...
:facepalm:

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 15:57:54

Ну, когда закончились аргументы, начинаете переходить на личности. Я вас не оскорблял, Марк! А вы - оскорбляете, перешли на личности. Это наказуемо! Держите при себе личные оскорбления.
А матчасть всё-же изучите! А то не знаете, что среднеквадратичное - есть сумма квадратов, и это тоже накопление. А сигнал, он может в том числе иметь только положительные значеня. Ну и медиана - она по упорядоченным значениям, а не по "крайним". Ну и нет такого понятия, как "пустое значение" в данном контексте работы.
Я ж на это вам и намекал. Учите матчасть! И не выдумывайте тут больше всякой ереси некошерной.

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 16:03:05

Ваше кривляние и есть хамство.
Ну а если желаете что либо узнать про СКЗ, то возьмите однополупериодную синусоиду и найдите СКЗ и среднее.
Потом и поговорим. Если извинитесь, конечно.

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 16:04:53

Вначале извинитесь вы, за личные оскорбления. Потом разберем ваши базовые заблуждения про медиану с "крайними" и про "пустое значение". Ну и про остальное потолкуем. А то вы чето слишком не по теме начали гнуть.
Учите матчасть, Марк, учите матчасть! И не пишите ереси, не выучив матчасть!

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 16:07:00

MLX90640, ты опять тут воду мутишь? Высказался о начальнике, не зная его лично. Когда тебя ткнули носом, снова стрелки перевел за свои же поступки. Заканчивай. Высказался по техническим вопросам, хорош. Не превращай тему в очередной балаган.

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 16:10:42

Ну да, дилетанты тут хамят мне, а я еще и виноват? Ну ладно, как хотите. Оставайтесь при своих. Мне лень тратить время на вашу ересь. Мне ваще пофик, как бы вот. Главное - это Я. Остальное - похрен.

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 16:24:20

Что и требовалось доказать.

Re: Алгоритм сглаживания шумов АЦП микроконтроллера.

Вс фев 05, 2023 16:46:54

Народ. Научитесь общаться адекватно на форумах. Вы скажете, я сам грешен. И я признаю. Да. Было.
Разное воспитание и окружение. Образование. Опыт, навыки. Разные психотипы. Разное понимание тем. Научитесь быть более гибкими.
Кто то перешёл на личности. Промолчите. Это интернет. Тут не работает "пацан", "мужик". Взять недавний случай. Человек случайно зашёл в тему avr. Определенное понимание есть. Но работа у него в другой области. Там он руководитель. Если не врёт. И всю тему он занимался тем что морочил голову всем участникам.
Так что прекращайте.
Не хамите и не реагируйте. Живите дружно.
Ответить