Цифровые фильтры - основы, принципы, примеры

  Рет қаралды 28,792

TDM Lab

TDM Lab

Күн бұрын

В видео рассматриваю вопросы программирования цифровых фильтров
Конкурс PCBWay www.pcbway.com/activity/4th-p...
Изготовление печатных плат: www.pcbway.com/
Интересные сайты: Паяльник cxem.net/
Существует просто огромное количество задач в современном мире которые решаются цифровой обработкой или же цифровой фильтрацией, я в качестве примера сосредоточу внимание на достаточно простом случае, это борьба с широкополосным шумовым сигналом который может мешать точному измерению каких либо величин или качественному управлению каким либо процессом.
00:00 Вступление
01:32 Конкурс PCBWay
02:07 Классификация фильтров
03:57 Эвристические алгоритмы
08:23 Фильтры Конечной Импульсной Характеристики
13:30 Фильтры Бесконечной Импульсной Характеристики
18:08 Адаптивные фильтры
***********************************
Проект в Arduino IDE drive.google.com/file/d/1e76V...
***********************************
Для прямой помощи каналу, перевод с банковских карт:
yoomoney.ru/to/4100116712276152
Модули производства TDM Lab: vk.link/tdm_lab
Группа ВК: tdm_lab
*********Оборудование**********
Осциллограф Siglent SDS1204X-E alii.pub/5wipuv
Паяльная станция KSGER T12 STM32 alii.pub/5wiq92
Паяльный фен KSGER STM32 alii.pub/5wiq1v
*********Расходники**********
Припой HX-T100 alii.pub/5x7gm2
Паяльная паста XG-50 alii.pub/5x7giy
**************STM32**************
STM32G474 Nucleo-64 alii.pub/5sdxo3
STM32F103C8T6 alii.pub/5sbhoe
STM32F103C8T6 Black ali.pub/579d2l
STM32F401CCU6 ali.pub/56s1yb
STM32F411CEU6 ali.pub/56s1yb
STM32F407VET6 alii.pub/5rm368
Программатор ST-Link V2 ali.pub/56weqg
***********Источники опорного напряжения***********
LM399 2,5В/5В/7,5В/10В alii.pub/4li4xj
***********ПЛИС/FPGA***********
Отладочная плата Xilinx FPGA Spartan-7 XC7S15 alii.pub/5rm3ih
Отладочная плата Xilinx SoC FPGA Zynq7000 XC7Z010 alii.pub/5sbga8
Отладочная плата Xilinx FPGA Artix-7 XC7A35T DDR3 256MB alii.pub/5sbgk5
**************Arduino**************
Arduino Uno ATmega328p ali.pub/56s0bz
Arduino Nano ATmega328 ali.pub/56weyt
Arduino Micro ATmega32u4 ali.pub/4m7upw
Arduino Leonardo ATmega32u4 ali.pub/56weg5
Arduino Mega ATmega2560 alii.pub/5sbgtv
*******Шаговые двигатели*******
NEMA17 Hanpose alii.pub/5sbh9f
NEMA23 Hanpose alii.pub/5sbhcx
NEMA34 Hanpose alii.pub/5sbhea
Драйверы ШД TB6600 alii.pub/5sbhhl
***********Наборы SMD************
Набор резисторов 0805 ali.pub/4o3xz7
Набор резисторов 1206 ali.pub/4o3x4h
Набор конденсаторов 0805 ali.pub/4o3y4u
Набор токовых шунтов 2512 ali.pub/4o3udb
*************АЦП/ЦАП*************
АЦП 16 бит I2C ADS1115 ali.pub/56s0mv
АЦП 18 бит I2C MCP3421 ali.pub/56s17o
АЦП 24 бит SPI ADS1220 ali.pub/4zlq1x
MCP4725 ЦАП 12 бит ali.pub/56s2f8
*********DDS генераторы**********
AD9833 12,5MHz ali.pub/4ps0xu
AD9850 40,0MHz ali.pub/56s0yq
AD9851 70,0MHz alii.pub/5sbivr
AD9959 4ch 200,0MHz alii.pub/5sbj4b
*********Дисплеи LCD/TFT*********
Экран LCD 12864 ali.pub/4o3w5a
3,5" TFT LCD ali.pub/56w5gl
1,8" TFT SPI LCD ali.pub/56w4oe
1,3" OLED I2C LCD ali.pub/56w8vh
2,42" SSD1306 OLED SPI/I2C ali.pub/4li5yv
ЖК-экран с клавиатурой, 1602 для Arduino Uno ali.pub/56wau2
**************Диоды***************
Диоды Шоттки 100шт [1А, 60В] SR160 alii.pub/5ogndb
Диоды Шоттки 100шт [2А, 100В] SR2100 ali.pub/4o3s9o
Диоды Шоттки 100шт [2А, 60В] SR260 ali.pub/4o3swt
Диоды Шоттки 20шт [5А, 40В] SR540 alii.pub/5ognnm
Диоды Шоттки 20шт [5А, 200В] SR5200 alii.pub/5ognm2
Диоды Шоттки 5шт [60А, 100В] MBR60100 alii.pub/5og62w
Светодиоды SMD 0805 5 цветов ali.pub/4o3tps
Диодный мост GBJ2510 ali.pub/4o3uvs
**************Разное****************
Термоклейкая лента 80x80 мм alii.pub/5m32dc
DC-DC c 8 ~ 32V до 45 ~ 390V alii.pub/5oav2r
Компараторы LM393 ali.pub/4o3tzp
DC/DC 5V/5V ali.pub/4o3w8l
Тестовые точки ali.pub/4o3wgy
Реле 5V / 230VAC 10A ali.pub/4o3xi3
Оптопары PC817 ali.pub/4o3xpa
ACS712 Датчик тока ali.pub/56s27u
***************************************

