Генератор dds на arduino – Лабораторный генератор сигналов на DDS под управлением Arduino

Лабораторный генератор сигналов на DDS под управлением Arduino

Разное

Главная  Радиолюбителю  Разное


Прототипом этого генератора стала найденная автором в Интернете конструкция [1]. Она дополнена аттенюатором, которым управляет микроконтроллер, буферный усилитель собран на микросхеме другого типа, внесены изменения в программу микроконтроллера модуля Arduino Nano.

Микросхемы прямого цифрового синтеза частоты (DDS) обычно применяют в задающих генераторах и перестраиваемых гетеродинах радиостанций [2, 3], лабораторных генераторах сигналов [4, 5]. Микроконтроллерное управление ими легко позволяет реализовать генератор качающейся частоты [6]. В последнее время сложилась ситуация, когда приобретение отдельно микросхемы DDS и микроконтроллера дороже, чем готовых содержащих их модулей. В предлагаемом лабораторном генераторе синусоидальных сигналов применены модуль синтезатора частоты HC-SR08 на микросхеме DDS AD9851 и микроконтрол-лерный модуль Arduino Nano.

Генератор имеет три режима работы:

1 — генерация синусоидального сигнала частотой от 1 Гц до 70 МГц, устанавливаемой с минимальным шагом 1 Гц;

2 — генерация сигнала качающейся частоты. Качание происходит от установленного на ЖКИ значения в сторону повышения частоты. Полосу и шаг качания можно устанавливать произвольно во всём диапазоне генерируемых частот, но шаг должен быть меньше полосы. Число шагов в одном цикле качания равно ширине полосы качания, делённой на длину шага, плюс единица. Период повторения циклов равен этому числу, умноженному на 660 мкс. В начале каждого цикла качания для синхронизации развёртки осциллографа генерируется импульс низкого логического уровня длительностью 11 мкс;

3 — генерация сигнала, частота которого отличается от заданной на одно из следующих фиксированных значений: 450 кГц, 455 кГц, 460 кГц, 465 кГц, 1,6 МГц, 1,8 МГц, 5,5 МГц, 10,7 МГц и 21,4 МГц. Выходная частота равна сумме установленного на индикаторе значения и выбранного смещения.

Аттенюатор ослабляет выходной сигнал на 0-110 дБ ступенями по 10 дБ. Экспериментально снятые графики зависимости амплитуды выходного напряжения от частоты при различном ослаблении аттенюатора показаны на рис. 1. Генератор, внутреннее сопротивление которого 50 Ом, был нагружен только входным сопротивлением осциллографа (около 1 МОм).

Рис. 1. Экспериментально снятые графики зависимости амплитуды выходного напряжения от частоты при различном ослаблении аттенюатора

Принципиальная схема генератора изображена на рис. 2. Он состоит из готовых модулей Arduino Nanо (А1), HC-SR08 (A2) на базе микросхемы DDS AD9851 и самодельных плат питания и органов управления, аттенюатора (2 шт.), буферного усилителя. Позиционные обозначения элементов, находящихся на самодельных платах, снабжены цифровыми префиксами, равными условному номеру платы. Информация о работе генератора выводится на ЖКИ HG1.

Рис. 2. Принципиальная схема генератора

Внешнее напряжение питания генератора (14,5…20 В) подают на разъём 3XS1 от внешнего источника. Потребляемый от него ток не превышает 150 мА. Выключатель питания 3SA1 расположен на передней панели корпуса генератора. На плате питания и органов управления установлены три интегральных стабилизатора: на 12 В (3DA1), на 10 В (3DA3) и на 5 В (3DA2). Напряжение 10 В на выходе стабилизатора 3DA3 точно устанавливают подборкой резисторов 3R7 и 3R8. Конденсаторы 3C1-3C9 и 4C1-4C4 фильтруют питающие напряжения.

Модуль A1 питается напряжением 12 В от стабилизатора 3DA1, при этом действует установленный в модуле стабилизатор напряжения 5 В, которое использовано для питания ЖКИ HG1. Напряжением 12 В питают реле, установленные на платах аттенюаторов. Модуль A2 получает питание от стабилизатора 3DA2, что позволило избавиться от помех, создаваемых микроконтроллером модуля A1. ОУ 4DA1 в буферном усилителе питается напряжением 10 В от стабилизатора 3DA3.

Всеми узлами генератора управляет по загруженной в него программе микроконтроллер ATmega168P или ATmega328P, установленный в модуле Arduino Nano. Применён модуль с индексом R3, в котором преобразователь интерфейса USB-COM выполнен на микросхеме Ch440G.

