STM32G4 АЦП Шумы, усреднение, фильтрация

  Рет қаралды 17,379

TDM Lab

TDM Lab

Күн бұрын

Пікірлер: 89
@taichiveron9278
@taichiveron9278 3 жыл бұрын
Блин, ну вроде не тупой, но как только автор начинает весело рассказывать о КИХ, у меня заканчивается оперативка. Слишком много выборок на одну секунду видео и я зависаю. :)
@vvdvlas8397
@vvdvlas8397 3 жыл бұрын
КИХ довольно простая вещь. А вот с БИХ нужно быть осторожным. При определенных условиях, может не хватить динамического диапазона вычислений, особенно для порядков больше двух.
@Paltus667
@Paltus667 3 жыл бұрын
Меня прям вдохновило накидать прогу, которая оцифровывает АЦП и отправляет на комп и визуализировать на питоне.
@rust_embedded
@rust_embedded 3 жыл бұрын
Ожидаемо отличное видео! Браво!
@Редкиевидеороликипрокомпанетнт
@Редкиевидеороликипрокомпанетнт 3 жыл бұрын
Годный контент хоть я и не любитель STM-мок, уже не успеваю за технологиями но очень интересно смотреть чем всё это закончиться а именно эра PIC & AVR...
@Wo_Wang
@Wo_Wang 3 жыл бұрын
"Каменный век закончился не потому что закончились камни"... :)
@GennPen
@GennPen 3 жыл бұрын
Для меня эра AVR-ок закончилась как только познакомился с STM32. =)
@redcat9444
@redcat9444 3 жыл бұрын
@@GennPen а я только собрался поближе познакомиться с STM32, посмотрел их наличие в магазинах, скорее всего, эра STM32 для меня закончится так и не начавшись. (( Совсем печаль с их дефицитом.
@vvdvlas8397
@vvdvlas8397 3 жыл бұрын
STM32, даже самые простые, подорожали в разы. Так что не все так однозначно.
@Wo_Wang
@Wo_Wang 3 жыл бұрын
@@vvdvlas8397 , разве остальные не подорожали? :)
@muctex
@muctex 3 жыл бұрын
Разжевал и врот положил🔥 супер достойно и понятно расказал🙏
@RadioTexnik
@RadioTexnik 3 жыл бұрын
Превосходно! Спасибо за материал! 👍
@Seriyv0lk
@Seriyv0lk Жыл бұрын
Привет! Я недавно стал обладателем такой же отладки. И хочу заметить, что МК на ней прекрасно гонится по частоте (у меня работал на 240 МГц). Так что, в обход куба выставляй такотовую 180 МГц, и будут твои желанные 60 МГц на таймере.
@TDMLab
@TDMLab Жыл бұрын
Да, согласен, почти все STM позволяют некоторый разгон.
@artsiomkazlouski5127
@artsiomkazlouski5127 8 ай бұрын
очень интересно) пойду поищу видео, поморгаю светодиодиком, напишу на LCD "Hello word"
@ВиталийИнюшов
@ВиталийИнюшов 3 жыл бұрын
Очень грамотная подача материала, для меня эта тема мега полезная. Сам увлекаюсь проектированием лабораторных блоков питаний именно на stm32
@virdox
@virdox 9 ай бұрын
хоть и прошло много времени, спрошу, есть предложения о продаже БП которые Вы проектируете ?
@akvilion7365
@akvilion7365 3 жыл бұрын
Прикольно, оверсемплинг со сдвигом есть даже в младших STM32G0. Сейчас в кубе проверил. Было бы интересно проверить работу этих режимов + разные цифровые фильтры с проверкой на каком нибудь вольтметре с 5+ знаков после запятой. Просто понять - стоит ли тратить ресурсы или остановиться на дефолтных 12 битах.
@TDMLab
@TDMLab 3 жыл бұрын
Честно говоря обещать не могу, может позже, следующая тема ЦАП, потом тоже расписано и уже хочу к основному применению прийти как планировал к системе управления АД.
@akvilion7365
@akvilion7365 3 жыл бұрын
@@TDMLab @TDM Lab Тогда ждём ЦАП! Кстати, можно запустить голосовалку - нужно ли прикреплять проекты куба из роликов к видео в качестве примера и "быстрого старта". Мб поможет кому-то освоить и куб и камень.
@TDMLab
@TDMLab 3 жыл бұрын
@@akvilion7365 Думал над этим, но тут прям совсем простой проект, пару раз HAL написал и весь код:))) а настройки инициализации я постоянно менял по ходу пьесы)
@vvdvlas8397
@vvdvlas8397 3 жыл бұрын
У STM32 есть единственная серия F373, в которой есть 3 сигма-дельта АЦП на 16бит. Они не очень быстрые, но в районе сигналов килогерц 5-10 вполне годные, особенно в дифференциальном режиме. Вот на них можно сделать примерно "5+".
@akvilion7365
@akvilion7365 3 жыл бұрын
@@vvdvlas8397 STM-щикам пора бы обновить F3xx серию. Следующие с 16 битным АЦП камни уже слишком мощные и дорогие. Добавили бы компараторы, ОУ, USB, пошустрее сделали АЦП, корпуса завезли QFPN - был бы отличный универсальный камень с аналоговым уклоном. А потом можно придумать старшую серию с 18...24 битным АЦП )
@openFrimeTv
@openFrimeTv 3 жыл бұрын
да, видосы про стм заходят))
@playmarket8605
@playmarket8605 3 жыл бұрын
Плату с stm нужно было тоже от батареек запитать для уменьшения помех)
@Googlag
@Googlag 2 жыл бұрын
Очень интересно несмотря на то ,что ничего по микроэлектронике не понимаю.
@ОлегАсмолов-й5н
@ОлегАсмолов-й5н 3 жыл бұрын
Добрый день! Пилю частотник, подскажите как использовать на практике ускоритель оперативной памяти, чтоб поместить туда таблицу синуса ?
@TDMLab
@TDMLab 3 жыл бұрын
Добрый! А она вам нужна эта ccm sram? Тем более если речь идет о таблице. Я не работал с ней и пока не собираюсь, но если очень хотите то вот для начала: pro-interes.com/wp-content/uploads/2020/12/AN4296-Использование-STM32F3STM32G4-CCM-SRAM-с-IAR-™-EWARM-Keil®-MDK-ARM-и-инструментами-на-основе-GNU.pdf
@ОлегАсмолов-й5н
@ОлегАсмолов-й5н 3 жыл бұрын
@@TDMLab Сегодня досмотрел что кварц на nucleo 24мГЦ, я в настройках по привычке 8 поставил. Когда поменял все полетело. Плюс таймера завёл через LL а не HAL, по итогу синусоида в 1000 Гц без проблем, до этого на 55 мк зависал.
@ОлегАсмолов-й5н
@ОлегАсмолов-й5н 3 жыл бұрын
Так что наверное не нужно пока ccm sram.
@TDMLab
@TDMLab 3 жыл бұрын
@@ОлегАсмолов-й5н ок, понятно, я когда HRTIM заводил забыл вообще внешний кварц включить, работал от внутреннего источника и удивлялся почему частоты ШИМ не совпадают с расчетными. А по поводу LL и HAL все должно заводится одинаково, где то с hal значит ошибка, но если работает то не суть.
@ОлегАсмолов-й5н
@ОлегАсмолов-й5н 3 жыл бұрын
@@TDMLab Я конечно любитель, но даже если посмотреть функцию прерывания от HAL, то она явно больше чем у LL, думаю из-за этого и разница в скорости. Если не прав поправьте.
@MK_Electron
@MK_Electron 3 жыл бұрын
В начале понятно , потом какой то эльфийский язык пошел и я перегрузился, пытаясь понять xD
@Wo_Wang
@Wo_Wang 3 жыл бұрын
Это язык R2D2... :)
@Alex-rw2gy
@Alex-rw2gy 3 жыл бұрын
все это очень круто, но как успеть изучить все эти новые технологии?
@TDMLab
@TDMLab 3 жыл бұрын
Все изучить конечно вряд ли, но выбрать несколько направлений и их копать вполне возможно.
@CanchezAK
@CanchezAK 3 жыл бұрын
Будучи догоняющими, программисты всегда будут не успевать, хочешь успевать - создавай сами камни.
@ОлегАсмолов-й5н
@ОлегАсмолов-й5н 3 жыл бұрын
АЦП получается запустить только в обычном режиме, не запуск таймером не DMA не работает. Мне кажется это связано именно с данным камнем, что это может быть, куда копать ?
@TDMLab
@TDMLab 3 жыл бұрын
Не может такого быть, я в видео про аппаратный фильтр запускал АЦП по таймеру, там в описании код есть.
@ОлегАсмолов-й5н
@ОлегАсмолов-й5н 3 жыл бұрын
@@TDMLab Разобрался: глянул ваш проект, оказалось забыл выставить событие которое генерит таймер(Trigger Event ), сейчас буду с DMA разбираться. Спасибо вам за подсказку .
@TDMLab
@TDMLab 3 жыл бұрын
@@ОлегАсмолов-й5н успехов)
@ОлегАсмолов-й5н
@ОлегАсмолов-й5н 3 жыл бұрын
@@TDMLab С DMA никак.... Запускаю АЦП по таймеру, но в массиве ноль. Инкрементирую счетчик в прерывании по DMA - счетчик стоит, то есть DMA не стартует. До этого на 103м, 407 камне все работало без проблем, а тут.....
@TDMLab
@TDMLab 3 жыл бұрын
@@ОлегАсмолов-й5н стоит посмотреть доступ при запросе DMA к АЦП, должен быть Word access в разделе периферия и half word в разделе память, но последнее не обязательно.
@ArthurIslamRU
@ArthurIslamRU 3 жыл бұрын
Спасибо. Подскажите, сколько бит шума добавится в среднем с применением обычного ОУ с коэффициентом усиления 1 ?
@TDMLab
@TDMLab 3 жыл бұрын
Если все сделать правильно - нисколько добавится.
@ArthurIslamRU
@ArthurIslamRU 3 жыл бұрын
@@TDMLab Спасибо Большое
@101picofarad
@101picofarad 3 жыл бұрын
Так показали бы уже влияние БИХ и КИХ на форму измеренного сигнала во временной области - чтобы для обычных людей стало понятно зачем все эти четырёхэтажные умножения с накоплениями аппаратные.
@TDMLab
@TDMLab 3 жыл бұрын
Как-нибудь покажу, в этот формат уже не вмещалось. Отдельная тема цифровые фильтры будет.
@ДмитроЯ-я6б
@ДмитроЯ-я6б 3 жыл бұрын
Пошёл я в тини13 колупаться😁
@MrAndops
@MrAndops 3 жыл бұрын
Класс
@suifutors
@suifutors 2 жыл бұрын
Эм... думаю что стоило подписать график на моменте с передискретизацией.
@TDMLab
@TDMLab 2 жыл бұрын
Так на 10:06 же. Пере дискретизация это лишь вожмодность для последующего усреднения, что и позволяет этот микроконтроллер делать аппаратно в самом АЦП.
@suifutors
@suifutors 2 жыл бұрын
@@TDMLab Я про 7:50, просто графики которые ничего не говорят, и никак не подписаны. Видео переделывать смысла нет, это такая ремарка)
@TDMLab
@TDMLab 2 жыл бұрын
@@suifutors Графики на 7:50 иллюстрируют то что я говорю словами. "Отсчеты взятые в соседние моменты времени дополняют друг друга" для получения лучшего соотношения сигнал/шум.
@suifutors
@suifutors 2 жыл бұрын
@@TDMLab Это понятно, но они же не подписаны.)
@Techn0man1ac
@Techn0man1ac 3 жыл бұрын
Что такое DSP, если простыми словами?
@TDMLab
@TDMLab 3 жыл бұрын
Цифровая обработка сигналов. Еще проще - сложнее))
@Sanchogus
@Sanchogus 3 жыл бұрын
И почему мне раньше не попадался этот канал?
@МихаилСадилов-й1ж
@МихаилСадилов-й1ж 3 жыл бұрын
Здравствуйте, спасибо за видео. Как всегда, превосходно! Как происходит определение положения ротора "с участием наблюдателя в системе управления"? Встречал этот термин в Motor control sdk от st, но так и не понял, что это. Или кто)?
@TDMLab
@TDMLab 3 жыл бұрын
Хороший у Вас вопрос) Скажу то что знаю. Сам системы с наблюдателем не собирал. Наблюдателем называется математическая модель объекта управления (двигателя например) которая представляет собой набор уравнений которые описывают его реакцию на внешнее воздействие (напряжение питания, нагрузка на валу), то есть это попытка сделать максимально точную модель управляемого механизма, а значит это позволяет узнать все его характеристики в любой момент времени зная поданные на его вход сигналы. Наблюдатель конечно будет всегда иметь ошибку своих предсказаний от реального поведения мотора, но мы можем зная величину ошибки и величину фазных токов корректировать показания наблюдателя в реал тайме. Подробнее например здесь: www.st.com/resource/en/application_note/cd00154076-luenberger-state-observer-rotor-position-estimation-simulink-and-software-library-stmicroelectronics.pdf
@МихаилСадилов-й1ж
@МихаилСадилов-й1ж 3 жыл бұрын
@@TDMLab Спасибо. Вам нужно выделить бюджетное финансирование и перенаправить бОльшую часть вашего времени на образовательную деятельность!
@texadmin4749
@texadmin4749 3 жыл бұрын
Годнота
@ЭлМикро-о4щ
@ЭлМикро-о4щ 3 жыл бұрын
круто
@RenatRkrkaft
@RenatRkrkaft 3 жыл бұрын
Все ясно, одного маленького конденсатора будет достаточно)))
@TDMLab
@TDMLab 3 жыл бұрын
Часто да.
@vvdvlas8397
@vvdvlas8397 3 жыл бұрын
На сайте Микрочипа, есть статья по поводу "конденсатора" на входе коммутатора АЦП. Не все так однозначно, если используется один АЦП с коммутатором на несколько входов. Этот коммутатор подключает внутреннюю емкость АЦП к разным входам и подзаряжает/подразряжает внешние конды на входах.Это вносит шум в сигналы этих входов. В определенных случаях, входные конды лучше вообще не ставить и фильтрацию алиасов делать на ОУ перед АЦП, хоть это и дороже.
@TDMLab
@TDMLab 3 жыл бұрын
@@vvdvlas8397 Да, все так, если используются мультиплексирование каналов одного АЦП то конденсатор запросто даст взаимное проникновение.
@andreyperov998
@andreyperov998 3 жыл бұрын
Я ископаемый, но интересно!
@viyacheslav.
@viyacheslav. Жыл бұрын
Я сейчас могу купить STM32 дешевле чем Attiny13! Это последний гвоздь для AVR. Прощай такой простой ассемблер...
@MYDIYby
@MYDIYby 3 жыл бұрын
Империя котиков? Так это у тебя котик на аватарке канала? Я все голову ломал, что это такое там нарисовано.
@clora1136
@clora1136 3 жыл бұрын
Я один увидел бифуркации на ослике?
@TDMLab
@TDMLab 3 жыл бұрын
Ну почти, это псевдорандом средствами ядра.
@TDMLab
@TDMLab 3 жыл бұрын
Хотя блин сейчас пригляделся к началу, а ведь в этом что-то есть, почему похоже?😮
@clora1136
@clora1136 3 жыл бұрын
@@TDMLab так псевдо случайные числа, в данном случае это одна из функций континуума пространств Мандельброта. kzbin.info/www/bejne/enmUlKlmh8mZaNk вот тут на пальцах. В целом оно везде, даже оу звенит или компаратор генерит именно так, а параметром будет глубина на которую вы фазу загоните за рабочие параметры).
@TDMLab
@TDMLab 3 жыл бұрын
@@clora1136 да, я конечно смотрел Дерека:) Потрясающе что проявления этого повсюду))
@MrDenhard
@MrDenhard 10 ай бұрын
Привет, а ты не имел дела с H7 серией?
@TDMLab
@TDMLab 10 ай бұрын
Что конкретно интересует? Щупал их не углубляясь в спец. фишки.
@kapitankakao6592
@kapitankakao6592 3 жыл бұрын
У Автора присутствует явная каша в голове, антиалиасинговый фильтр нужен не для того, о чем идет речь в виде, а для того чтобы избежать наложений копий спектра. Активный фильтр на ОУ или буфер разве не будет иметь собственных шумов? И почему он тогда с точки зрения шума будет пассивных RLC цепей? И каким должен быть оптимальный фильтр для фильтрации DC (0 Гц)? Разве не емкость? Про передискретизация даже писать ничего не хочется. "Эти лишние выборки несут дополнительную информации о сигнале" Это как? Никай дополнительный информации при интерполяции из сигнала Вы явно не получите.
@TDMLab
@TDMLab 3 жыл бұрын
Аналогично я думаю о авторе этого комментария. Если вы хорошо подумаете то поймете, что сказанное мной это лишь подтверждает. Понятно что при взятии отсчета неважно где на спектре находилась помеха, она будет перенесена в первую зону Найквиста. Но если вы действительно внимательно послушаете и посмотрите я не говорю что нужно строить антиалиасинговый фильтр, лучше строить аналоговый фильтр с частотой среза не половина fs, а со срезом до нужной полосы и он в том числе будет выполнять роль антиалиасингового фильтра. Андестенд? "Активный фильтр на ОУ или буфер разве не будет иметь собственных шумов?" - мы что играем в детский вопрос детский ответ? Читайте SLVA043B просвещайтесь про шумы. "И почему он тогда с точки зрения шума будет пассивных RLC цепей?" какой-то незаконченный вопрос:) ну, потому что обеспечит лучшее подавления выше полезной полосы. А кто говорит о 0Гц? а идеальный для 2 Гц слабо? "Никай дополнительный информации при интерполяции из сигнала Вы явно не получите" - Да вот выходит что получаю:) www.analog.com/media/en/technical-documentation/data-sheets/250832fc.pdf P.S. Только не интерполяции. Не путайте понятия передискретизации и интерполяция, это прям совсем не одно и тоже. Под видео я обновил литературу как это работает, и да, есть АЦП построенные на передискретизации, как по ссылке выше. RLC плохой подход к фильтрам так как придется забыть о фазовой линейности. Собственно RLC нигде и не применяется, а про RC я рассказал. Буферизация нужна если внутреннее сопротивление источника сигнала велико, в видео есть пояснения почему это проблема.
STM32G4 ЦАП Скорость, буферизация
8:23
How Many Balloons To Make A Store Fly?
00:22
MrBeast
Рет қаралды 198 МЛН
СИНИЙ ИНЕЙ УЖЕ ВЫШЕЛ!❄️
01:01
DO$HIK
Рет қаралды 2 МЛН
So Cute 🥰 who is better?
00:15
dednahype
Рет қаралды 19 МЛН
Свой контроллер для мотор-колеса
25:33
Исследование сигма дельта АЦП ADS1220
20:31
Dmitry Kuznetsov
Рет қаралды 1,9 М.
How Many Balloons To Make A Store Fly?
00:22
MrBeast
Рет қаралды 198 МЛН