Пікірлер: 285
@Paltus667
@Paltus667 2 жыл бұрын
Если я ещё раз прочитаю в коментах, что при оцифровке сигналов на входе не нужен аналоговый фильтр, у меня точно бомбанёт.
@TDMLab
@TDMLab 2 жыл бұрын
Ссылочку которую Вы кинули к сожалению ютуб не пропустил и я не могу восстановить то сообщение, но я посмотрел предложенный курс по ЦОС, автор Сергиенко и я собственно о его книге на 22:03 и говорю, вроде есть и 3-е издание и думаю на 700 страницах содержится даже больше чем в курсе, хотя для тех кому нужны задания то можно и курс пройти, тем более бесплатный. ps прикреплю здесь, мне ютуб позволяет) openedu.ru/course/eltech/DSP/
@DirectionToTheTop
@DirectionToTheTop 2 жыл бұрын
Ну и куда мне прилепить анологовый фильтр, если у меня на входе временные интервалы.
@Paltus667
@Paltus667 2 жыл бұрын
@@TDMLab я когда присматривался к ЦОС, сколько книжки не открывал, все бестолку. Книжек много, информации много, а ничего не откладывается в голове. А вот курс реально хорош, т.к. помимо просто инфы даются ещё тестовые задания и лабы. Плюс можно с самим автором курса пообщаться, вопросы позадавать.
@Paltus667
@Paltus667 2 жыл бұрын
@@DirectionToTheTopникуда. у вас задача другая. Ваш сигнал дискретное значение амплитудой допустим 3,3 Вольта. Поэтому и шумы у вас должны быть тех же порядков. Я же подразумевал оцифровку сигнала (например звука) где шаг сигнала может быть 1/65536 Вольт и шумы тех же порядков.
@kalobyte
@kalobyte 2 жыл бұрын
@@Paltus667 такая же херня пишут так, что ничего не понять проще ролик посмотреть изучал сдр, там фильтры тоже были и я даже понял малость, только практикой не занимался а началось все с того, что я захотел узнать, как генерится звук компутером и как из матана получить этот код для генерации звука
@MrAllmp3
@MrAllmp3 2 жыл бұрын
После ДиХалта думал уже не будет таких крутых авторов в рунете по теме электроники, но у вас помимо высокого профессионального уровня еще есть талант делать замечательные обучающие и объясняющие материалы. Круто! Продолжайте, уверен это будет оценено растущей аудиторией
@mimi-cc3yu
@mimi-cc3yu 2 жыл бұрын
математика из университета перестала быть бесполезной, спасибо за видео)
@ileyka
@ileyka 2 жыл бұрын
По цифровой обработке на Ютубе одни англоязычные индусы) спасибо за образовательные видео!
@TheGradusnick
@TheGradusnick 2 жыл бұрын
Наконец-то хороший канал по электронике. Автору успехов! Главное не останавливайся))
@borisn879
@borisn879 2 жыл бұрын
Фильтр Калмана был в квадрокоптерах, там, как раз, мат.модель нужна. Только сигналы шли из многих датчиков, по степени доверия и корреляции между датчиками как-то оценивали состояние объекта. Потом стали появляться статьи о новых алгоритмах для квадриков, там совсем тяжко понять. А до всего этого делали "сумматор" состояния, после фильтрации данных с медленного (но стабильного во времени) датчика подмешивали данные с быстродействующего (но шумного и нестабильного по времени) датчика. Объект оперативно реагирует на резкие воздействия и плавно стремится к нужному состоянию.
@user-tq7bt1ck5b
@user-tq7bt1ck5b 2 жыл бұрын
Очень хорошее видео. Одно из самых лучших на русском! 👍
@paul310paul
@paul310paul 2 жыл бұрын
Мега-толковая лекция получилась! Спасибо большое!
@andrsam3682
@andrsam3682 2 жыл бұрын
Очень крутой выпуск, спасибо.
@nickhouse555
@nickhouse555 2 жыл бұрын
Отличная подача материала! Так держать!
@user-fy8lh5vd6q
@user-fy8lh5vd6q 2 жыл бұрын
ЦОС это круто! Ждем продолжения!!!
@user-hb2ud2lu7d
@user-hb2ud2lu7d 2 жыл бұрын
Класс, давайте ещё интересного контента😀
@sledleo
@sledleo 2 жыл бұрын
Про КИХ-фильтры интересная тема, при случае попробуем. Позновательно и наглядно, респект!
@DronDanDan
@DronDanDan 2 жыл бұрын
Спасибо вам за обзор фильтров! Классно!
@TDMLab
@TDMLab 2 жыл бұрын
Спасибо за отзыв!
@torsion89
@torsion89 2 жыл бұрын
Супер подача и материал!
@vika_papa
@vika_papa 2 жыл бұрын
Желаю дальнейшего развития канала и автору не останавливаться в духовном росте
@kakoluk_original
@kakoluk_original 2 жыл бұрын
Да не нужно автору автору никакого духовного роста, он технарь, а не религиозный "ужасень". :)
@dimakrayushkin
@dimakrayushkin 2 жыл бұрын
Спасибо за отличное видео, смотрел не отрываясь. С большим интересом смотрю, особенно последние. Так держать!
@TDMLab
@TDMLab 2 жыл бұрын
Спасибо за отзыв
@georgiuermoxin5164
@georgiuermoxin5164 2 жыл бұрын
Спасибо, очень полезно и доступно
@Seriyv0lk
@Seriyv0lk Жыл бұрын
Мало! Давай ещё!
@alexandersamol1358
@alexandersamol1358 3 күн бұрын
Книга Сергиенко хороша для начинающих, особенно применительно в связке с MatLab. По сути это расширенное изложение его курса лекций по DSP, читаемых в СПБ Электротехническом Университете. Для практических применений более интересна книга Ричарда Лайонса "Цифровая обработка сигналов" (Lyons "Understanding Digital Signal Processing" ), она издавалась у нас в печатном виде в середине 2000-х, но и в сети можно найти. Особенно рекомендую обратить внимание на то, что описано в приложениях.
@dinoelvokahsnol8126
@dinoelvokahsnol8126 2 жыл бұрын
давай цикл про ЦОС , теорему Котельникова и всякое такое )
@JohnGrave
@JohnGrave 9 ай бұрын
Если бы ты выпустил это видео пораньше года на 4, когда я сдавал ЦОС в универе :) Отличная подача материала, респект Давай еще!
@alexvmw
@alexvmw 2 жыл бұрын
Спасибо большое!
@user-rt9fw8oq1u
@user-rt9fw8oq1u 2 жыл бұрын
хорошо, кратко и по делу
@87Spectr
@87Spectr 2 жыл бұрын
это шедевр!
@tehtelev
@tehtelev 2 жыл бұрын
Ооо. Через две недели пригодится)
@alexkorot9208
@alexkorot9208 Жыл бұрын
Спасибо!
@user-mo9mn7re5u
@user-mo9mn7re5u 2 жыл бұрын
Молодец! Спасибо!
@igorgolovnya7854
@igorgolovnya7854 2 жыл бұрын
Прям видео под руку)
@negodiaysamsonoff9616
@negodiaysamsonoff9616 2 жыл бұрын
только вчера в маршрутке подслушал)
@alexanderzabolotnyi6513
@alexanderzabolotnyi6513 Жыл бұрын
Спасибо! Каждый раз когда смотрю такие видео убеждаюсь, что нас в универе 6 лет учили чему-то не тому, чему надо было. Факультет элеткроники, телекоммуникации.
@levshx
@levshx 18 күн бұрын
была база типа чебышев, бессель, баттерворт, с проектированием на SPICE и теоретическим расчётом??
@denispacific8821
@denispacific8821 Жыл бұрын
Может кому пригодится Я такие алгоритмы использую НЧ фильтр: temp = out + (in-out) / fsrez; out = temp; In, out - вход, выход, fsrez - число, определяющее глубину среза частот (от 2 до 1000 можете поэкспериментировать), temp - вспомогательная переменная, Частотный фильтр: fk = (2 * p i* (ff / fd) - коэффициент частоты, рассчитывается до основного цикла in = d * in + out * fk out = d * out - in * fk d - добротность (от 0 до 0.99, при 1 схема становится генератором), ff - частота настройки фильтра в герцах, fd - частота дискретизации.
@jankarlionov4646
@jankarlionov4646 2 жыл бұрын
Братан, ты прекрасен : )
@PastuhMedvedey
@PastuhMedvedey 2 жыл бұрын
Отлично!
@winnik7
@winnik7 2 жыл бұрын
Интересно!
@maximkutsev5302
@maximkutsev5302 2 жыл бұрын
Монументально!
@SergeyM12
@SergeyM12 2 жыл бұрын
А практика когда? На конкретном жизненном примере.
@michaelborisenko9232
@michaelborisenko9232 2 жыл бұрын
Подача материала огонь, разжевал и в рот положил, помню в универе мозг плавился когда ЦОС проходили
@kakoluk_original
@kakoluk_original 2 жыл бұрын
Круть. На одном дыхании(правда с паузами, что бы успеть размотать в голове) смотрел. Лично у меня, с представлением аналоговых фильтров проблем нет (советское образование), а у автора ещё и программная реализация. Вот это я понимаю стык дисциплин. P.S. Кто все эти люди, что влепили дизлайки? :)
@TDMLab
@TDMLab 2 жыл бұрын
Спасибо за отзыв! А это статистический шум, без этого никуда:)
@pswru
@pswru 2 жыл бұрын
@@TDMLab Раньше вроде были слухи что дизлайки повышают шанс видоса зайти в рекомендации и тренды - типа горячая тема. И якобы выстреливали видосы у которых лайков и дизов было примерно поровну. Но потом мир изменился. А всем нравится - не реально, кому-то будет слишком просто и банально/обыденно, кому-то слишком сложно и непонятно. Лично мне очень зашло (весьма смотрябельно, и кода хороша в наухах особенно), ибо например так или иначе мечтаю воткнуть паяльник в ламповую Волна-К (хотяб синтезаторы AD9910 или AD9959 прикалхозить и смесители поменять, а как максимум сваять дистанционно управляемый реверсивный ламповый каскад нагруженный и расположенный около магнитной антенны с механической перестройкой вакумным КПЕ раза в 4 по частоте ), а тема ЦОС вообще и цифровых фильтров в частности так или иначе в программно-определяемом радио касается.
@TDMLab
@TDMLab 2 жыл бұрын
@@pswru Сейчас есть параметр "вовлеченность аудитории" и типа лайки и дизлайки поровну оцениваются главное чтобы было взаимодействие с видео. Но там куча алгоритмов и это лишь малая часть уравнения. Если бы DA9910 не стоил бы 4к я бы его уже давно поковырял.
@pswru
@pswru 2 жыл бұрын
@@TDMLab Ну просто генерить синус AD9910 скучновато (полагаю что написать код на асме для буратины у лично меня займёт меньше месяца)- надо именно в контексте радиоприёма как ГПД без особой фильтрации опробовать и сравнить с более грубыми собратьями в плане уменьшения гармоник/характерных призвуков, слышимых на приёме при перестройке частоты гетеродина.
@nikmanmar4601
@nikmanmar4601 2 жыл бұрын
Очень круто, как и всегда. Можно смело сказать научная работа. Вещь интересная, правда область применения узкая.
@user-is1zj2re8p
@user-is1zj2re8p 2 жыл бұрын
Область применения настолько огромна, что не знаешь, за что хвататься: частоты сигналов в живых тканях лежат в диапазоне 20 порядков величины. А все нужны. Например, этап формирования кардиогенной пластинки и первых сосудов - какая-то умопомрачительная голограммы, а ее разбор, пока еще не проведенный, очень многое даст в управлении ростом и дифференцировкой тканей. Лень писать - наиболее общих приложений в биологии о медицине навскидку с десяток.
@nikmanmar4601
@nikmanmar4601 2 жыл бұрын
@@user-is1zj2re8p я не спорю, для специалистов огромная, для обычных обывателей, на кого по большей части рассчитан канал, не так и много кто будет этим заниматься. Но материал подан превосходно.
@clora1136
@clora1136 2 жыл бұрын
Как же хорошо что в большинстве ацп фильтр уже встроен. Хотя теперь я понял откуда задержка перед первым отсчетом, спасибо).
@TDMLab
@TDMLab 2 жыл бұрын
Да, цифровой фильтр является неотъемлемой частью сигма-дельта АЦП и да, ему нужно некоторое время для прохода первого отсчета до выхода.
@pswru
@pswru 2 жыл бұрын
@@TDMLab Кстати, про сигма-дэльта АЦП (и чисто морфологически - почему именно сигма и именно дэльта) - лично я несколько раз пытался понять как именно он работает читая доки например на 20-24 бита АЦП (например AD7710-AD7714, которые я выпросил у внедренцев промышленных весов) для мостовых преобразователей (например тензорезисторных) физических величин, но взаимосвязанная с другими знаниями в моей голове мозаика не сложилась.
@TDMLab
@TDMLab 2 жыл бұрын
@@pswru Ну типа мы дробим аналоговый сигнал на однобитный поток маленьких дельт, а потом складываем их сигмой:) kzfaq.info/get/bejne/hNibecdozZy2Yo0.html
@GennPen
@GennPen 2 жыл бұрын
Обычно делаю фильтр скользящего среднего из 5-7 значений, исключая самое большое и самое маленькое значение, чтобы отбросить единичные ошибки считывания. И после этого на БИХ-фильтр 1го порядка. Расчеты очень простые и работает достаточно хорошо. Кстати, подобными программными ФНЧ довольно эффективно гасится дребезг кнопок.
@TDMLab
@TDMLab 2 жыл бұрын
Эвристика, но вполне имеет право на жизнь:)
@Paltus667
@Paltus667 2 жыл бұрын
15:50 1. Есть важный прием, когда при создании фильтров высокого порядка их дробят на фильтры второго порядка. Это связано с тем, что в исходном фильтре все коэффициенты приобретают очень большой разброс и начинают упираться в вычислительные ограничения. При преобразовании к каскаду фильтров второго порядка коэффициент внутри легче контролировать 2. Если соединить подряд два ФНЧ то итоговая полоса пропускания у них будет меньше, чем у каждого в отдельности.
@TDMLab
@TDMLab 2 жыл бұрын
1. Да, конечно, на 16:58 2. Да так, потому я и отнес это к эвристике.
@cuproot
@cuproot Жыл бұрын
Не хватает еще пару слов про Люенбергера и три семестра ТАУ за 25 минут понятным языком с понятным применением готово! Автор молодец!
@TDMLab
@TDMLab Жыл бұрын
Спасибо за отзыв! Да, наблюдатели состояний, это крайне сильный инструмент.
@Sanchogus
@Sanchogus 2 жыл бұрын
Первый раз подумал, что мне показалось, но во второй... музыка из героев меча и магии?)
@Ramulus2009
@Ramulus2009 2 жыл бұрын
"Герои, ммать. И Магии." (С)От винта!
@goiiia3774
@goiiia3774 2 жыл бұрын
Медианный фильтр хорошо подходит для фильтрации широкополосного сигнала. Да, основная цель убирать выбросы, но вместе с каким нибудь другим фильтром, возрастает точность получаемых в итоге данных.
@owl31415
@owl31415 2 жыл бұрын
Для отображения результатов измерений ещё он хорош, чтобы цифры не скакали. С усреднением получается не так стабильно.
@U_video
@U_video 2 жыл бұрын
Как-то игрался на stm32F7 (216МГЦ) с отрисовкой линий алгоритмами Вуу. Сначала пользовался плавающей точкой, потом фиксированной. Так вот, несмотря на имеющийся аппаратный вычислитель float, с фиксированной точкой отрисовка была раза в 1,5 быстрее.
@TDMLab
@TDMLab 2 жыл бұрын
Так точно, целочисленный аппаратный умножитель всегда победит аппаратный float. А про Ву почитаю, спасибо)
@user-tg2re6xz3l
@user-tg2re6xz3l 2 жыл бұрын
Читает! Читаешь и показываешь! ))) Это точно! Но, это нисколько не приуменьшает подачу инженерного материала!
@TDMLab
@TDMLab 2 жыл бұрын
Ну, да, конечно, я читаю предварительно написанный мною текст, иначе никак не добиться высокой плотности информации.
@semkipivasov3385
@semkipivasov3385 2 жыл бұрын
Что смотрят люди: тикток. Что смотрю я, не особо понимая, но с гигантским интересом:
@user-kt6xn1qn8q
@user-kt6xn1qn8q 2 жыл бұрын
Коммент для продвижения канала) есть небольшая просьба, расскажи про свой 5 канальный осциллограф, задумался о покупке, и очень меня подкупают 5 каналов, есть ли в нем какие то фатальные (и не очень) недоработки? буду благодарен)
@TDMLab
@TDMLab 2 жыл бұрын
Спасибо! Он 4-х канальный с TRG OUT, из недостатков только то что ленивые разрабы перестали прошивки новые делать:) Немного подробнее есть здесь kzfaq.info/get/bejne/qLZ-rauLydbWY4E.html
@user-kt6xn1qn8q
@user-kt6xn1qn8q 2 жыл бұрын
@@TDMLab 0_о..а я думал, что все твои видосы смотрел...блин, изначально рассчитывал на DSO4102С (20 т.р.)..а потом на твой канал наткнулся..прийдется еще копить :D..спасибо за инфу и в целом за твое творчество)
@superzhaber
@superzhaber 2 жыл бұрын
Я вааще ни хера не понял, особенно под конец, чуть башка не лопнула. Молодец 👍, подписка
@artkutyuska9842
@artkutyuska9842 Жыл бұрын
Вы забыли упомянуть про сдвиг фазы возникающий при фильтрации сигнала. В замкнутых системах управления требуется минимизация этого сдвига.
@nikolaynaidenko3304
@nikolaynaidenko3304 2 жыл бұрын
Что лучше пользовать из фильтров для подавления сетевой помехи, чтоб с минимальными задержками? Крутиться должно на кортексе м3, дальше сигнал запихивается в модбас, поэтому данные нужны не чаще 7мс...
@TDMLab
@TDMLab 2 жыл бұрын
Частный случай полосно-заграждающего фильтра его еще иногда называют фильтр-пробка, в англоязычной терминологии "notch filter", а по реализации скорее всего БИХ. Порядок исходя из ТЗ.
@no111u3
@no111u3 2 жыл бұрын
Хотелось бы ещё примеров используя возможности stm32g4 в сравнении с другими стм32, по затратам ресурсов и прочими особенностами.
@TDMLab
@TDMLab 2 жыл бұрын
У G4 серии ядро Cortex M4, такое же как и большинства современных МК общего назначения. Преимущества при работе на ядре будут только в сравнении с F1 например которые на Cortex M3 или другими без DSP инструкций. Единственная особенность что есть у серии G4 это наличие аппаратного фильтра (FMAC), о нем я уже на этом канале рассказывал.
@user-wb4uh8nx8p
@user-wb4uh8nx8p 2 жыл бұрын
Матлаб это замечательно, конечно, но в инженерной практике удобнее программа Filter Solutions , она позволяет проектировать и цифровые фильтры (в виде кусков кода на Си), так и схемотехнические решения активных/пассивных фильтров. Программа, конечно, денег стоит, но очень экономит время на изобретение велосипеда (есть, конечно и таблетка от жадности, но лучше в этом случае запускать в виртуальной машине без доступа к интернету, - программа собирает информацию и отправляет создателям, а те рассылают предупреждения и угрозы подать в суд).
@TDMLab
@TDMLab 2 жыл бұрын
Возможно. Никогда не пользовался этой программой и что-то мне подсказывает, что и не буду) Сейчас для каждой микропроцессорной или ПЛИС архитектуры созданы библиотеки генерации фильтров с оптимизацией и открытыми лицензиями. То что я проделал в видео было лишь примером, дающим представление о самом примитивном способе создания фильтров.
@user-mf6mm7rg5r
@user-mf6mm7rg5r 2 жыл бұрын
Привет, а можешь разобрать проблемы которые могут возникать при переделки преобразователей-источников напряжения в источники тока? Например такие как потеря устойчивости
@TDMLab
@TDMLab 2 жыл бұрын
Я бы может и разобрал эти проблемы если бы занимался этой переделкой источников напряжения в источники тока)
@SomeRandomPerson163
@SomeRandomPerson163 2 жыл бұрын
Привет! Я правильно понял, что static переменные в примерах кода (на 14:32 например) после выхода из функции не "забываются" а продолжают висеть в памяти и при новом обращении к функции берется их значение с прошлого прохода?
@TDMLab
@TDMLab 2 жыл бұрын
Совершенно верно.
@SomeRandomPerson163
@SomeRandomPerson163 2 жыл бұрын
@@TDMLab спасибо
@terravoltcompany
@terravoltcompany 2 жыл бұрын
Можно ли с вами связаться по вопросам разработки?
@TDMLab
@TDMLab 2 жыл бұрын
Информация есть в разделе "о канале".
@IvanEng747
@IvanEng747 Жыл бұрын
Оговорились вначале про ФНЧ?
@sdjhgfkshfswdfhskljh3360
@sdjhgfkshfswdfhskljh3360 2 жыл бұрын
Думал, что ни к чему не смогу придраться, а всё же смог: 13:21: "тут никак не оптимизировать": если не ошибаюсь, то при большом размере фильтра становится выгоднее применить преобразование Фурье. Дважды. Сам, правда, так делать не пробовал.
@TDMLab
@TDMLab 2 жыл бұрын
Да есть такое, фильтры на БПФ. Но это уже отдельная ветка фильтров которая в мой рассказ уже не вмещалась. Современные фильтры для связи типа OFDM вроде все в частотной области работают.
@ArtemKAD1
@ArtemKAD1 2 жыл бұрын
Главное не забывать что фильтрация дискретная и вся благостная картинка соответствует полосе в половину частоты дискретизации. А все что выше в исходном сигнале из-за дискретизации сворачивается и накладывается на исходный низкочастотный сигнал. Т.е. прежде чем принимать сигнал в контроллер надо аналоговым фильтром отрезать все что выше половины частоты дискретизации.
@TDMLab
@TDMLab 2 жыл бұрын
Конечно, возможно будет видео по алиасинг, думал даже показать наглядно как происходит отражение спектра.
@mikenomatter
@mikenomatter 2 жыл бұрын
@@TDMLab что значит возможно - а ну бегом записывать!)
@ArtemKAD1
@ArtemKAD1 2 жыл бұрын
@@TDMLab Нужно такое видео. Потому как очень многие не понимают, что там не просто "забор" из АЧХ, но и преобразование спектра. Причем, эта проблема замечено даже у Fnirsi.
@ArtemKAD1
@ArtemKAD1 2 жыл бұрын
@@mslq Программно это сделать невозможно. Преобразование спектра происходит в момент дискретизации и что потом с полученным сигналом не делай, отделить сигнал от свернутого вниз ВЧ-шума уже нельзя.
@ArtemKAD1
@ArtemKAD1 2 жыл бұрын
@@mslq А вообще - многие строители роботов банальные любители которые познают наугад то, что преподавалось в ВУЗах на лекциях по автоматике или обработке сигналов. Очень многие алгоритмы они не используют только потому, что они имеют положительные обратные связи которые без изначального расчета неустойчивы и наугад трудно настраиваемые. Зачастую останавливаются максимум на ПИД.
@wavecorp992
@wavecorp992 Жыл бұрын
Почувствовал приобщенным к науке, хотя половину не понял.
@andrewsed_uplisten2019
@andrewsed_uplisten2019 2 жыл бұрын
ничего не понятно, но очень интересно....
@levshx
@levshx Ай бұрын
сделай гайд плиз на цифровой фильтр для сигма-дельта модулятора чтобы сделать Σ-Δ АЦП
@user-cc9sn3bx4l
@user-cc9sn3bx4l 2 жыл бұрын
Я хочу переделать старый промышленный аналоговый металлдетектор для конфет под цыфровое управление, какой фильтр выбрать, с чем разбираться, я не такой умный как Вы, и буду благодарен даже за маленькую подсказку в этом вопросе, спасибо... ПС...Я посмотрел Ваш пример, так вроде бы понятно
@TDMLab
@TDMLab 2 жыл бұрын
Начать можно с осциллограммы или графика оцифровки сигнала, насколько там все плохо и какие проблемы есть. По фильтрации и не только, всегда начинают с простого, а потом как пойдет.
@SomeRandomPerson163
@SomeRandomPerson163 2 жыл бұрын
По ЦОС есть еще прикольная книжка от Сато
@TDMLab
@TDMLab 2 жыл бұрын
Действительно забавные картинки)
@ciklomat
@ciklomat 2 жыл бұрын
Круто! Надо только выкинуть из текста, часто повторяющиеся слова паразиты (на самом деле).
@pswru
@pswru 2 жыл бұрын
А как оно на самом деле - видно лишь из небесной канцелярии, согласен. Так что на самом деле - это не просто слово-паразит, это гораздо глубжее, на лично мой взгляд.
@veoramid
@veoramid 2 жыл бұрын
Уууууууууу дремучий лес!
@TDMLab
@TDMLab 2 жыл бұрын
Да, не:) Не так страшен чёрт, как его малюют:)
@4udik149
@4udik149 2 жыл бұрын
Можете снять видос как правильно измерять ёмкость 18650
@TDMLab
@TDMLab 2 жыл бұрын
kzfaq.info/get/bejne/qsx4rMqYprGuimw.html
@A-Sound-55
@A-Sound-55 2 жыл бұрын
Ничего не понял ... но очень интересно !
@TDMLab
@TDMLab 2 жыл бұрын
Ну как же без такого комментария) спасибо!.
@user-oh4lw7zq8p
@user-oh4lw7zq8p 3 ай бұрын
Всё замечательно только для начинающих совершенно непонятно как это реализовать на приктике
@user-en7qm3kv2z
@user-en7qm3kv2z 2 жыл бұрын
Доброго времени суток, интересует вопрос реализации рассчитанного в матлабе фильтра, на микроконтроллере STM32. В filterDesigner есть пункт Targets>Generate C header... при этом он создает файл .h, но не совсем понятно как дальше использовать. По умолчанию с плавающей точкой двойной точности, имеется возможность перейти к целочисленной математике. Данную тему только начинаю осваивать, может быть я смотрю изначально в неправильном направлении подскажите что и как. Буду крайне благодарен.
@TDMLab
@TDMLab 2 жыл бұрын
Направление точно правильное, но лично я не использовал матлаб как кодогенератор, хотя это интересно. Вообще должно быть по идеи 2 файла хедер и си-шный файл и мы их просто к проекту прикрепить должны и вызвать фильтр как функцию. А что в этом хедере?
@user-en7qm3kv2z
@user-en7qm3kv2z 2 жыл бұрын
@@TDMLab могу ошибаться в терминах, но вроде две структуры в виде матрицы 3 столбца и строк равных порядку фильтра (могу ошибаться). При выборе плавающей точки двойной точности, тип real 64, а целочисленная int 32. Прошу прощения если очевидное сказал. Только вхожу в мир программирования, до этого только Siemens PLC программировал там графический язык lad, fbd. P.s. забыл добавить, в структуре записаны коэффициенты.
@TDMLab
@TDMLab 2 жыл бұрын
@@user-en7qm3kv2z Ну да, верно в хедер файле и должны быть коэффициенты, значит ещё должнен быть си-шный файл где сам алгоритм фильтра будет, и там должно быть обращение к хедер-файлу для инициализации. Точнее рассказать не смогу така как сам через матлаб код не генерировал, может потом попробую. Вы можете пока попробовать те методы, что я описал в видео то есть вручную перетащить коэффициенты в код, если не всё понятно по этой системе в матлабе.
@user-en7qm3kv2z
@user-en7qm3kv2z 2 жыл бұрын
@@TDMLab большое спасибо.
@ExperimentalPC
@ExperimentalPC 2 жыл бұрын
В астрофотографии видел используют эвристический с уменьшением влияния по сигме.
@TDMLab
@TDMLab 2 жыл бұрын
Интересно, не знал.
@user-me9nj9lu7o
@user-me9nj9lu7o 10 ай бұрын
На мой взгляд дилетанта - важный выпуск. Продолжение бы?
@user-ps6kz7vc2p
@user-ps6kz7vc2p Жыл бұрын
+1
@mslq
@mslq 2 жыл бұрын
Ну вот, возвращаясь к нашему предыдущему разговору - так теперь раз уж вы начали разбирать цифровые фильтры то вам больше не придётся делать антидребезг аппаратно как в том известном случае, а я тогда сказал что сделал это намного красивей программно на AtTiny 10, и та шабашка имела успех у заказчика, сделано не мало экземпляров, блоки конкурента выпадали по мере эксплуатации и заменялись на мои.
@TDMLab
@TDMLab 2 жыл бұрын
Я начал разбирать цифровые фильтры лет 12 назад когда делал адаптивный эквалайзер к системе связи специальногоj назначения:) И вот до сих пор считаю, что если позволяет место лучше поставить триггеры Шмитта и уделить большее внимание действительно серьезным вещам в проекте чем борьба с каким-то там дребезгом:)
@mslq
@mslq 2 жыл бұрын
@@TDMLab Ну да, ну да, конкурент тоже так думал, и тоже не недооценивал дребезг, да вообще в этом мало кто разбирается.
@mslq
@mslq 2 жыл бұрын
@@TDMLab А с дребезгом я больше не борюсь, я просто нужные параметры ввожу в макро, даже возможно динамически, каждый раз новые. Это намного удобней чем каждый раз триггер шмитта перед RC, потом после триггер шмитта, сами знаете, без такой цепочки не работает.
@TDMLab
@TDMLab 2 жыл бұрын
@@mslq Я не сколько не против программной реализации, и даже поддерживаю это. Можете тут оставить код или описание вашего алгоритма думаю это будет точно в тему для тех кто смотрит такие видео.
@mslq
@mslq 2 жыл бұрын
@@TDMLab Вот самый простой и очень эффективный метод: каждую миллисекунду читается вход и только например 20 раз одинаковый с предыдущими имеет какое то значение, это и будет событием 0 или 1, дальше больше - в макросе есть параметр удержание например 200, это значит что один и тот же вход повторился 200 раз это появляется событие "удержание", и так далее, удержание тоже может быть 0 или 1, и прочие, как клики, двойное нажатие и ещё всего можно напридумывать. В итоге каждый вход даёт поток событий, кому нужно какое тот его и использует, живёт событие только 1 миллисекунду - операционная система тут, по этому такая конфигурация очень удобна.
@alexandersedunov9117
@alexandersedunov9117 Жыл бұрын
Почему нет ни одного видео про SC-фильтры на KZfaq ?
@TDMLab
@TDMLab Жыл бұрын
SC? CiC фильтры знаю, SC не знаю.
@alexandersedunov9117
@alexandersedunov9117 Жыл бұрын
@@TDMLab , в англоязычных источниках используется термин "switched-capacitor filters".
@TDMLab
@TDMLab Жыл бұрын
@@alexandersedunov9117 Понятно, фильтры на переключаемых конденсаторах это все-таки аналоговое устройство. Да и в целом достаточно тупиковая, как по мне, ветка т.к. их вытеснили цифровые фильтры.
@alexandersedunov9117
@alexandersedunov9117 Жыл бұрын
@@TDMLab , тем не менее, нет ни одного видео про SC-фильтры на русском языке. Классические учебники гласят, что у цифровых фильтров периодическая АЧХ, поэтому перед ними нужно ставить аналоговые.
@TDMLab
@TDMLab Жыл бұрын
@@alexandersedunov9117 Да про многие фильтры нет на русском и даже не ютубе, а вообще.
@adminroot1345
@adminroot1345 2 жыл бұрын
Вах
@alexlk1016
@alexlk1016 2 жыл бұрын
++++++
@user-rf1yx4kp4r
@user-rf1yx4kp4r 2 жыл бұрын
Как сказал классик -Очень интересно но ничего не понятно(с).
@juliajulia9035
@juliajulia9035 2 жыл бұрын
Сергиенко книжка классная. + Есть его лекции по цифровой связи, смотрятся на 1 дыхании kzfaq.info/get/bejne/bM96g7x43bzTf58.html
@TDMLab
@TDMLab 2 жыл бұрын
Ооо! ничего себе, спасибо!
@VitWar
@VitWar 2 жыл бұрын
При оцифровке сигналов на входе не нужен аналоговый фильтр.
@TDMLab
@TDMLab 2 жыл бұрын
Это заблуждение, аналоговый фильтр должен быть обязательно. Как минимум для снижения алиас-эффекта или другими словами переноса спектра. Например если частота оцифровки будет 100кГц, а помеха будет на частоте 90кГц, то после оцифровки помеха будет перенесена на частоту 10кГц, что весьма вероятно попадёт в полосу полезного сигнала.
@sergeyrink3003
@sergeyrink3003 2 жыл бұрын
Ну вобще то БИХ-первого порядка это тоже скользящее среднее. Экспоненциально взвешенное. Удобно, что быстрое и коэффициент легко меняется.
@TDMLab
@TDMLab 2 жыл бұрын
Скользящее среднее это нерекурсивный фильтр в отличии от БИХ. Есть спец. случай CIC-фильтров, это отдельная ветка линейно-фазовых БИХ которые могут быть синтезированы с АФЧХ которая идентична скользящему среднему. Как я говорил в видео я затронул тут лишь малу часть веток фильтров. Но БИХ первого порядка это не скользящее среднее.
@sergeyrink3003
@sergeyrink3003 2 жыл бұрын
@@TDMLab Формула одинаковая, хотя название разное. :)) В википедии "Экспоненциально взвешенное скользящее среднее". Очень часто используемый фильтр. Странно, что Вы его не знаете.
@TDMLab
@TDMLab 2 жыл бұрын
@@sergeyrink3003 Эм, я вроде пояснил в чем отличие. Скользящее среднее это нерекурсивный фильтр, БИХ рекурсивный. Дело не в формуле, хотя она конечно разная, а в их свойствах. Простое скользящее среднее это линейно фазовый фильтр по определению, БИХ - нет. Хотя я и говорю на 14:58 что БИХ первого порядка по АЧХ близок к Простому скользящему среднему, но это не значит что это касается и ФЧХ.
@sergeyrink3003
@sergeyrink3003 2 жыл бұрын
@@TDMLab То, что вы говорите это конечно хорошо, но тупить не нужно. :) Если формула одна то и свойства одинаковые. Д свиданья мой тупой друг.
@TDMLab
@TDMLab 2 жыл бұрын
@@sergeyrink3003 Ладно, двоечникам тут не место, гуляй. Не советую учится по Википедии, книгу нормальную даю в конце.
@rxlroman
@rxlroman 2 жыл бұрын
Бирюзовый? Вы уверены?
@TDMLab
@TDMLab 2 жыл бұрын
Хаа-ха))) почему я сказал бирюзовый...))))
@user-gq4lg3nz6i
@user-gq4lg3nz6i 2 жыл бұрын
Ну да, я тоже обратил внимание)) пурпурный приблизительно )))
@user-fg2dg4oj2y
@user-fg2dg4oj2y 2 жыл бұрын
@@user-gq4lg3nz6i Маджента этот цвет называется
@temp0508
@temp0508 2 жыл бұрын
О. Автор получил что то похожее на давно воплощенное в железо (примерно в 96 году в массовом производстве) передачу сигнала в белых шумах. хотя нет. досмотрел - ему еще далеко до этого...
@temp0508
@temp0508 2 жыл бұрын
но все равно плюс )
@TDMLab
@TDMLab 2 жыл бұрын
Да как бы в связи с отрицательным сигнал-шумом передают, ничего такого в этом нет. Чего-кому далеко, непонятно))
@CrazyPit
@CrazyPit 2 жыл бұрын
я так понял вы кому-то делали курсовую. а материал остался... спасибо пользовался только скользящим средним
@TDMLab
@TDMLab 2 жыл бұрын
Нет конечно) хотя материал остался действительно, пожалуйста.
@abbazhaba9584
@abbazhaba9584 2 жыл бұрын
калман график биткоина предскажет?
@TDMLab
@TDMLab 2 жыл бұрын
Конечно, если дать ему матрицу динамической модели системы)
@TDMLab
@TDMLab 2 жыл бұрын
@@pswru Что-то типа этого я и имел ввиду:) Типа модель экономики... всей:)
@user-hi5fy6wv5j
@user-hi5fy6wv5j 2 жыл бұрын
Вот, уже цифровые фильтры пошли в ход. Это хорошо. А то всё то у нас любят, как в каменном веке, на ногу микроконтроллера лепить RC цепочки или, даже, целый лишний корпус ОУ или триггера шмидта накидывать.
@Paltus667
@Paltus667 2 жыл бұрын
Вы в корне не правы. То что лепят это НЕОБХОДИМОСТЬ при оцифровке сигналов. Погуглите антиалиасинговый фильтр и теорему Котельникова.
@mslq
@mslq 2 жыл бұрын
Да, перед цифровой обработкой не нужны никакие RC на входе, они не решают проблему, только переводят её в более низкочастотную область где её ещё трудней решить и довольно медленней.
@TDMLab
@TDMLab 2 жыл бұрын
Так совсем без RC все равно никак, алиасинг мать его:) Если будет шумовая гармоника на частоте близкой к частоте взятия выборок то её будет цифрой просто не победить. Да и у Шмитта задачи другие.
@mslq
@mslq 2 жыл бұрын
@@TDMLab Согласен только с тем что самые верхние частоты срезать которые всё равно не будут иметь значение при оцифровке, они ведь всё равно не видны, их амплитуда меньше. А например есть такой приём что нужно добавить в сигнал шума тогда точность ADC даже поднимается, на разряд, два, я не раз демонстрировал это с 10 битовым ADC, а точность намного выше, показывались даже цифры после запятой, которых нет в ADC.
@user-hi5fy6wv5j
@user-hi5fy6wv5j 2 жыл бұрын
@@TDMLab, без RC никак если рядом радиопередатчик работает с мощностью такой, что наводки на провода до кнопок после детектирования на внутренних диодах микроконтроллера аж напряжение питания ему задирает.
@cuproot
@cuproot Жыл бұрын
Преподы по ТАУ в слезах дерутся за веревку с мылом...
@TDMLab
@TDMLab Жыл бұрын
Да, вроде нет, даже наоборот;)
@sergeyrink3003
@sergeyrink3003 2 жыл бұрын
Жаль, что про ФВЧ ничего не услышал.
@TDMLab
@TDMLab 2 жыл бұрын
В начале говорю, что не могу физически рассмотреть все возможные ветки частотно-избирательных фильтров поэтому беру только одну. Для случаев синтеза КИХ/БИХ с помощью программных средств разницы ФНЧ/ФВЧ нет.
@sergeyrink3003
@sergeyrink3003 2 жыл бұрын
@@TDMLab Спасибо, я уже понял, что реализация одинаковая. На практике можно обойтись более простыми критериями скорости изменения сигнала и плавающим порогом на скользящем среднем. Получается адаптивный программный ФВЧ.
@TDMLab
@TDMLab 2 жыл бұрын
​@@sergeyrink3003 Существует бесконечно много различных алгоритмов, выбор же зависит от конкретной задачи.
Свой контроллер для мотор-колеса
25:33
Whyyyy? 😭 #shorts by Leisi Crazy
00:16
Leisi Crazy
Рет қаралды 20 МЛН
She ruined my dominos! 😭 Cool train tool helps me #gadget
00:40
Go Gizmo!
Рет қаралды 54 МЛН
Купили айфон для собачки #shorts #iribaby
00:31
Уроки Arduino. Фильтры данных, обработка сигналов
16:49
Заметки Ардуинщика
Рет қаралды 120 М.
ВАУ! ФЛЕШКА, которой 200 ЛЕТ!
14:56
Droider
Рет қаралды 612 М.
WWDC 2024 - June 10 | Apple
1:43:37
Apple
Рет қаралды 10 МЛН
i love you subscriber ♥️ #iphone #iphonefold #shortvideo
0:14
Si pamerR
Рет қаралды 3,6 МЛН
Mi primera placa con dios
0:12
Eyal mewing
Рет қаралды 719 М.
Неразрушаемый смартфон
1:00
Status
Рет қаралды 1,2 МЛН