реклама на сайте
подробности

 
 
> Перенос частотстоты вниз
SergiRF
сообщение Dec 2 2011, 20:27
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 20-06-11
Пользователь №: 65 790



Hi
Я новичок в ЦОС, поэтому прошу не гнобить сразу!
Задача:
Есть сигнал на несущей частоте 50 кГц, узкрполосный - ширина спектра по уровню -3дБ = 2 кГц
Сигнал требуется оцифровать и передать
Сигнал семплируется АЦП с частотой 150 кГц
Требуется написать алгоритм на С позволяющий перенести частоту вниз, НО не без использования IQ, тоесть это НЕ DDC
На входе алгоритма будет семплирование 150 кГц, а на выходе должна быть в пределах 10 кГц.
И большое ограничение - алгоритм не должен быть требовательным к ресурсам, код будет компилится под 8и битный pic18, но и требований к точности нет.
Вообще то, как бы понятно - опорник, смеситель, ФНЧ. Но не представляю как это можно на С описать.
Есть идеи?

Go to the top of the page
 
+Quote Post
6 страниц V   1 2 3 > »   
Start new topic
Ответов (1 - 79)
sup-sup
сообщение Dec 2 2011, 20:48
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(SergiRF @ Dec 2 2011, 23:27) *
Hi
Я новичок в ЦОС, поэтому прошу не гнобить сразу!
Задача:
Есть сигнал на несущей частоте 50 кГц, узкрполосный - ширина спектра по уровню -3дБ = 2 кГц
Сигнал требуется оцифровать и передать
Сигнал семплируется АЦП с частотой 150 кГц
Требуется написать алгоритм на С позволяющий перенести частоту вниз, НО не без использования IQ, тоесть это НЕ DDC
На входе алгоритма будет семплирование 150 кГц, а на выходе должна быть в пределах 10 кГц.
И большое ограничение - алгоритм не должен быть требовательным к ресурсам, код будет компилится под 8и битный pic18, но и требований к точности нет.
Вообще то, как бы понятно - опорник, смеситель, ФНЧ. Но не представляю как это можно на С описать.
Есть идеи?

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

Сообщение отредактировал sup-sup - Dec 2 2011, 21:03
Go to the top of the page
 
+Quote Post
SergiRF
сообщение Dec 2 2011, 21:04
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 20-06-11
Пользователь №: 65 790



Цитата(sup-sup @ Dec 2 2011, 23:48) *
Если бы частота сэмплирования была 200 кГц (вчетверо выше от требуемой), то IQ сводится к прореживанию вдвое, каждый раз с переменой знака, а канал Q - то же самое со сдвигом на один сэмпл.

выборки номер:
1 2 3 4 5 6 7 8
берется каждая вторая для I 1 3 5 7
для Q 2 4 6 8
На счет смены знака не понял. Допустим АЦП 8 бит - от 0 до 3 В. Сигнал смещен на 1.5 (центрирован). На выходе АЦП получим signed char, смена знака - вы имеете ввиду с + на - и наоборот для каждой выборки?
А фильтрация в данном случае не нужна?

Этот алгоритм конечно хорош если только точно известна несущая и есть возможность частоту дескретизации повысить, а если всетаки нет?
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 2 2011, 21:50
Сообщение #4


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



ADC (Fs=150 kHz) -> ПЧ (гетеродин + смеситель) в ноль -> ресамплер (полифазник на КИХ) на Fs2=10 kHz
Go to the top of the page
 
+Quote Post
SergiRF
сообщение Dec 2 2011, 22:59
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 20-06-11
Пользователь №: 65 790



Цитата(Serg76 @ Dec 3 2011, 00:50) *
ADC (Fs=150 kHz) -> ПЧ (гетеродин + смеситель) в ноль -> ресамплер (полифазник на КИХ) на Fs2=10 kHz

Круто. Спасибо blink.gif Все стало предельно понятно. Грамотные и развернутые комментарии - конек этого форума.

"Я новичок в ЦОС, поэтому прошу не гнобить сразу!"

Сообщение отредактировал SergiRF - Dec 3 2011, 07:16
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 3 2011, 07:55
Сообщение #6


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(SergiRF @ Dec 3 2011, 01:59) *
Круто. Спасибо blink.gif Все стало предельно понятно. Грамотные и развернутые комментарии - конек этого форума.

Чего не понятно? или сразу код выложить?
Go to the top of the page
 
+Quote Post
SergiRF
сообщение Dec 3 2011, 08:32
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 20-06-11
Пользователь №: 65 790



Цитата(Serg76 @ Dec 3 2011, 10:55) *
Чего не понятно? или сразу код выложить?

Для примера было бы неплохо!
Может ссылочку полезную.
И если бы ваш комент для меня был бы понятен, я вообще бы ни чего не спрашивал!!!
Это если ты в теме давно, то все понятно, а когда только начинаешь хочется дельного и простого совета.

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

Тяжело понять как это на С или ASM реализовать
Фильтр не нужен?

И может подскажете как для данного случая UP converter сделать?
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 3 2011, 09:02
Сообщение #8


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(SergiRF @ Dec 3 2011, 11:32) *
Может поясните пост:
"Если бы частота сэмплирования была 200 кГц (вчетверо выше от требуемой), то для канала I все сводится к прореживанию вдвое, каждый раз с переменой знака (умножение на .. 1 0 -1 0 1 0 -1 0 1 0 ..), а канал Q - то же самое со сдвигом на один сэмпл (что соответствует 90 градусам)."

Тяжело понять как это на С или ASM реализовать
Фильтр не нужен?

чтобы не переносить, вот ссылка на способы формирования квадратурного потока, там ответ на этот вопрос (рис.4).

Цитата(SergiRF @ Dec 3 2011, 11:32) *
И может подскажете как для данного случая UP converter сделать?

да все с помощью той же полифазной структуры, есть еще полиномиальные интерполяторы в виде структуры Farrow. кстати вот неплохой ресурс dsplib
Go to the top of the page
 
+Quote Post
Pavel_SSS
сообщение Dec 3 2011, 09:38
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 11-10-10
Из: Москва
Пользователь №: 60 055



Цитата(SergiRF @ Dec 3 2011, 12:32) *
Для примера было бы неплохо!
Может ссылочку полезную.
И если бы ваш комент для меня был бы понятен, я вообще бы ни чего не спрашивал!!!
Это если ты в теме давно, то все понятно, а когда только начинаешь хочется дельного и простого совета.

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

Тяжело понять как это на С или ASM реализовать
Фильтр не нужен?

Вам надо для начала убрать из входного потока постоянное смещение - отнимите известное смещение или (что лучше) усредняйте значение входного сигнала и отнимайте среднее. далее отсчеты сигнала умножаете на отсчеты косинуса с частотой 60 кгц, которые заранее вычисляете. Если бы частота семплирования была бы кратна этим 60 кгц, то последовательность косинуса состояла бы из нулей и +-1,что существенно бы упростило вычисления. Далее применяете фильтр КИХ 16 или выше порядка с полосой пропускания 2 кгц и с полосой задержания какой Вам нужно (моделируете с помощью матлабовского FDATool), для фильтра вычисляете не все отсчеты, только каждый 15 отсчет, получаете последовательность с частотой дискретизации 10 кгц и спектром 2 кгц.
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 11:27
Сообщение #10


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



Я что то так и не понял в чём проблема.
Автору нужно всего лишь перенести полосу в 2 кГц с 50 кГц на 0.
И что тут сложного? Один программный умножитель на 50 кГц.
У него частота дискретизации 150 кГц значит 75 кГц весь диапазон.
При переносе в них появится зеркальная составляющая на частоте 50 кГц которую легко можно отфильтровать НЧ фильтром.
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 3 2011, 11:49
Сообщение #11


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(ivan219 @ Dec 3 2011, 14:27) *
Я что то так и не понял в чём проблема.
Автору нужно всего лишь перенести полосу в 2 кГц с 50 кГц на 0.
И что тут сложного? Один программный умножитель на 50 кГц.
У него частота дискретизации 150 кГц значит 75 кГц весь диапазон.
При переносе в них появится зеркальная составляющая на частоте 50 кГц которую легко можно отфильтровать НЧ фильтром.

