PDA

Просмотр полной версии : Снова про DDS



www
18.04.2005, 19:33
http://www.geocities.com/pa2ohh/04dds1.htm
Понравилась мне очень схема.Простая да и всякие дорогие DDS`ки отсутствуют. Хотелось бы применить данный девайс в качестве синтезатора трансивера. Фазовый детектор хочу сделать не как там, а как у EU1CC на CD4046. ГУН хочу иной поставить. В качесве индикатора применить нормальный частотомер.Только меня вот один вопрос терзает.

Отфильтрует ли петля ФАПЧ(CD4046+LM358) явно грязный спектр DDS, что бы как у обычного PLL был?

18.04.2005, 20:20
вот еще интерснее схема более "взрослая" чтоли

www
18.04.2005, 20:30
А прошивка?

www
19.04.2005, 18:10
Приветствую всех.
Сегодня собрал данный девайс http://www.geocities.com/pa2ohh/04dds1.htm .Вернее только его часть.Фазавый детектор применил такой же как у EU1CC,эту глупую индикацию на одной цифре не ставил, проще потом будет поставить частотомер, ГУН пока не собирал. На удивление всё заработало с первого раза как надо.DDS выдаёт частоту от 46875 Гц до 234375 Гц с различным шагом перестройки. Спектр такого DDS надо думать не кудышный, но петля ФАПЧ ,я думаю, должна его отфильтровать. Дополнительную фильтрацию должен осуществить формирователь импульсов смесителя. В общем получается что то типа синтезатора EU1CC, только без всяких там дорогих и деффицитных AD9851,у нас одна такая штучка стоит 800р, а я сегодня потратил 150р. и ещё рублей 100 на ГУН и валкодер уйдёт.Конечно есть один недостаток - отсутствие сервисных функций. Но для человека владеющего програмированием это полный пустяк, тем более что у микроконтролера остались не задействованы больше пяти портов.Этого может хватить и на индикацию и на прибамбасы всяке.

Со своими скудными познаниями иностранного что то не могу понять что написано в исходной статье - "Disabling the PLL to avoid problems at high DDS output frequencies
Pin B0 disables the PLL during certain software routines when the clockspeed goes down to 1/8x 923 kHz. With such a low clock speed that is even much lower than the highest DDS output frequency of 1/4x the clock speed, the DDS output is heavily distorted for a moment. Without disabling the PLL (only 255 us) during these routines, you can hear that as a loud click or "tjoop". "
Подскажите PLEASE хотя бы примерно что там написано.

AleGZ
19.04.2005, 18:27
Disabling the PLL to avoid problems at high DDS output frequencies
Pin B0 disables the PLL during certain software routines when the clockspeed goes down to 1/8x 923 kHz. With such a low clock speed that is even much lower than the highest DDS output frequency of 1/4x the clock speed, the DDS output is heavily distorted for a moment. Without disabling the PLL (only 255 us) during these routines, you can hear that as a loud click or "tjoop". "
--------------------------------------------------------------------------------
Отключение PLL для устранения проблем при высоких частотах на выходе DDS. Вывод B0 отключает PLL во время определенных программных циклов, когда тактовая частота становится меньше 1/8 х 923 кГц. На такой низкой тактовой частоте, которая много ниже даже самой высокой выходной частоты DDS при 1/4х тактовую частоту, выход DDS очень "шумный" (выдает много помех) в этот момент. Без отключения PLL (всего 255 мкс) на время выполнения этих программных циклов вы можете услышать [в наушниках] громкий щелчок.

73!

www
19.04.2005, 19:51
Опять таки ничего не понял.
Объясните мне пожалуста , для чего же на 255 мкс отключается ФАПЧ? Это происходит постояно или только на каких то поражённых частотах?

19.04.2005, 22:33
дело в том что данный контроллер
что назывется "и в поле жнец и на дуде игрец" во время цикла происходит реакция на валкодер и также индикация
данный алгоритм зациклен поэтому для того пока он не генерирует следущее значение фазы он вырубает
ФАПЧ детектор чтобы не было бросков а следовательно искуственно создаваемых фазовых шумов.
Приватно могу обсудить мои и UN7DAQ
наработки образца прошлого лета там много чего можно еще наделать
идейка та фортовая :)
что бы там не говорили сторонники AD
радиолюбительство не всегда хайтек..
цитируя UN7DAQ : "Ну и что что лучше и уже сделано мне самому интересно свое чтонибудь..." - полностью согласен хоть и DDS АD извиняюсь хоть ешь :)
единственное хочу сказать не нужно ожидать супер параметров от данного девайса но синтез полноценный.
а сервис - правильно это проблема тривиальная для программеров AVR или ADUC или еще там чего :)

AleGZ
19.04.2005, 22:39
The PLL is disabled during certain software routines when the DDS output is interrupted.

PLL отключается на время выполнения программных циклов, когда выход DDS прерывается.

Т.е. когда идет обработка кнопок управления и/или выдача информации на индикатор, в этот момент DDS, естественно, не работает, т.е. выход DDS "зависает" на каком-то значении, т.к. процессор обрабатывает команды последовательно. Чтобы в этот момент не возникала помеха, PLL отключается. Я так это понял из описания.

73!

19.04.2005, 22:43
А прошивка?

www
20.04.2005, 05:18
А как организовать отключение ФАПЧ если я сделал не на куче транзисторов как в оригинале,а на CD4046?

Tadas
20.04.2005, 08:43
А как организовать отключение ФАПЧ если я сделал не на куче транзисторов как в оригинале,а на CD4046?
Введите КМОП ключ между фазовым детектором и петлевым фильтром.
А может быть и вывод ЕN CD4046 можно использовать, почитайте описание.

www
20.04.2005, 08:47
А как организовать отключение ФАПЧ если я сделал не на куче транзисторов как в оригинале,а на CD4046?
Введите КМОП ключ между фазовым детектором и петлевым фильтром.
А может быть и вывод ЕN CD4046 можно использовать, почитайте описание.

До операционного усилителя или после?
Фильтр на LM358 как у EU1CC.

Tadas
20.04.2005, 09:13
[quote="Tadas"][quote=www]До операционного усилителя или после?
Фильтр на LM358 как у EU1CC.
Пожалуй лучше будет после (между выходом усилителя и R15, если смотреть по этой схеме http://eu1cc.qrz.ru/sintez/ver1_0/processor.gif ).

www
20.04.2005, 17:09
Возникли первые проблемы :cry: .
Собрал на скорую руку простенький ГУН, подключил к DDS. И не как не могу добиться захвата петли ФАПЧ. Подозрения падают на 4046 или же на LM358. При растягивании или сжатии катушки управляющее напряжение скачком а не плавно изменяется с 0,1 В до 6В. В чём дело?

Serg007
20.04.2005, 18:01
Здравствуйте, Андрей.

Возникли первые проблемы :cry: .
Собрал на скорую руку простенький ГУН, подключил к DDS. И не как не могу добиться захвата петли ФАПЧ. Подозрения падают на 4046 или же на LM358. При растягивании или сжатии катушки управляющее напряжение скачком а не плавно изменяется с 0,1 В до 6В. В чём дело?
Если исходить из того, что детали исправны и нет ошибок в монтаже, то причина в отсутствии сопряжения частот диапазона перестройки ГУНа и образцового сигнала с "DDS". Надо добиться по частотомеру приблизительно равных значений сравниваемых частот - чтобы не трогать ГУН, проще перестроить образцовую частоту сигнала с "DDS" родными кнопками управления.

www
20.04.2005, 19:05
Cопряжение частот есть точно, проверял частотмером. Сейчас ещё раз проверю на ошибки в мотаже. Но вобще закралось у меня подозрение на неисправность 4046, хотя светодиод горит, а когда отключаешь DDS он тухнет.

EU1ME
20.04.2005, 19:41
Осмелюсь кое-что посоветовать. У меня было подобное.
Если 4046 питается от 9 вольт, а на нее идет ТТЛ (КМОП) 5вольт, то она их не воспринимает. Выход - или опустить питание 4046 до 7 вольт или поднять уровень сигнала.
Однажды мне помог конденсатор на 1500пф (подобрать минимально необходимый) подключенный параллельно выходу 4046.
Удачи!

www
20.04.2005, 20:06
Я уже всяко пробовал.Это не помогает.
Сейчас попробовал подключить вход операционника к первой ноге 4046, та что на индикацию идет, захватить сигнал конечно не удалось но оказалось что при перестройке DDS в низ по частоте ГУН перестраивается в верх, и наоборот. Значит один то выход фазового детектора работает (инверсный если его так можно назвать), а другой нет потому как напряжение на нём всегда 0. При первом подключении я по ошибке подал 9 В не на пятую ногу , а на четвёртую - выход внутренего генератора, хоть он и не используется , но должно быть при пробое повредил внутренюю структуру микросхемы. Не беда завтра новую куплю, благо стоит всего 6р.

Хочу заметить что схема PLL полностью скопирована у EU1CC, а это фирма серьёзная и "веников не вяжет". Так что думаю всё получится.

И ещё вот у меня вопрос появился. Если всё таки сигнал окажется не слишком читым, введение ещё одной петли ФАПЧ это исправит?

www
20.04.2005, 20:10
А, ну да, вот ещё хотел попросить.
Посоветуйте что ни будь на счёт ГУНа.
Хочу перекрыть диапазон от 28 до 56МГц, ну или хотя бы от 14 до 28.

EU1ME
20.04.2005, 23:01
А, ну да, вот ещё хотел попросить.
Посоветуйте что ни будь на счёт ГУНа.
Хочу перекрыть диапазон от 28 до 56МГц, ну или хотя бы от 14 до 28.
Одним не перекрыть (без комутации). Смотри того же EU1CC вариант гунов на BF998.
А с синтезом EU1CC мне тоже пришлось повозиться с 4046. Теже симптомы, лечил как сказал. Попробуйте плавно понижать питание 4046 до 5-7 вольт, возможно где-то схватит. Завтра посмотрю точнее, что я там делал, тогда доложу.

Serg007
21.04.2005, 09:23
А, ну да, вот ещё хотел попросить.
Посоветуйте что ни будь на счёт ГУНа.
Хочу перекрыть диапазон от 28 до 56МГц, ну или хотя бы от 14 до 28.
2х кратное перекрытие частоты на варикапах - труднореализуемое, да и уровень шумов будет огромный. Без дополнительных делителей выходной частоты ГУН на 2,4,8 не обойтись. По моим прикидкам, для перекрытия 8 диапазонов понадобится и коммутация контура реле или диодами ГУНа на два частотных диапазона- 112...128МГц и 72,272...85,8МГц ( см. приложение ). Ваша идея применить такой "DDS" хороша - позволяет малой кровью добиться хорошей стабильности и малого шага перестройки в широком диапазоне частот, но для нормальной работы понадобится небольшая корректировка программы - нужно внести начальные значения опорных частот "DDS", соответствующие любительским диапазонам, которые будут устанавливаться при переключениии на очередной диапазон. К сожалению, я тоже не силен в программировании, может кто -нибудь из радиолюбителей поможет в такой работе.

www
21.04.2005, 11:51
Cегодня купил две новые PLL, одну нашу 1561ГГ1 и одну импортную CD4046. Но ничего не помогает!!!
Проблема остаётся, не могу захватить сигнал ГУНа. Уже с помомощью переменника проверял диапазон перестройки ГУНа в норме. На вход PLL подавал разные по амплитуде сигналы, изменял напряжение питания.Ничего не помогает.
Хоть как в оригинале соберай PLL на куче транзисторов.

Serg007
21.04.2005, 13:01
2 WWW
Такая же схема применяется у Тарасова http://ut2fw.cqham.ru//dds/9832/shema_dds_contr.png
и должна работать. Проверьте внимательно монтаж, какие конкретно частоты подаете на оба входа 4066. Если получится , выложите точную схему устройства.

www
21.04.2005, 14:52
Сравнение происходит на частоте 80кГц.

Ну что то у меня уже сил нет возиться с этой 4046. Сейчас буду разводить другой вариант, DDS,PLL(на транзисторах),делите ль на 256,гун - всё на одной плате .

Tadas
21.04.2005, 15:08
Если PLL работает "наоборот" надо поменять местами входы опоры и сигнала.

RZ3AIR
21.04.2005, 15:56
На 14 ногу попробуйте подать без емкости, хотя по этой ноге на входе есть усилитель.
Главная засада у вас по входу 3 ноги 4046. Убирайте емкость, и согласуйте уровни, если делитель на 64 с TTL выходом - то питание 5В на 4046 или преобразователь TTL->КМОП. В вашем включении для нормальной работы необходим размах 18В!
Почитайте внимательно у UT2FW. 14 и 3 входа не индентичны.
Если система заработает попробуйте убрать с выхода 20к на землю, но это уже другая тема по поводу стабильности ФАПЧ.

P.S. AD9835BRU (50 МГц с 10-бит ЦАП) в Москве - 9.23$ в розницу.

www
21.04.2005, 18:11
На 14 ногу попробуйте подать без емкости, хотя по этой ноге на входе есть усилитель.
Главная засада у вас по входу 3 ноги 4046. Убирайте емкость, и согласуйте уровни, если делитель на 64 с TTL выходом - то питание 5В на 4046 или преобразователь TTL->КМОП. В вашем включении для нормальной работы необходим размах 18В!
Почитайте внимательно у UT2FW. 14 и 3 входа не индентичны.
Если система заработает попробуйте убрать с выхода 20к на землю, но это уже другая тема по поводу стабильности ФАПЧ.

P.S. AD9835BRU (50 МГц с 10-бит ЦАП) в Москве - 9.23$ в розницу.

Ничего не могу добиться. А сейчас к тому же частотомер пожёг :oops: .
Но я всё ещё не хочу применять кучу транзисторов в ФАПЧ. Сейчас жду осцилограф (см. тему "SOS"), думаю с помощью него я решу свою проблему.

AD9835 конечно вещь хорошая , да и стоит относительно не дорого, но у нас её в продаже нет, да и корпус у неё "стрёмный". Мог бы конечно заказать , но я не владею "лазерной" технологией изготовления печатных плат :-( . Лазерного принтера нет, пробовал на ксероксе ничего не получается. Так что изготовить плату под 9835 у меня не получится.

Набросал пока схемку четырёхдиапазонного синтезатора. Взгляните, что скажете?

21.04.2005, 21:52
а как на счет широкодиапазонного
генератора по гетеродинному типу?
http://cqham.ru/gun12.htm

www
22.04.2005, 05:36
а как на счет широкодиапазонного
генератора по гетеродинному типу?
http://cqham.ru/gun12.htm
Нет не покатит, такие шумят много.

Илья RW3FY
22.04.2005, 09:04
То WWW:

Немного не там и не в том порядке ищете. Используете параметры петлевого фильтра, подобранного под петлю с другими параметрами --- вот петля и не схватывается с "чужим" фильтром. Проделайте в таком порядке:

1. Разрываете петлю (отсоединяете выход петлевого фильтра от ГУНа)

2. На варикап ГУНа через сглаживающую цепочку подаёте регулируемое от 0В до выбранного Вами максимального напряжение.

3. Плавно регулируя напряжение на варикапе от нуля до максимума, проверяете правильность работы Вашего ИЧФД. При нулевом напряжении на варикапе напряжение на выходе петлевого фильтра должно быть максимально, далее, при плавном повышении напряжения на варикапе, в момент, когда частоты на входе ИЧФД сравняются, произойдёт переключение напряжения на выходе петлевого фильтра на минимальное, и оно должно таковым и оставаться при дальнейшем увеличении напряжения на варикапе. А при точном равенстве частот будут наблюдаться биения, но этот момент поймать сложно и особо не нужно. Попутно проверяете, что выходного напряжения ГУНа хватает для работы делителя во всём частотном диапазоне и что ни при каких напряжениях на варикапе срывов генерации нет. Если всё работает, как я описал --- пляшете ламбаду, после чего двигаетесь дальше. Если нет --- ищете, что работает неправильно --- проверяете достаточность уровней на входах ИЧФД, правильность подачи частоты сравнения и поделённой частоты ГУНа, правильность распайки всего, что стоит после ИЧФД, и т.д. и т.п.

***
Небольшой, но важный момент. К сожалению, мне по даташиту на 4046 не удалось врубиться, простой это фазовый детектор, или нормальный частотно-фазовый. Поэтому в случае, если всё у Вас правильно и всех уровней хватает, а работает всё равно не так, как я описал, небольшой совет --- выкиньте 4046 и поставьте на её место традиционный ИЧФД на двух триггерах с токовыми ключами и схемой сдвига уровня на выходе. Срисовать схему можно из: "Левин В.А. и др. Синтезаторы частот с системой импульсно-фазовой автоподстройки. - М.: Радио и связь. - 1989." Применение ИЧФД вместо обычного ФД ускоряет процесс захвата и увеличивает число допустимых вариаций элементов петлевого фильтра.
***

4. После удачного прохождения первых 3-х пунктов двигаемся дальше. А именно --- теперь можем петлю наконец-то замкнуть и заняться фильтром. Для этого устанавливаем частоту ДДС в середину выбранного диапазона и прогреваем паяльник. Единой методы тут нет --- поэтому подбираем элементы фильтра методом тыка до получения мало-мальски устойчивого захвата. Здесь, чтоб для начала облегчить себе жизнь, полезно схему фильтра временно урезать до "классической" с минимумом элементов. В общем, процесс творческий и требует терпения.

5. После того, как достигли более-менее устойчивого захвата, можно переходить к более "тонкой" настройке. Тут, чтобы немного сэкономить время, сберечь нервы и не прибавить себе седых волос, полезно будет сигнал Вашей ДДС временно заменить сигналом кварцевого генератора, частота которого поделена до близкого к частоте Вашей опоры значения. После того, как марахайку включили и убедились в наличии захвата, двигаемся дальше. А именно --- контролируем выходной спектр синтезатора посредством описанной на сайте UT2FW методы и занимаемся доводкой фильтра. Можно и наоборот --- делать не так, как там описано, а принимать сигнал от синтезатора контрольным приёмником, но тоже с контролем выхода через комп. Если нет приёмника на нужный диапазон --- можно принимать сигнал какой-нибудь (лучше как можно более высокой) гармоники присутствующего на "ГУНовском" входе ИЧФД сигнала, но точность при этом несколько меньше. В общем, контролируя спектр любым из упомянутых способов, дальнейшим подбором элементов фильтра добиваемся "красивой" формы кривой фазовых шумов. А именно --- абсолютно ровной и гладкой несущей, далее, на 100...300 Гц от неё --- относительно плоской площадки, ещё дальше --- резкого и монотонного убывания уровня фазовых шумов с увеличением отстройки.

6. После этого подключаем ДДС, и можем немножко повылизывать спектр уже с ней.

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

8. Пляшем ламбаду, теперь уже по поводу удачного завершения процедуры настройки синтеза.

Удачи!
73!

www
27.04.2005, 14:52
Ура! Первые 4 пункта провёл успешно. Вскоре сделаю нормальный ГУН и всё будет ОК.

www
30.04.2005, 08:57
Ну вот ГУН сделал. Всё работает как должно работать. Хочу обратиться за помощью к знатокам ассемблера.

Где взять програму для компиляции исходного текста в HEX?
И что нужно изменить в програме для того что бы не выходе был сигнал не 40-400кГц , а 199-234кГц, и что нужно убрать из програмы что бы не было индикации(она всё равно не используется)???

Genadi Zawidowski
30.04.2005, 11:59
Затвор транзистоора в ГУНе висит в воздухе - так и задумано?
Переусложнен фильтр с "разгоняющим" операционником.
Посмотрите более простые и классические схемы интеграторов.
Например, в апнотах к LMX2306, MC145170.
Я лично использовал только одну из них. http://www.qsl.net/ke5fx/synth.html

www
30.04.2005, 20:13
Ну да немного ошибся, затвор первого полевика конечно же садится на землю через 100 кОм.
А вот фильтр на операционнике заимствовал у EU1CC и возможно он нуждается в коректировке значений ёмкостей.

30.04.2005, 20:48
Где взять програму для компиляции исходного текста в HEX????

www.atmel.com
далее для ищите там AVRStudio
любой версии 3,55 или 4,06 (кажется )
первая для копмпиков послабее, вторая посолидней но слабые компы подтормаживают далее там же ищи даташит что то типа
getting started with AVR Studio или ченить в этом роде
(ну чтоб понять как код сей добавить в проект и откомпилировать (получить HEX)

EU1ME
30.04.2005, 23:01
На .сом нет "старых" версий, но есть на http://www.atmel.ru/Software/Software.htm и еще много интересного

www
01.05.2005, 08:54
Всё равно не могу найти то что нужно. Скачал AVRstudio а она требует фирменый отладочный модуль. На http://www.atmel.ru/Software/Software.htm ничего не нашёл

Tadas
01.05.2005, 11:36
Но там есть встроенный программный симулятор, много лет использую AVRstudio, а фирменного отладочного модуля ни разу в глазах не видел.

01.05.2005, 12:55
AVRStudio это всего лишь ассемблер
и дебаггер (симулятор)
здесь только код пишется и отлаживается
далее берешь нех код и через
pony prog загружаешь

www
01.05.2005, 21:43
Да , спасибо. Во всём разобрался. Компилировать научился, завтра буду пробовать изменять программу.

www
02.05.2005, 09:05
Кое что получилось, теперь при включении с разу же DDS выдаёт частоту 219кГц.
Мне хочется большего. Хочу применить индикатор МТ1602, но вот ума не приложу как это сделать :(

02.05.2005, 11:29
мне кажется для индикатора нужно
менять чип ATmega8 например и дописывать процедурки для ЖКИ
пример описан здесь->
http://www.atmel.ru/
то ли в тех доках толи в советах бывалых

EU1ME
02.05.2005, 12:43
На мой взгляд имеет большой смысл для управления применять отдельный контроллер, так как при перестройке будут большие проблемы с DDS. Если данные передавать по 4-проводной шине (той же что и для ЖКИ), то время обновления данных будет несколько десятков мксек.

02.05.2005, 13:09
нет можно просто передавать не все а порциями через 250мкс

EU1ME
02.05.2005, 13:24
нет можно просто передавать не все а порциями через 250мкс
Не забывайте, что необходим еще расчет "фазы" для DDS из рабочей частоты + отработка валкодера и клавиатуры итд. Вариант с отдельным контроллером немного дороже но универсальнее, т.к. появляется возможность использовать уже разработынные варианты на любом контроллере (PIC, AVR, x51) и не отпадает вариант с 16-ти битным DDS (для экстремалов)

02.05.2005, 15:29
тогда изчезает уже вся прелесть конструкции - простота
становится проще взять AD9832
ну на крайний случай AD9833 :)

www
02.05.2005, 15:38
На мой взгляд имеет большой смысл для управления применять отдельный контроллер, так как при перестройке будут большие проблемы с DDS. Если данные передавать по 4-проводной шине (той же что и для ЖКИ), то время обновления данных будет несколько десятков мксек.

Я тоже придерживаюсь этого мнения. И если применить ещё один контролер , то это обойдётся всего в +50р. Мне очень понравилась схема http://www.myplace.nu/avr/minidds/index.htm , сейчас вот безуспешно пока пытаюсь прочухать чё к чёму в программе.

EU1ME
02.05.2005, 16:17
тогда изчезает уже вся прелесть конструкции - простота
становится проще взять AD9832
ну на крайний случай AD9833 :)
Проще взять 9951, но не у всех же есть такая возможность. У меня она есть, но для интереса хотелось бы опробовать другие варианты.

Мне очень понравилась схема http://www.myplace.nu/avr/minidds/index.htm , сейчас вот безуспешно пока пытаюсь прочухать чё к чёму в программе.
Программа суть не сложная, но свое дело делает. Если выбросить ненужные нам таблицы кроме синуса, а также заменить способ загрузки фазы на 4-проводный, то программка вообще упростится.
Сейчас же вся ее суть в семи строках, на ПИК-е такого не достичь.
Если коротко, то происходит суммирование с накоплением 24-битного числа, старшие 8 бит которого служат адресом в таблице синуса, значения которого передаются в выходной порт.