-
24.01.2008, 22:37 #1
НЧ часть ТПП - на микроконтроллере (идея)
Возникла идея заменить компьютер или аналоговый демодулятор/формирователь SSB на микроконтроллер:
http://www.rigexpert.com/index?s=art...=zif_trxd&l=ru
НЧ-часть приемника можеть быть сделана, например, так:
Есть ли другие идеи на эту тему?
-
24.01.2008, 23:20 #2
- Регистрация
- 21.01.2007
- Адрес
- Москва
- Возраст
- 71
- Сообщений
- 812
- Поблагодарили
- 56
- Поблагодарил
- 11
Денис! То, что нарисовано на Ваших рисунках действительно можно легко реализовать на микроконтроллере. Очень заманчиво заменить одной микросхемой низкочастотный фазовращатель в ТПП. Только поясните пожалуйста мне (и может не только мне) суть работы устройства. Беспокоить В.Т. Полякова мне как то неудобно, а упомянутой его книжки нет под рукой. Лично мне удобнее рассматривать устройство для режима ПЕРЕДАЧА. На сколько я понял входной микрофонный сигнал с полосой 0...3 КГц оцифровывается входным АЦП (зачем нужен таймер к ФНЧ?). Затем отсчеты программно перемножаются с сигналом виртуального генератора 1,5 КГц (Фазы на смесители под 90 или 180 град? Сигнал - синус или меандр?). Затем отсчеты с выходов "смесителей" превращаются в аналоговый вид выходными ЦАП. После фильтрации получаются два сигнала со сдвигом 90 гр. в полосе до 3 КГц (почему вых. ФНЧ имеют Fсреза 1,2 КГц, а не 3 КГц? Зачем нужен второй таймер? Как он относится к первому таймеру?)
Ответьте пожалуйста на поставленные вопросы. Поясните - почему происходит сдвиг на 90 град. в полосе?
PS: Умею осуществлять прямую 10 разрядную оцифровку по нескольким каналам с Fтакт=22 КГц и обратную 16-ти разрядную оцифровку по двум каналам на ОДНОМ чипе ATtiny26 с внутренним PLL тактированием около 120 МГц/4=30 МГц (реальные цифры!)
PS...PS: Нельзя ли сделать двухканальным такой фазовращатель. Для нижней боковой (0...1,2 КГц) и верхней (1,7...3 КГц) ?Последний раз редактировалось RX3AKT; 24.01.2008 в 23:53.
73. Сергей (RX3AKT)
-
24.01.2008, 23:51 #3
Ок, в режиме передачи:
Это для случая, если ФНЧ на микросхеме фильтра с переключаемыми конденсаторами.
90 градусов, синус.
Потому что "ноль Герц" приемника (или передатчика) соответствует полутора килогерцам на микрофоне или динамике.
Если использовать одинаковые микросхемы фильтров, то для 1.2 кГц и 3 кГц им понадобятся разные тактовые частоты.
Теорию объяснил В.Т. Поляков - я не смогу сделать этого лучше.
Также можете почитать здесь: http://lea.hamradio.si/%7Es53mv/zifssb/block.html
Осталось подобрать частоту дискретизации, кратную полутора килогерцам - так таблицу синусов можно заменить всего несколькими константами, а операции умножения - сложениями.
-
25.01.2008, 00:04 #4
- Регистрация
- 21.01.2007
- Адрес
- Москва
- Возраст
- 71
- Сообщений
- 812
- Поблагодарили
- 56
- Поблагодарил
- 11
Да уж сам начал соображать потихоньку.Не встречал ЭТОГО до сиих пор. Всего знать нельзя (Хи!)
+/- десяток герц погоду не сделает, а кратность действительно соблюсти надо! (что бы фазового шума небыло (Хи!) Куда деваться от DDS!)
Это частности...
Вот это непонятно. Зачем оставлять "несущую"? Конечно сложение делать быстрее, но динамика падает в два раза... В подавлении несущей при сложении можно ли надеяться на выходные фильтры? Может подавить 1,5 КГц тоже программным способом? Компенсировать... Тогда получится также долго, как при умножении...
По ссылке... Какие же супостаты все же молодцы! А 5 ГГц паралончиком все же прикрыл от глаз...
Как на счет PS...PS?Последний раз редактировалось RX3AKT; 25.01.2008 в 00:41.
73. Сергей (RX3AKT)
-
28.01.2008, 10:36 #5
- Регистрация
- 20.06.2005
- Возраст
- 71
- Сообщений
- 241
- Поблагодарили
- 18
- Поблагодарил
- 39
Приветствую всех!
Денис, идея эта уже неоднократно появляется на разных форумах сайтов. И Вы не едины в этом стремлении. Но идея остается только идеей. Нужно обосновать это на цифрах. Какой МК это потянет. AVR МК есть разные и у всех АЦП-ЦАП 10бит разрешение. Может какой то и упустил. Хватит этого разрешения для обработки или нет? Один коллега уже реализовал это на ADSP-2181. Так у него 16бит и использовал он частоту дискридитации 16кГц. Вот обоснуйте возможность применения МК и какого.UR5VEB :: А она все таки вертится...
-
28.01.2008, 16:28 #6
- Регистрация
- 21.01.2007
- Адрес
- Москва
- Возраст
- 71
- Сообщений
- 812
- Поблагодарили
- 56
- Поблагодарил
- 11
-
28.01.2008, 17:46 #7
- Регистрация
- 20.06.2005
- Возраст
- 71
- Сообщений
- 241
- Поблагодарили
- 18
- Поблагодарил
- 39
ТО RX3FKT
Оцифровать это одно. Но потом все это обработать фильтрами, перенести, сфазировать и т.д. и вывести на УНЧ выход наверно трудновато этому МК.
У меня есть 8-ми ядерный МК Propeller P8X32A так возможно он потянет всю обработку и без внешних приблуд. Но пока опыта ноль. Надо вникать в ЦОС. Что потихоньку и начинаю. Если есть возможность, то представьте алгоритм Вашей оцифровки AVR. Может и легче будет вникать.UR5VEB :: А она все таки вертится...
-
28.01.2008, 21:07 #8
- Регистрация
- 21.01.2007
- Адрес
- Москва
- Возраст
- 71
- Сообщений
- 812
- Поблагодарили
- 56
- Поблагодарил
- 11
В том то и дело, что задача, поставленная в этой теме Денисом (UU9JDR), выполняется ЭЛЕМЕНТАРНО простым и дешевым (~40 руб.) микроконтроллером... А сам процесс оцифровки происходит в них в фоновом режиме. Достаточно только брать из соответствующих регистров готовые результаты во время прерывания, вызванного окончанием очередного цикла работы АЦП или класть данные для работы ЦАП-а.
Собственно, алгоритм я уже описал. Что же касается алгоритма работы той "схемы", которую нарисовал Денис, то это другой вопрос. Можно и его расписать, но потребуется объяснять много теоретических моментов. Например, как программно осуществить функцию балансного смесителя, генерации синусоидального квадратурного сигнала и др. Тем более что никакого реального сигнала в контроллере то и нет! Все в т.н. виртуальном виде... А на выходе все по-настоящему!Последний раз редактировалось RX3AKT; 28.01.2008 в 21:12.
73. Сергей (RX3AKT)
-
28.01.2008, 22:10 #9
- Регистрация
- 20.06.2005
- Возраст
- 71
- Сообщений
- 241
- Поблагодарили
- 18
- Поблагодарил
- 39
Вот и удивляет меня, если это так ЭЛЕМЕНТАРНО просто и в Дениса по ФФФ методу и по квадратуре обычной, а нет реально выполненной конструкции у Вас, Сергей. Да и другие коллеги не представили до сих пор. Да и промышленность то же. На сигнальных процессорах то есть, а вот на МК нет. Значит не так то просто, как кажется на самом деле. Будет реальная конструкция у Вас на МК типа ATtiny26, о котором Вы вели речь, тогда и поверю, что это ЭЛЕМЕНТАРНО просто. Да еще вдобавок и управление ТРХ-ом и хотя бы простенькая панорама на этом МК...
UR5VEB :: А она все таки вертится...
-
28.01.2008, 22:38 #10
- Регистрация
- 21.01.2007
- Адрес
- Москва
- Возраст
- 71
- Сообщений
- 812
- Поблагодарили
- 56
- Поблагодарил
- 11
Так, у меня есть другие реально выполненные конструкции. Смотрите на моем сайте... http://www.rx3akt.narod.ru Лично я не отношусь к большим поклонникам техники прямого преобразования. Делаю трансивер с фильтровым формированием с преобразованием вверх и с двумя ПЧ. (смотрите здесь... http://forum.qrz.ru/thread16711.html) На все просто времени не хватает.
Никто и не утверждает, что это просто. Лично мне захотелось поэкспериментировать. Там и увидим... Плюс данной идеи - простота, дешевизна и предсказуемость параметров. Минус - при входной полосе 3 КГц на выходе имеем полосу всего 1,2 КГц. Для CW вполне пригодно, а для SSB - нет.
В цифровой технике, в отличии от аналоговой, все решается на уровне идеи. А реализация - дело второстепенное и зависит от умения программиста. Идея мне понятна. Как ее реализовывать - тоже. Поэтому для меня это ЭЛЕМЕНТАРНО. Для других - не знаю.
А это уже не про то... Мы же рассматриваем маленький узелок, а не весь трансивер...
За неродивых коллег и промышленность (которой нет) я не отвечаю...Последний раз редактировалось RX3AKT; 28.01.2008 в 22:47.
73. Сергей (RX3AKT)
-
28.01.2008, 23:27 #11
- Регистрация
- 20.06.2005
- Возраст
- 71
- Сообщений
- 241
- Поблагодарили
- 18
- Поблагодарил
- 39
Тут Вы, Сергей, ошибаетесь. На выходе таже полоса, что и на входе. Смотрите по ссылке режим передачи http://forum.cqham.ru/download.php?id=4000
Просто получается два полуспектра шириной 1200Гц которые потом складываются и востанавливается исходный спектр по средине несущей передачи +- 1.2кГц.
А это режим приема http://forum.cqham.ru/download.php?id=4580
В режиме приема приемник так настраивается, что бы центр полосы спектра в 2400Гц оказался по центру на выходе ПЧ1 1.6кГц. По обе стороны от 1.6кГц +- 1200Гц и будет наш спектр. Остается подавить писк с частотой 1.6кГц фильтром. Програмно это должно отлично получиться.
А обычная квадратура так как Вы думаете, можно на МК осуществить?
Или все же это будет более эффективно, чем ФФФ метод. Ведь полоса в ФФФ сужается как бы вдвое но больше мороки с програмными смесителями и вдобавок виртуальный квадратурный генератор.Последний раз редактировалось UR5VEB; 28.01.2008 в 23:56.
UR5VEB :: А она все таки вертится...
-
29.01.2008, 01:37 #12
- Регистрация
- 21.01.2007
- Адрес
- Москва
- Возраст
- 71
- Сообщений
- 812
- Поблагодарили
- 56
- Поблагодарил
- 11
Спасибо за пояснение. Действительно, что то я не до конца понял...
Программные балансники без фильтров от этой несущей ничего не оставят...
Думаю, что на AVR-ах - НЕТ!
Я уже писал, что для данного способа (ФФФ) и для данной "схемы" для меня все ПРОЗРАЧНО. Т.е. алгоритмически совершенно ясно. Отсчеты синуса опоры 1,5 КГц берутся из таблиц. Каждая фаза из своей. Это и есть "программный квадратурный генератор". Далее, для каждого канала отсчет опоры умножается на отсчет входного сигнала (для передачи). Результат - это выходные отсчеты смесителей (две боковые с подавленной опорой). Их осталось только превратить в аналоговый вид (просто послать в регистры сравнения ШИМ-ЦАП-ов). Самое неприятное здесь - длительная процедура умножения. Но и ее можно сократить по времени. Составить таблицу умножения для всех комбинаций. Это займет некоторый объем ПЗУ, но сейчас контроллеры имеют необъятные памяти программ и это не проблема. Главное - использовать контроллеры на максимально возможной тактовой частоте и повысить разрядность ЦАП-АЦП. Обе этих задачи решаются с помощью Русской смекалки. Производители контроллеров и сами не подозревают иногда, на что способны их детища. Я уже писал, что если использовать в качестве тактовой частоту внутреннего PLL умножителя контроллера и выставить умножаемую частоту на максимальное значение, то чип продолжает НАДЕЖНО работать при скорости около 34 МГц. Ни при каких других способах тактирования контроллер на такой частоте не работает, а так - ДА! Тоже и с 16-ти разрядным, вместо 8-и, ЦАП-ом... Из двух 8-и разрядных легко получается один 16-ти разрядный, путем добавления всего одного резистора в общем интеграторе на выходе ШИМ-ов... Смотришь на осциллографе ступеньки сигнала на интеграторе. Пальцем подконтачиваешь доп-резистор и вмето ступенек видишь гладкую кривульку, без ступенек... Чудеса! А как все это звучит! Я тут сделал такой оцифратор для осуществления программной ЧМ-АМ в своем DDS синтезаторе. Послушал ЖИВОЙ сигнал - HI-FI!Последний раз редактировалось RX3AKT; 29.01.2008 в 01:57.
73. Сергей (RX3AKT)
-
30.01.2008, 06:46 #13
- Регистрация
- 20.06.2005
- Возраст
- 71
- Сообщений
- 241
- Поблагодарили
- 18
- Поблагодарил
- 39
Приветствую всех!
Спасибо Сергей RX3AKТ, за разьяснения. Интересный момент с тактированием МК. И это проходит со всеми МК AVR, у которых есть умножитель?.
Пока ищу инфу и штудирую. Вот нашел салькулятор по Sigma-Delta ADC
http://www.pulsedpower.net/Applets/E...e%20Resistance
Если есть что у кого, то вылаживайте здесь.UR5VEB :: А она все таки вертится...
-
30.01.2008, 17:13 #14
- Регистрация
- 21.01.2007
- Адрес
- Москва
- Возраст
- 71
- Сообщений
- 812
- Поблагодарили
- 56
- Поблагодарил
- 11
Я думаю, что всех, у которых есть внутренний PLL умножитель тактов и возможность использовать этот сигнал для тактирования. Я же использовал это свойство только на ATTiny26, 46 и 86. Скоро закончу микросинтезатор на ADF4360-6 для получения тактов для DDS AD9912 (1000 МГц). Там использую ATtiny25. У нее тоже есть PLL. Испытаю - напишу...
73. Сергей (RX3AKT)
-
02.02.2008, 21:50 #15
- Регистрация
- 16.01.2003
- Адрес
- Донецк
- Возраст
- 46
- Сообщений
- 423
- Поблагодарили
- 41
- Поблагодарил
- 237
Возникла идея заменить компьютер или аналоговый демодулятор/формирователь SSB на микроконтроллер
Ну а про проблемы фликкер шума и баланса аналогового тракта (особенно дрейф по постоянному току) я уже и не упоминаю ...
|
Социальные закладки