Перейти к содержанию
    

Перенос частотстоты вниз

Ни до АЦП а поле. Перед переносом.

Так как полоса в 75 кГц может содержать кроме нужной полосы в 2 кГц ещё и мусор.

Вот от него я и предложил поставить ПФ. Если конечно автором у же это не сделано.

Ну тогда это полная ерунда, т.к. при сдвиге сигнала по частоте никакого перекрытия не будет, это обычное умножение сигнала на комплексную экспоненту, а весь "мусор" отфильтруется ФНЧ.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо за дельные коменты

Есть еще одна немаловажная проблема - компилится код будет под PIC18, 8 бит. есть правда перемножитель.

Не так много циклов на обработку между семплами - порядка сотни команд, а то и меньше.

Благодаря коментам, я осознал проблему :a14: .

В итоге конечно лучше получить набор квадратур по 8 бит.

То есть уже класический DDC

Для упрощения задачи - частоту семплирования сделаю ровно в 4 раза выше несущей.

Возращаясь к 1ому посту sup-sup:

"Если бы частота сэмплирования была 200 кГц (вчетверо выше от требуемой), то для канала I все сводится к прореживанию вдвое, каждый раз с переменой знака (умножение на .. 1 0 -1 0 1 0 -1 0 1 0 ..), а канал Q - то же самое со сдвигом на один сэмпл (что соответствует 90 градусам).

"

Вопросы к спецам:

- На самом ли деле этот частный случай снижает требования к алгоритму?

- Нужен ли будет ФНЧ? (я всетаки думаю, что да :rolleyes: )

- Как этот алгоритм наиболее лучшим способом положить на 8 битный RISC контроллер (АЦП тоже 8 бит)

Был признателен за простенький код на С или matlab для DDC :cheers: :rolleyes:

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

Изменено пользователем SergiRF

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

SergiRF Хотел бы еще уточнить такой момент: в изначальной реализации сигнал, который расположен на 50 кГц (некоторая ПЧ допустим), присутствует один или имеются еще некоторые паразитные составляющие? Я к чему это спрашиваю, если сигнал один и остальные паразиты незначительны, то можно применить субдискретизацию сигнала, в результате не надо будет оцифровывать сигнал с такой достаточно большой частотой Fs=200 кГц и затем децимировать его, достаточно будет сразу выставить Fs=10 кГц, зачем семплы впустую лопатить, а полученную в результате частотную отстройку убрать все тем же гетеродином, реализация которого не так и сложна.
Изменено пользователем Serg76

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вопросы к спецам:

- На самом ли деле этот частный случай снижает требования к алгоритму?

- Нужен ли будет ФНЧ? (я всетаки думаю, что да :rolleyes: )

- Как этот алгоритм наиболее лучшим способом положить на 8 битный RISC контроллер (АЦП тоже 8 бит)

Был признателен за простенький код на С или matlab для DDC :cheers: :rolleyes:

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

Для того, чтобы сказать, нужны ли Вам квадратуры, нужно понимать, что Вы собираетесь желать потом с перенесенным сигналом - нужна ли Вам информация о фазе сигнала или нет, если не нужна и Вы будете мерить только амплитуду - то и квадратуры не нужны, лучше подберите так частоты, чтобы табличные значения косинуса были 1,0,-1,0... - т.е. частота дискретизации в 4 раза больше чем центральная частота сигнала. Если нужна информация о фазе - например при разного рода BPSK и подобных модуляций, то без квадратур и не обойтись. но их можно уже после децимации использовать, ибо тащить сигнал с полосой 2 кгц при частоте выборок 150 кгц в квадратурах - расточительно.

Нужен ли ФНЧ - зависит от задачи. В принципе, если этот сигнал - АМ, то применив перенос частоты и фильтр получите эффективную разрядность порядка 14 бит и динамический диапазон больше 40 дб, если этого не надо, то можете просто семплировать на частоте 10 кгц, как предлагал предыдущий оратор, - и все получится, но с диапазоном менее 20 дб...