невнимательно прочитали условие задачи. перенести в ноль не проблема, надо еще децимировать до 10 кГц.
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 13:04
Сообщение #12


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



Ааа извиняюсь sm.gif
Тогда после фильтра каждый 15 отсчёт. Нужно брать. Как выше и рекомендовали.
Я бы ещё добавил полосовой фильтр на 2 кГц в самом начал ведь о сигнале мы ничего не знаем. Возможно там есть помехи и при переносе может произойти наложение.
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 3 2011, 13:37
Сообщение #13


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(ivan219 @ Dec 3 2011, 17:04) *
Ааа извиняюсь sm.gif
Тогда после фильтра каждый 15 отсчёт. Нужно брать. Как выше и рекомендовали.
Я бы ещё добавил полосовой фильтр на 2 кГц в самом начал ведь о сигнале мы ничего не знаем. Возможно там есть помехи и при переносе может произойти наложение.

При каком переносе? Не нужен никакой полосовой фильтр, перед АЦП антиалиасинговый фильтр на частоту Найквиста, затем сдвигаем уже оцифрованный сигнал в ноль, а потом децимируем вместе с НЧ фильтрацией до 10 кГц и все, вроде все просто.
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Dec 3 2011, 13:45
Сообщение #14


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(ivan219 @ Dec 3 2011, 16:04) *
Ааа извиняюсь sm.gif
Тогда после фильтра каждый 15 отсчёт. Нужно брать. Как выше и рекомендовали.
Я бы ещё добавил полосовой фильтр на 2 кГц в самом начал ведь о сигнале мы ничего не знаем. Возможно там есть помехи и при переносе может произойти наложение.

Если частота сэмплирования 150 кГц, то фнч 'обязан быть', чтобы выше 75 кГц подавить сколько надо (можно).
Автор не сказал, что дальше делать с этим сигналом. Что значит 'передать'. Возможно, нужна только огибающая в заданной полосе. Возможно, сложная модуляция. Если IQ 'не надо', то что это значит? Наиболее общий подход (при неопределенности задачи) брать IQ с последующей фильтрацией и децимацией, что подходит для всех случаев, так как сохраняется полная информация о сигнале в заданной полосе. Задача упрощается, если Fs ровно в 4 раза больше частоты, которую надо 'перенести в ноль'. Синус вырождается в 0 1 0 -1 , а косинус в 1 0 -1 0.
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 13:45
Сообщение #15


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



Нет вы не верно поняли.
Ни до АЦП а поле. Перед переносом.
Так как полоса в 75 кГц может содержать кроме нужной полосы в 2 кГц ещё и мусор.
Вот от него я и предложил поставить ПФ. Если конечно автором у же это не сделано.
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Dec 3 2011, 13:50
Сообщение #16


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



..сидели, пили вразнобой,
мадеру, старку, зверобой...
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 3 2011, 13:51
Сообщение #17


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(ivan219 @ Dec 3 2011, 17:45) *
Ни до АЦП а поле. Перед переносом.
Так как полоса в 75 кГц может содержать кроме нужной полосы в 2 кГц ещё и мусор.
Вот от него я и предложил поставить ПФ. Если конечно автором у же это не сделано.

Ну тогда это полная ерунда, т.к. при сдвиге сигнала по частоте никакого перекрытия не будет, это обычное умножение сигнала на комплексную экспоненту, а весь "мусор" отфильтруется ФНЧ.
Go to the top of the page
 
+Quote Post
SergiRF
сообщение Dec 3 2011, 14:45
Сообщение #18


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 20-06-11
Пользователь №: 65 790



Спасибо за дельные коменты
Есть еще одна немаловажная проблема - компилится код будет под PIC18, 8 бит. есть правда перемножитель.
Не так много циклов на обработку между семплами - порядка сотни команд, а то и меньше.
Благодаря коментам, я осознал проблему a14.gif .
В итоге конечно лучше получить набор квадратур по 8 бит.
То есть уже класический DDC
Для упрощения задачи - частоту семплирования сделаю ровно в 4 раза выше несущей.
Возращаясь к 1ому посту sup-sup:
"Если бы частота сэмплирования была 200 кГц (вчетверо выше от требуемой), то для канала I все сводится к прореживанию вдвое, каждый раз с переменой знака (умножение на .. 1 0 -1 0 1 0 -1 0 1 0 ..), а канал Q - то же самое со сдвигом на один сэмпл (что соответствует 90 градусам).
"
Вопросы к спецам:
- На самом ли деле этот частный случай снижает требования к алгоритму?
- Нужен ли будет ФНЧ? (я всетаки думаю, что да rolleyes.gif )
- Как этот алгоритм наиболее лучшим способом положить на 8 битный RISC контроллер (АЦП тоже 8 бит)
Был признателен за простенький код на С или matlab для DDC cheers.gif rolleyes.gif
Спасибо большое

Сообщение отредактировал SergiRF - Dec 3 2011, 14:49
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 3 2011, 14:57
Сообщение #19


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



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

Сообщение отредактировал Serg76 - Dec 3 2011, 15:00
Go to the top of the page
 
+Quote Post
Pavel_SSS
сообщение Dec 3 2011, 17:03
Сообщение #20


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 11-10-10
Из: Москва
Пользователь №: 60 055



Цитата(SergiRF @ Dec 3 2011, 18:45) *
Вопросы к спецам:
- На самом ли деле этот частный случай снижает требования к алгоритму?
- Нужен ли будет ФНЧ? (я всетаки думаю, что да rolleyes.gif )
- Как этот алгоритм наиболее лучшим способом положить на 8 битный RISC контроллер (АЦП тоже 8 бит)
Был признателен за простенький код на С или matlab для DDC cheers.gif rolleyes.gif
Спасибо большое

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

Сообщение отредактировал Pavel_SSS - Dec 3 2011, 17:06
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Dec 3 2011, 17:32
Сообщение #21


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(Pavel_SSS @ Dec 3 2011, 21:03) *
Для того, чтобы сказать, нужны ли Вам квадратуры, нужно понимать, что Вы собираетесь желать потом с перенесенным сигналом - нужна ли Вам информация о фазе сигнала или нет, если не нужна и Вы будете мерить только амплитуду - то и квадратуры не нужны, лучше подберите так частоты, чтобы табличные значения косинуса были 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 - Dec 3 2011, 17:34
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 18:00
Сообщение #22


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



Цитата(Serg76 @ Dec 3 2011, 17:51) *
Ну тогда это полная ерунда, т.к. при сдвиге сигнала по частоте никакого перекрытия не будет, это обычное умножение сигнала на комплексную экспоненту, а весь "мусор" отфильтруется ФНЧ.

Я не комплексную экспоненту имел в виду. А вещественный сигнал на вещественный синус. Один умножитель а не IQ на выходе.
Go to the top of the page
 
+Quote Post
SergiRF
сообщение Dec 3 2011, 18:09
Сообщение #23


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 20-06-11
Пользователь №: 65 790



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

Будет сигнал с произвольным видом модуляции
Сигнал в последствии надо проиграть, то есть квадратуры нужны
То есть вы предлагаете семплировать 10 кГц? Что значит:
"а полученную в результате частотную отстройку убрать все тем же гетеродином, реализация которого не так и сложна."??????
Можно алгоритм чуть чуть подробнее

