|
low-cost приёмник прямого преобразования (27MHz), критика, альтернативы, мозговой штурм |
|
|
|
Nov 16 2009, 20:54
|

Electrical Engineer
     
Группа: СуперМодераторы
Сообщений: 2 163
Регистрация: 4-10-04
Пользователь №: 778

|
постановка задачи: создание встраиваемого в аудиооборудование приёмника СиБи диапазона 27МГц (АМ/ЧМ) для интеграции в существующее оборудование приёмник должен обладать неким user API - это касается управления частотой приёма, порогом шумодава, видом модуляции, сканированием по сетке. выходной аудиосигнал скорее всего д.б. цифровым (I2S) PS: приёмник потребительского класса (не для радиолюбителей (тех что с 11-метровыми антеннами) обзор существующих реализаций: что-то как-то после гугления грустно и уныло стало... доморощенные решения на МС3361 и иже с нею.. да и каких-то бородатых годов всё... нетехнологичное в изготовлении и требующее настройки (катушки, контуры, проч) про диапазон этот видимо давно забыли и нету изящных в своей простоте решений стиля si47xx.. как я вижу решение: уж коль скоро надо соблюсть присутствие user API, т.е. будет микроконтроллер и синтезатор, да еще и некая штуковина, переводящая в цифровой формат выходной аудиосигнал, то почему бы не решить задачу напрямик: взять пятибаксовый (в российской рознице) TMS320VC5501-300МГц и реализовать весь функционал на нём: 1) входной LC-контур + однотранзисторный МШУ 2) смеситель 3) ФНЧ (тут вопросов больше всего) + АЦП (например, TLV320AIC23B) 4) TMS320VC5501 в качестве демодулятора/постобкатчика сигнала, он же - программный DDS для смесителя =================================== программный DDS, как я себе его вижу: для сигнала в 30МГц нужна как минимум в 4 раза большая тактовая (120МГц) DSP работает максимум на 300МГц, конечно на GPIO он её врядли выдаёт (к сожалению, в документации (Table 5−23. GPIO Pins Configured as Outputs Switching Characteristics) приведена только задержка между клоком и появлению сигнала на выходе: 0...8нс - ну, в общем-то, на 120МГц, как минимум сможет пахать) на GPIO через DMA выводим сами значения для DDS, рассчитанные на лету для конкретной частоты приёма т.е. имея таблицу значений синуса 0...2pi и возможность "немного подвигать" частоту приёма, подбираем такую частоту, чтобы в неё уложить минимальное число целых периодов, которые и будем выводить на GPIO. предварительно записав в DMA число семплов (в которые умещается целое число периодов) для данной конкретной частоты приёма. подключив к ножкам DSP "прецизионные" резистора получаем подобие ЦАПа, после него ФНЧ и на смеситель.. конечно хотелось бы до сборки макета понять какую картинку на спектроанализаторе можно увидеть (фазовые шумы, вносимые PLL процессора и разбросом времени переключения GPIO и значительной нелинейностью характеристики "ЦАП"), и вынести вердикт - годен/не_годен данный способ для приёма узкополосного сигнала.. ну и вопросы конечно по фильтру (фактически - основной селекции) перед АЦП: в целом, как я понимаю, именно он вносит основной вклад в избирательность по соседнему каналу, но, хотелось бы сэкономить и тут, использовав внутренний ФНЧ в TLV320AIC23B, пропорционально снизив частоту её тактирования (думаю фильтры на переключаемых конденсаторах меня поймут..) - в даташите на неё довольно красивые картинки для этого ФНЧ + для неё заявлен достаточно хороший динамический диапазон - хоть у неё и есть возможность управлять усилением, всёже хотелось не охватывать её петлёй АРУ.. (хотя, на худой конец, зная качество самого СиБи сигнала, сгодится и такое управление усилением через саму TLV320AIC23B) __________________________________ ваши ставки, господа-инженеры: будет этот плод изобретательного ума принимать (и понимать) человеческую речь СиБи -диапазона?
|
|
|
|
|
 |
Ответов
|
Nov 18 2009, 15:04
|

Ambidexter
    
Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282

