Автор |
Сообщение |
|
Дата: 06 Янв 2014 23:04:22
#
Вот я и говорю - та часть, которую я реализовал, передает на компьютер слишком узкую полосу частот - 50кГц. Если и подключить к моему приемнику е4000, то даже вещательные FM радиостанции принять не удастся.
Кроме того, я не знаю точно, что идет с выхода е4000.
|
|
Дата: 11 Янв 2014 03:20:33
#
citizen
Повторил Ваш вариант приёмника. АЦП поставил AD9283. В качестве антенны подключил два метр провода непосредственно ко входу АЦП. Вещательные и любительские КВ станции слышно порой не плохо. Вещательные FM станции при низких индексах модуляции тоже разобрать можно, полосы 50 кГц всё-таки мало. Например, на 3.6 МГц принимается 103.6 МГц, на 4.3 МГц слышно 104.3 МГц. Пробовал увеличить частоту дискретизации до 50 МГц. Работает, но сильно шумит, т.к. макетную плату с АЦП к FPGA я подключил проводами. Спасибо citizen за интересную разработку! Коробка с DE0-Nano полгода на полке такого ожидала ))
|
Реклама Google
|
|
|
Дата: 11 Янв 2014 12:54:06
#
Рад, что кому-то пригодился мой проект. Прямо удивительно, что на 8-битный АЦП и 2м антенну удается принимать радиолюбителей. У меня с активной антенной без УВЧ мало какие радиолюбители принимались. Так что советую подключить УВЧ, с ним эфир поинтересней будет.
|
|
Дата: 17 Янв 2014 22:01:33 · Поправил: ILoveDX (17 Янв 2014 22:19:14)
#
Спасибо за интересный проект, citizen! Если можно, расскажите подробнее о зеркальных каналах приёма (точнее, 2-й и последующих зонах Найквиста), поскольку процитированное ниже не совсем понятно:
- чем ниже частота дискретизации, тем выше требования к полосовому фильтру на входе АЦП. Характеристики фильтра непосредственно влияют на селективность - а именно, на подавление побочных каналов приема, обусловленных наложением спектра. Например, при частоте дискретизации 20 MSPS если мы принимаем сигнал на частоте 7 МГц, то туда же будут пролазить сигналы на частотах 13 МГц, 27 МГц, 33 МГц... и т.д.
В нашем случае, частота сэмплирования 20М, значит, согласно Котельникову, максимальная частота приёма будет в два раза ниже, а зоны Найквиста - кратны 10М. Правильно?
И ещё: посоветуйте, пожалуйста, литературу по ПЛИС и Квартусу (желательно более-менее свежую ;) ).
|
|
Дата: 18 Янв 2014 00:36:34
#
Кое-что про прием в не в первой зоне Найквиста есть здесь.
Действительно, при частоте дискретизации 20 MSPS кроме частоты 7МГц будут приниматься сигналы на 7МГц, 20-7 = 13МГц, 20+7 = 27МГц, 2*20-7 = 33МГц.
Немного перерисовал картинку с вышеуказанного сайта с этими параметрами:
http://img-fotki.yandex.ru/get/6709/14557097.1/0_ca7e1_4068d60c_L.gif
Чтобы сигналы с разных диапазонов не смешивались, нужно использовать фильтры. Чтобы отсечь зоны после первой, перед АЦП с частотой дискретизации 20 MSPS нужен ФНЧ с частотой среза 10 МГц. У меня сама антенна работает как фильтр, так что дополнительные фильтры особо и не нужны.
В своем приемнике я активно использовал прием во второй зоне Найквиста. Именно так велся прием сигналов в диапазоне 20м. Интересно, что при этом никаких изменений в программе ПЛИС или программе компьютера не делалось. Частоты находились на своих местах (проверял по WSPR и JT65), хотя из рисунка следует, что частоты нужно было пересчитывать. Насколько я понял, возникший эффект связан с тем, что синтезатор частоты NCO тоже при этом работает во второй зоне Найквиста.
По ПЛИС ничего особо подсказать не могу, так как сам учился по различным статьям в интернете. |
|
Дата: 18 Янв 2014 08:44:28
#
Чтобы сигналы с разных диапазонов не смешивались, нужно использовать фильтры. Чтобы отсечь зоны после первой, перед АЦП с частотой дискретизации 20 MSPS нужен ФНЧ с частотой среза 10 МГц. У меня сама антенна работает как фильтр, так что дополнительные фильтры особо и не нужны.
Давайте не будем обманывать начинающих – не частота среза должна быть 10 МГц, а полоса задерживания должна начинаться на частоте 10 МГц, т.е. выше 10 МГц должны быть подавлены (на приемлемом уровне, т.е. так, чтобы остатки этих сигналов были хотя бы в несколько раз меньше собственных шумов приемника в полосе от 0 до 10 МГц) все сигналы.
Можно делать прием в любой зоне Найквиста, где у АЦП еще передача более-менее нормальная, тогда нужен не ФНЧ, а полосовой фильтр, вырезающий все, за пределами интересующей зоны Найквиста.
|
|
Дата: 12 Май 2014 17:12:10 · Поправил: smersh (12 Май 2014 17:13:43)
#
citizen
Здравствуйте,
Спасибо за статью, она мне очень помогла: я только начал изучать ПЛИС. Если вас не затруднит, пара вопросов.
1. В настройках FIR указан CLK 1MHz несмотря на то, что подается 100KHz. В чем причина?
2. Мне не удается перекопилировать FIR. Компиляция завершается без ошибок, сигнал через фильтр проходит, но он не отфильтрован: в SDRSharp шум не имеет завалов в начале и конце полосы. Даже если я ничего не меняю в вашем проекте: просто запускаю FIR Compiler II и синтезирую его заново. Только символ имеет другой вид.
Спасибо!
NJ
P.S. Quartus - 11.1 (32bit)
|
|
Дата: 12 Май 2014 17:34:22
#
А когда на авиадиапазон будет?
|
|
Дата: 12 Май 2014 21:28:11
#
1. В настройках FIR указан CLK 1MHz несмотря на то, что подается 100KHz. В чем причина?
Это минимальное число, которое можно ввести. Насколько я понимаю, это значение используется при синтезе блока, и может быть важно на высоких частотах.
2. Мне не удается перекопилировать FIR. Компиляция завершается без ошибок, сигнал через фильтр проходит, но он не отфильтрован: в SDRSharp шум не имеет завалов в начале и конце полосы. Даже если я ничего не меняю в вашем проекте: просто запускаю FIR Compiler II и синтезирую его заново. Только символ имеет другой вид.
Тут я не могу сказать, в чем дело. Я использовал Quartus 11.0sp1, так что возможно, причина в этом.
А когда на авиадиапазон будет?
mxIO говорил, что можно FM принимать, так что, может удастся и что-нибудь в авиадиапазоне принять.
Хотя rtl-sdr для этого лучше подходит.
|
|
Дата: 14 Май 2014 03:01:03 · Поправил: smersh (14 Май 2014 03:01:20)
#
1. В настройках FIR указан CLK 1MHz несмотря на то, что подается 100KHz. В чем причина?
Это минимальное число, которое можно ввести. Насколько я понимаю, это значение используется при синтезе блока, и может быть важно на высоких частотах
В 13.1 можно ввести 0.1MHz. Но дело не в этом.
Удивительно - в 11.0 все работает как надо. В 13.1 - нет. Конечно, есть вероятность, что это я по неопытности косячу, но читал я на форумах: пишут, бывало такое. Правда там речь шла не о FIR.
Regards!
NJ
|
|
Дата: 07 Окт 2014 10:04:25
#
|
|
Дата: 07 Окт 2014 10:57:59
#
Да, так и есть.
|
|
Дата: 28 Янв 2015 05:08:31 · Поправил: Тула50 (28 Янв 2015 05:09:13)
#
citizen
Доброго утра и автору всем участникам.
Вопрос следующего плана, для ПЛИС таких как Altera и Xilinx
продаются (по крайней мере в Москве в чипе) средства разработки,
Вы первый воплотили автономный приемник для nano deo. Если его
модифицировать как платформу совместимую например с afedri
потянет ли Cyclone 4 на этой плате. У меня осталось немного средств,
про G31DDC мечту пенсионера я и думать перестал в питере 82 т.р.
Зато сохранился очень хороший АЦП (разработки начала века) 14 бит
10 Мгц. Смогу ли я разобраться в Вашем проекте, вместе с платой (в чипе deo nano)
похоже идет quartus 2, а в инете на 30 дней можно получить 4 версию.
Есть еще MAXUS не пойму как его купить, банкоматами не пользуюсь, инет
платежами тоже. Спасибо.
|
|
Дата: 28 Янв 2015 21:33:21
#
В этом проекте я использовал Quartus II 11.0. В интернете можно найти Quartus II Web Edition, эта версия частично ограничена, но бесплатна. Проект должен в нем нормально собираться (при этом версия Quartus должна быть больше 10).
Сможете ли вы переделать проект с 10-битного на 14-битный - зависит от вас.
Вот только частота АЦП в 10 МГц кажется низкой.
|
|
Дата: 17 Мар 2016 21:00:54
#
Всем привет! Пытаюсь освоить приемник автора на хабре, но что-то пока не выходит. Кто нибудь может с этим помочь?
|
|
Дата: 17 Мар 2016 21:24:34
#
Что за проблемы возникли с приемником?
|
|
Дата: 19 Мар 2016 00:06:17
#
|
|
Дата: 19 Мар 2016 10:53:17 · Поправил: citizen (19 Мар 2016 10:55:56)
#
Если конфигурация ПЛИС не менялась, то и программы на разных компьютерах должны показывать одинаковую картинку. Насколько я помню, в некоторых случаях модуль передачи данных начинал некорректно работать (данные шли, но спектр отображался неправильно), это исправлялось сбросом при помощи KEY0.
Вообще, спектры у вас выглядят как-то странно, то-ли АЦП перегружен, то-ли еще что-то не так. При проверках уровень сигнала на АЦП должен быть достаточно низким, менее 1/10 от диапазона АЦП, или еще меньше.
Неплохо бы проверить форму сигнала на входе умножителей при помощи SignalTap.
Можно попробовать ввести в проект еще один NCO, сформировать с его помощью тестовый сигнал, и подать этот сигнал на вход умножителей (вместо АЦП). Амплитуда тестового сигнала тоже должна быть маленькой.
|
|
Дата: 20 Мар 2016 14:42:20
#
citizen
Спасибо за ответ, завтра буду пробовать. Вечером напишу результат.
|
|
Дата: 06 Апр 2016 09:41:04
#
citizen
Здравствуйте, при открытии проекта в квартусе 15.1 он пишет: Can't find disgn entity "empty1", как это победить ?
|
|
Дата: 06 Апр 2016 10:38:57
#
Честно говоря, я не сталкивался с Quartus 15, так что не могу сказать, с чем это связано. "empty1.bdf" - это схема, находящаяся на Top-Level проекта.
Можете попробовать открыть прямо через Quartus архив - https://yadi.sk/d/MVVsccL8qmmhM |
|
Дата: 06 Апр 2016 10:45:50
#
citizen
Спасибо, из архива проект открылся. планирую повторить вашу конструкцию, но ацп будет AD9280( то что есть в магазине, ибо не в столице живу).
>Вот я и говорю - та часть, которую я реализовал, передает на компьютер слишком узкую полосу частот - 50кГц.
я так понимаю это задается фильтрами и можно увеличить. или что-то мешает ?
|
|
Дата: 06 Апр 2016 13:47:53
#
ацп будет AD9280( то что есть в магазине, ибо не в столице живу).
Я заказывал AD9200 на aliexpress, с восьмибитным АЦП получить приличный прием будет еще сложнее, чем с 10-битным.
я так понимаю это задается фильтрами и можно увеличить
Да, нужно пересчитать CIC и FIR фильтры.
|
|
Дата: 22 Апр 2016 20:32:08
#
Можете попробовать открыть прямо через Quartus архив - https://yadi.sk/d/MVVsccL8qmmhM
Архив открылся, спасибо. Теперь у меня другая проблема, у меня не хватает dsp блоков, в моей fpga их только 15.
И как я понимаю, их потребляют cic и fir фильтры, что посоветуешь покрутить в фильтрах, что бы влезло ? |
|
Дата: 22 Апр 2016 22:58:53
#
В этом проекте больше всего блоков умножителей используют модули FIR2. У них есть механизм (Time-Division Multiplexing), описанный в документации на них. Механизм позволяет уменьшить использование умножителей за счет повышения тактовой частоты FIR2 и использования блочной памяти (тоже может закончится). Фактически, FIR начинает работать в "конвеерном" режиме.
Модуль FIR Compiler (без 2 в названии) имеет больше настроек, и позволяет сделать фильтр вообще без использования умножителей и блочной памяти, только за счет стандартных LE, при этом фильтр тоже будет работать в конвеерном режиме - то есть придется увеличить его тактовую частоту, чтобы получить нужную частоту сигнала на выходе.
Важная особенность этого фильтра - ему нужен нормальный сигнал сброса, просто подтянуть вход сброса к VСС нельзя - иначе фильтр будет уничтожен при оптимизации.
В крайнем случае придется писать свой FIR с нужным числом умножителей.
|
Реклама Google |
|