Сообщение отредактировал SergiRF - Dec 3 2011, 18:19
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 3 2011, 18:15
Сообщение #24


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(ivan219 @ Dec 3 2011, 22:00) *
Я не комплексную экспоненту имел в виду. А вещественный сигнал на вещественный синус. Один умножитель а не IQ на выходе.

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

Цитата(SergiRF @ Dec 3 2011, 22:09) *
Будет сигнал с произвольным видом модуляции
Сигнал в последствии надо проиграть, то есть квадратуры нужны

вы внимательно читаете, о чем вас спрашивают, вроде по-русски пишу?
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 18:22
Сообщение #25


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



Цитата(Serg76 @ Dec 3 2011, 22:15) *
какая разница? есть цифровой сигнал с периодом повторения Fs, в этом диапазоне можете двигать сигнал как угодно без всяких перекрытий. и вообще о каких перекрытиях идет речь? физику происходящего объясните.

Конструкция как на картинке.
А по поводу перекрытия это когда нет умножения на комплексную экспоненту.
То отрицательные частоты пройдя через ноль завернутся и пойдут в верх по частоте.
Если есть частота 48 кГц и мы её умножим на 50 кГц то получим то же самое если бы мы умножили 52 кГц на 50 кГц т.е. на частоте 2 кГц получится сумма сигналов 48 кГц и 52 кГц.
Не перекрытие а наложение.

Сообщение отредактировал ivan219 - Dec 3 2011, 18:35
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Dec 3 2011, 18:51
Сообщение #26


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(ivan219 @ Dec 3 2011, 21:22) *
Конструкция как на картинке.
А по поводу перекрытия это когда нет умножения на комплексную экспоненту.
То отрицательные частоты пройдя через ноль завернутся и пойдут в верх по частоте.
Если есть частота 48 кГц и мы её умножим на 50 кГц то получим то же самое если бы мы умножили 52 кГц на 50 кГц т.е. на частоте 2 кГц получится сумма сигналов 48 кГц и 52 кГц.
Не перекрытие а наложение.

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

Сообщение отредактировал sup-sup - Dec 3 2011, 18:53
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 19:01
Сообщение #27


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



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


Нет квадратурный канал конечно лучше будет. Тут я не спорю.
Я ответил на вопрос с первого поста о том что ему не нужно IQ и предложил вариант реализации этого.
А так конечно IQ, гетеродин на 1/4 частоты дискретизации и грамотно сделанный НЧ фильтр с децимацией. Будет выгоднее.

Сообщение отредактировал ivan219 - Dec 3 2011, 19:02
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 3 2011, 19:19
Сообщение #28


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(ivan219 @ Dec 3 2011, 22:22) *
Конструкция как на картинке.
А по поводу перекрытия это когда нет умножения на комплексную экспоненту.
То отрицательные частоты пройдя через ноль завернутся и пойдут в верх по частоте.
Если есть частота 48 кГц и мы её умножим на 50 кГц то получим то же самое если бы мы умножили 52 кГц на 50 кГц т.е. на частоте 2 кГц получится сумма сигналов 48 кГц и 52 кГц.
Не перекрытие а наложение.

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

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

Я эту структуру ему уже выше предлагал, когда спрашивал о паразитных составляющих
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 19:32
Сообщение #29


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



Цитата(Serg76 @ Dec 3 2011, 23:19) *
вы меня конечно извините, но вы тут какой-то бред пишите.
во-первых, нет никакой разницы в каком базисе работать - вещественном или комплексном, главное условие, чтобы выполнялось условие теоремы Найквиста-Котельникова, которая гласит, что сигнал можно восстановить без потерь по последовательности выборок следующих с частотой в два раза больше, чем полоса сигнала. это что касается вещественного сигнала. для комплексного (квадратурного) сигнала эта частота должна быть больше, чем полоса сигнала, ибо информация заложена в обоих квадратурах и они дополняют одна другую.
во-вторых, по поводу переноса сигнала. есть сигнал на частоте 50 кГц с полосой 2 кГц. есть опорный гетеродин с такой же частотой 50 кГц. после перемножения этих двух сигналов наш полезный сигнал окажется в области нуля, который мы и отфильтровываем ФНЧ с частой среза 1 кГц. какие наложения/перекрытия, откуда они могут взяться?

Теперь я не понял.
Зачем вы сдюа теорему Найквиста-Котельникова приплили???
Хорошо.
Допустим у нас есть сигнал полосой 50...52 кГц тогда умножив на 50 кГц мы перенесём этот сигнал в полосу 0...2 кГц
А теперь подумайте и скажите куда попадёт сигнал с половой 48...50 кГц если его также умножить на 50 кГц????
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 3 2011, 19:35
Сообщение #30


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(ivan219 @ Dec 3 2011, 22:32) *
А теперь подумайте и скажите куда попадёт сигнал с половой 48...50 кГц если его также умножить на 50 кГц????

в ту же полосу 0...2 кГц только с инверсией спектра.
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 19:40
Сообщение #31


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



Цитата(Serg76 @ Dec 3 2011, 23:35) *
в ту же полосу 0...2 кГц только с инверсией спектра.

Ну вот я про это и говорил.
После переноса в 0 произойдёт наложение полосы 48...50 кГц на полосу 50..52 кГц
Go to the top of the page
 
+Quote Post
SergiRF
сообщение Dec 3 2011, 19:41
Сообщение #32


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 20-06-11
Пользователь №: 65 790



Ок
Семплирую на скорости 4x 8бит.
сигнал центрирован по амплитуде на 1/2 Uref, то есть АЦП как бы вадает signed char.
Четные отчеты перемножаю на синус 0 1 0 -1 (где -1 меняю знак, где 0 - выборка = 0 , то есть перемножение)
Нечетные отчеты перемножаю на кос 1 0 -1 0 (где -1 меняю знак)
Далее два ФНЧ для I&Q
Далее децемация и готово, вроде?
В этом букваре http://www.hunteng.co.uk/pdfs/tech/ddctheory.pdf на Figure 8 показано, что после децемации возникают вроде паразитные спектры или нет?
И может подскажете ссылочку на описание простого ФНЧ, только просьба не забывать, что нет вычислительной мощности (PIC18)
И ФНЧ придется делать на 200 кГц. Может можно ФНЧ сделать после децемации?

Сообщение отредактировал SergiRF - Dec 3 2011, 19:42
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 19:46
Сообщение #33


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



Цитата(SergiRF @ Dec 3 2011, 23:41) *
И ФНЧ придется делать на 200 кГц. Может можно ФНЧ сделать после децемации?

Можно делать вместе с децимацией но ни как не после.
И децимацию можно проводить в несколько этапов.
Сначала в 5 раз потом в 4 раза.
Или в 5 -> 2 -> 2
Так и порядок фильтров будет меньше.
Из простых можно CIC фильтры но у них АЧХ завалевается но её можно востановить последующий КИХ фильтром.
http://www.dsplib.ru/content/cicid/cicid.html

Сообщение отредактировал ivan219 - Dec 3 2011, 19:56
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 3 2011, 20:06
Сообщение #34


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(ivan219 @ Dec 3 2011, 22:40) *
Ну вот я про это и говорил.
После переноса в 0 произойдёт наложение полосы 48...50 кГц на полосу 50..52 кГц

я все равно не понимаю зачем вы в тракт впихнули фильтр ПЧ, если сигнал все равно с таким же успехом отфильтруется на НЧ?

Цитата(ivan219 @ Dec 3 2011, 22:46) *
Можно делать вместе с децимацией но ни как не после.
И децимацию можно проводить в несколько этапов.
Сначала в 5 раз потом в 4 раза.
Или в 5 -> 2 -> 2
Так и порядок фильтров будет меньше.
Из простых можно CIC фильтры но у них АЧХ завалевается но её можно востановить последующий КИХ фильтром.
http://www.dsplib.ru/content/cicid/cicid.html

Зачем городить такой огород, который вряд-ли влезет в PIC, если сразу можно оцифровать на 10 кГц. Ведь понятно, что вычислительная нагрузка напрямую зависит от соотношения частоты дискретизации и полосы сигнала?
Go to the top of the page
 
+Quote Post
SergiRF
сообщение Dec 3 2011, 20:13
Сообщение #35


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 20-06-11
Пользователь №: 65 790



Цитата(Serg76 @ Dec 3 2011, 23:06) *
Зачем городить такой огород, который вряд-ли влезет в PIC, если сразу можно оцифровать на 10 кГц. Ведь понятно, что вычислительная нагрузка напрямую зависит от соотношения частоты дискретизации и полосы сигнала?

Уже писали про это, но без пояснений.
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 20:15
Сообщение #36


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



Цитата(Serg76 @ Dec 4 2011, 00:01) *
я все равно не понимаю зачем вы в тракт впихнули фильтр ПЧ, если сигнал все равно с таким же успехом отфильтруется на НЧ?

Просто у нас случилось не до понимание.

Вы считаете полосу 2 кГц с несущей 50 кГц т.е. полоса 49...51 кГц как в АМ модуляции верхняя и нижняя полоса одинаковы и при наложении они друг другу не мешают.
А я посчитал как полоса 50...52 кГц как в SSB модуляции.

Так что вопрос автору.
Спектр сигнала относительно несущей 50 кГц одинаков в полосах 50...49 и 50...51 кГц по типу АМ модуляции или вся полоса в 2 кГц это разный сигнал не имеющий симметрии относительно 50 кГц?
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 3 2011, 20:16
Сообщение #37


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(SergiRF @ Dec 4 2011, 00:13) *
Уже писали про это, но без пояснений.

так если не спрашивали, то какие могут быть пояснения? ладно, делайте как считаете нужным.
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 20:19
Сообщение #38


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



Цитата(SergiRF @ Dec 4 2011, 00:13) *
Уже писали про это, но без пояснений.

Тут предполагается ещё одно преобразование частоты в низ до оцифровки.
Усложняется аналоговая часть эл. схемы.
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 3 2011, 20:22
Сообщение #39


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(ivan219 @ Dec 4 2011, 00:15) *
Просто у нас случилось не до понимание.

Вы считаете полосу 2 кГц с несущей 50 кГц т.е. полоса 49...51 кГц как в АМ модуляции верхняя и нижняя полоса одинаковы и при наложении они друг другу не мешают.
А я посчитал как полоса 50...52 кГц как в SSB модуляции.

Так что вопрос автору.
Спектр сигнала относительно несущей 50 кГц одинаков в полосах 50...49 и 50...51 кГц по типу АМ модуляции или вся полоса в 2 кГц это разный сигнал не имеющий симметрии относительно 50 кГц?

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

Цитата(ivan219 @ Dec 4 2011, 00:19) *
Тут предполагается ещё одно преобразование частоты в низ до оцифровки.
Усложняется аналоговая часть эл. схемы.

да нет, я как раз имел ввиду оцифровку непосредственно по ПЧ (50 кГц) с последующим переносом, но уже в цифре, это же сделать легче как мне думается. ваша схема несколько отличается от моей как раз в части касающейся аналогового тракта.

Сообщение отредактировал Serg76 - Dec 3 2011, 20:23
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 20:33
Сообщение #40


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



Цитата(Serg76 @ Dec 4 2011, 00:22) *
обычно тракты для формирования оцифрового сигнала строят вне зависимости от используемого типа модуляции, а иначе что получается, что если надо будет поменять модуляцию, то входной тракт менять будем? так не делается, взять к примеру те же SDR.

Да нет.
Про модуляцию я сказал только для примера.
Что бы было проще понять какого рода сигнал.
Если АМ то мы имеет полосу в 2 кГц семеричную относительно 50 кГц что даёт нам сигнал полосу в 1 кГц так как верхняя и нижняя полоса в 1 кГц будут одинаковы.
А если SSB то вся полоса в 2 кГц различна. Т.е. я видел этот сигнал именно как полосу в 2 кГц. Вот тут и вышел косяк sm.gif

Цитата(Serg76 @ Dec 4 2011, 00:22) *
да нет, я как раз имел ввиду оцифровку непосредственно по ПЧ (50 кГц) с последующим переносом, но уже в цифре, это же сделать легче как мне думается. ваша схема несколько отличается от моей как раз в части касающейся аналогового тракта.

Выложите свою схему тогда будет наглядней.

Сообщение отредактировал ivan219 - Dec 3 2011, 20:36
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Dec 3 2011, 20:40
Сообщение #41


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Нельзя 'в общем случае' применить только один смеситель. Нужен обязательно квадратурный. Например, если АМ 50 кГц, то 50 кГц 'гетеродин' нельзя брать для переноса в ноль, так как две боковушки будут скомпенсированы друг дружкой. Так как фаза случайная, то постоянная составляющая будет произвольной величины и знака, а при небольшой расстройке - биения. Нужно гетеродин взять с расстройкой, чтобы получилась ПЧ, в полосу которого влез бы весь полезный спектр, то есть 2*dF. И связанный с таким подходом зеркальный канал. А IQ позволяет получить вокруг нуля и положительную и отрицательную боковушки. Для других модуляций - то же полное разруливание.

Сообщение отредактировал sup-sup - Dec 3 2011, 20:43
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 3 2011, 20:42
Сообщение #42


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



2 ivan219 если честно, то схему рисовать лень самому, дам первую попавшуюся ссылку о субдискретизации, если найду схему кину ссылку, но пока только это
Go to the top of the page
 
+Quote Post
SergiRF
сообщение Dec 3 2011, 20:44
Сообщение #43


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 20-06-11
Пользователь №: 65 790



На счет схемы: использовать внешние аналоговые смесители не хочется совсем. Сначала попробую все таки всунуть ФНЧ с децемацией в PIC18. Хотя сильно сомневаюсь.
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 20:49
Сообщение #44


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



sup-sup спасибо за разъяснение.
Только я так и не понял как боковушки друг друга компенсируют?
Ведь изначально там противоположные фазы а после перехода через 0 они станут синфазны?
Serg76 вы имеете в виду полосовую дискретизацию с недостаточной выборкой?
Т.е. оцифровываем полосу сигнала на частоте дискретизации, меньшей чем частота сигнала.

Сообщение отредактировал ivan219 - Dec 3 2011, 20:52
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Dec 3 2011, 20:50
Сообщение #45


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(SergiRF @ Dec 3 2011, 23:44) *
На счет схемы: использовать внешние аналоговые смесители не хочется совсем. Сначала попробую все таки всунуть ФНЧ с децемацией в PIC18. Хотя сильно сомневаюсь.

Кроме резкого сокращения вычислительных затрат добавка такого аналогового 'сопроцессора' позволит увеличить динамический диапазон (если надо) за счет аналоговой фильтрации после смесителя или снизить требования к применяемому контроллеру. Недостатки, кроме зеркального канала, дополнительные паразитные каналы приема на кратных сигналу и гетеродину частотах, что легче подавить преселектором, в отличие от зеркального канала. В принципе, можно сдублировать аналоговую часть и для канала Q, только два таймера надо для гетеродинов I и Q. Зато контроллер слабенький и нежрущий.
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 3 2011, 21:03
Сообщение #46


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(ivan219 @ Dec 4 2011, 00:49) *
Serg76 вы имеете в виду полосовую дискретизацию с недостаточной выборкой?
Т.е. оцифровываем полосу сигнала на частоте дискретизации, меньшей чем частота сигнала.

наверное да, только уже в этом случае сигнал должен быть предварительно отфильтрован аналоговым ПЧ.
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Dec 3 2011, 21:04
Сообщение #47


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(ivan219 @ Dec 4 2011, 00:49) *
sup-sup
Только я так и не понял как боковушки друг друга компенсируют?
Ведь изначально там противоположные фазы а после перехода через 0 они станут синфазны?

Да, так и есть. Не подумал. Дело только в случайной фазе.
Go to the top of the page
 
+Quote Post
SergiRF
сообщение Dec 3 2011, 21:14
Сообщение #48


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 20-06-11
Пользователь №: 65 790



Цитата(sup-sup @ Dec 3 2011, 23:50) *
Кроме резкого сокращения вычислительных затрат добавка такого аналогового 'сопроцессора' позволит увеличить динамический диапазон (если надо) за счет аналоговой фильтрации после смесителя или снизить требования к применяемому контроллеру. Недостатки, кроме зеркального канала, дополнительные паразитные каналы приема на кратных сигналу и гетеродину частотах, что легче подавить преселектором, в отличие от зеркального канала. В принципе, можно сдублировать аналоговую часть и для канала Q, только два таймера надо для гетеродинов I и Q. Зато контроллер слабенький и нежрущий.

Тогда еще придется два два смесителя делать, скажем на операционниках. В качестве гетеродина - сигналы от PIC (CCP modul). Но не получится использовать встроенный в PIC ADC, так как нельзя одновременно захватывать два канала I & Q

ДА И вообще, если уже использовать внешний смеситель - просто переносим сигнал на новую ПЧ (скажем 5 кГц), далее полосовой фильр и просто оцифровываем. Так как скорость семплирования небольшая, можно вообще в baseband не переносить.
У меня задача - оцифровать, запомнить и проиграть, так что главная задача - понизить скорость семплирования и все.
Хотя этот вариант конечно не очень. Можно эффективнее
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 21:24
Сообщение #49


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



SergiRF если будете делать дециматор на КИХ фильтре то делайте как на структуре ниже.
Вычислений будет в М раз меньше.
Можно ещё в 2 раз снизить вычисления за счёт симметрии ИХ фильтра.
Предложенный Serg76 вариант то же хорошь частота дискретизации в этом случае получается порядка 4 кГц и вы переносите всю полосу прямо в 0 но при этом до АЦП должен стоять хороший ПФ фильтр.

Сообщение отредактировал ivan219 - Dec 3 2011, 21:30
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
SergiRF
сообщение Dec 3 2011, 21:45
Сообщение #50


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 20-06-11
Пользователь №: 65 790



Цитата(ivan219 @ Dec 4 2011, 00:24) *
Предложенный Serg76 вариант то же хорошь частота дискретизации в этом случае получается порядка 4 кГц и вы переносите всю полосу прямо в 0 но при этом до АЦП должен стоять хороший ПФ фильтр.

Вы имеете в виду работать в N ой зоне Найквиста?
Правильно ли я понимаю: при условии хорошего полосового фильтра , можно семплировать 9 кГц, несущая 50 кГц попадает в 5ю зону. И сигнал на выходе АЦП будет как будто несущая 5 кГц и не потребуется дополнительной обработки?

И может подскажете где почитать про предложенный вами фильтр, как коэф. посчитать?

Сообщение отредактировал SergiRF - Dec 3 2011, 21:52
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Dec 3 2011, 21:46
Сообщение #51


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(SergiRF @ Dec 4 2011, 00:14) *
Тогда еще придется два два смесителя делать, скажем на операционниках. В качестве гетеродина - сигналы от PIC (CCP modul). Но не получится использовать встроенный в PIC ADC, так как нельзя одновременно захватывать два канала I & Q

ДА И вообще, если уже использовать внешний смеситель - просто переносим сигнал на новую ПЧ (скажем 5 кГц), далее полосовой фильр и просто оцифровываем. Так как скорость семплирования небольшая, можно вообще в baseband не переносить.
У меня задача - оцифровать, запомнить и проиграть, так что главная задача - понизить скорость семплирования и все.
Хотя этот вариант конечно не очень. Можно эффективнее

Я не знал, что у PIC нет мультиплексора ADC. Или, все-таки, есть?
Если перенести на 5 кГц, то это действительно, будет сигнал, а не огибающая.
А фильтр, наверняка, лучше применить БИХ (рекурсивный), так как он более легкий по реализации не на dsp-контроллере.
Фильтр то должен, по крайней мере, первый каскад, работать на Fs, поэтому хороший КИХ будет длинным.

Сообщение отредактировал sup-sup - Dec 3 2011, 21:54
Go to the top of the page
 
+Quote Post
SergiRF
сообщение Dec 3 2011, 21:54
Сообщение #52


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 20-06-11
Пользователь №: 65 790



Цитата(sup-sup @ Dec 4 2011, 00:46) *
Я не знал, что у PIC нет мультиплексора ADC. Или, все-таки, есть?

Каналов то много, но одновременно не работают, только по очереди, а это внесет искажения
Поясните плиз про работу в верхних зонах Найквиста

Сообщение отредактировал SergiRF - Dec 3 2011, 21:55
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Dec 3 2011, 21:59
Сообщение #53


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(SergiRF @ Dec 4 2011, 00:54) *
Каналов то много, но одновременно не работают, только по очереди, а это внесет искажения
Поясните плиз про работу в верхних зонах Найквиста

Параллельно и не надо. Такой же подход - учетверенная, но более низкая частота Fs для IQ.
***
Про верхние зоны Найквиста не понял. Если про то, что первый каскад децимирующего фильтра должен работать на Fs, то это для чисто цифровой реализации, когда сигнал сразу поступает на АЦП.
***
Извиняюсь, про это ivan219 сказал. Мне этот подход не нравится. Хороший фильтр нужен на нужную полосу, а это дороже, чем смеситель и простенький фнч (фпч)

Сообщение отредактировал sup-sup - Dec 3 2011, 22:09
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 22:15
Сообщение #54


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



Цитата(SergiRF @ Dec 4 2011, 01:45) *
Вы имеете в виду работать в N ой зоне Найквиста?
Правильно ли я понимаю: при условии хорошего полосового фильтра , можно семплировать 9 кГц, несущая 50 кГц попадает в 5ю зону. И сигнал на выходе АЦП будет как будто несущая 5 кГц и не потребуется дополнительной обработки?

И может подскажете где почитать про предложенный вами фильтр, как коэф. посчитать?

Ну да можно работать в N зонах только там расчёт идёт от верхней полосы и нижней есть тонкости в противном случае может произойти наложение. Serg76 двал с сылку.

В гугле в бейте фильтры на переключаемых конденсаторах.
Там фильтры больших порядков на одном кристалле + небольшая обвязка резисторами.
Можно организовать хороший ПФ но по цене конечно дорого.
Go to the top of the page
 
+Quote Post
SergiRF
сообщение Dec 3 2011, 22:16
Сообщение #55


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 20-06-11
Пользователь №: 65 790



Цитата(sup-sup @ Dec 4 2011, 00:59) *
Про верхние зоны Найквиста не понял. Если про то, что первый каскад децимирующего фильтра должен работать на Fs, то это для чисто цифровой реализации, когда сигнал сразу поступает на АЦП.

Это я имею ввиду когда частота семплирования ниже частоты сигнала
"Правильно ли я понимаю: при условии хорошего полосового фильтра , можно семплировать 9 кГц, несущая 50 кГц попадает в 5ю зону. И сигнал на выходе АЦП будет как будто несущая 5 кГц и не потребуется дополнительной обработки?
"
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 22:22
Сообщение #56


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



Цитата(sup-sup @ Dec 4 2011, 01:59) *
Про верхние зоны Найквиста не понял. Если про то, что первый каскад децимирующего фильтра должен работать на Fs, то это для чисто цифровой реализации, когда сигнал сразу поступает на АЦП.

Нет это дело происходит во время оцифровки сигнала. Мы как бы оцифровываем сигнал на гармониках. Одновременно перенося его в 0.

Цитата(SergiRF @ Dec 4 2011, 02:16) *
Это я имею ввиду когда частота семплирования ниже частоты сигнала
"Правильно ли я понимаю: при условии хорошего полосового фильтра , можно семплировать 9 кГц, несущая 50 кГц попадает в 5ю зону. И сигнал на выходе АЦП будет как будто несущая 5 кГц и не потребуется дополнительной обработки?
"

Той литературе которая у меня немного иначе. Есть формулы для расчёта. И получается что бы оцифровать сигнал полосой 50...52 кГц нужна частота дискретизации 4 кГц
Если интересно могу выложить скан.

Сообщение отредактировал ivan219 - Dec 3 2011, 22:23
Go to the top of the page
 
+Quote Post
SergiRF
сообщение Dec 3 2011, 22:26
Сообщение #57


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 20-06-11
Пользователь №: 65 790



Цитата(ivan219 @ Dec 4 2011, 01:22) *
Той литературе которая у меня немного иначе. Есть формулы для расчёта. И получается что бы оцифровать сигнал полосой 50...52 кГц нужна частота дискретизации 4 кГц
Если интересно могу выложить скан.

Вы имеете в виду 4 кГц - это минимальная частота, но можно и повыше? Главное что бы сигнал полностью попадал в зону найквиста
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Dec 3 2011, 22:27
Сообщение #58


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(ivan219 @ Dec 4 2011, 01:20) *
Нет это дело происходит во время оцифровки сигнала. Мы как бы оцифровываем сигнал на гармониках. Одновременно перенося его в 0.

Да, я потом понял про что и ниже отписался, что это не я предлагал, а Вы (ivan219).
Но здесь получается, что нужно хорошо отфильтровать все остальные зоны и перенести в '0' - это надо применить IQ эквивалентно, как для исходного сигнала. Еще один недостаток - уменьшение уровня сигнала, так как энергия распределена равномерно по всем зонам, что может ухудшить прием, если это важно. Перенос прямым методом (квадратурный) наиболее эффективный). Ничего не теряется. И нет паразитных каналов. А реализация может быть как прямая, так и с помощью навесных дополнительных компонентов.

Сообщение отредактировал sup-sup - Dec 3 2011, 22:31
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 22:36
Сообщение #59


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



Цитата(SergiRF @ Dec 4 2011, 02:26) *
Вы имеете в виду 4 кГц - это минимальная частота, но можно и повыше? Главное что бы сигнал полностью попадал в зону найквиста

По выводу из книги должно быть именно 4 кГц тогда никаких наложений не будет.
И сигнал оцифруется без искажений.

sup-sup первоначальная идея то же не мне принадлежит. Я её немного раскрыл.

Сообщение отредактировал ivan219 - Dec 3 2011, 22:37
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 3 2011, 23:00
Сообщение #60


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(sup-sup @ Dec 4 2011, 02:27) *
Да, я потом понял про что и ниже отписался, что это не я предлагал, а Вы (ivan219).

вообще вроде бы как о субдискретизации я первый "заикнулся", но щас не об этом. если я нигде не ошибся, то можно взять Fs=8 кГц и ПЧ 49 кГц, тогда одна из копий сигнала окажется в полосе 0...2 кГц, затем конечно же это все фильтруем ФНЧ и вроде как дополнительного гетеродина не потребуется для коррекции.

Цитата(ivan219 @ Dec 4 2011, 02:22) *
Нет это дело происходит во время оцифровки сигнала. Мы как бы оцифровываем сигнал на гармониках. Одновременно перенося его в 0.

Я бы здесь немного подкорректировал, на самом деле при этом методе мы оцифровываем НЧ огибающую ВЧ сигнала, а то sup-sup может думает о гармониках ПЧ?
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 23:06
Сообщение #61


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



Если интересна тема вот скан листов из книги.
Про дискретизацию полосовых сигналов.
Это то о чём говорил Serg76
Прикрепленные файлы
Прикрепленный файл  ________________________________.rar ( 4.88 мегабайт ) Кол-во скачиваний: 36
 
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 3 2011, 23:28
Сообщение #62


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(ivan219 @ Dec 4 2011, 03:06) *
Это то о чём говорил Serg76

Ага, еще на второй странице топика, автор только щас обратил внимание sm.gif
Go to the top of the page
 
+Quote Post
ivan219
сообщение Dec 3 2011, 23:39
Сообщение #63


Местный
***

Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680



Цитата(Serg76 @ Dec 4 2011, 03:28) *
Ага, еще на второй странице топика, автор только щас обратил внимание sm.gif

Я и сам не сразу понял что вы предложили.
Да думаю что многие с этим не сталкивались.
По этому и не поняли. Надо было более раскрыто объяснить.
Go to the top of the page
 
+Quote Post
SergiRF
сообщение Dec 4 2011, 09:08
Сообщение #64


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 20-06-11
Пользователь №: 65 790



Всем большое спасибо. Буду пробовать на следующей неделе:
Выберу частоту дескретизации, что бы сигнал полностью попал по центру зоны найквиста.
Пересчет в IQ - смысла нет.

Только еще вопрос:
При проигровании сигнала (генерация ЦАП - 8 бит, семплирование как минимум 120 - 150 кГц) придется переносить сигнал вверх в цифре. Делаю просто умножитель (каждый семпл умножаю на табличное значение sin). Для простоты лучше переносить несущую в 4 раза (1 0 -1 0 1....) . Исходя из этого и оцифровывать сигнал лучше в 4 ой зоне.
Правильно я рассуждаю?
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Dec 4 2011, 09:36
Сообщение #65


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(Serg76 @ Dec 4 2011, 03:00) *
вообще вроде бы как о субдискретизации я первый "заикнулся", но щас не об этом. если я нигде не ошибся, то можно взять Fs=8 кГц и ПЧ 49 кГц, тогда одна из копий сигнала окажется в полосе 0...2 кГц, затем конечно же это все фильтруем ФНЧ и вроде как дополнительного гетеродина не потребуется для коррекции.


Я бы здесь немного подкорректировал, на самом деле при этом методе мы оцифровываем НЧ огибающую ВЧ сигнала, а то sup-sup может думает о гармониках ПЧ?

Все-таки, это не огибающая, а сигнал с перенесенной частотой заполнения. Огибающую надо получить программно в контроллере.
Преимущество - низкая частота дискретизации и связанные с ней затраты контроллера.
Недостатки (в общем случае).
Если есть помехи в других зонах, их надо фильтровать, что трудно и дорого реализовать для такого соотношения частоты и полосы (центральная частота 50 кГц, а полоса не более 4 кГц). Попытка реализации такого полосового фильтра приводит к применению не самых дешевых ОУ и их нужно много. В сравнение с этим подходом, перенос спектра в ноль (а это возможно только с применением IQ) дает максимально простой НЧ фильтр (два штуки LPF гораздо проще чем один полосовой). Смесители - это простые аналоговые ключи (4066, например) - тоже просто и недорого. Конечно, умножение на синус/косинус чище, чем на меандр, но по паразитным каналам приема лучше размножения спектра, так как разнос частот составляет удвоенную и половинную частоту гетеродина, что легче фильтровать преселектором. Вывод - обвес для приема сигнала IQ получается дешевле и стабильнее, чем для приема в зоне Найквиста. Затраты контроллера примерно одинаковые.
Второе, это уже упоминалось, что при частоте дискретизации 8 кГц мы берем только каждый шестой период ожидаемого сигнала, а остальные игнорируем. Таким образом коэффициент преобразования такого 'смесителя' очень низкий и отношение сигнал/помеха еще ухудшается.




Цитата(SergiRF @ Dec 4 2011, 13:08) *
Всем большое спасибо. Буду пробовать на следующей неделе:
Выберу частоту дескретизации, что бы сигнал полностью попал по центру зоны найквиста.
Пересчет в IQ - смысла нет.