|
Внесу свои 5 пенсов критики и предложений.
1) Программный DDS на 120 МГц это круто, но проц не потянет программно и физически. Каждые 2-3 МЦ надо выдавать значение, а там минимальный бранч 3 МЦ. Даже если успеет, каким-то чудом, будет занят только этим, кто сигнал будет обрабатывать, Пушкин (:-)?
2) Тексасы, кстати, очень интересно представляют спеки на свои чипы. Информацию дают, но так закамуфлируют, что без поллитра не разберёшься. Задержку дают на тогл вывода - 8 нс макс, значит мин. период 16 нс, но поди, догадайся. Но даже это много. Для F2812 - 20 МГц, для F2808 - 25 МГц, а они из более молодого поколения. Для С5402 я программно выдавал 20 МГц, больше не получалось, там команда перехода 4 МЦ.
3) ЦАП на резисторах на 120 МГц, ну, даже не смешно...
4) TLV320AIC23B немного избыточна, ровно в 2 раза, ну только если есть под рукой, да и вроде старовата, нет? Альтернатив много, посмотрите на AD73311, одноканальный кодек, АЦП и ЦАП 16-битные, легко подключается к McBSP. Я его выковырял из цифрового ф/а кодак. Есть AD73322, двухканальный кодек.
Критика закончилась, теперь предложения.
5) Приёмник прямого преобразования хорошая штука, много преимуществ, есть книга В.Полякова, и сам он присутствует на про-радио, всегда можно проконсультироваться. Для цифры нужны квадратуры, увы. Структура может быть такая, входной СБ-фильтр, мшу, два буфера, два смесителя на встречных диодах, два гетеродина, два фильтра, два УНЧ, два АЦП. Для такой схемы нужны квадратурные гетеродины на Fвх/2, т.е. на 15 МГц, что радует. Но два.
6) Можно обойтись одним генератором, скажем, меандр на 60 МГц, поделить на 4 и выделить квадратуры. Можно поставить внешний железный DDS, хотя возможно, будет дороже для бюджета. Можно поставить VCO и управлять напрямую от проца, с помощью ШИМа. Проц будет подстраивать, если надо. Вариантов масса, выбирайте.
7) Теперь НЧ-фильтры. Должны выполнять сразу 2 функции, антиалиасинг, и селекция соседних каналов. Предлагаю выбрать макс.частоту дискретизации, 96 кГц, и оставить функцию антиалиасинга, а основную фильтрацию делать программно. Как правило, для антиалиасинга надо подавить все частоты выше 48 кГц до уровня меньшего одного LSB АЦП, т.е. на 90 дБ, тут у вас полный карт-блаш, поскольку переходная полоса широкая 4-48 кГц, сделать железный или активный фильтр можно. Ну а с основной фильтрацией проц справится одной левой.
Это вам только наметки, надо аккуратно считать и принимать во внимание все подводные камни. Ну и спецы своё слово скажут, надеюсь.
--------------------
Делай сразу хорошо, плохо само получится
|
|
|
|
|
Nov 21 2009, 08:39
|

山伏
    
Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294

|
Цитата(Doka @ Nov 16 2009, 23:29)  1) квадратуры не требуются (принимать такой изврат как SSB в планы не входит) Квадратура - она для подавления зеркального канала, как верно заметили... AM,FM,SSB да хоть OFDM - просто спектр который нужно "передвинуть вниз" на частоту обработки. А из курса "радиотехнические цепи и сигналы" нам известно что для этого сигнал нужно умножить на комплексную экспоненту. А эта самая комплексная экспонента ничто иное как синус и косинус сдвинутые на 90 градусов.  … Цитата(Doka @ Nov 17 2009, 08:49)  proxi ну так я как раз и сношу в ноль. и в качестве фильтра основной селекции выступает ФНЧ а не ПФ. но это всё детали - а по сути что скажете? По сути: что Вам 28 лет, на аватаре логотип РТФа - а Вы до сих пор не знаете как же все-таки работает радиоприемник  ... Пусть эти слова побудят Вас к действию, а не зародят обиду на мою скромную персону  . Далее по теме(раньше я не мог написать потому как был забанен): самый LowCost еще больше лоу и быть не может - Пусть Вам нужно принимать разрешенные в России сетки частот C и D. 26 965...27 855 kHz. ~1Mz. Так вот берете ADC на 4MHz но с полосой до 50MHz как минимум (почему не на 2 по Найквисту-Котельникову чуть ниже поясню). На входе этого АЦП ставите полосовой фильтр настроенный на 26900...27900 kHz. Но... есть одно но. Перед ним придется поставить усилитель с довольно противоречивыми требованиями. Я уже когда-то критиковал такую схему - но все-таки она самая дешевая и в этом ее конек. Так вот этот усилитель должен одновременно обладать и высоким Ку и низкими искажениями. Нужен он для того что-бы согласовать динамический диапазон входных сигналов микровольты-милливольты с динамическим диапазоном АЦП. Иначе получится 2-х битный приемник  . Но для малобюджетной модели КВ диапазона без особых технических требований - такой усилитель задача вполне разрешимая. Даже более того - я думаю что фильтр можно сделать активным на ОУ от AD - т.е. совместить собственно усилитель и полосовой фильтр, причем ОУ подобрать с малыми нелинейными искажениями. Почему учетверенная частота? Во-первых это "раздвинет" зеркальные каналы порожденные частотой дискретизации и заодно снизит требования ко входному фильтру. Во-вторых для получения сигнала в комплексном виде внутри процессора будет достаточно брать отсчеты через один и у каждого третьего менять знак(синус и косинус выродятся в последовательность "0","1","0","-1"). О DDS. В такой схеме построения полноценный DDS не нужен. Он довольно ресурсоемок и требует жесткого реалтайма. А каналов то у нас всего 80. Ну пусть 160 учитывая, что аппаратура может взаимно расстроиться. Берем для верности 256(заодно и степень 2-ки). "Влоб" нужно хранить 128 точек синуса, а если подумать то и все 32  . К чему лишние старания? Алгоритм конечно будет блочный, но ничего страшного - здесь не ставятся метрологические задачи, верно? Ну и какой-нить дешевенький black-fin (или TMS), та даже ARM7. В качестве ЧМ и АМ демодулятора применить какую-нить их аппроксимацию - это же не метрология... АЦП висит на PIO, аудиовыход хоть на I2S хоть прямо ШИМ-ом на динамик, тем более у связной аппаратуры довольно слабые требования к качеству аудио... Т.е. нужны только пару операционников, АЦП и собственно дешевенький проц... Остальные блок схемы - намного сложнее в реализации - хотя понятное дело качественнее... Я так понял передатчик не предвидится? Цитата(=GM= @ Nov 18 2009, 17:04)  5) Приёмник прямого преобразования хорошая штука, много преимуществ, есть книга В.Полякова, и сам он присутствует на про-радио, всегда можно проконсультироваться. Да и сюда Владмимира Тимофееча можно пригласить. И на электронную почту он откликается вполне оперативно. Вашему покорному слуге указывал на ошибки при попытке получить квадратуры с одним "транспортным" каналом (вместо I и Q)... P.S.: кстати, Doka, то что Вы изначально предложили уж никак не прямое преобразование - это довольно устоявшийся термин даже для учебников по радиотехнике и суть его совсем не такая.
--------------------
Нас помнят пока мы мешаем другим... //-------------------------------------------------------- Хороший блатной - мертвый... //-------------------------------------------------------- Нет старик, это те дроиды которых я ищу...
|
|
|
|
|
Nov 22 2009, 06:31
|
Знающий
   
Группа: Участник
Сообщений: 609
Регистрация: 3-03-07
Из: San Jose
Пользователь №: 25 837

|
Цитата(DRUID3 @ Nov 21 2009, 11:39)  По сути: что Вам 28 лет, на аватаре логотип РТФа - а Вы до сих пор не знаете как же все-таки работает радиоприемник  Вам бы самому не мешало познакомиться поближе. Цитата Пусть Вам нужно принимать разрешенные в России сетки частот C и D. 26 965...27 855 kHz. ~1Mz. Так вот берете ADC на 4MHz но с полосой до 50MHz как минимум (почему не на 2 по Найквисту-Котельникову чуть ниже поясню). Не надо всех кроме себя считать дураками, про андерсэмплинг сейчас разве что студенты не знают. А АЦП с полосой до 50MHz при сигнале 27МГц даст (на вскидку) уровень подавления паразитных каналов в лучшем случае 30дБ. Цитата О DDS. В такой схеме построения полноценный DDS не нужен. Он довольно ресурсоемок и требует жесткого реалтайма. Выбранный процессор вполне потянет обычный SDR, с небольшим андерсэмплингом. Это и есть минимальный по затратам вариант.
--------------------
|
|
|
|
|
Nov 22 2009, 11:32
|

山伏
    
Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294

|
Цитата(alexkok @ Nov 22 2009, 08:31)  Вам бы самому не мешало познакомиться поближе. Мотивируйте... Цитата(alexkok @ Nov 22 2009, 08:31)  Не надо всех кроме себя считать дураками, про андерсэмплинг сейчас разве что студенты не знают. Вот именно! Не считайте же! Цитата(alexkok @ Nov 22 2009, 08:31)  А АЦП с полосой до 50MHz при сигнале 27МГц даст (на вскидку) уровень подавления паразитных каналов в лучшем случае 30дБ. ??? Это вообще что за цифры? Откуда? Цитата(alexkok @ Nov 22 2009, 08:31)  Выбранный процессор вполне потянет обычный SDR, с небольшим андерсэмплингом. Это и есть минимальный по затратам вариант. Нет, это не так... Кстати... если все-таки не отбрасывать первый гетеродин, то можно облегчить себе жизнь. Гетеродин(фиксированный, на одну частоту, стабилизированный кварцем)->ПЧ например 10..11MHz и УПЧ для этого диапазона как основной усилитель. Далее все так же. Оцифровка с 4*Fmax и внутренний селектор каналов на основе FFT. Для такой схемы построения параметры при почти той-же простоте будут выше... Это уже почти классический супергетеродин. Цитата(sup-sup @ Nov 21 2009, 19:49)  DSP потребляет 200 мА + обвес. ???
--------------------
Нас помнят пока мы мешаем другим... //-------------------------------------------------------- Хороший блатной - мертвый... //-------------------------------------------------------- Нет старик, это те дроиды которых я ищу...
|
|
|
|
Сообщений в этой теме
Doka low-cost приёмник прямого преобразования (27MHz) Nov 16 2009, 20:54 ledum А как Вы относитесь к такому http://www.analog.com... Nov 16 2009, 21:18 alex_os Цитата(ledum @ Nov 17 2009, 00:18) А как ... Nov 19 2009, 06:31  alexkok Похоже топикстартер уже похоронил свою идею.
Не ув... Nov 19 2009, 07:43 Doka 1) квадратуры не требуются (принимать такой изврат... Nov 16 2009, 21:29 proxi Цитатапринимать такой изврат как SSB в планы не вх... Nov 22 2009, 12:51  ledum Цитата(proxi @ Nov 22 2009, 16:51) все же... Nov 22 2009, 17:09   =GM= Слушайте, откуда зеркальный канал возьмётся для АМ... Nov 22 2009, 17:20   DRUID3 Цитата(ledum @ Nov 22 2009, 19:09) (это н... Nov 22 2009, 17:38 V_G Интересная задумка, как сделаете, отпишитесь про д... Nov 16 2009, 23:35 proxi вообще то прямое преобразование подразумевает нуле... Nov 17 2009, 00:14 Doka proxi
ну так я как раз и сношу в ноль. и в качеств... Nov 17 2009, 06:49 proxi Цитата(Doka @ Nov 17 2009, 08:49) proxi
н... Nov 17 2009, 11:38 Rst7 Цитата1) квадратуры не требуются (принимать такой ... Nov 17 2009, 06:53 ledum О квадратурах я писал именно для того, чтобы задав... Nov 17 2009, 09:14 alexkok Цитата(Doka @ Nov 16 2009, 23:54) ваши ст... Nov 17 2009, 20:42 Doka Цитата(alexkok @ Nov 17 2009, 23:42) Вы с... Nov 19 2009, 10:53    alexkok Цитата(DRUID3 @ Nov 22 2009, 15:32) ??? Э... Nov 22 2009, 21:51     ledum Цитата(alexkok @ Nov 23 2009, 00:51) Счит... Nov 23 2009, 07:57      =GM= 0FF>>2. druid этот, целые портянки шлёт, всё... Nov 23 2009, 11:43      alexkok Цитата(ledum @ Nov 23 2009, 10:57) Соглас... Nov 23 2009, 17:44 Doka Цитата(=GM= @ Nov 18 2009, 18:04) 1) Прог... Nov 24 2009, 07:42  alexkok Цитата(Doka @ Nov 24 2009, 10:42) надо пр... Nov 24 2009, 17:58  alex_os Про программный DDS
Цитата(Doka @ Nov 24 2009... Nov 24 2009, 20:03   DRUID3 Цитата(alex_os @ Nov 24 2009, 22:03) Про ... Nov 24 2009, 20:11    alex_os Цитата(DRUID3 @ Nov 24 2009, 23:11) Да по... Nov 24 2009, 20:30     Doka Цитата(alex_os @ Nov 24 2009, 23:30) Я та... Nov 25 2009, 07:12 uriy Цитата4) TLV320AIC23B немного избыточна, ровно в 2... Nov 19 2009, 05:18 sup-sup Цитата(Doka @ Nov 17 2009, 00:54) 1) вход... Nov 21 2009, 17:49 ledum Черт, я тоже по привычке думаю о SSB . Но с необхо... Nov 22 2009, 18:11 VladimirB Цитата(Doka @ Nov 16 2009, 23:54) постано... Nov 22 2009, 18:49 proxi ЦитатаДа нет же!!! SSB нельзя синхронн... Nov 22 2009, 19:14 DRUID3 Цитата(proxi @ Nov 22 2009, 21:14) ...
Ер... Nov 22 2009, 19:34 proxi так вопрос остался, чем детектируют SSB как не син... Nov 22 2009, 20:31 DRUID3 2=GM=:
Я же привел название книги, страницы и даж... Nov 23 2009, 13:25 =GM= Цитата(DRUID3 @ Nov 23 2009, 13:25) 2=GM=... Nov 23 2009, 15:41  DRUID3 Цитата(=GM= @ Nov 23 2009, 17:41) друид, ... Nov 23 2009, 16:59 alexkok Цитата(DRUID3 @ Nov 23 2009, 16:25) Ха...... Nov 23 2009, 18:05  alexkok Цитата(alexkok @ Nov 23 2009, 22:05) Не о... Nov 23 2009, 20:40 proxi друидам друидово
ЦитатаАсинхронным сдвигом спектра... Nov 23 2009, 17:52 DRUID3 Цитата(proxi @ Nov 23 2009, 19:52) Цитата... Nov 23 2009, 18:06  ledum Цитата(DRUID3 @ Nov 23 2009, 22:06) Перес... Nov 24 2009, 07:47 DRUID3 Пока как повод для размышлений.
Нашел великолепны... Nov 24 2009, 16:05 proxi Цитата(DRUID3 @ Nov 24 2009, 18:05) Пока ... Nov 24 2009, 20:37  DRUID3 Цитата(proxi @ Nov 24 2009, 22:37) bla-bl... Nov 24 2009, 20:43   proxi Цитата(DRUID3 @ Nov 24 2009, 22:43) А по-... Nov 24 2009, 21:10    DRUID3 Цитата(proxi @ Nov 24 2009, 23:10) синхро... Nov 24 2009, 21:23 Doka всёже хотелось бы вернуться к теме темы...
(а т... Nov 24 2009, 19:37 ledum Цитата(Doka @ Nov 24 2009, 23:37) всёже х... Nov 25 2009, 09:06 RadioJunior Здраствуйте!
Возможно не очень в тему вопрос. ... Nov 26 2009, 09:14 DRUID3 Цитата(RadioJunior @ Nov 26 2009, 11:14) ... Dec 21 2009, 04:32 Doka пока что пришёл к выводу, что один из вариантов по... Dec 24 2009, 18:38
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|