Автор |
Сообщение |
|
Дата: 29 Окт 2019 13:14:09
#
Существуют ли методы, как перевести реальный сигнал в комплексный? Положим, что реальный полезный сигнал имеет f центральную 8 кГц и полосу 12 кГц, т.е. от 2 до 14 кГц при частоте семплирования 48 кГц. Как его перевести в комплексный вид?
Интуитивно понимаю, что надо что-то с чем-то перемножить, но не понимаю как.
Почему возникла такая необходимость? Это второй вопрос.
Хочется забирать со спайсервера через сдршарп реальный поток, ну то есть ставить на прием ссб модуляцию, и иметь на выходе кусок спектра эфира несколько кГц шириной. Если бы Шарп умел отдавать IQ поток по аудио, я бы не парился со всем этим (если кто умеет сделать, чтобы Шарп отдавал IQ - подскажите).
В HDSDR есть такая опция. Он отдает IQ в звуковой тракт, левый и правый каналы как IQ. Полоса равна частоте звуковой карты 44100 или 48000 или больше, это в самом хдсдр устанавливается. А вот в шарпе такого нет.
|
|
Дата: 29 Окт 2019 13:26:55
#
Забыл сказать, все преобразования будут делаться в гнурадио.
|
Реклама Google
|
|
|
Дата: 29 Окт 2019 18:23:35
#
|
|
Дата: 29 Окт 2019 18:36:06 · Поправил: studentkra (29 Окт 2019 18:36:29)
#
Если бы Шарп умел отдавать IQ поток по аудио,
Shephard, в SDRSharp на вкладке "Радио" поставьте RAW (без модуляции). На выходе будет стерео IQ сигнал. Полоса правда не более 32 кГц.
|
|
Дата: 29 Окт 2019 18:49:31
#
Схема Вивера в помощь...
|
|
Дата: 29 Окт 2019 19:37:29
#
А вот в шарпе такого нет.
А если просто поставить в Шарпе галку Full IQ ??? И смотреть/писать/обрабатывать полный поток, полоса будет ограничена пропускной способностью канала Спайсервер-Шарп.
Или какая-то иная задача?
|
|
Дата: 29 Окт 2019 22:44:38
#
Еще попутно вопрос. Если объясните в "двух словах", буду премного благодарен. К чему все эти аппаратные I/Q демодуляторы в сотовых телефонах, спутниковых ресиверах, DVB-T2 приставках и т.п. , если можно программно сдвинуть фазу ПЧ на 90° и получить вещественную и мнимую составляющую IQ?
|
|
Дата: 29 Окт 2019 23:21:06
#
если можно программно сдвинуть фазу ПЧ
как?
|
|
Дата: 29 Окт 2019 23:35:11
#
UBIK, Так собственно именно такой вопрос и задал топикстартер Shephard.
|
|
Дата: 30 Окт 2019 00:09:57
#
Shephard
Если бы Шарп умел отдавать IQ поток по аудио, я бы не парился со всем этим
Как альтернативу Шарпу, можно попробовать SDRAngel c его плагином UDP Sample Sinc, там гибкие настройки SRout и RFBW. IQ выводится наружу без проблем. Не знаю как в гнурадио, но полагаю, там тоже особых проблем не будет с приёмом потока по UDP.
|
|
Дата: 30 Окт 2019 00:46:04
#
Так собственно именно такой вопрос и задал топикстартер Shephard
есть два способа для широкополосного сигнала:
1) разделить сигнал и применить широкополосный фазосдвигатель...
2) умножить на комплексную экспоненту...
Положим, что реальный полезный сигнал имеет f центральную 8 кГц и полосу 12 кГц, т.е. от 2 до 14 кГц при частоте семплирования 48 кГц.
...в данном случае частотой 8 kHz...
|
|
Дата: 30 Окт 2019 12:58:11
#
studentkra
в SDRSharp на вкладке "Радио" поставьте RAW
Ставил, не работает она, когда поток забирается со спайсервера (с локальным СДР). В левый и правый аудиоканалы дублируется то же самое. На слух ощущение что включили DSB.
momotych
А если просто поставить в Шарпе галку Full IQ
Увы, тоже не работает. Либо баг спайсервера, либо самого шарпа
YuriVR
Благодарю!
|
|
Дата: 30 Окт 2019 13:01:09 · Поправил: Shephard (30 Окт 2019 13:03:25)
#
Собственно, вот нашел такой еще вариант:
https://stackoverflow.com/questions/3780921/dsp-converting-a-sampled-signal-from-real-samples-to-complex-samples-and-vice
Adding zeros as the imaginary is conceptually the first step in what you want to do. Initially you have a real only signal that looks like this in the frequency domain:
[r0, r1, r2, r3, ...]
/-~--------\
DC +Fs/2
If you stuff it with zeros for the imaginary value, you'll see that you really have both positive and negative frequencies as mirror images:
[r0 + 0i, r1 + 0i, r2 + 0i, r3 + 0i, ...]
/--------~-\ /-~--------\
-Fs/2 DC +Fs/2
Next, you multiply that signal in the time domain by a complex tone at -Fs/4 (tuning the signal). Your signal will look like
----~-\ /-~--------\ /------
DC
So now, you filter out the center half and you get:
________/-~--------\________
DC
Then you decimate by two and you end up with:
/-~--------\
Надо попробовать. Не очень ясно, почему multiply that signal in the time domain by a complex tone at -Fs/4 (tuning the signal)
Почему именно -Fs/4? |
|
Дата: 30 Окт 2019 13:47:39
#
Ставил, не работает она, когда поток забирается со спайсервера (с локальным СДР).
У мня работает. Ткнулся в первый попавшийся спайсервер sdr://92.35.146.146:5555 В SDRSharp поставил выход на Virtual Audio Cable. Записал стерео поток аудиоредактором (WavePad). PCM без компрессии 16 бит стерео. Подсунул эту запись SDRSharp. Всё отлично.
https://drive.google.com/file/d/1B6JFIPYSkajGHp5TUwCpWppi3DFe3VrY/view?usp=sharing
SDRSharp 1.0.0.1656 |
|
Дата: 30 Окт 2019 17:05:38
#
|
|
Дата: 31 Окт 2019 21:12:22
#
Слышать слышал, но предметно не изучал. Не успел. Ставьте двойку)
|
|
Дата: 31 Окт 2019 21:13:53
#
studentkra
ну да, слушайте, там ушами слышно отличие аудиоканалов.
Вероятно тогда, причина именно в моей версии шарпа.
|
|
Дата: 03 Ноя 2019 15:42:53 · Поправил: Shephard (03 Ноя 2019 15:44:34)
#
Проблема с шарпом, как оказалось, связана с плагином "Audio Processor". Он что-то меняет во входном потоке. Удалил и всё стало работать как часы.
|
Реклама Google |
|