Только еще вопрос:
При проигровании сигнала (генерация ЦАП - 8 бит, семплирование как минимум 120 - 150 кГц) придется переносить сигнал вверх в цифре. Делаю просто умножитель (каждый семпл умножаю на табличное значение sin). Для простоты лучше переносить несущую в 4 раза (1 0 -1 0 1....) . Исходя из этого и оцифровывать сигнал лучше в 4 ой зоне.
Правильно я рассуждаю?

А 'проигрывание' нужно сделать в том же диапазоне, то есть, вернуть сигнал на прежний частотный диапазон?
В этом случае правильно применить сохранение в виде IQ, а потом их же использовать в квадратурном модуляторе, как раз с применением табличных синуса и косинуса.
***
Вообще-то, тут тоже можно упрощенный синус и косинус применить.
И еще, нужно сделать интерполяцию сохраненной выборки для приведения к частоте DAC.
Нужна ли тогда децимация?
Может быть, просто памяти добавить?

Сообщение отредактировал sup-sup - Dec 4 2011, 10:01
Go to the top of the page
 
+Quote Post
SergiRF
сообщение Dec 4 2011, 10:19
Сообщение #66


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 20-06-11
Пользователь №: 65 790



Цитата(sup-sup @ Dec 4 2011, 12:36) *
А 'проигрывание' нужно сделать в том же диапазоне, то есть, вернуть сигнал на прежний частотный диапазон?
В этом случае правильно применить сохранение в виде IQ, а потом их же использовать в квадратурном модуляторе, как раз с применением табличных синуса и косинуса.
Вообще-то, тут тоже можно упрощенный синус и косинус применить.
И еще, нужно сделать интерполяцию сохраненной выборки для приведения к частоте DAC.
Нужна ли тогда децимация?
Может быть, просто памяти добавить?

Проиграть нужно опять на 50 кГц
Расчет IQ даже на пониженной частоте синхронизации займет время на реализацию. А мне в принципе в каком виде хранить = IQ или на низкой ПЧ все равно. Для расчеты IQ ФНЧ придется делать, лучше процессорное время оставить для вспомогательных алгоритмов.

Так после семплирования в N ой зоне, получим сигнал на новой несущей, уже низкой.
Как потом при проигровании восстановить частоту несущей?

Если просто перемножить на син, то получим зеркальный канал, но его можно уже после ЦАП отфильтровать ФНЧ, если конечно будет достаточная отстройка по частоте между сигналом и копией.

Сообщение отредактировал SergiRF - Dec 4 2011, 10:33
Go to the top of the page
 
+Quote Post
Fast
сообщение Dec 4 2011, 10:30
Сообщение #67


Местный
***

Группа: Свой
Сообщений: 216
Регистрация: 31-03-05
Из: Зеленоград
Пользователь №: 3 839



Цитата(SergiRF @ Dec 4 2011, 01:54) *
Каналов то много, но одновременно не работают, только по очереди, а это внесет искажения
про это можно поподробнее,
т.е. могут быть сигналы на другой частоте, кроме 50 кГц ?
Go to the top of the page
 
+Quote Post
Pavel_SSS
сообщение Dec 4 2011, 10:32
Сообщение #68


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 11-10-10
Из: Москва
Пользователь №: 60 055



Цитата(SergiRF @ Dec 4 2011, 14:19) *
Проиграть нужно опять на 50 кГц

Если памяти хватает - просто сохраните выборки и "проиграйте" их. Если не хватает - напишите простейший архиватор - это будет проще, чем с нуля изучить всю теорию и научиться писать программы для ЦОС. Тем более тут ресурсы ЦП ограничены - библиотеки не поприменяешь и на Си не напишешь - тут придется на ассемблере писать и считать каждый такт.
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Dec 4 2011, 10:58
Сообщение #69


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(SergiRF @ Dec 4 2011, 14:19) *
Проиграть нужно опять на 50 кГц
Расчет IQ даже на пониженной частоте синхронизации займет время на реализацию. А мне в принципе в каком виде хранить = IQ или на низкой ПЧ все равно. Для расчеты IQ ФНЧ придется делать, лучше процессорное время оставить для вспомогательных алгоритмов.

Так после семплирования в N ой зоне, получим сигнал на новой несущей, уже низкой.
Как потом при проигровании восстановить частоту несущей?

Если просто перемножить на син, то получим зеркальный канал, но его можно уже после ЦАП отфильтровать ФНЧ, если конечно будет достаточная отстройка по частоте между сигналом и копией.

Если оцифрованными данными не нужно пользоваться, кроме как 'проиграть', то незачем с переносом возиться, как и написал Pavel_SSS.
Если же надо пользоваться, то тоже может быть, что лучше проигрывать исходную оцифровку. Если сделать чтобы Fs ADC и DAC совпадали, то совсем нормально.
***
Зеркального канала не будет при квадратурном переносе вверх (с применением IQ).
Go to the top of the page
 
+Quote Post
SergiRF
сообщение Dec 4 2011, 11:22
Сообщение #70


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 20-06-11
Пользователь №: 65 790



Цитата(sup-sup @ Dec 4 2011, 13:58) *
Если оцифрованными данными не нужно пользоваться, кроме как 'проиграть', то незачем с переносом возиться, как и написал Pavel_SSS.
Если же надо пользоваться, то тоже может быть, что лучше проигрывать исходную оцифровку. Если сделать чтобы Fs ADC и DAC совпадали, то совсем нормально.
***
Зеркального канала не будет при квадратурном переносе вверх (с применением IQ).

laughing.gif
Так тогда частота семплирования будет очень высокой, если ни чего не переносить. Я бы тогда вообще бы тему не открывал
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Dec 4 2011, 11:33
Сообщение #71


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(SergiRF @ Dec 4 2011, 15:22) *
laughing.gif
Так тогда частота семплирования будет очень высокой, если ни чего не переносить. Я бы тогда вообще бы тему не открывал

Так и да. С переносом туда и обратно затрат получается больше. А результат хуже.
Перенос вниз, а потом вверх делают тогда, когда нужна обработка сигнала. А если этого не требуется, то и вопроса нет.
Go to the top of the page
 
+Quote Post
Serg76
сообщение Dec 4 2011, 11:45
Сообщение #72


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(sup-sup @ Dec 4 2011, 12:36) *
Преимущество - низкая частота дискретизации и связанные с ней затраты контроллера.
Недостатки (в общем случае).
Если есть помехи в других зонах, их надо фильтровать, что трудно и дорого реализовать для такого соотношения частоты и полосы (центральная частота 50 кГц, а полоса не более 4 кГц). Попытка реализации такого полосового фильтра приводит к применению не самых дешевых ОУ и их нужно много. В сравнение с этим подходом, перенос спектра в ноль (а это возможно только с применением IQ) дает максимально простой НЧ фильтр (два штуки LPF гораздо проще чем один полосовой). Смесители - это простые аналоговые ключи (4066, например) - тоже просто и недорого. Конечно, умножение на синус/косинус чище, чем на меандр, но по паразитным каналам приема лучше размножения спектра, так как разнос частот составляет удвоенную и половинную частоту гетеродина, что легче фильтровать преселектором. Вывод - обвес для приема сигнала IQ получается дешевле и стабильнее, чем для приема в зоне Найквиста. Затраты контроллера примерно одинаковые.
Второе, это уже упоминалось, что при частоте дискретизации 8 кГц мы берем только каждый шестой период ожидаемого сигнала, а остальные игнорируем. Таким образом коэффициент преобразования такого 'смесителя' очень низкий и отношение сигнал/помеха еще ухудшается.

Так в том то все и дело, что нужно получить как можно меньше вычислительных затрат, а при вашей схеме лопатить впустую выборку на 200 кГц ну никак не вяжется с возможностями PICа. Кроме того, те же I/Q можно получить и при субдискрете, схемы формирования квадратур остаются те же самые, но уже на более низкой тактовой. Я тоже всеми руками "ЗА" квадратуры, в принципе я по-другому никогда и не работал, здесь же сейчас вопрос в простоте реализации и уменьшении вычислительной нагрузки. Единственный минус при таком подходе это конечно же ПЧ, так как все искажения и потери будут определяться скорее на ПЧ, чем в полосе основного сигнала, но простоты реализации и дешевизны здесь не отнять. Не думаю, что реализация фильтра ПЧ потребует больших затрат, чем тот же смеситель, который тоже должен быть достаточно малошумящим и линейным, т.е. с большим ДД прежде всего по интермодуляции в режиме "большого" сигнала (смесители как правило всегда работают в таком режиме, а на аналоговом ключе вы получите только мощный набор продуктов нелинейного преобразования на выходе), ибо мы не знаем какие сигналы потребуется в дальнейшем демодулировать, может КАМ для которой нужен линейный тракт. так что реализация смесителя на простом ключе здесь точно не прокатит, я даже думаю, что качественная его реализация потребует бОльших вложений, чем того же фильтра ПЧ. Да и вообще надо стараться как можно дальше уходить от обработки в аналоге и двигаться в сторону цифры. Где-то так.
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Dec 4 2011, 12:35
Сообщение #73


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(Serg76 @ Dec 4 2011, 14:45) *
Так в том то все и дело, что нужно получить как можно меньше вычислительных затрат, а при вашей схеме лопатить впустую выборку на 200 кГц ну никак не вяжется с возможностями PICа. Кроме того, те же I/Q можно получить и при субдискрете, схемы формирования квадратур остаются те же самые, но уже на более низкой тактовой. Я тоже всеми руками "ЗА" квадратуры, в принципе я по-другому никогда и не работал, здесь же сейчас вопрос в простоте реализации и уменьшении вычислительной нагрузки. Единственный минус при таком подходе это конечно же ПЧ, так как все искажения и потери будут определяться скорее на ПЧ, чем в полосе основного сигнала, но простоты реализации и дешевизны здесь не отнять. Не думаю, что реализация фильтра ПЧ потребует больших затрат, чем тот же смеситель, который тоже должен быть достаточно малошумящим и линейным, т.е. с большим ДД прежде всего по интермодуляции в режиме "большого" сигнала (смесители как правило всегда работают в таком режиме, а на аналоговом ключе вы получите только мощный набор продуктов нелинейного преобразования на выходе), ибо мы не знаем какие сигналы потребуется в дальнейшем демодулировать, может КАМ для которой нужен линейный тракт. так что реализация смесителя на простом ключе здесь точно не прокатит, я даже думаю, что качественная его реализация потребует бОльших вложений, чем того же фильтра ПЧ. Да и вообще надо стараться как можно дальше уходить от обработки в аналоге и двигаться в сторону цифры. Где-то так.

Хотя, кажется, что актуальность переноса вниз падает, прицепил картинку аппаратной поддержки для работы с квадратурами. Ключ нормально подходит. Можно посмотреть как это сделано в SDR http://uu4jgi.ucoz.ua/SDR/SMTSDRRXDR2G-YU1LM.pdf
Только там два ключа, сдвинутых на 180 градусов, что позволяет получить полную передачу энергии при переносе. Это практически эквивалентно 'честному' IQ
***
Про загрузку контроллера. Гетеродин генерится таймерами, которые только запустить надо и все. А частота оцифровки после аналогового ФНЧ выбирается максимально низкая. 8 кГц вполне подойдет. Зато цифровой фильтрации не нужно делать. И не нужен полосовой фильтр. Кстати, это хорошо работало на макете с atmega168. Лучше, чем схема с одним каналом и с ПЧ.

Сообщение отредактировал sup-sup - Dec 4 2011, 13:07
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
RA1TEX
сообщение Dec 8 2011, 07:26
Сообщение #74





Группа: Участник
Сообщений: 12
Регистрация: 28-09-10
Пользователь №: 59 788



мужики че вы тут выдумаываете все уже давно решено sm.gif
OH2NLT решил данную проблему на DSpic там есть примеры исходники http://www.kolumbus.fi/~ks9292/Cheap_dsp/Cheap_dsp.htm сделана квадратурой на фильтре гильберта 69 порядка
Go to the top of the page
 
+Quote Post
Fast
сообщение Dec 8 2011, 07:42
Сообщение #75


Местный
***

Группа: Свой
Сообщений: 216
Регистрация: 31-03-05
Из: Зеленоград
Пользователь №: 3 839



Цитата(RA1TEX @ Dec 8 2011, 11:26) *
OH2NLT решил данную проблему на DSpic там есть примеры исходники http://www.kolumbus.fi/~ks9292/Cheap_dsp/Cheap_dsp.htm сделана квадратурой на фильтре гильберта 69 порядка
и какую же проблему он решил ?
Go to the top of the page
 
+Quote Post
RA1TEX
сообщение Dec 8 2011, 12:33
Сообщение #76





Группа: Участник
Сообщений: 12
Регистрация: 28-09-10
Пользователь №: 59 788



решил задачу выделения нужной боковой взял с квадратурного смесителя I и Q на "нуле" пропустил через гильберта и выделил нужную боковую и все это на микроконтроллере.
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Dec 8 2011, 16:24
Сообщение #77


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(RA1TEX @ Dec 8 2011, 16:33) *
решил задачу выделения нужной боковой взял с квадратурного смесителя I и Q на "нуле" пропустил через гильберта и выделил нужную боковую и все это на микроконтроллере.

Но это же не RISC, а DSC.
Go to the top of the page
 
+Quote Post
RA1TEX
сообщение Dec 9 2011, 09:16
Сообщение #78





Группа: Участник
Сообщений: 12
Регистрация: 28-09-10
Пользователь №: 59 788



а на 18 пике это утопия.
Go to the top of the page
 
+Quote Post
Fast
сообщение Dec 9 2011, 18:02
Сообщение #79


Местный
***

Группа: Свой
Сообщений: 216
Регистрация: 31-03-05
Из: Зеленоград
Пользователь №: 3 839



Цитата(RA1TEX @ Dec 8 2011, 16:33) *
решил задачу выделения нужной боковой взял с квадратурного смесителя I и Q на "нуле" пропустил через гильберта и выделил нужную боковую и все это на микроконтроллере.
а нужен не просто гильберт, а децимация.
а перед децимацией нужно все качественно отфильтровать выше полосы полезного сигнала
а фильтровать трудно, поскольку Fd в 25раз больше полосы сигнала и нужен жутко-добротный фильтр
либо на БИХ, либо на каскаде фильтров (CIC+FIR)

субдескретизация по N-окну найквиста здесь в тему, если сигнал всегда находится на частоте 50 кГц (т.е. можно поставить жестко рассчитанный преселектор)
а есть или нет сигналы на других частотах и нужно ли их обрабатывать - неизвестно- мне на этот вопрос не ответили...

поэтому спасибо, конечно, за дружеское похлопывание по плечу =) но эта штуковина проблему не решает
Go to the top of the page
 
+Quote Post
RA1TEX
сообщение Dec 12 2011, 05:10
Сообщение #80





Группа: Участник
Сообщений: 12
Регистрация: 28-09-10
Пользователь №: 59 788



дело не в похлопывании. пытаюсь сообразить примерно тоже самое но на TMS 5502-м. думаю требование к преселектору облегчатся. кварцевый фильтр полюбому в приемнике стоять должен. на второй ПЧ получается уже нужная боковая.допустим 50..53кгц. но в моем случае субдескритезация наверное не актуальна.
Go to the top of the page
 
+Quote Post

6 страниц V   1 2 3 > » 
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 01:14
Рейтинг@Mail.ru


Страница сгенерированна за 0.02394 секунд с 7
ELECTRONIX ©2004-2016