Мелкие вопросы по теории
-
Electricman
- Вымогатель припоя
- Сообщения: 583
- Зарегистрирован: Вс окт 20, 2019 20:54:30
Re: Мелкие вопросы по теории
А теперь ничего не понятно.
От слова совсем, как это работает и, тем более, как это реализовать.
- Реклама
- КРАМ
- Друг Кота
- Сообщения: 25367
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Мелкие вопросы по теории
[uquote="Electricman",url="/forum/viewtopic.php?p=4151591#p4151591"]От слова совсем[/uquote]
Непонятно ЧТО?
Спектр БЕСКОНЕЧНОГО синусоидального сигнала - дельта-функция на частотной оси. То есть "палка" имеющая нулевую ширину.
Спектр КОНЕЧНОГО синусоидального сигнала (то есть промодулированного одиночным единичным импульсом) будет спектром ЭТОГО ИМПУЛЬСА перенесенным на частоту синуса.
Отсюда и происходит сказанное мной выше.
Из этого следует, что ДПФ-БПФ считают в частотной сетке соответствующей времени накопления и частоте дискретизации. А совсем не на частотах сигналов подлежащих анализу.
Аналогично при измерении напряжения в АЦП никто не привязывает сетку напряжений (кодов) АЦП к напряжению измеряемого сигнала.
Непонятно ЧТО?
Спектр БЕСКОНЕЧНОГО синусоидального сигнала - дельта-функция на частотной оси. То есть "палка" имеющая нулевую ширину.
Спектр КОНЕЧНОГО синусоидального сигнала (то есть промодулированного одиночным единичным импульсом) будет спектром ЭТОГО ИМПУЛЬСА перенесенным на частоту синуса.
Отсюда и происходит сказанное мной выше.
Из этого следует, что ДПФ-БПФ считают в частотной сетке соответствующей времени накопления и частоте дискретизации. А совсем не на частотах сигналов подлежащих анализу.
Аналогично при измерении напряжения в АЦП никто не привязывает сетку напряжений (кодов) АЦП к напряжению измеряемого сигнала.
Последний раз редактировалось КРАМ Пт дек 31, 2021 20:42:28, всего редактировалось 2 раза.
-
Electricman
- Вымогатель припоя
- Сообщения: 583
- Зарегистрирован: Вс окт 20, 2019 20:54:30
Re: Мелкие вопросы по теории
[uquote="КРАМ",url="/forum/viewtopic.php?p=4151609#p4151609"]Непонятно ЧТО?[/uquote]
Непонятно, что мне делать с моими отсчётами. Если до этого было понятно, что много математики, то теперь возникает абстракция.
Непонятно, что мне делать с моими отсчётами. Если до этого было понятно, что много математики, то теперь возникает абстракция.
- КРАМ
- Друг Кота
- Сообщения: 25367
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Мелкие вопросы по теории
[uquote="Electricman",url="/forum/viewtopic.php?p=4151612#p4151612"]что мне делать с моими отсчётами.[/uquote]
С какой частотой сделаны отсчеты и сколько этих отсчетов?
С какой частотой сделаны отсчеты и сколько этих отсчетов?
-
Electricman
- Вымогатель припоя
- Сообщения: 583
- Зарегистрирован: Вс окт 20, 2019 20:54:30
Re: Мелкие вопросы по теории
Ну, допустим 1024 отсчёта за 1 секунду. 
- Реклама
- КРАМ
- Друг Кота
- Сообщения: 25367
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Мелкие вопросы по теории
Это означает, что можно получить 512 фильтров с шагом в 1 Гц. Верхняя частота анализа составит 512 Гц.
-
Electricman
- Вымогатель припоя
- Сообщения: 583
- Зарегистрирован: Вс окт 20, 2019 20:54:30
Re: Мелкие вопросы по теории
Это всё хорошо, но представляет из себя фильтр?
Осциллограф на 1024 точках с интервалом в 5мкс между точками строит спектрограмму до 300кГц при входном сигнале 1кГц, шаг каждой точки 200Гц.
Эх, такими темпами точно окажется проще мотрочик с переменниками и пара мостов Вина для сужения полосы.
Осциллограф на 1024 точках с интервалом в 5мкс между точками строит спектрограмму до 300кГц при входном сигнале 1кГц, шаг каждой точки 200Гц.
Эх, такими темпами точно окажется проще мотрочик с переменниками и пара мостов Вина для сужения полосы.
- КРАМ
- Друг Кота
- Сообщения: 25367
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Мелкие вопросы по теории
[uquote="Electricman",url="/forum/viewtopic.php?p=4151623#p4151623"]Осциллограф на 1024 точках с интервалом в 5мкс между точками строит спектрограмму до 300кГц при входном сигнале 1кГц, шаг каждой точки 200Гц.[/uquote]
5 мкс дискретизации (без даунсемплинга) позволяют получить верхнюю частоту не выше 100 кГц (частота дискретизации 200 кГц).
Такшта про осциллограф - это ваша фантазия. Вы просто не разобрались в условиях измерений.
Добавлено after 5 minutes 34 seconds:
[uquote="Electricman",url="/forum/viewtopic.php?p=4151623#p4151623"]представляет из себя фильтр?[/uquote]
Фильтр представляет из себя АЧХ ОКОННОЙ ФУНКЦИИ. Поверхностно можете узнать об этом из Википедии по статье Оконное преобразование Фурье. Там приведены АЧХ нескольких популярных оконных функций. АЧХ будут соответствовать спектру самой оконной функции.
5 мкс дискретизации (без даунсемплинга) позволяют получить верхнюю частоту не выше 100 кГц (частота дискретизации 200 кГц).
Такшта про осциллограф - это ваша фантазия. Вы просто не разобрались в условиях измерений.
Добавлено after 5 minutes 34 seconds:
[uquote="Electricman",url="/forum/viewtopic.php?p=4151623#p4151623"]представляет из себя фильтр?[/uquote]
Фильтр представляет из себя АЧХ ОКОННОЙ ФУНКЦИИ. Поверхностно можете узнать об этом из Википедии по статье Оконное преобразование Фурье. Там приведены АЧХ нескольких популярных оконных функций. АЧХ будут соответствовать спектру самой оконной функции.
-
Electricman
- Вымогатель припоя
- Сообщения: 583
- Зарегистрирован: Вс окт 20, 2019 20:54:30
Re: Мелкие вопросы по теории
[uquote="КРАМ",url="/forum/viewtopic.php?p=4151627#p4151627"]5 мкс дискретизации (без даунсемплинга) позволяют получить верхнюю частоту не выше 100 кГц (частота дискретизации 200 кГц).
Такшта про осциллограф - это ваша фантазия. Вы просто не разобрались в условиях измерений.[/uquote]
Мне главное, что он показывает то, что мне хватает.
Просто надо собрать что-то покомпактнее. Вот это моя фантазия. Вот и спрашиваю, как это реализовать это самое. Что есть фильтры, как их реализовывать и применять к данным - это, похоже, тайна.
Про оконные функции знаю только окно Хеннинга, которое есть на этом же осцилле.
Такшта про осциллограф - это ваша фантазия. Вы просто не разобрались в условиях измерений.[/uquote]
Мне главное, что он показывает то, что мне хватает.
Просто надо собрать что-то покомпактнее. Вот это моя фантазия. Вот и спрашиваю, как это реализовать это самое. Что есть фильтры, как их реализовывать и применять к данным - это, похоже, тайна.
Про оконные функции знаю только окно Хеннинга, которое есть на этом же осцилле.
- КРАМ
- Друг Кота
- Сообщения: 25367
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Мелкие вопросы по теории
[uquote="Electricman",url="/forum/viewtopic.php?p=4151631#p4151631"]Что есть фильтры, как их реализовывать и применять к данным - это, похоже, тайна.
Про оконные функции знаю только окно Хеннинга, которое есть на этом же осцилле.[/uquote]
Вы пишите чушь. Нет никакой тайны. Реализовать синусно-косинусный ДПФ вообще элементарно. Только количество умножений будет N в квадрате, где N - число отсчетов. При БПФ количество умножений составит N*log N. Правда это будут КОМПЛЕКСНЫЕ умножения.
Про окна я уже написал где посмотреть.
Добавлено after 6 minutes 38 seconds:
[uquote="Electricman",url="/forum/viewtopic.php?p=4151631#p4151631"]Просто надо собрать что-то покомпактнее.[/uquote]
Вы не озвучили реальных требований к тому, что вы хотите увидеть на выходе.
Про оконные функции знаю только окно Хеннинга, которое есть на этом же осцилле.[/uquote]
Вы пишите чушь. Нет никакой тайны. Реализовать синусно-косинусный ДПФ вообще элементарно. Только количество умножений будет N в квадрате, где N - число отсчетов. При БПФ количество умножений составит N*log N. Правда это будут КОМПЛЕКСНЫЕ умножения.
Про окна я уже написал где посмотреть.
Добавлено after 6 minutes 38 seconds:
[uquote="Electricman",url="/forum/viewtopic.php?p=4151631#p4151631"]Просто надо собрать что-то покомпактнее.[/uquote]
Вы не озвучили реальных требований к тому, что вы хотите увидеть на выходе.
-
Electricman
- Вымогатель припоя
- Сообщения: 583
- Зарегистрирован: Вс окт 20, 2019 20:54:30
Re: Мелкие вопросы по теории
Могу тоже самое написать про чушь.
Я написал про конкретный пример - и получил, как реализовывается этот самый синусно-косинусный ДПФ. Сложно, но хоть что-то понятно, как это примерно реализовать.
А вот дальше - ничего не понятно. Я ведь не зря написал, что гугл в вопросе не помог, а значит и википедия. Читал я это всё не раз, и не два, и википедию, и рефераты. Но везде всё написано строгим математическим языком. Как это применить, там увы, не говорится.
Что я хочу увидеть - точки в координатах амплитуда-частота. Как на классическом древнем ламповом С4-27. Только для низких частот.
А вот дальше - ничего не понятно. Я ведь не зря написал, что гугл в вопросе не помог, а значит и википедия. Читал я это всё не раз, и не два, и википедию, и рефераты. Но везде всё написано строгим математическим языком. Как это применить, там увы, не говорится.
Что я хочу увидеть - точки в координатах амплитуда-частота. Как на классическом древнем ламповом С4-27. Только для низких частот.
- КРАМ
- Друг Кота
- Сообщения: 25367
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Мелкие вопросы по теории
[uquote="Electricman",url="/forum/viewtopic.php?p=4151637#p4151637"]А вот дальше - ничего не понятно.[/uquote]
1. Набираем 1024 отсчета.
2. Умножаем эти отсчеты на оконную функцию.
3. Для КАЖДОГО ФИЛЬТРА:
а) считаем сумму произведений каждого отсчета и значения косинуса с частотой этого фильтра в точке отсчета. Делим сумму на число отсчетов (нормируем).
б) тоже самое для синуса.
в) находим сумму квадратов результатов по пунктам а и б. Извлекаем корень квадратный из результата - получаем амплитуду сигнала в фильтре.
Вот и все.
Значения синусов и косинусов можно забить таблицами, чтобы не считать.
Что тут непонятного?
1. Набираем 1024 отсчета.
2. Умножаем эти отсчеты на оконную функцию.
3. Для КАЖДОГО ФИЛЬТРА:
а) считаем сумму произведений каждого отсчета и значения косинуса с частотой этого фильтра в точке отсчета. Делим сумму на число отсчетов (нормируем).
б) тоже самое для синуса.
в) находим сумму квадратов результатов по пунктам а и б. Извлекаем корень квадратный из результата - получаем амплитуду сигнала в фильтре.
Вот и все.
Значения синусов и косинусов можно забить таблицами, чтобы не считать.
Что тут непонятного?
-
Electricman
- Вымогатель припоя
- Сообщения: 583
- Зарегистрирован: Вс окт 20, 2019 20:54:30
Re: Мелкие вопросы по теории
Дак, много чего непонятного.
Оконная функция - понятно, его конкретная реализация - непонятна. На википедии в формулах к окнам не расписано даже, чем является та или иная буква в формуле. Ну ладно, в той же книжке на осцил приведено окно Хеннинга, типа х = cos^2 [(x/1024 - 1/2)*Pi]. Это ещё как-то можно перевести в код.
Для каждого фильтра - я даже не понимаю, для какого фильтра? Частотного? Как он реализуется именно в привязанной к действительности формуле?
Оконная функция - понятно, его конкретная реализация - непонятна. На википедии в формулах к окнам не расписано даже, чем является та или иная буква в формуле. Ну ладно, в той же книжке на осцил приведено окно Хеннинга, типа х = cos^2 [(x/1024 - 1/2)*Pi]. Это ещё как-то можно перевести в код.
Для каждого фильтра - я даже не понимаю, для какого фильтра? Частотного? Как он реализуется именно в привязанной к действительности формуле?
- КРАМ
- Друг Кота
- Сообщения: 25367
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Мелкие вопросы по теории
[uquote="Electricman",url="/forum/viewtopic.php?p=4151654#p4151654"]Для каждого фильтра - я даже не понимаю, для какого фильтра? Частотного?[/uquote]
А какие еще могут быть фильтры?
Ваша безграмотность столь велика, что вам следует начать с самых азов. Простой тригонометрии.
Добавлено after 3 minutes 24 seconds:
[uquote="Electricman",url="/forum/viewtopic.php?p=4151654#p4151654"]На википедии в формулах к окнам не расписано даже, чем является та или иная буква в формуле.[/uquote]
Как это не написано? Там всего две буквы. Текущий отсчет и общее число отсчетов.
А какие еще могут быть фильтры?
Ваша безграмотность столь велика, что вам следует начать с самых азов. Простой тригонометрии.
Добавлено after 3 minutes 24 seconds:
[uquote="Electricman",url="/forum/viewtopic.php?p=4151654#p4151654"]На википедии в формулах к окнам не расписано даже, чем является та или иная буква в формуле.[/uquote]
Как это не написано? Там всего две буквы. Текущий отсчет и общее число отсчетов.
-
Electricman
- Вымогатель припоя
- Сообщения: 583
- Зарегистрирован: Вс окт 20, 2019 20:54:30
Re: Мелкие вопросы по теории
В математике я не силён, не скрываю, туда же и тригонометрия. Но всё же был задан конкретный вопрос.
И как я понимаю, у вас конкретного примера нет. Конкретно с ДПФ получен ответ, для расчётов по нему мне хватит математических знаний, пускай и со скрипом. Окно Хемминга - тоже, формула привязанная к действительности, а не к высшей математике. Период есть, косинусы-квадраты посчитать можно, подставляй значения и считай. А вот по фильтрам я такой формулы не нашёл.
Ладно, это уже после нового года буду думать.
- КРАМ
- Друг Кота
- Сообщения: 25367
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Мелкие вопросы по теории
[uquote="Electricman",url="/forum/viewtopic.php?p=4151669#p4151669"]А вот по фильтрам я такой формулы не нашёл.[/uquote]
По каким еще фильтрам?
Каждый частотный результат ДПФ и есть сигнал в ФИЛЬТРЕ с АЧХ определяемой оконной функцией. АЧХ оконных функции приведены в той же википедии. Это АЧХ НА ЧАСТОТЕ ФИЛЬТРА.
Последовательность расчета я вам привел. Что еще вам требуется?
По каким еще фильтрам?
Последовательность расчета я вам привел. Что еще вам требуется?
-
Electricman
- Вымогатель припоя
- Сообщения: 583
- Зарегистрирован: Вс окт 20, 2019 20:54:30
Re: Мелкие вопросы по теории
Посмотрим, что в итоге выйдет, вроде отчасти приходит понимание. Просто для кого-то это просто, особенно кто с этим работает. Для меня не так сложно это перевести в машкоды какого-нибудь Z80. Было бы что переводить.
Мне с программированием тоже никто ничего толком не объяснил. "Всё просто, в интернете всё написано"... А сам я нашёл только чёткое, краткое и понятное описание программирования 580ВМ80.
Мне с программированием тоже никто ничего толком не объяснил. "Всё просто, в интернете всё написано"... А сам я нашёл только чёткое, краткое и понятное описание программирования 580ВМ80.
- КРАМ
- Друг Кота
- Сообщения: 25367
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Мелкие вопросы по теории
[uquote="Electricman",url="/forum/viewtopic.php?p=4151691#p4151691"]Мне с программированием тоже никто ничего толком не объяснил. "Всё просто, в интернете всё написано"... А сам я нашёл только чёткое, краткое и понятное описание программирования 580ВМ80.
[/uquote]
Тоже какая то чушь. Система команд любой платформы доступна, если речь идет об АСМе. Но кроме системы команд нужно знать АРХИТЕКТУРУ процессора, чтобы не заниматься изобретением деревянных велосипедов.
Тоже какая то чушь. Система команд любой платформы доступна, если речь идет об АСМе. Но кроме системы команд нужно знать АРХИТЕКТУРУ процессора, чтобы не заниматься изобретением деревянных велосипедов.
- Ярослав555
- Поставщик валерьянки для Кота
- Сообщения: 2081
- Зарегистрирован: Пт май 31, 2013 17:14:38
- Откуда: Украина, Винница
Re: Мелкие вопросы по теории
может мне попробовать обьяснить....
ну смотри - оконная функция это абстракция, чтобы перевести абстрактный бесконечный повторяющийся сигнал в анализируемый кусок. У нас есть массив куда мы складываем отсчеты. Величина этого массива - ширина нашего окна. Частота с которой мы берем выборки (то как быстро работает АЦП) накладывает ограничения на максимально возможную анализируемую частоту. Т-е если у нас частота дискретизации 400 кГц, то максимально что мы можем увидеть в спектре - 200 кГц. С другой стороны - нижняя частота зависит он ширины окна. Если у нас в окно не помещается период ниже 1 кГц, то нет смысла анализировать что-то ниже. Вот мы получили два параметра частоты исходя из частоты дискретизации и ширины окна. Шаг с которым мы будем делать анализ - зависит от сетки на которую мы будем проецировать спектр. Допустим там все тоже просто - 200 точек. Отсюда получаем шаг в 1 кГц.
Теперь анализ. Нам надо взять некую элементарную гармонику и найти ее корреляцию с исходным массивом. Чтобы найти корреляцию, надо взять эту гармонику, заполнить значениями такой же массив и перемножить их. Но заметьте - есть такая штука как фаза. Нам не известно в какой фазе пребывает гармоника в исходном сигнале. А свой измерительный, пробный массив мы заполнили допустим косинусоидой с начальной фазой ноль. Можем не угадать. Чтобы было наверняка, берут две гармоники - косинусоиду и синусоиду, делаем две свертки, а потом по формуле находим значения амплитуды и фазы найденной гармоники в исходном сигнале. И это все повторяется 200 раз. Довольно затратный вычислительный процесс. Есть упрощения, например фазу обычно не считают.
Надеюсь что я верно все вспомнил и описал без ошибок. Если что - поправят.
ну смотри - оконная функция это абстракция, чтобы перевести абстрактный бесконечный повторяющийся сигнал в анализируемый кусок. У нас есть массив куда мы складываем отсчеты. Величина этого массива - ширина нашего окна. Частота с которой мы берем выборки (то как быстро работает АЦП) накладывает ограничения на максимально возможную анализируемую частоту. Т-е если у нас частота дискретизации 400 кГц, то максимально что мы можем увидеть в спектре - 200 кГц. С другой стороны - нижняя частота зависит он ширины окна. Если у нас в окно не помещается период ниже 1 кГц, то нет смысла анализировать что-то ниже. Вот мы получили два параметра частоты исходя из частоты дискретизации и ширины окна. Шаг с которым мы будем делать анализ - зависит от сетки на которую мы будем проецировать спектр. Допустим там все тоже просто - 200 точек. Отсюда получаем шаг в 1 кГц.
Теперь анализ. Нам надо взять некую элементарную гармонику и найти ее корреляцию с исходным массивом. Чтобы найти корреляцию, надо взять эту гармонику, заполнить значениями такой же массив и перемножить их. Но заметьте - есть такая штука как фаза. Нам не известно в какой фазе пребывает гармоника в исходном сигнале. А свой измерительный, пробный массив мы заполнили допустим косинусоидой с начальной фазой ноль. Можем не угадать. Чтобы было наверняка, берут две гармоники - косинусоиду и синусоиду, делаем две свертки, а потом по формуле находим значения амплитуды и фазы найденной гармоники в исходном сигнале. И это все повторяется 200 раз. Довольно затратный вычислительный процесс. Есть упрощения, например фазу обычно не считают.
Надеюсь что я верно все вспомнил и описал без ошибок. Если что - поправят.
-
Electricman
- Вымогатель припоя
- Сообщения: 583
- Зарегистрирован: Вс окт 20, 2019 20:54:30
Re: Мелкие вопросы по теории
КРАМ писал(а):если речь идет об АСМе
Речь идёт о машкодах. Я их там упомянул.


