Зарегистрирован: Вс май 26, 2024 12:59:26 Сообщений: 8
Рейтинг сообщения:0
Добрый день, коллеги! Дали мне поюзать Hack RF One. И вот никак не могу найти описание - как алгоритм FFT реализован в этом девайсе. Использую программу SDR#. Пока дополнительных плагинов не устанавливал. Осваиваю, что есть. Вроде бы все выглядит просто - используем Baseband Simple Recorder, получаем файл WAV, который на самом деле файл IQ. Почему то это факт широко не афишируется, но Бог с ним... Python этот файл воспринимает как стерео - две колонки в файле. Но мы хитрые, мы уже догадались, что это амплитуда и фаза комплексного числа. Можем его воспроизвести на Baseband File Player. А дальше - непонятка... Преобразование Фурье для непериодического сигнала выглядит примерно так: в амплитудно-временном домене вырезается окошко, применяется одна из оконных функций, применяется FFT, получаем массив комплексных чисел в частотном домене. Если нам нужна динамика, продолжаем вырезать окошки с каким-то заданным шагом. И потом делаем с этими массивами то, что задумано. Здесь же задается максимальный размер файла и после этого программа начинает эти файлы печь как блины. И как тут понять где начало и конец окошечка? Вобщем, в задумчивости... Поможите, люди добрые!!!
получаем файл WAV, который на самом деле файл IQ. ...мы хитрые, мы уже догадались, что это амплитуда и фаза комплексного числа.
С какого перепуга? I/Q -это квадратурная пара, то есть алгебраическое представление комплексного сигнала. А совсем не амплитуда и фаза. Амплитуда будет равна корню квадратному из суммы квадратов мгновенных значений этих сигналов в выбранном сечении времени. Фаза - минус арктангенсу отношения синусной компоненты к косинусной в этом же сечении. То есть Inphase - это Real, а Quadrature - это Imaginary. Если сигнал монохромный.
Здесь же задается максимальный размер файла и после этого программа начинает эти файлы печь как блины. И как тут понять где начало и конец окошечка?
Полоса одного частотного фильтра Фурье при прямоугольном окне обратна длине буфера (окна) во временнОй области. При иных оконных функциях начинается расползание спектра с одновременным уменьшением боковых лепестков.Я так понимаю, что размер файла и определяет размер буфера. Шаг буфера во времени может быть равен даже одному отсчету. Но для наблюдения спектрограммы это вряд ли нужно. А нагрузка на вычислительные ресурсы резко увеличивается.
Зарегистрирован: Вс май 26, 2024 12:59:26 Сообщений: 8
Рейтинг сообщения:0
Цитата:
I/Q -это квадратурная пара, то есть алгебраическое представление комплексного сигнала.
Не буду спорить, надо почитать на эту тему. Мне пока важнее само понимание, что это I/Q файл, т.е.файл спектрального представления. А вот с вопросом - что за окно? - яснее не стало. Например, записываю на SR=8 МГц, ограничиваю размер файла 100 Мб и получаю массив длиной около 13 млн.строк. Если сделать ограничение 200 Мб, получим примерно 26 млн. А как понять - с каким шагом идет анализ?
А вот с вопросом - что за окно? - яснее не стало. Например, записываю на SR=8 МГц, ограничиваю размер файла 100 Мб и получаю массив длиной около 13 млн.строк.
Что такое "строка"? Если это отсчет, то длина буфера получается 125 нс*13 000 000= 1,625 сек. Для окна Блэкмана это составит примерно 1 Гц полосы бина (одного фильтра) Фурье. Шаг фильтров будет примерно 0,6 Гц. Частота следования окон не так уж важна.
Компания MEAN WELL пополнила ассортимент своей широкой линейки светодиодных драйверов новым семейством XLC для внутреннего освещения. Главное отличие – поддержка широкого спектра проводных и беспроводных технологий диммирования. Новинки представлены в MEANWELL.market моделями с мощностями 25 Вт, 40 Вт и 60 Вт. В линейке есть модели, работающие как в режиме стабилизации тока (СС), так и в режиме стабилизации напряжения (CV) значением 12, 24 и 48 В.
Зарегистрирован: Вс май 26, 2024 12:59:26 Сообщений: 8
Рейтинг сообщения:0
Цитата:
I/Q файл никакого отношения к спектральному представлению не имеет. Это временнОй файл.
Дадада... Я уже почитал про квадратурную модуляцию и начал понимать... Получается, что мы имеем в этом файле две амплитудно-временные последовательности, которые можем превратить (демодулировать это у вас называется?) в отсчеты реального сигнала? Вроде так? Тогда FFT можно делать на этом сыром материале как тебе надо... Вроде так? Но вот вопрос еще мучает - SR можно выбирать из небольшого списка. И все эти SR намного меньше частоты Найквиста. Я пробовал поюзать программу на частоте 2,4 ГГц, так что SR 8 МГц очень мала. Я просто ЦОС недавно начал осваивать и до этого пробовал только на акустических сигналах. Там частоты не сравнить...
Цитата:
Для окна Блэкмана это составит примерно 1 Гц полосы бина (одного фильтра) Фурье.
А эти ваши расчеты попытаюсь понять при дальнейшем чтении учебников. Просто уже неудобно въедливо спрашивать - а как это получается?
На самом деле кроме первой зоны Найквиста есть и высшие и это позволяет осуществлять стробоскопическое преобразование или даунсемплинг, применяя полосовой антиалиасинговый фильтр на входе АЦП.
если sr это sample rate, то ты должен ее выставлять такую же какая была при записи на приемнике
Ватрушкин писал(а):
Python этот файл воспринимает как стерео - две колонки в файле.
ну да, он и должен быть стерео и ты должен знать, в каком канале какой сигнал i или q был и формат данных там флоат
Ватрушкин писал(а):
Мне пока важнее само понимание, что это I/Q файл, т.е.файл спектрального представления.
это просто файл сырых данных с эфира чем шире была полоса приема, тем больше данных и залезло
Ватрушкин писал(а):
Я просто ЦОС недавно начал осваивать и до этого пробовал только на акустических сигналах. Там частоты не сравнить...
акустический сигнал и сигнал iq это разные вещи для работы с ними лучше сначала использовать gnu radio companion, там готовые блоки и мануал, как собрать приемник потом это генерит код на питоне и дает уже звук, сам по себе анализ iq сигнала тебе звук не даст, нужен еще демодулятор и знать, какая модуляция была в сигнале, что ты записал
там уже можеш и блок ттф использовать, и анализатор спектра и параметры менять регуляторами
_________________ тематические ответы только в форуме, в приват не пишите
Зарегистрирован: Вс май 26, 2024 12:59:26 Сообщений: 8
Рейтинг сообщения:0
Цитата:
лучше сначала использовать gnu radio companion
В принципе просветление уже чуть-чуть забрезжило Прогу gnu radio companion я сразу поставил, но хотел к ней переходить, когда в sdr# начну понимать физический смысл. Пошел думать. Если что, еще приду с вопросами. Спасибо всем!!!
Очень прикольны советы от того, кто кроме плагинов к матлабу ничего про ЦОС не знает. Кто тебе сказал, калобайт, что суть - это сложить несколько кубиков из готовых библиотек? Человек вообще говорил о БПФ из квадратурной пары. Зачем ему матлаб? Зачем ему демодулятор? Разве на входе анализвтора спектра есть демодулятор?
чтобы начать понимать в сдр - надо из кубиков собрать приемник сдр и покрутить у него ручки а чтобы собрать приемник сдр - надо для начала посмотреть набор роликов про то, как в какой проге его собирать
когда поймеш этот уровень - можеш написать свой блок или весь приемник и при чем тут на входе анализатора спектра демодулятор?
демодулятор ты можеш прилепить на выход источника квадратурного сигнала
вот тебе простой укв приемник вещательный
вонъ тот блок wx gui fft sink и есть анализатор спектра до фильтра и после него там их вообще 3 штуки
_________________ тематические ответы только в форуме, в приват не пишите
Я бы сначала теорию почитал все таки. Как собирать то из кубиков ? По видосам ? ) SSB передатчик с усилителем-ограничителем я в этой штуке пару дней мурыжил, там свои заморочки с этими всеми блоками, а переписать/написать свой блок вот так запросто вроде нельзя, прилично заморачиваться надо. Если бы можно было писать свои блоки (более менее просто), да потом это все можно было бы "выгрузить" в какой нибудь железный чип... прикольная ардуина была бы
_________________ "Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл / "Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
чтобы начать понимать в сдр - надо из кубиков собрать приемник сдр и покрутить у него ручки
Много ты поймешь про устройство автомобиля и его двигателя, если тебя посадить за руль и дать поуправлять им? Это особенно заметно по твоей болтовне. Кроме глупых советов посмотреть ролики, ты ни единого слова по существу вопроса ТС не сказал. Это отлично доказывает, что не смотря на твои потуги чего то понять в ЦОС c помощью матлаба и роликов, ты так ни хера и не понял. Все твои "знания" сводятся к игрищам с готовым проектом из кубиков. Тупее ничего придумать нельзя.
при чем тут на входе анализатора спектра демодулятор?
А притом, что автор желал получить спектр входного сигнала и понять физический смысл этого процесса. Например, как накапливается входной буфер при захвате сигнала. Причем тут демодулятор?
Найди хоть одно место в речах автора топика, где он говорит о радиовещательном приемнике? Нахера ты учишь тому, о чем тебя никто не спрашивал? Или ты сам не следуешь своим же принципам?
Зарегистрирован: Вс май 26, 2024 12:59:26 Сообщений: 8
Рейтинг сообщения:0
Коллеги, приветствую! Я тут отвлекся, на работу ходил. И смотрю, спор идет... Я, на самом деле, скептически отношусь к технологиям "лего" из программных блоков. Собрать что-либо стоящее, конечно же, можно будет, но только если смогу понять суть. А я с математикой и радиотехникой пока не на короткой ноге, к сожалению. Ну и может есть смысл немного объяснить, для чего мне вся эта теория.
Я немного прикоснулся (в компании с другими гиками) к разработке алгоритмов акустического пеленгования. А сейчас пришел азарт и начал готовить эксперимент с пеленгованием подводных источников звука. А тут просто подвернулся случай поюзать Hack RF One, вдруг полезно будет, пригодится. Вот и тыкаю пальцем, пока наугад. Вообще, я косвенно понимаю, что есть и такая задача - обнаружение дронов, - и она является не до конца решенной задачей. Просто вертеть руками антенну и ловить некие всплески и угадывать, что за всплески, - не айс. Надо попробовать этот SDR прикрутить к триангуляционной задаче. Но для этого надо уметь идентифицировать (демодуляция меня не интересует) некое условное "равенство/подобие" похожих всплесков на двух приемниках, которые синхронизированы. А хакрф можно синхронизировать. А вот идентификация возможна через FFT. Как-то так...
Добавлено after 17 minutes 18 seconds:
Цитата:
лучше использовать радиокомпаньон и смотреть ролики про сдр я их собрал в плейлист
Но для этого надо уметь идентифицировать (демодуляция меня не интересует) некое условное "равенство/подобие" похожих всплесков на двух приемниках, которые синхронизированы. А хакрф можно синхронизировать. А вот идентификация возможна через FFT. Как-то так...
FFT тут вообще ни о чем. То, о чем вы ведете речь называется корреляционный прием. Ну или пассивная шумовая локация. Ваша игрушка вам для этой цели без нужды. Основная задача - передача на все приемники триангуляции когерентного гетеродина и возврат сигнала на коррелятор. Помницца в молодости я разрабатывал усилитель мощности передатчика радиолинии когерентного гетеродина для шумовой РЛС 2- сантиметрового диапазона...
Зарегистрирован: Вс май 26, 2024 12:59:26 Сообщений: 8
Рейтинг сообщения:0
Цитата:
Основная задача - передача на все приемники триангуляции когерентного гетеродина
Я понимаю, что вам ближе аппаратные решения, в железе. У меня нет иллюзий - мне это не по зубам. Поэтому ищу решения в математике и алгоритмах. FFT - некий портрет источника. Может быть темно излагаю, просто еще не до конца въехал в
Причем тут аппаратные решения? Вычисление ВКФ настолько же цифровая операция, насколько ей является БПФ. Изучайте не там где светло, а там, где потеряли.... Вы пытаетесь решать типичную радиотехническую задачу ничего не понимая в радиотехнике. Сравнение комплексных спектров ничего не скажет о похожести сигналов. Похожесть - это время. А у спектра нет понятия времени. Кстати, непериодические сигналы нельзя разложить в Фурье. Их преобразуют Лапласом и на выходе получают непрерывную, а не линейчатую функцию, именуемую спектральной плотностью.
Зарегистрирован: Вс май 26, 2024 12:59:26 Сообщений: 8
Рейтинг сообщения:0
Цитата:
А у спектра нет понятия времени
Это мне понятно В акустической задаче я делал два варианта. В первом сравнивал амплитудное представление. Во втором шло сравнение временного ряда из спектральных окон. Такой вариант тоже является достаточно стандартным. В акустике еще есть хороший инструмент мел-спектральный анализ, но он подходит, например, как "портрет" голоса человека и т.д. Вобщем, поймите правильно, я не отвергаю вашу аргументацию. И общение меня сдвинуло с мертвой точки, начинаю понимать в какую сторону рыть. Просто понимание не приходит по щелчку Я вообще лучше думаю, когда руки работают. Люблю эксперименты
В акустической задаче я делал два варианта. В первом сравнивал амплитудное представление. Во втором шло сравнение временного ряда из спектральных окон. Такой вариант тоже является достаточно стандартным.
Стандартным ДЛЯ КАКИХ ЗАДАЧ? Для пассивной локации не нужно "узнавать", а нужно вычислять взаимно-корреляционную функцию (ВКФ) сигналов принятых с угловых направлений двух приемников имеющих когерентную временнУю базу анализа. Пик ВКФ определит направление на цель при триангуляции. И ВКФ никакого отношения к "амплитудному представлению" сигнала не имеет. У вас какая то каша из понятий. "Временной ряд из спектральных окон" - это оксюморон и полное не понимание физического смысла преобразования Фурье. "Амплитудное представление" сигнала - это модуль его спектра, а не временнОй анализ.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 24
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения