Свежие обсуждения
Измерения

DDS-генератор на AVR - нужна помощь

1 79 189

DWD: Описание по Схеме...
Узлы генератора тока:
- R1,VT1,VT2,R3 в эмиттерном повторителе
- R4,VT1,VT2,R6 в УМ синус
будут сильно плавать от температуры, вроде 1% на 4 градуса температуры.
Недавно сам об эту хрень спотыкался при испытаниях в термокамере - поэкономил на комплектующих

 

По R1,VT1,VT2,R3 в эмиттерном повторителе - согласен.
По R4,VT1,VT2,R6 в УМ синус - нет, так как там есть ООС по напряжению, которая будет нормально держать режим при изменении температуры.

Расчёт на то, что это генератор не для военных, и эксплуатироваться будет в комнатных условиях и в виде отдельного прибора. В таких условиях колебания температуры будут не большими.

 

Чем нас привлекает "цифра"? В некоторой степени стабильностью производимых сигналов. Взять ту же частоту, в ддс можно спокойно сделать синусоидальный сигнал с частотами 100000,01 Гц и 100000,02 Гц, что в аналоге крайне трудно осуществить.

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

 

GM: Теперь мы с вами, своими руками, убираем возможность получения стабильной амплитуды, которую выдаёт цап
Эта стабильность по моему несколько относительна.
Амплитуда синуса после фильтра, при приближении к Fs/2,
будет уменьшаться, если хорошо помню, по закону sin(x)/x. Т.е. АЧХ генератора нелинейна.
В ддс-ках от аналоговых девиц вроде бывает коррекция по обратному закону.
Но на какой то конкретной частоте, стабильность уровня будет равна стабильности напряжения питания тиньки.

 

В частности поэтому я хотел ввести ограничение частоты до 500 кГц. Ещё можно фильтром подкорректировать от 0 до Fs/2. А от температурной зависимости как избавиться?

 

GM: А от температурной зависимости как избавиться?
Если условия эксплуатации - лабораторные - 18+-5 - стоит ли заморачиваться?

 

Как проходит тестирование вобулятора?

 

Никак - на работе происходит срочное завершение проектов 2010 г. Вобулятор пришлось перенести с монтажного стола на полку... Обратно он вернется не ранее 3-го января. Но тестовая прошивка вобулятора уже есть

 

GM: Теперь мы с вами, своими руками, убираем возможность получения стабильной амплитуды, которую выдаёт цап

А Вы уверены, что он выдаёт стабильную амплитуду?..
Я, например, наоборот, уверен в её нестабильности!

Даже если особо не напартачить в последующих цепях, то на амплитуду будет влиять не только напряжение питания МК, которое в нашем случае является опорным напряжением для ЦАП, но и сопротивление выходных ключей МК, работающих на матрицу ЦАП.
Эти ключи абсолютно не расчитываются как прецизионные, для логики это не нужно. Достаточно, что бы МК выдавал логические уровни, которые для КМОП-овских ключей описываются двумя границами: не больше 0.25Uп. для "нуля" и не меньше 0.75Uп. для "единицы".

Получается, что если один МК выдаст напряжение, скажем, 4.9В, а другой - 0,75*5В=3.75В на одну и туже нагрузку, то оба МК считаются исправными.
К тому же, для резистивного ЦАП важно иметь одинаковость сопротивлений всех ключей МК, а в этом плане, и так понятно, дело обстоит ещё хуже. Этот параметр вообще не контролируется...

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

Выходит, что для получения стабильной амплитуды не достаточно обеспечить только стабильное питание МК и сопротивление резисторов матрицы ЦАП.
В общем, два одинаковых генератора могут вырабатывать разную амплитуду и она ещё будет меняться от температуры.

По этому для простого дешёвого варианта прибора на это можно не обращать внимание.
Ну, разве что, подумать над схемой её стабилизации. Да и то, если не очень сложно получится...

Тот буферный эммитерный повторитель, который показан на приводившейся схеме, саму амплитуду портит мало и не безповоротно. При коэффициенте передачи не менее 0.9 и привязке к нулю середины синуса, на выходе буфера получаем амплитуду 5В*0,9/2=2.25В.
Подкорректировать её можно напряжением питания МК.

Температурная нестабильность буфера влияет только на постоянное смещение середины синуса, так как сам буфер без ООС а его режим работы стабилизирован довольно нестабильным источником тока. Моделирование показывает смещение порядка 300мВ в диапазоне температур -25...+100 градусов. При комфортных для пользователя условиях, когда температура воздуха будет не ниже +15 и не выше +30 градусов, смещение не будет превышать 50мВ.
Была мысль попробовать поставить вместо источника тока на парочке транзисторов обычный интегральный табилизатор напряжения, включив его источником тока. Температурная стабильнасть должна быть значительно лучше.

Не устраивает?
Изменим схему буфера.
В конце концов, кто нам запретит поставить дорогой ОУ? А он полностью исправит ситуацию...

Я, к стати, всё равно собирался потом вводить стабилизацию "нуля" синуса обычным ОУ. Наподобие схемы DDS Ридико.
Например, регулировкой напряжения питания МК.

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

 

Конечно, я не уверен, более того, скажу, что наш доморощенный цап не является последним писком инженерной мысли. Согласен также, что для дешёвого прибора можно всё оставить, как есть. Для дальнейшего удешевления можно даже поставить механические переключатели вместо электронных.

С другой стороны, действительно, кто нам мешает поставить интегральный цап с интегральной опорой, нормально спроектированных для работы в диапазоне температур? Кто мешает поставить ОУ или даже ИУ с той же опорой, что и для цапа? Не такие уж они дорогие, зато стабильность амплитуды будет гораздо выше.

Последний вариант программы для тини включает в себя генератор синуса/треугольника 0-1000 кГц и свип-генератор (вобулятор), который может генерить линейно-изменяемую частоту от настраиваемого минимума fMIN до настраиваемого максимума fMAX, каждый из которых может лежать в диапазоне 0-1000 кГц, причём fMIN должно быть меньше fMAX. Кроме того, вобулятор вырабатывает импульс, передний фронт которого совпадает с началом свипирования, задний - с положением частотной метки внутри диапазона свипирования. Вместо таблицы треугольника можно поставить таблицу волны произвольной формы.

Больше ничего в тиню не помещается, осталось порядка 20-30 байт. В связи с вышесказанным, мне кажется, стоит подумать о второй тиньке с отдельным выходом, которая будет вырабатывать шим и в дальнейшем может стать основой ШД генератора импульсов.