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

แชร์
ฝัง
  • เผยแพร่เมื่อ 5 มิ.ย. 2024
  • В видео рассматриваю вопросы программирования цифровых фильтров
    Конкурс 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
    ***************************************
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 286

  • @Paltus667
    @Paltus667 2 ปีที่แล้ว +39

    Если я ещё раз прочитаю в коментах, что при оцифровке сигналов на входе не нужен аналоговый фильтр, у меня точно бомбанёт.

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +3

      Ссылочку которую Вы кинули к сожалению ютуб не пропустил и я не могу восстановить то сообщение, но я посмотрел предложенный курс по ЦОС, автор Сергиенко и я собственно о его книге на 22:03 и говорю, вроде есть и 3-е издание и думаю на 700 страницах содержится даже больше чем в курсе, хотя для тех кому нужны задания то можно и курс пройти, тем более бесплатный.
      ps прикреплю здесь, мне ютуб позволяет) openedu.ru/course/eltech/DSP/

    • @DirectionToTheTop
      @DirectionToTheTop 2 ปีที่แล้ว +2

      Ну и куда мне прилепить анологовый фильтр, если у меня на входе временные интервалы.

    • @Paltus667
      @Paltus667 2 ปีที่แล้ว +1

      @@TDMLab я когда присматривался к ЦОС, сколько книжки не открывал, все бестолку. Книжек много, информации много, а ничего не откладывается в голове. А вот курс реально хорош, т.к. помимо просто инфы даются ещё тестовые задания и лабы. Плюс можно с самим автором курса пообщаться, вопросы позадавать.

    • @Paltus667
      @Paltus667 2 ปีที่แล้ว

      @@DirectionToTheTopникуда. у вас задача другая. Ваш сигнал дискретное значение амплитудой допустим 3,3 Вольта. Поэтому и шумы у вас должны быть тех же порядков. Я же подразумевал оцифровку сигнала (например звука) где шаг сигнала может быть 1/65536 Вольт и шумы тех же порядков.

    • @kalobyte
      @kalobyte 2 ปีที่แล้ว +1

      @@Paltus667
      такая же херня
      пишут так, что ничего не понять
      проще ролик посмотреть
      изучал сдр, там фильтры тоже были и я даже понял малость, только практикой не занимался
      а началось все с того, что я захотел узнать, как генерится звук компутером и как из матана получить этот код для генерации звука

  • @MrAllmp3
    @MrAllmp3 2 ปีที่แล้ว +7

    После ДиХалта думал уже не будет таких крутых авторов в рунете по теме электроники, но у вас помимо высокого профессионального уровня еще есть талант делать замечательные обучающие и объясняющие материалы. Круто! Продолжайте, уверен это будет оценено растущей аудиторией

  • @mimi-cc3yu
    @mimi-cc3yu 2 ปีที่แล้ว +7

    математика из университета перестала быть бесполезной, спасибо за видео)

  • @ileyka
    @ileyka 2 ปีที่แล้ว +2

    По цифровой обработке на Ютубе одни англоязычные индусы) спасибо за образовательные видео!

  • @TheGradusnick
    @TheGradusnick 2 ปีที่แล้ว +10

    Наконец-то хороший канал по электронике. Автору успехов! Главное не останавливайся))

  • @borisn879
    @borisn879 2 ปีที่แล้ว +2

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

  • @paul310paul
    @paul310paul 2 ปีที่แล้ว +6

    Мега-толковая лекция получилась! Спасибо большое!

  • @user-tq7bt1ck5b
    @user-tq7bt1ck5b 2 ปีที่แล้ว +7

    Очень хорошее видео. Одно из самых лучших на русском! 👍

  • @dimakrayushkin
    @dimakrayushkin 2 ปีที่แล้ว +2

    Спасибо за отличное видео, смотрел не отрываясь. С большим интересом смотрю, особенно последние. Так держать!

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +1

      Спасибо за отзыв

  • @andrsam3682
    @andrsam3682 2 ปีที่แล้ว +2

    Очень крутой выпуск, спасибо.

  • @sledleo
    @sledleo 2 ปีที่แล้ว +1

    Про КИХ-фильтры интересная тема, при случае попробуем.
    Позновательно и наглядно, респект!

  • @nickhouse555
    @nickhouse555 2 ปีที่แล้ว +2

    Отличная подача материала! Так держать!

  • @user-fy8lh5vd6q
    @user-fy8lh5vd6q 2 ปีที่แล้ว +1

    ЦОС это круто! Ждем продолжения!!!

  • @user-hb2ud2lu7d
    @user-hb2ud2lu7d 2 ปีที่แล้ว +1

    Класс, давайте ещё интересного контента😀

  • @DronDanDan
    @DronDanDan 2 ปีที่แล้ว +1

    Спасибо вам за обзор фильтров! Классно!

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +1

      Спасибо за отзыв!

  • @vika_papa
    @vika_papa 2 ปีที่แล้ว +3

    Желаю дальнейшего развития канала и автору не останавливаться в духовном росте

    • @kakoluk_original
      @kakoluk_original 2 ปีที่แล้ว

      Да не нужно автору автору никакого духовного роста, он технарь, а не религиозный "ужасень". :)

  • @torsion89
    @torsion89 2 ปีที่แล้ว

    Супер подача и материал!

  • @Seriyv0lk
    @Seriyv0lk ปีที่แล้ว

    Мало! Давай ещё!

  • @87Spectr
    @87Spectr 2 ปีที่แล้ว

    это шедевр!

  • @georgiuermoxin5164
    @georgiuermoxin5164 2 ปีที่แล้ว

    Спасибо, очень полезно и доступно

  • @igorgolovnya7854
    @igorgolovnya7854 2 ปีที่แล้ว +3

    Прям видео под руку)

    • @negodiaysamsonoff9616
      @negodiaysamsonoff9616 2 ปีที่แล้ว

      только вчера в маршрутке подслушал)

  • @JohnGrave
    @JohnGrave 8 หลายเดือนก่อน

    Если бы ты выпустил это видео пораньше года на 4, когда я сдавал ЦОС в универе :)
    Отличная подача материала, респект
    Давай еще!

  • @dinoelvokahsnol8126
    @dinoelvokahsnol8126 2 ปีที่แล้ว +5

    давай цикл про ЦОС , теорему Котельникова и всякое такое )

  • @user-rt9fw8oq1u
    @user-rt9fw8oq1u 2 ปีที่แล้ว

    хорошо, кратко и по делу

  • @alexvmw
    @alexvmw 2 ปีที่แล้ว

    Спасибо большое!

  • @tehtelev
    @tehtelev 2 ปีที่แล้ว

    Ооо. Через две недели пригодится)

  • @jankarlionov4646
    @jankarlionov4646 2 ปีที่แล้ว +1

    Братан, ты прекрасен : )

  • @user-mo9mn7re5u
    @user-mo9mn7re5u 2 ปีที่แล้ว

    Молодец! Спасибо!

  • @alexkorot9208
    @alexkorot9208 ปีที่แล้ว

    Спасибо!

  • @PastuhMedvedey
    @PastuhMedvedey 2 ปีที่แล้ว

    Отлично!

  • @winnik7
    @winnik7 2 ปีที่แล้ว

    Интересно!

  • @maximkutsev5302
    @maximkutsev5302 2 ปีที่แล้ว

    Монументально!

  • @alexanderzabolotnyi6513
    @alexanderzabolotnyi6513 ปีที่แล้ว

    Спасибо! Каждый раз когда смотрю такие видео убеждаюсь, что нас в универе 6 лет учили чему-то не тому, чему надо было. Факультет элеткроники, телекоммуникации.

    • @levshx
      @levshx 3 วันที่ผ่านมา

      была база типа чебышев, бессель, баттерворт, с проектированием на SPICE и теоретическим расчётом??

  • @clora1136
    @clora1136 2 ปีที่แล้ว

    Как же хорошо что в большинстве ацп фильтр уже встроен. Хотя теперь я понял откуда задержка перед первым отсчетом, спасибо).

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +3

      Да, цифровой фильтр является неотъемлемой частью сигма-дельта АЦП и да, ему нужно некоторое время для прохода первого отсчета до выхода.

    • @pswru
      @pswru 2 ปีที่แล้ว

      @@TDMLab Кстати, про сигма-дэльта АЦП (и чисто морфологически - почему именно сигма и именно дэльта) - лично я несколько раз пытался понять как именно он работает читая доки например на 20-24 бита АЦП (например AD7710-AD7714, которые я выпросил у внедренцев промышленных весов) для мостовых преобразователей (например тензорезисторных) физических величин, но взаимосвязанная с другими знаниями в моей голове мозаика не сложилась.

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +2

      @@pswru Ну типа мы дробим аналоговый сигнал на однобитный поток маленьких дельт, а потом складываем их сигмой:)
      th-cam.com/video/NrkFd7h6R2Y/w-d-xo.html

  • @michaelborisenko9232
    @michaelborisenko9232 2 ปีที่แล้ว

    Подача материала огонь, разжевал и в рот положил, помню в универе мозг плавился когда ЦОС проходили

  • @GennPen
    @GennPen 2 ปีที่แล้ว +1

    Обычно делаю фильтр скользящего среднего из 5-7 значений, исключая самое большое и самое маленькое значение, чтобы отбросить единичные ошибки считывания. И после этого на БИХ-фильтр 1го порядка. Расчеты очень простые и работает достаточно хорошо.
    Кстати, подобными программными ФНЧ довольно эффективно гасится дребезг кнопок.

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      Эвристика, но вполне имеет право на жизнь:)

  • @nikmanmar4601
    @nikmanmar4601 2 ปีที่แล้ว +3

    Очень круто, как и всегда. Можно смело сказать научная работа. Вещь интересная, правда область применения узкая.

    • @user-is1zj2re8p
      @user-is1zj2re8p 2 ปีที่แล้ว

      Область применения настолько огромна, что не знаешь, за что хвататься: частоты сигналов в живых тканях лежат в диапазоне 20 порядков величины. А все нужны. Например, этап формирования кардиогенной пластинки и первых сосудов - какая-то умопомрачительная голограммы, а ее разбор, пока еще не проведенный, очень многое даст в управлении ростом и дифференцировкой тканей. Лень писать - наиболее общих приложений в биологии о медицине навскидку с десяток.

    • @nikmanmar4601
      @nikmanmar4601 2 ปีที่แล้ว

      @@user-is1zj2re8p я не спорю, для специалистов огромная, для обычных обывателей, на кого по большей части рассчитан канал, не так и много кто будет этим заниматься. Но материал подан превосходно.

  • @Paltus667
    @Paltus667 2 ปีที่แล้ว +1

    15:50 1. Есть важный прием, когда при создании фильтров высокого порядка их дробят на фильтры второго порядка. Это связано с тем, что в исходном фильтре все коэффициенты приобретают очень большой разброс и начинают упираться в вычислительные ограничения. При преобразовании к каскаду фильтров второго порядка коэффициент внутри легче контролировать
    2. Если соединить подряд два ФНЧ то итоговая полоса пропускания у них будет меньше, чем у каждого в отдельности.

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      1. Да, конечно, на 16:58
      2. Да так, потому я и отнес это к эвристике.

  • @SergeyM12
    @SergeyM12 2 ปีที่แล้ว +7

    А практика когда? На конкретном жизненном примере.

  • @kakoluk_original
    @kakoluk_original 2 ปีที่แล้ว +1

    Круть. На одном дыхании(правда с паузами, что бы успеть размотать в голове) смотрел.
    Лично у меня, с представлением аналоговых фильтров проблем нет
    (советское образование), а у автора ещё и программная реализация. Вот это я понимаю стык дисциплин.
    P.S. Кто все эти люди, что влепили дизлайки? :)

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +1

      Спасибо за отзыв!
      А это статистический шум, без этого никуда:)

    • @pswru
      @pswru 2 ปีที่แล้ว

      @@TDMLab Раньше вроде были слухи что дизлайки повышают шанс видоса зайти в рекомендации и тренды - типа горячая тема. И якобы выстреливали видосы у которых лайков и дизов было примерно поровну.
      Но потом мир изменился. А всем нравится - не реально, кому-то будет слишком просто и банально/обыденно, кому-то слишком сложно и непонятно.
      Лично мне очень зашло (весьма смотрябельно, и кода хороша в наухах особенно), ибо например так или иначе мечтаю воткнуть паяльник в ламповую Волна-К (хотяб синтезаторы AD9910 или AD9959 прикалхозить и смесители поменять, а как максимум сваять дистанционно управляемый реверсивный ламповый каскад нагруженный и расположенный около магнитной антенны с механической перестройкой вакумным КПЕ раза в 4 по частоте ), а тема ЦОС вообще и цифровых фильтров в частности так или иначе в программно-определяемом радио касается.

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +1

      @@pswru Сейчас есть параметр "вовлеченность аудитории" и типа лайки и дизлайки поровну оцениваются главное чтобы было взаимодействие с видео. Но там куча алгоритмов и это лишь малая часть уравнения.
      Если бы DA9910 не стоил бы 4к я бы его уже давно поковырял.

    • @pswru
      @pswru 2 ปีที่แล้ว

      @@TDMLab Ну просто генерить синус AD9910 скучновато (полагаю что написать код на асме для буратины у лично меня займёт меньше месяца)- надо именно в контексте радиоприёма как ГПД без особой фильтрации опробовать и сравнить с более грубыми собратьями в плане уменьшения гармоник/характерных призвуков, слышимых на приёме при перестройке частоты гетеродина.

  • @goiiia3774
    @goiiia3774 2 ปีที่แล้ว

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

    • @owl31415
      @owl31415 2 ปีที่แล้ว +2

      Для отображения результатов измерений ещё он хорош, чтобы цифры не скакали. С усреднением получается не так стабильно.

  • @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 - частота дискретизации.

  • @Sanchogus
    @Sanchogus 2 ปีที่แล้ว +5

    Первый раз подумал, что мне показалось, но во второй... музыка из героев меча и магии?)

    • @Ramulus2009
      @Ramulus2009 2 ปีที่แล้ว

      "Герои, ммать. И Магии." (С)От винта!

  • @U_video
    @U_video 2 ปีที่แล้ว

    Как-то игрался на stm32F7 (216МГЦ) с отрисовкой линий алгоритмами Вуу. Сначала пользовался плавающей точкой, потом фиксированной. Так вот, несмотря на имеющийся аппаратный вычислитель float, с фиксированной точкой отрисовка была раза в 1,5 быстрее.

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      Так точно, целочисленный аппаратный умножитель всегда победит аппаратный float.
      А про Ву почитаю, спасибо)

  • @artkutyuska9842
    @artkutyuska9842 ปีที่แล้ว

    Вы забыли упомянуть про сдвиг фазы возникающий при фильтрации сигнала. В замкнутых системах управления требуется минимизация этого сдвига.

  • @user-kt6xn1qn8q
    @user-kt6xn1qn8q 2 ปีที่แล้ว

    Коммент для продвижения канала) есть небольшая просьба, расскажи про свой 5 канальный осциллограф, задумался о покупке, и очень меня подкупают 5 каналов, есть ли в нем какие то фатальные (и не очень) недоработки? буду благодарен)

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +1

      Спасибо! Он 4-х канальный с TRG OUT, из недостатков только то что ленивые разрабы перестали прошивки новые делать:)
      Немного подробнее есть здесь th-cam.com/video/rPNzHZdpr3M/w-d-xo.html

    • @user-kt6xn1qn8q
      @user-kt6xn1qn8q 2 ปีที่แล้ว

      @@TDMLab 0_о..а я думал, что все твои видосы смотрел...блин, изначально рассчитывал на DSO4102С (20 т.р.)..а потом на твой канал наткнулся..прийдется еще копить :D..спасибо за инфу и в целом за твое творчество)

  • @user-tg2re6xz3l
    @user-tg2re6xz3l 2 ปีที่แล้ว

    Читает! Читаешь и показываешь! ))) Это точно! Но, это нисколько не приуменьшает подачу инженерного материала!

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      Ну, да, конечно, я читаю предварительно написанный мною текст, иначе никак не добиться высокой плотности информации.

  • @ArtemKAD1
    @ArtemKAD1 2 ปีที่แล้ว +2

    Главное не забывать что фильтрация дискретная и вся благостная картинка соответствует полосе в половину частоты дискретизации. А все что выше в исходном сигнале из-за дискретизации сворачивается и накладывается на исходный низкочастотный сигнал. Т.е. прежде чем принимать сигнал в контроллер надо аналоговым фильтром отрезать все что выше половины частоты дискретизации.

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +2

      Конечно, возможно будет видео по алиасинг, думал даже показать наглядно как происходит отражение спектра.

    • @mikenomatter
      @mikenomatter 2 ปีที่แล้ว

      @@TDMLab что значит возможно - а ну бегом записывать!)

    • @ArtemKAD1
      @ArtemKAD1 2 ปีที่แล้ว

      @@TDMLab Нужно такое видео. Потому как очень многие не понимают, что там не просто "забор" из АЧХ, но и преобразование спектра. Причем, эта проблема замечено даже у Fnirsi.

    • @ArtemKAD1
      @ArtemKAD1 2 ปีที่แล้ว +1

      @@mslq Программно это сделать невозможно. Преобразование спектра происходит в момент дискретизации и что потом с полученным сигналом не делай, отделить сигнал от свернутого вниз ВЧ-шума уже нельзя.

    • @ArtemKAD1
      @ArtemKAD1 2 ปีที่แล้ว +3

      @@mslq А вообще - многие строители роботов банальные любители которые познают наугад то, что преподавалось в ВУЗах на лекциях по автоматике или обработке сигналов. Очень многие алгоритмы они не используют только потому, что они имеют положительные обратные связи которые без изначального расчета неустойчивы и наугад трудно настраиваемые. Зачастую останавливаются максимум на ПИД.

  • @superzhaber
    @superzhaber 2 ปีที่แล้ว

    Я вааще ни хера не понял, особенно под конец, чуть башка не лопнула. Молодец 👍, подписка

  • @cuproot
    @cuproot ปีที่แล้ว

    Не хватает еще пару слов про Люенбергера и три семестра ТАУ за 25 минут понятным языком с понятным применением готово! Автор молодец!

    • @TDMLab
      @TDMLab  ปีที่แล้ว

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

  • @no111u3
    @no111u3 2 ปีที่แล้ว

    Хотелось бы ещё примеров используя возможности stm32g4 в сравнении с другими стм32, по затратам ресурсов и прочими особенностами.

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      У G4 серии ядро Cortex M4, такое же как и большинства современных МК общего назначения. Преимущества при работе на ядре будут только в сравнении с F1 например которые на Cortex M3 или другими без DSP инструкций.
      Единственная особенность что есть у серии G4 это наличие аппаратного фильтра (FMAC), о нем я уже на этом канале рассказывал.

  • @semkipivasov3385
    @semkipivasov3385 2 ปีที่แล้ว

    Что смотрят люди: тикток. Что смотрю я, не особо понимая, но с гигантским интересом:

  • @nikolaynaidenko3304
    @nikolaynaidenko3304 2 ปีที่แล้ว

    Что лучше пользовать из фильтров для подавления сетевой помехи, чтоб с минимальными задержками? Крутиться должно на кортексе м3, дальше сигнал запихивается в модбас, поэтому данные нужны не чаще 7мс...

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      Частный случай полосно-заграждающего фильтра его еще иногда называют фильтр-пробка, в англоязычной терминологии "notch filter", а по реализации скорее всего БИХ. Порядок исходя из ТЗ.

  • @SomeRandomPerson163
    @SomeRandomPerson163 2 ปีที่แล้ว

    Привет! Я правильно понял, что static переменные в примерах кода (на 14:32 например) после выхода из функции не "забываются" а продолжают висеть в памяти и при новом обращении к функции берется их значение с прошлого прохода?

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      Совершенно верно.

    • @SomeRandomPerson163
      @SomeRandomPerson163 2 ปีที่แล้ว

      @@TDMLab спасибо

  • @sdjhgfkshfswdfhskljh3360
    @sdjhgfkshfswdfhskljh3360 2 ปีที่แล้ว

    Думал, что ни к чему не смогу придраться, а всё же смог: 13:21: "тут никак не оптимизировать": если не ошибаюсь, то при большом размере фильтра становится выгоднее применить преобразование Фурье. Дважды. Сам, правда, так делать не пробовал.

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +1

      Да есть такое, фильтры на БПФ.
      Но это уже отдельная ветка фильтров которая в мой рассказ уже не вмещалась.
      Современные фильтры для связи типа OFDM вроде все в частотной области работают.

  • @user-wb4uh8nx8p
    @user-wb4uh8nx8p 2 ปีที่แล้ว

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

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      Возможно. Никогда не пользовался этой программой и что-то мне подсказывает, что и не буду)
      Сейчас для каждой микропроцессорной или ПЛИС архитектуры созданы библиотеки генерации фильтров с оптимизацией и открытыми лицензиями. То что я проделал в видео было лишь примером, дающим представление о самом примитивном способе создания фильтров.

  • @terravoltcompany
    @terravoltcompany 2 ปีที่แล้ว

    Можно ли с вами связаться по вопросам разработки?

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      Информация есть в разделе "о канале".

  • @user-mf6mm7rg5r
    @user-mf6mm7rg5r 2 ปีที่แล้ว

    Привет, а можешь разобрать проблемы которые могут возникать при переделки преобразователей-источников напряжения в источники тока? Например такие как потеря устойчивости

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +1

      Я бы может и разобрал эти проблемы если бы занимался этой переделкой источников напряжения в источники тока)

  • @user-cc9sn3bx4l
    @user-cc9sn3bx4l 2 ปีที่แล้ว

    Я хочу переделать старый промышленный аналоговый металлдетектор для конфет под цыфровое управление, какой фильтр выбрать, с чем разбираться, я не такой умный как Вы, и буду благодарен даже за маленькую подсказку в этом вопросе, спасибо... ПС...Я посмотрел Ваш пример, так вроде бы понятно

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      Начать можно с осциллограммы или графика оцифровки сигнала, насколько там все плохо и какие проблемы есть. По фильтрации и не только, всегда начинают с простого, а потом как пойдет.

  • @IvanEng747
    @IvanEng747 ปีที่แล้ว

    Оговорились вначале про ФНЧ?

  • @wavecorp992
    @wavecorp992 ปีที่แล้ว

    Почувствовал приобщенным к науке, хотя половину не понял.

  • @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 большое спасибо.

  • @levshx
    @levshx 26 วันที่ผ่านมา

    сделай гайд плиз на цифровой фильтр для сигма-дельта модулятора чтобы сделать Σ-Δ АЦП

  • @andrewsed_uplisten2019
    @andrewsed_uplisten2019 2 ปีที่แล้ว +1

    ничего не понятно, но очень интересно....

  • @user-oh4lw7zq8p
    @user-oh4lw7zq8p 3 หลายเดือนก่อน

    Всё замечательно только для начинающих совершенно непонятно как это реализовать на приктике

  • @ciklomat
    @ciklomat 2 ปีที่แล้ว +1

    Круто! Надо только выкинуть из текста, часто повторяющиеся слова паразиты (на самом деле).

    • @pswru
      @pswru 2 ปีที่แล้ว

      А как оно на самом деле - видно лишь из небесной канцелярии, согласен.
      Так что на самом деле - это не просто слово-паразит, это гораздо глубжее, на лично мой взгляд.

  • @4udik149
    @4udik149 2 ปีที่แล้ว

    Можете снять видос как правильно измерять ёмкость 18650

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      th-cam.com/video/tfHyggAKJZ8/w-d-xo.html

  • @ExperimentalPC
    @ExperimentalPC 2 ปีที่แล้ว

    В астрофотографии видел используют эвристический с уменьшением влияния по сигме.

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      Интересно, не знал.

  • @veoramid
    @veoramid 2 ปีที่แล้ว

    Уууууууууу дремучий лес!

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      Да, не:) Не так страшен чёрт, как его малюют:)

  • @SomeRandomPerson163
    @SomeRandomPerson163 2 ปีที่แล้ว

    По ЦОС есть еще прикольная книжка от Сато

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      Действительно забавные картинки)

  • @A-Sound-55
    @A-Sound-55 2 ปีที่แล้ว

    Ничего не понял ... но очень интересно !

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +1

      Ну как же без такого комментария) спасибо!.

  • @andreyustinov1395
    @andreyustinov1395 ปีที่แล้ว

    Извините, не нашел ссылку на программный код.

    • @TDMLab
      @TDMLab  ปีที่แล้ว

      В описании после строк Проект в Arduino IDE

  • @mslq
    @mslq 2 ปีที่แล้ว +3

    Ну вот, возвращаясь к нашему предыдущему разговору - так теперь раз уж вы начали разбирать цифровые фильтры то вам больше не придётся делать антидребезг аппаратно как в том известном случае, а я тогда сказал что сделал это намного красивей программно на AtTiny 10, и та шабашка имела успех у заказчика, сделано не мало экземпляров, блоки конкурента выпадали по мере эксплуатации и заменялись на мои.

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +3

      Я начал разбирать цифровые фильтры лет 12 назад когда делал адаптивный эквалайзер к системе связи специальногоj назначения:) И вот до сих пор считаю, что если позволяет место лучше поставить триггеры Шмитта и уделить большее внимание действительно серьезным вещам в проекте чем борьба с каким-то там дребезгом:)

    • @mslq
      @mslq 2 ปีที่แล้ว +1

      @@TDMLab Ну да, ну да, конкурент тоже так думал, и тоже не недооценивал дребезг, да вообще в этом мало кто разбирается.

    • @mslq
      @mslq 2 ปีที่แล้ว

      @@TDMLab А с дребезгом я больше не борюсь, я просто нужные параметры ввожу в макро, даже возможно динамически, каждый раз новые. Это намного удобней чем каждый раз триггер шмитта перед RC, потом после триггер шмитта, сами знаете, без такой цепочки не работает.

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +1

      @@mslq Я не сколько не против программной реализации, и даже поддерживаю это. Можете тут оставить код или описание вашего алгоритма думаю это будет точно в тему для тех кто смотрит такие видео.

    • @mslq
      @mslq 2 ปีที่แล้ว

      @@TDMLab Вот самый простой и очень эффективный метод: каждую миллисекунду читается вход и только например 20 раз одинаковый с предыдущими имеет какое то значение, это и будет событием 0 или 1, дальше больше - в макросе есть параметр удержание например 200, это значит что один и тот же вход повторился 200 раз это появляется событие "удержание", и так далее, удержание тоже может быть 0 или 1, и прочие, как клики, двойное нажатие и ещё всего можно напридумывать. В итоге каждый вход даёт поток событий, кому нужно какое тот его и использует, живёт событие только 1 миллисекунду - операционная система тут, по этому такая конфигурация очень удобна.

  • @user-ps6kz7vc2p
    @user-ps6kz7vc2p ปีที่แล้ว

    +1

  • @user-me9nj9lu7o
    @user-me9nj9lu7o 10 หลายเดือนก่อน

    На мой взгляд дилетанта - важный выпуск. Продолжение бы?

  • @alexandersedunov9117
    @alexandersedunov9117 ปีที่แล้ว

    Почему нет ни одного видео про SC-фильтры на TH-cam ?

    • @TDMLab
      @TDMLab  ปีที่แล้ว

      SC? CiC фильтры знаю, SC не знаю.

    • @alexandersedunov9117
      @alexandersedunov9117 ปีที่แล้ว

      @@TDMLab , в англоязычных источниках используется термин "switched-capacitor filters".

    • @TDMLab
      @TDMLab  ปีที่แล้ว

      @@alexandersedunov9117 Понятно, фильтры на переключаемых конденсаторах это все-таки аналоговое устройство. Да и в целом достаточно тупиковая, как по мне, ветка т.к. их вытеснили цифровые фильтры.

    • @alexandersedunov9117
      @alexandersedunov9117 ปีที่แล้ว

      @@TDMLab , тем не менее, нет ни одного видео про SC-фильтры на русском языке. Классические учебники гласят, что у цифровых фильтров периодическая АЧХ, поэтому перед ними нужно ставить аналоговые.

    • @TDMLab
      @TDMLab  ปีที่แล้ว

      @@alexandersedunov9117 Да про многие фильтры нет на русском и даже не ютубе, а вообще.

  • @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 Ладно, двоечникам тут не место, гуляй. Не советую учится по Википедии, книгу нормальную даю в конце.

  • @user-rf1yx4kp4r
    @user-rf1yx4kp4r 2 ปีที่แล้ว

    Как сказал классик -Очень интересно но ничего не понятно(с).

  • @VitWar
    @VitWar 2 ปีที่แล้ว

    При оцифровке сигналов на входе не нужен аналоговый фильтр.

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      Это заблуждение, аналоговый фильтр должен быть обязательно. Как минимум для снижения алиас-эффекта или другими словами переноса спектра. Например если частота оцифровки будет 100кГц, а помеха будет на частоте 90кГц, то после оцифровки помеха будет перенесена на частоту 10кГц, что весьма вероятно попадёт в полосу полезного сигнала.

  • @CrazyPit
    @CrazyPit 2 ปีที่แล้ว

    я так понял вы кому-то делали курсовую. а материал остался...
    спасибо пользовался только скользящим средним

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +1

      Нет конечно) хотя материал остался действительно, пожалуйста.

  • @user-hi5fy6wv5j
    @user-hi5fy6wv5j 2 ปีที่แล้ว +1

    Вот, уже цифровые фильтры пошли в ход. Это хорошо. А то всё то у нас любят, как в каменном веке, на ногу микроконтроллера лепить RC цепочки или, даже, целый лишний корпус ОУ или триггера шмидта накидывать.

    • @Paltus667
      @Paltus667 2 ปีที่แล้ว +4

      Вы в корне не правы. То что лепят это НЕОБХОДИМОСТЬ при оцифровке сигналов. Погуглите антиалиасинговый фильтр и теорему Котельникова.

    • @mslq
      @mslq 2 ปีที่แล้ว

      Да, перед цифровой обработкой не нужны никакие RC на входе, они не решают проблему, только переводят её в более низкочастотную область где её ещё трудней решить и довольно медленней.

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +3

      Так совсем без RC все равно никак, алиасинг мать его:) Если будет шумовая гармоника на частоте близкой к частоте взятия выборок то её будет цифрой просто не победить. Да и у Шмитта задачи другие.

    • @mslq
      @mslq 2 ปีที่แล้ว

      @@TDMLab Согласен только с тем что самые верхние частоты срезать которые всё равно не будут иметь значение при оцифровке, они ведь всё равно не видны, их амплитуда меньше. А например есть такой приём что нужно добавить в сигнал шума тогда точность ADC даже поднимается, на разряд, два, я не раз демонстрировал это с 10 битовым ADC, а точность намного выше, показывались даже цифры после запятой, которых нет в ADC.

    • @user-hi5fy6wv5j
      @user-hi5fy6wv5j 2 ปีที่แล้ว

      @@TDMLab, без RC никак если рядом радиопередатчик работает с мощностью такой, что наводки на провода до кнопок после детектирования на внутренних диодах микроконтроллера аж напряжение питания ему задирает.

  • @adminroot1345
    @adminroot1345 2 ปีที่แล้ว

    Вах

  • @juliajulia9035
    @juliajulia9035 2 ปีที่แล้ว

    Сергиенко книжка классная. + Есть его лекции по цифровой связи, смотрятся на 1 дыхании th-cam.com/video/6iJPYGxVoOk/w-d-xo.html

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      Ооо! ничего себе, спасибо!

  • @temp0508
    @temp0508 2 ปีที่แล้ว

    О. Автор получил что то похожее на давно воплощенное в железо (примерно в 96 году в массовом производстве) передачу сигнала в белых шумах. хотя нет. досмотрел - ему еще далеко до этого...

    • @temp0508
      @temp0508 2 ปีที่แล้ว

      но все равно плюс )

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      Да как бы в связи с отрицательным сигнал-шумом передают, ничего такого в этом нет. Чего-кому далеко, непонятно))

  • @rxlroman
    @rxlroman 2 ปีที่แล้ว

    Бирюзовый? Вы уверены?

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +2

      Хаа-ха))) почему я сказал бирюзовый...))))

    • @user-gq4lg3nz6i
      @user-gq4lg3nz6i 2 ปีที่แล้ว

      Ну да, я тоже обратил внимание)) пурпурный приблизительно )))

    • @user-fg2dg4oj2y
      @user-fg2dg4oj2y 2 ปีที่แล้ว

      @@user-gq4lg3nz6i Маджента этот цвет называется

  • @abbazhaba9584
    @abbazhaba9584 2 ปีที่แล้ว +1

    калман график биткоина предскажет?

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +1

      Конечно, если дать ему матрицу динамической модели системы)

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว +1

      @@pswru Что-то типа этого я и имел ввиду:) Типа модель экономики... всей:)

  • @sergeyrink3003
    @sergeyrink3003 2 ปีที่แล้ว

    Жаль, что про ФВЧ ничего не услышал.

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      В начале говорю, что не могу физически рассмотреть все возможные ветки частотно-избирательных фильтров поэтому беру только одну. Для случаев синтеза КИХ/БИХ с помощью программных средств разницы ФНЧ/ФВЧ нет.

    • @sergeyrink3003
      @sergeyrink3003 2 ปีที่แล้ว

      @@TDMLab Спасибо, я уже понял, что реализация одинаковая. На практике можно обойтись более простыми критериями скорости изменения сигнала и плавающим порогом на скользящем среднем. Получается адаптивный программный ФВЧ.

    • @TDMLab
      @TDMLab  2 ปีที่แล้ว

      ​@@sergeyrink3003 Существует бесконечно много различных алгоритмов, выбор же зависит от конкретной задачи.

  • @alexlk1016
    @alexlk1016 2 ปีที่แล้ว

    ++++++

  • @cuproot
    @cuproot ปีที่แล้ว

    Преподы по ТАУ в слезах дерутся за веревку с мылом...

    • @TDMLab
      @TDMLab  ปีที่แล้ว

      Да, вроде нет, даже наоборот;)