Изменено пользователем Pavel_SSS

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для того, чтобы сказать, нужны ли Вам квадратуры, нужно понимать, что Вы собираетесь желать потом с перенесенным сигналом - нужна ли Вам информация о фазе сигнала или нет, если не нужна и Вы будете мерить только амплитуду - то и квадратуры не нужны, лучше подберите так частоты, чтобы табличные значения косинуса были 1,0,-1,0... - т.е. частота дискретизации в 4 раза больше чем центральная частота сигнала. Если нужна информация о фазе - например при разного рода BPSK и подобных модуляций, то без квадратур и не обойтись. но их можно уже после децимации использовать, ибо тащить сигнал с полосой 2 кгц при частоте выборок 150 кгц в квадратурах - расточительно.

Нужен ли ФНЧ - зависит от задачи. В принципе, если этот сигнал - АМ, то применив перенос частоты и фильтр получите эффективную разрядность порядка 14 бит и динамический диапазон больше 40 дб, если этого не надо, то можете просто семплировать на частоте 10 кгц, как предлагал предыдущий оратор, - и все получится, но с диапазоном менее 20 дб...

С IQ решение самое 'правильное' в том смысле, что этот узел можно сделать и 'забыть'. IQ годятся для всех сигналов, так как нет потерь, а только перенос спектра. Получив IQ, мы не теряем ничего из исходного сигнала. Посмотрите сами - все сэмплы 200 кГц не только применены, но и не искажены - все они есть в двух квадратурных потоках. Применение sin (0 1 0 -1) и cos (1 0 -1 0) совершенно не ущербно, а просто частный случай, позволяющий не применять умножение и отказаться от нулевых значений, если это уменьшит затраты. Больше ничего не поменялось.

Для получения огибающей нужно векторно сложить IQ (после фильтрации), то есть 'сумма квадратов под корнем'. Критично по времени извлечение корня.

Изменено пользователем sup-sup

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну тогда это полная ерунда, т.к. при сдвиге сигнала по частоте никакого перекрытия не будет, это обычное умножение сигнала на комплексную экспоненту, а весь "мусор" отфильтруется ФНЧ.

Я не комплексную экспоненту имел в виду. А вещественный сигнал на вещественный синус. Один умножитель а не IQ на выходе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

SergiRF Хотел бы еще уточнить такой момент: в изначальной реализации сигнал, который расположен на 50 кГц (некоторая ПЧ допустим), присутствует один или имеются еще некоторые паразитные составляющие? Я к чему это спрашиваю, если сигнал один и остальные паразиты незначительны, то можно применить субдискретизацию сигнала, в результате не надо будет оцифровывать сигнал с такой достаточно большой частотой Fs=200 кГц и затем децимировать его, достаточно будет сразу выставить Fs=10 кГц, зачем семплы впустую лопатить, а полученную в результате частотную отстройку убрать все тем же гетеродином, реализация которого не так и сложна.

Будет сигнал с произвольным видом модуляции

Сигнал в последствии надо проиграть, то есть квадратуры нужны

То есть вы предлагаете семплировать 10 кГц? Что значит:

"а полученную в результате частотную отстройку убрать все тем же гетеродином, реализация которого не так и сложна."??????

Можно алгоритм чуть чуть подробнее

Изменено пользователем SergiRF

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я не комплексную экспоненту имел в виду. А вещественный сигнал на вещественный синус. Один умножитель а не IQ на выходе.

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

 

Будет сигнал с произвольным видом модуляции

Сигнал в последствии надо проиграть, то есть квадратуры нужны

вы внимательно читаете, о чем вас спрашивают, вроде по-русски пишу?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Конструкция как на картинке.

А по поводу перекрытия это когда нет умножения на комплексную экспоненту.

То отрицательные частоты пройдя через ноль завернутся и пойдут в верх по частоте.

Если есть частота 48 кГц и мы её умножим на 50 кГц то получим то же самое если бы мы умножили 52 кГц на 50 кГц т.е. на частоте 2 кГц получится сумма сигналов 48 кГц и 52 кГц.

Не перекрытие а наложение.

post-41680-1322936569_thumb.png

Изменено пользователем ivan219

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Конструкция как на картинке.

