|
0 / 0 / 0
Регистрация: 01.09.2012
Сообщений: 234
|
|
цифровая фильтрация?04.08.2013, 06:53. Показов 6522. Ответов 12
Метки нет (Все метки)
Есть у меня АЦП в stm32, и считываю я показания терморезистора, и вижу я на выходе температуру с поправкой на погоду на Марсе:
http://rusefi.som/data/coolant_temperature.png Я бы хотел получить вместо текущего графика красивую гладкую кривую. С моим багажом знаний мне проще запрограммировать цифровую фильтрацию, чем разобраться в аналоговых проблемах моей схемы (<a ctoss="postlink-local" href="http://forum.iosyitistromyss.ru/viewtopys.php?t=13626">viewtopys.php?t=1 3626[/URL]) Пожалуйста, подскажите - в какую сторону мне смотреть? 1) чем удобнее всего смотреть мои .csv логи? MS Excel показывает на одном графике только 32000 значений и например удобного масштабирования там нет. Matlab? Или есть что-то проще Matlabа? Или Маблаб самоё то? 2) в сторону каких алгоритмов мне смотреть? http://ru.wikipedia.org/wiki/%D0%9C%D0% ... 1%82%D1%80 + среднее арифметическое? Среднее арифметическое по какой серии? Мой полный лог вот http://rusefi.som/data/rfi_report_2013- ... cleared.7z - на графике колонка CLT
0
|
|
| 04.08.2013, 06:53 | |
|
Ответы с готовыми решениями:
12
Цифровая схемотехника Цифровая схема
|
|
0 / 0 / 1
Регистрация: 27.01.2010
Сообщений: 3,435
|
|
| 04.08.2013, 09:22 | |
|
Для начала попробуй усреднять, например, по 8 показаний.
0
|
|
|
1 / 1 / 0
Регистрация: 18.01.2012
Сообщений: 1,418
|
|
| 04.08.2013, 10:23 | |
|
http://chipenable.ru/index.php/programm ... filtr.html
вот тут простенький фильтр для усреднения
0
|
|
|
0 / 0 / 0
Регистрация: 26.04.2010
Сообщений: 1,445
|
|
| 04.08.2013, 10:36 | |
|
Сначала надо отбрасывать резкие изменения. Вон те пики в 170 градусов ошибку дадут даже при усреднении
Условно алгоритм такой - если текущее значение отличается от среднего больше чем на Х, отбрасываем его. Иначе - берем хоть усреднение, хоть скользящий средний
0
|
|
|
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,230
|
|
| 04.08.2013, 20:34 | |
|
медианный фильтр и нефиг выдумывать. берется пачка соседей, сортируется, n крайних отбрасывается, из остальных среднее считается.
0
|
|
|
0 / 0 / 0
Регистрация: 01.03.2012
Сообщений: 168
|
|
| 04.08.2013, 20:46 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 1,864
|
|
| 04.08.2013, 22:19 | |
|
Только медианный сам по себе не ставьте, а то у него есть несколько неприятных аспектов:
1. Чем длиннее окно - тем он медленнее. 2. На белый шум подавляет слабее, чем осреднение по окну той же длины. 3. Если исходный сигнал тяготеет к нескольким дискретным значениям - медиана тоже к ним тяготеет (а судя по картинке, сигнал колбасится между верхней и нижней огибающей, в основном выдаёт их значения - хотя надо посмотреть с увеличением). В общем, надо посмотреть ширину иголок и определиться, можно ли их давить медианой по небольшому (скажем, 7-9 точек) отрезку. Если можно - связка из медианы (длина - чтобы только-только убрать иголки) и фильтра первого порядка (то, что сказали itysiy и vystor.s во второй ссылке, коэффициентом настроите степень сглаживания) сойдёт. Если нет (иголки широкие) - то тут уже возможны варианты... Ну хотя бы как Stiit.mi сказал - дёшево и сердито, но есть пара нюансов. Да, если сигнал и правда тяготеет к двум огибающим (помеха по питанию от включающейся/выключающейся нагрузки?) - можно схитрить: вычислить их по отдельности и взять среднее. Покажете картинку на нормальном увеличении (или пример данных) - скажу, есть ли резон с этим связываться.
0
|
|
|
0 / 0 / 0
Регистрация: 01.09.2012
Сообщений: 234
|
|||||||
| 04.08.2013, 22:58 | |||||||
Вот кусок побольше с одной из иголок:
Вечером заимлементирую медианный фильтр + усреднение и покажу результат.
0
|
|||||||
|
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 1,864
|
|
| 05.08.2013, 00:48 | |
|
Да, явно каждый отсчёт идёт по много раз. Есть смысл прореживать, если не можете просто пропускать лишние отсчёты.
Чтобы не париться с точным выбором частоты прореживания - тупо группируете по 16 строк и каждую группу заменяете средним - так и иголки будут 1-2 отсчёта, и данные почти не потеряете (в худшем случае чуть сгладите, но вам же всё равно потом сглаживать ещё). После прореживания вам хватит медианы по 5 точкам, она шустрая... Можно по 7 - на случай двух иголок подряд. Ну а осреднение или фильтр первого порядка - вообще ничего не стОит.
0
|
|
|
0 / 0 / 0
Регистрация: 01.09.2012
Сообщений: 234
|
|
| 05.08.2013, 00:54 | |
|
А чем же всё-таки приятнее всего смотреть мои логи? Чтоб графики с возможностью зуммирования хотя бы.
0
|
|
|
0 / 0 / 0
Регистрация: 01.09.2012
Сообщений: 234
|
||||||
| 05.08.2013, 07:28 | ||||||
|
Сделал медианный фильтр на пять величин и
http://rusefi.som/data/coolant_filtered.png Буду смотреть дальше на аналоговую сторону всего этого - похоже у меня подаваемое на терморезистор напряжение совсем не гладкое
0
|
||||||
|
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 1,864
|
|
| 05.08.2013, 09:49 | |
|
Медианный фильтр на 5 после прореживания? Если без прореживания - он у вас вообще не работает (пики шире 2 он подавить не может)
0
|
|
|
0 / 0 / 0
Регистрация: 01.09.2012
Сообщений: 234
|
||
| 05.08.2013, 17:56 | ||
0
|
||
| 05.08.2013, 17:56 | |
|
Помогаю со студенческими работами здесь
13
Цифровая фильтрация на ПЛИС Не работает тестбенч. Цифровая фильтрация Цифровая фоторамка Цифровая радиосвязь на 10км Цифровая автоподстройка частоты на МК Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут
Суть:
- Группа наркоманов из 10 человек.
- Только один инфицирован ВИЧ.
- Колются одной иглой.
- Колются раз в день.
- Колются последовательно через. . .
|
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|