ЖКИ HG1 и меет две строки по 16 символов и встроенный контроллер, совместимый с HD44780. Плата ЖКИ была подвергнута доработке. Имевшийся на ней резистор R8 (рис. 3) сопротивлением 100 Ом, ограничивающий ток подсветки экрана, был заменён резистором сопротивлением 220 Ом. Это понизило ток, потребляемый подсветкой, с более чем 20 мА до 10 мА. При этом яркость подсветки практически не уменьшилась. На этой же плате были смонтированы после подборки резисторы R1 и R2, задающие контрастность изображения на экране индикатора.

Рис. 3. Плата ЖКИ

Вращением ручки энкодера3S1 увеличивают или уменьшают генерируемую частоту шагами, длину которых можно изменять нажатиями на эту ручку. Нажатиями на кнопку 3SB1 изменяют коэффициент ослабления аттенюатора, а с помощью кнопки 3SB2 сменяют режимы работы генератора. В режиме 1 нажатием на кнопку 3SB3 устанавливают шаг перестройки равным 1 кГц. Нажатиями на эту же кнопку в режиме 2 циклически выбирают частоту начала сканирования, ширину полосы качания и длину шага перестройки частоты. В режиме 3 этой кнопкой задают смещение генерируемой часто-ты относительно показанной на индикаторе. Все входы модуля A1, к которым подключены контакты кнопок и энкоде-ра, соединены с цепью питания +5 В через резисторы 3R1-3R6 для поддержания на них высокого логического уровня при разомкнутых контактах.

Детали стабилизаторов напряжения питания и органов управления размещены на односторонней печатной плате, представленной на рис. 4. Кнопки и энкодер устанавливают на ней со стороны печатных проводников. Энкодер крепят гайкой к корпусу генератора. К нему же без изоляционных прокладок прижимают теплоотводящие фланцы стабилизаторов 3DA1 и 3DA2. Стабилизатор 3DA3 работает без дополнительного теплоотвода. Конденсаторы 3C3 и 3C5 монтируют на плату лишь при необходимости устранить сбои в работе энкодера.

Рис. 4. Печатная плата

Внешний вид модуля HC-SR08 показан на рис. 5. Генерируемый им сигнал снимают с имеющегося в модуле нагрузочного резистора LC-фильтра нижних частот. Провода, идущие от модуля к буферному усилителю, припаяны непосредственно к этому резистору (R5). На рис. 5 он находится у правого среза платы вверху.

Рис. 5. Внешний вид модуля HC-SR08

Чтобы уменьшить искажения сигнала, рекомендуется отключить встроенный в микросхему AD9851 компаратор, формирующий прямоугольный выходной сигнал. Для этого необходимо перевести движок установленного на плате модуля подстроечного резистора R13 в одно из крайних положений.

С модуля DDS сигнал поступает на буферный усилитель с коэффициентом усиления 2, собранный на ОУ 4DA1 (OPA642N), через конденсаторы 4C5 и 4C6, не пропускающие его постоянную составляющую. С помощью резисторов 4R1, 4R2 и блокировочных конденсаторов 4C1-4C4 создана искусственная средняя точка питания ОУ. Для устранения постоянной составляющей выходной сигнал ОУ поступает на аттенюатор через конденсаторы 4C7 и 4C8. Резистором 4R6 задано выходное сопротивление генератора.

Буферный усилитель собран на односторонней печатной плате, изображённой на рис. 6. Она рассчитана на установку компонентов для поверхностного монтажа. Резисторы и конденсаторы — типоразмера 1206, допускается установка резисторов типоразмера 0805.

Рис. 6. Печатная плата буферного усилителя

Усиленный сигнал поступает через аттенюаторы на выходной разъём XW2 (СР50-73). Для управления коэффициентом ослабления в аттенюаторах использованы реле HLS-4098-DC12V с сопротивлением обмотки 720 Ом. Транзисторы 1VT1, 1VT2, 2VT1, 2VT2 управляют этими реле по командам модуля A1. Обмотки реле для подавления выбросов напряжения самоиндукции зашунтированы диодами 1VD1, 1VD2, 2VD1, 2VD2.

Платы двух аттенюаторов идентичны (рис. 7) и различаются лишь номиналами установленных на них резисторов. Изготовлены эти платы из фольгиро-ванного с двух сторон стеклотекстолита. Фольга на одной из сторон служит экраном и соединена с общим проводом стороны печатных проводников через переходные отверстия, которые на рис. 7 показаны залитыми. Вокруг выводов деталей фольга экрана удалена зенкованием.