А по поводу перекрытия это когда нет умножения на комплексную экспоненту.

То отрицательные частоты пройдя через ноль завернутся и пойдут в верх по частоте.

Если есть частота 48 кГц и мы её умножим на 50 кГц то получим то же самое если бы мы умножили 52 кГц на 50 кГц т.е. на частоте 2 кГц получится сумма сигналов 48 кГц и 52 кГц.

Не перекрытие а наложение.

Получается зеркальный канал, что хуже, чем принимать еще и квадратурный канал.

Но если это устраивает, а ресурсов совсем мало, то смеситель в виде МОП-ключа можно вынести наружу, после него аналоговый фильтр ПЧ (на 1-2 кГц), а оцифровка уже на частоте 10 кГц. Сдвоенного ОУ за $0.1 хватит. Гетеродин формируется контроллером с помощью таймера.

Изменено пользователем sup-sup

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Получается зеркальный канал, что хуже, чем принимать еще и квадратурный канал.

Но если это устраивает, а ресурсов совсем мало, то смеситель в виде МОП-ключа можно вынести наружу, после него аналоговый фильтр ПЧ (на 1-2 кГц), а оцифровка уже на частоте 10 кГц. Сдвоенного ОУ за $0.1 хватит. Гетеродин формируется контроллером с помощью таймера.

 

Нет квадратурный канал конечно лучше будет. Тут я не спорю.

Я ответил на вопрос с первого поста о том что ему не нужно IQ и предложил вариант реализации этого.

А так конечно IQ, гетеродин на 1/4 частоты дискретизации и грамотно сделанный НЧ фильтр с децимацией. Будет выгоднее.

Изменено пользователем ivan219

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Конструкция как на картинке.

А по поводу перекрытия это когда нет умножения на комплексную экспоненту.

То отрицательные частоты пройдя через ноль завернутся и пойдут в верх по частоте.

Если есть частота 48 кГц и мы её умножим на 50 кГц то получим то же самое если бы мы умножили 52 кГц на 50 кГц т.е. на частоте 2 кГц получится сумма сигналов 48 кГц и 52 кГц.

Не перекрытие а наложение.

вы меня конечно извините, но вы тут какой-то бред пишите.

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

во-вторых, по поводу переноса сигнала. есть сигнал на частоте 50 кГц с полосой 2 кГц. есть опорный гетеродин с такой же частотой 50 кГц. после перемножения этих двух сигналов наш полезный сигнал окажется в области нуля, который мы и отфильтровываем ФНЧ с частой среза 1 кГц. какие наложения/перекрытия, откуда они могут взяться?

 

Но если это устраивает, а ресурсов совсем мало, то смеситель в виде МОП-ключа можно вынести наружу, после него аналоговый фильтр ПЧ (на 1-2 кГц), а оцифровка уже на частоте 10 кГц. Сдвоенного ОУ за $0.1 хватит. Гетеродин формируется контроллером с помощью таймера.

Я эту структуру ему уже выше предлагал, когда спрашивал о паразитных составляющих

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

вы меня конечно извините, но вы тут какой-то бред пишите.

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

во-вторых, по поводу переноса сигнала. есть сигнал на частоте 50 кГц с полосой 2 кГц. есть опорный гетеродин с такой же частотой 50 кГц. после перемножения этих двух сигналов наш полезный сигнал окажется в области нуля, который мы и отфильтровываем ФНЧ с частой среза 1 кГц. какие наложения/перекрытия, откуда они могут взяться?

Теперь я не понял.

Зачем вы сдюа теорему Найквиста-Котельникова приплили???

Хорошо.

Допустим у нас есть сигнал полосой 50...52 кГц тогда умножив на 50 кГц мы перенесём этот сигнал в полосу 0...2 кГц

А теперь подумайте и скажите куда попадёт сигнал с половой 48...50 кГц если его также умножить на 50 кГц????

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А теперь подумайте и скажите куда попадёт сигнал с половой 48...50 кГц если его также умножить на 50 кГц????

в ту же полосу 0...2 кГц только с инверсией спектра.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...