Рис. 7. Платы двух аттенюаторов

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

На практике почти невозможно найти резистор, сопротивление которого в точности равно написанному на нём номиналу. Поэтому необходимо, измерив реальное сопротивление имеющихся в наличии резисторов, выбрать тот, сопротивление которого близко к требуемому Rрасч, но больше его. Затем, подставив сопротивление выбранного резистора R1 в формулу R2 = (Rрасч — R1 )/Rрасч · R1 найти сопротивление резистора R2, который следует подключить параллельно первому. В таблице представлены некоторые возможные комбинации резисторов для различных ступеней аттенюаторов.

Таблица

Ослабление, ДБ

Расчётное сопротивление, Ом

Комбинации резисторов, Ом

Отклонение от расчётного, %

10

96,25

150 и 270

0,19

160 и 240

-0,26

71,15

91 и 330

0,25

110 и 200

-0,26

20

61,11

75 и 330

0,00

82 и 240

0,01

247,50

270 и 3000

0,08

390 и 680

0,14

40

51,01

56 и 390

-4,00

подбор из 51

2499,75

3000 и 15000

0,01

3600 и 8200

0,08

Генератор собран в алюминиевом корпусе фирмы Gainta BX23B-1 (120х х100х31 мм) с крышкой BX23T-1 (120х100х4 мм). Могут быть использованы более современные корпусы той же фирмы BO23 или BS23, укомплектованные крышками. Внутри корпус разделён на отсеки перегородкой из фольгированного стеклотекстолита, изображённой на рис. 8. Она отделяет платы аттенюаторов от модуля DDS с буферным усилителем и от платы питания и управления. Расположение основных узлов внутри корпуса представлено на рис. 9. Разъёмы XW1 и XW2 — СР50-73. Вид прибора со стороны лицевой панели — на рис. 10.

Рис. 8. Вид корпуса

Рис.9. Расположение основных узлов внутри корпуса

Рис. 10. Вид прибора со стороны лицевой панели

Между платами аттенюатора для исключения замыканий проложена изолирующая прокладка. Плата буферного усилителя с той же целью обмотана ПВХ изоляционной лентой. Платы аттенюаторов, буферного усилителя и модуля DDS в корпусе не закреплены. ЖКИ зафиксирован между дном корпуса и его крышкой четырьмя винтами длиной 30 мм.

Модуль Arduino Nano закреплён поверх платы ЖКИ на изолирующей прокладке из пластика от коробки для CD.

Программа микроконтроллера модуля Arduino Nano и библиотека к ней имеются здесь.

Литература

1. Arduino DDS — синтезатор частоты на базе AD9851 под управлением Arduino. — URL: https://frompinskto.wordpress.com/ 2016/09/19/arduino-dds-синтезатор-частоты-на-базе-ad9851-под-упр/ (14.08.17).

2. Тарасов А. Синтезатор частоты для КВ трансивера. — Радио, 2004, № 5, с. 62-64; 2004, № 6, с. 64-67.

3. Денисов В., Попов В. Синтезатор частот для любительской коротковолновой радиостанции. — Радио, 2005, № 3, с. 68-71.

4. Хлюпин Н. Лабораторный генератор сигналов на DDS. — Радио, 2009, № 8, с. 15- 17.

5. Кулешов С. Генератор на PIC16F84A и AD9850. — Радио, 2004, № 3, с. 27-29.

6. Каминский С. ГКЧ из синтезатора на основе DDS AD9835. — Радио, 2012, № 4, с. 19, 20.

Автор: С. Алтухов, г. Вольск Саратовской обл.

Дата публикации: 19.10.2017

Мнения читателей
  • Величко Валерий Михайлович / 04.02.2019 — 11:58
    Собрал данную конструкцию генератора прошил Arduino Nano 3.0 на дисплее 1602 отображаются все функции трех режимов работы генератора и 12 позиций аннтенюатора. Модуль на AD9851 заработал устойчиво только после соединения в модуле vcc+d0+d1.Выходной усилитель собрал на двух транзисторах кт368 (кострукция другого автора -arduino dds синтезатор частоты на базе ad9851) всё работает выход около 5v зависимость от частоты сигнала. Далее стал проверять выходы на включение аннтенюаторов только кратковременные импульсы которыми можно включить только поляризованные реле .подключил дешифратор на 561ид1 -много выходных позиций для включения реле постоянного тока но они одиночны и некоторые повторяются.как я понял нам необходимо 4 реле и 12 позиций их коммутации.1-не включены 0дб .2-включено 1реле 10дб.3-вкл.2реле 20дб.4-включено 1и2 реле 30дб.5-вкл.3реле 40дб.6-вкл.1и3реле 50дб.7-вклю3и2 60дб.8-вкл.1.2и3 реле 70дб.9-вкл.3.4 80дб.10-вкл.1.3и4 реле90дб.11-вкл.2.3и4 реле 100дб.12-вкл.1.2.3.4 110дб.но уменя так не получилось. UB9OBI ???
  • Валерий / 17.05.2018 — 15:30
    Собрал данный генератор, остался доволен. Правда пришлось видоизменить его и провести ряд переделок.

Вы можете оставить свой комментарий, мнение или вопрос по приведенному вышематериалу:

www.radioradar.net

Сообщества › Электронные Поделки › Блог › Генератор регулируемой частоты на Arduino Nano

Дело было вечером делать было нечего)
Итак, встречайте — генератор с частотомером на борту.

Полный размер

Arduino Nano

После успешного проекта по сборке пультоскопа решил собрать генератор и частотомер. Вот что из этого вышло:
Формы сигнала: синус DDS, треугольник DDS, прямоугольник DDS, правая пила DDS, левая пила DDS.
Характеристики взял с страницы автора
«генерации таймером:
Генерация прямоугольного сигнала 0.4 Мгц,
минимальный шаг регулировки частоты в диапазоне 0…2,8кГц — 1Гц
свыше 2,8кГц минимальный шаг постепенно возрастает.
Регулировка коэффициента заполнения (скважности) 1.100%
в диапазоне 1Гц.80кГц регулировка производится с разрешением 1%
Свыше 80кГц разрешение (шаг) регулировки скважности увеличивается.
При изменении рабочей частоты в диапазоне 1Гц-80кГц выбранная скважность сохраняется,
а при изменении частоты свыше 80кГц сбрасывается на 50 %,
но в режиме регулировки скважности её можно снова изменять.

Тех. Характеристики генерации сигнала через DDS:
Почему-то в оригинальной статье автора алгоритма DDS о характеристиках нет ни слова.
Указана только максимальная частота -65кГц. Откуда её взял автор непонятно, я поставил ограничение на 100кГц C увеличением частоты сильно падает разрешение получаемого сигнала на высоких частотах. А конкретно, в диапазонах:
0…6,25 кГц — разрядность от 256 до 128 градаций
6,25…12,5 кГц — разрядность от 128 до 64 градаций
12,5…25кГц -разрядность от 64 до 32 градаций
25кГц…50кГц -разрядность от 32 до 16 градаций
50кГц…100кГц -разрядность от 16 до 8 градаций
Помимо этого с увеличением частоты вырастает джиттер,
особенно заметно на сигналах с резкими фронтами (прямоугольник, пила).
Но на точно установленных частотах 6,25кГц ; 12,5кГц ; 25кГц; 50кГц; 100 кГц джиттера нет, их можно использовать для точных измерений. Остальные частоты для большинства применений тоже подойдут.
Но если нужен идеальный сигнал -то только генерация таймером.»
Во всех диапазонах DDS минимальный шаг регулировки частоты — 1Гц.
Характеристики частотомера, измеряемая частота 1Гц … 7,999 МГц, при превышении частоты начинает привирать.
Есть еще входы на вольтметр, он встроен в меню, но я его не использовал.

Полный размер

Плата устройства

За основу взял проект с сайта Ардуино.ру. Проект повторен и проверен несколькими комрадами. Я перевел меню на Русский язык, развел печатную плату и спаял)
В проекте используется Arduino Nano, LCD Nokia 5110 и энкондер «одношаговый».
Управление: кнопка переключения режимов переключает последовательно
синус DDS, треугольник DDS, прямоугольник DDS, правая пила DDS,
левая пила DDS. частота генерации таймером, скважность генерации таймером

Кнопка на энкодере переключает шаг изменения частоты 1000-1-10-100
в режиме регулировки скважности(6) нажатие на кнопку переключает энкодер в режим (5).
При старте есть возможность выбора режима, генератор-вольтметр. После обратного отсчета автоматом включается генератор.
Подсветка включается комбинацией — удерживая кнопку энкондера нажать кнопку режима послеотпустить кнопку энкондера.
Файлы проекта будут доступны по ссылке

UPD //Проект запускается без танцев с бубнами, с первого раза.

Полный размер

Полный размер

Полный размер

Полный размер

www.drive2.ru

dds

Цифровой генератор (синтезатор) сигналов (англ. Direct Digital Synthesizer) — электронный прибор, предназначенный для синтеза сигналов произвольной формы и частоты.

Генератор сигналов на МК ATtiny2313

Простой генератор сигналов с помощью ЦАП микроконтроллера ATtiny2313

Автор:

23
4.3 [2]


Похожие статьи:

2012 г.

Генератор сигналов на Arduino

Генератор сигнала (т.н. функциональный генератор) может быть использован для тестирования и отладки схем. Я часто использую его для проверки частотных характеристик электронных компонентов, например ОУ и датчиков. Этот генератор сигналов построен на плате Arduino. Он может выдавать четыре типа сигнала: синусоидальный, треугольный, прямоугольный и пилообразный, частота каждого из которых может регулироваться от 1Гц до 50 кГц.

Автор:
Касьянов А.

6
0 [0]


Похожие статьи:

2011 г.

DDS-генератор синусоидального сигнала

В данном проекте рассмотрим изготовление генератора синусоидального сигнала при помощи метода прямого синтеза (DDS-метод). Для реализации этого проекта нам не потребуется какого-либо дополнительного оборудования кроме самого контроллера Arduino. Частотный диапазон генератора от 0 до 16 кГц, с точностью до 1 мкГц! Данное устройство может пригодится не только для генерирования звуковых сигналов, но в тестовом и измерительном оборудовании радиолюбителя.

Автор:
Колтыков А.В.

0
0 [0]


Похожие статьи:

2012 г.

USB функциональный генератор на AD9833

Один из инструментов, без которого я бы пропал в своей домашней лаборатории, является функциональный генератор. Он довольно дорогой, поэтому я не купил его. Я подумал, что можно попытаться сделать его самостоятельно. Нашел довольно распространенную DDS (Direct Digital Synthesis, прямой цифровой синтез) микросхему AD9833. Теперь надо добавить только USB-совместимый AVR микроконтроллер и возможно немного аналоговых элементов.

Автор:
none

0
0 [0]


Похожие статьи:

2010 г.

DDS генератор

Часто, в радиолюбительской практике необходим простой функциональный DDS (прямой цифровой синтез частоты) генератор. Для получения определенной частоты… Я разработал простой генератор синуса на микросхеме от Analog Devices AD9832. Схема генерировала синусоиду от 0.005 до 12 МГц с шагом 0.005 Гц. Но, пока я ждал доставки микросхемы AD9832, был разработан простой DDS генератор с использованием микроконтроллера AT90S2313 и резистивной матрицей.

Автор:
none

10
0 [0]


Похожие статьи:

2010 г.

Функциональный DDS генератор

Данный DDS функциональный генератор (версия 2.0) сигналов собран на микроконтроллере AVR, обладает хорошей функциональностью, имеет амплитудный контроль, а также собран на односторонней печатной плате.

Автор:
Колтыков А.В.

18
0 [0]


Похожие статьи:

2011 г.

Многофункциональный генератор на PIC16F870

Характеристики генератора: частотный диапазон: 11 Гц — 60 кГц; цифровая регулировка частоты с 3 различными шагами; форма сигнала: синус, треугольный, прямоугольный, пульс, пакетный, sweep, шум; выходной диапазон напряжения: ± 15В для синуса и треугольника, 0-5В для других; синхронизация: выход для импульсного сигнала.

Автор:
Kharakternyk

2
0 [0]


Похожие статьи:

Обзор DDS-генератора GK101

В данном обзоре будет рассмотрен и протестирован 10 МГц DDS-генератор GK101 с цветным Touch-дисплеем, выпускаемый Китайской компанией Gingko и свободно продающийся на AliExpress и других интернет-площадках. Приобретался этот генератор в марте 2015 года за 94$. Текущая средняя стоимость составляет в районе 100$.

Автор:
talibanich

14
5 [1]

Обзор DDS-генератора GK101. Часть 2

Во второй части обзора DDS-генератора GK101 рассмотрим процесс создания произвольных форм сигнала, а также процесс обновления прошивки

Автор:
talibanich

0
0 [0]

Генератор качающейся частоты на AD9850

Цифровой генератор с режимом качающейся частоты на китайском модуле DDS AD9850

Автор:
ZUMER

81
5 [9]

Весь список тегов

cxem.net