Easyelectronics.ru

Электроника для всех
Текущее время: 16 июн 2019, 02:05

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/10pcs (Любой цвет!)
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 101 ]  На страницу Пред.  1, 2, 3, 4, 5  След.
Автор Сообщение
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 26 окт 2015, 06:14 
Старожил

Зарегистрирован: 30 авг 2010, 00:02
Сообщения: 926
VivalzarD писал(а):
sva_omsk писал(а):
У осцилла собственные шумы больше, чем шаг ступенек.

Конечно. Только у очень дорогих осциллографов разрядность АЦП внутри более 8 бит.


Зачем осциллографы обижаете -)).
Обычный Ригол посмотрел специально - клетка 2 мВ, ВЧ шум 0,4 мВ на разомкнутых щупах. Неравномерность ступенек прекрасно будет видно, шумит скорее схема, чем осцил, но можно фильтровать встроенным фильтром.
Да, всю пилу тяжело одновременно видеть, но линейка, слава богу не к счетчику на логике присоединена, а к контроллеру, можно программно выводить только интересующий участок пилы, можно смотреть по пременке.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 26 окт 2015, 11:38 
Старожил

Зарегистрирован: 02 дек 2010, 13:52
Сообщения: 4844
Откуда: п. Борок, Ярославская область
2 анкер
И поди посмотри весь динамический диапазон на предмет нелинейности. По кусочкам. Это вот 2мВ на клетку, а сколько этих клеток на экране? На моем осцилле их десять. И того имеем диапазон от низа до верха - всего 20мВ. А надо 2В например - так это 100 картинок надо проанализировать руками/глазами. Да можно конечно, но дюже поморочено это сделать грамотно и без ошибок. Да и это качественный анализ. А количественно как?

_________________
Ёж птица гордая, пока не пнешь - не полетит.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 26 окт 2015, 11:56 
Старожил

Зарегистрирован: 20 окт 2015, 18:14
Сообщения: 297
Конечно схема шумит, но даже среди тех шумов, что я видел при максимальном усилении осцилла видно, что ступеньки хоть и отличаются, но немного. Пусть будет 1-1.5 разряда. Для меня это приемлемо. Тем более что в новой версии платы будут использоваться резисторы 10 и 20 кОм, подобранные по сопротивлениям. Кроме того, программно будут уменьшены скорости нарастания фронтов на ногах МК, что должно сильно уменьшить выбросы на границах ступенек. Ну и конечно фильтрация сигнала. Тратить время на исследование ступенек, влияния на них нагрузки, температуры и всего остального больше не хочу. Иначе рискую навсегда забросить все это.
Решать проблемы надо по мере их поступления.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 26 окт 2015, 13:47 
Старожил

Зарегистрирован: 19 июн 2012, 14:17
Сообщения: 3440
sva_omsk писал(а):
в новой версии платы будут использоваться резисторы 10 и 20 кОм, подобранные по сопротивлениям

Лучше ставить резисторы одного номинала, например 20КОм. Там где надо 10КОм тогда два в параллель.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 26 окт 2015, 14:44 
Старожил

Зарегистрирован: 20 окт 2015, 18:14
Сообщения: 297
яверт писал(а):
Лучше ставить резисторы одного номинала, например 20КОм. Там где надо 10КОм тогда два в параллель.

Есть 2 причины, по которой так стоит делать: увеличение рассеиваемой мощности и сокращение перечня элементов. В остальных случаях такое решение больше неудобно, чем удобно: больше места на плате займет, больше монтажа, больше паразитной емкости и/или индуктивности. Кроме того, в других местах используются и 10 кОм и 20 кОм. Можно избавиться от одного номинала, но в данном случае смысла не вижу.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 26 окт 2015, 16:07 
Старожил

Зарегистрирован: 19 июн 2012, 14:17
Сообщения: 3440
Есть еще причины использовать в R2R ЦАПе резисторы одного номинала:
1. у них гарантированно одинаковый ТКС
2а. при выбраковке можно комбинировать резисторы с отклонениями номинала
2б. без выбраковки, чисто статистически, пара будет точнее одного резистора

По неудобствам - при ручном монтаже и не сильно мелком корпусе я паяю пару в два этажа на одну площадку.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 26 окт 2015, 16:35 
Старожил

Зарегистрирован: 20 окт 2015, 18:14
Сообщения: 297
яверт писал(а):
1. у них гарантированно одинаковый ТКС
2а. при выбраковке можно комбинировать резисторы с отклонениями номинала
2б. без выбраковки, чисто статистически, пара будет точнее одного резистора

1. Согласен, но условия работы ЦАП тепличные, влияние температурных коэффициентов минимально.
2а. Согласен.
2б. Не факт.

Я не против комбинирования резисторов. Более того, я закладываю такие комбинации в некоторых других узлах. Просто считаю, что в ЦАПе это излишне.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 27 окт 2015, 01:02 
Старожил

Зарегистрирован: 02 дек 2010, 13:52
Сообщения: 4844
Откуда: п. Борок, Ярославская область
Слегка не в тему, но все же про ТКС :-)

В параллельном ЦАП все резюки сидят на одной весьма маленькой подложке, которая (в виду своих размеров) греется равномерно. А вот резюки на плате - совсем другое дело :-) Генеришь к примеру сигнал малой амплитуды но с каким либо постоянным смещением, и получается, что часть резюков у тебя работает в режиме ON-OFF, а часть таки только в режиме ON (или OFF). Итог - прогрев не равномерный. Хотя токи там и малые (собсна и нагрев будет невелик), но и точность порой нужна большая.

Но это я так - тоску нагоняю. Есть такая поговорка: "Лучшее - враг хорошего". По этому делай [b]хорошо{/b]! Ибо нет предела совершенству, а затем и нефига к нему бездумно стремиться.

P.S. Вообще во всей этой технике есть туева хуча нюансов, которые желательно соблюдать. Но порой эти нюансы требуют наличие взаимоисключающих параграфов, и потому сделать вундервафлю со всеми такими фичами почти невозможно. Потому нуевонафиг...

_________________
Ёж птица гордая, пока не пнешь - не полетит.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 27 окт 2015, 02:16 
Старожил

Зарегистрирован: 30 авг 2010, 00:02
Сообщения: 926
VivalzarD писал(а):
P.S. Вообще во всей этой технике есть туева хуча нюансов, которые желательно соблюдать.

есть академический подход, он говорит, что выходы контроллера источниками напряжения не являются, следовательно нужна хитрая м/с буфера, где изготовитель гарантирует идентичность каналов, затем нужен интегральный ЦАП с резисторами на одной подложке и с лазерной подгонкой. Все другое будет обозвано "из говна и палок" почти справедливо.
Однако потратив некоторое время и учтя хучу нюансов, можно сделать то, что тебя устраивает и без экзотических элементов, тем болеев одном экземпляре.
ТС идет по второму пути и у него все получится. ))

Кстати, всесильный Протеус может смоделировать пилу с учетом заданных разбросов выходных напряжений выходов контроллера и сопротивлений резисторов?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 27 окт 2015, 11:13 
Старожил

Зарегистрирован: 20 окт 2015, 18:14
Сообщения: 297
анкер писал(а):
Кстати, всесильный Протеус может смоделировать пилу с учетом заданных разбросов выходных напряжений выходов контроллера и сопротивлений резисторов?

Можно собрать ЦАП, и к линиям подключать не МК, а генераторы прямоугольных импульсов с удваивающейся частотой от старших разрядов ЦАПа к младшим: 1, 2, 4, 8... кГц. Потом вручную выставить желаемые уровни сигналов на линиях, ну и сопротивлениям тоже вручную сделать разброс. Важно не забыть про скорости нарастания фронтов (они там по умолчанию 1 мкс) и задать например 10 нс.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 27 окт 2015, 11:18 
Старожил

Зарегистрирован: 20 окт 2015, 18:14
Сообщения: 297
Готова схема второй версии сигнальной платы (во вложении). Номиналы, не указанные на плате, надо либо рассчитать (как раз в сообществе появилась утилитка), либо подобрать. Расписывать работу узлов уже не буду, но кой-какие пояснения сделаю.
1) После ЦАП, номиналы резисторов которого были увеличены, стоит делитель, который приводит выходной сигнал к 2.5 В. Приводит грубо, его назначение лишь не допустить перенапряжения на последующих каскадах, питание которых ±2.5 В (точнее ±2.7 В). Тут же кондер, который надо подобрать для получения частоты среза 15-20 МГц. После ЦАП появился буфер.
2) Схема начального смещения и приведения сигнала теперь не содержит потенциометров. Будут подобраны резисторы, а для большей точности на плате предусмотрены места для их параллельного соединения.
3) Пользовательское смещение и усиление не изменилось. Больше тут нечего добавить.
4) Перестраиваемый фильтр изменился. Добавился еще один мультиплексор, переключающий конденсаторы. Это дает больше вариантов частот среза, но самое главное, можно сконфигурировать его как повторитель, то есть отключить фильтр. Кроме того, купил мультиплексоры ADG709, имеющие «удобное для тракта» питание ±2,5 В. А еще они дешевле 609-х.
5) Убран ФВЧ (ОУ использован как буфер после ЦАП).
6) Выходной каскад не изменился.
7) Подключение управляющих выводов к порту С возможно будет изменено. Посмотрим, как будет разводиться плата.
8) Не пожалел кондеров по питанию, теперь там не только 0.1 мкФ, но и 10 мкФ (танталы) везде, где это нужно по даташиту. Теперь все элементы не помещаются на верхнем слое платы.
9) BNC-разъемы будут на плате. Что-то мне не нравится затея тащить 1 МГц проводками к разъемам на передней панели.
10) Цифровая и аналоговая земля будет разделена. Вот тут бы совет не помешал. Стоит ли разделять? Где разделять? Как разделять? Пока планирую разделить в сигнальной плате через индуктивность.


Вложения:
DipTrace Schematic - signal_v2.pdf [96.32 Кб]
Скачиваний: 214
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 28 окт 2015, 14:02 
Старожил

Зарегистрирован: 20 окт 2015, 18:14
Сообщения: 297
Небольшие корректировки схемы.
1) Питание мультиплексоров ±2.7 В, а управление шло сразу с МК, питание которого 3.3 В. Для согласования уровней поставил последовательно резисторы 10 кОм. Этого достаточно, т.к. мультиплексоры содержат защитные диоды по управляющим входам с током до 30 мА. Подробнее о согласовании можно почитать тут.
2) Размышления, гуглинг и консультации со знающими людьми привели к тому, что разделять землю надо, разделять лучше на сигнальной плате с помощью ферритовой бусинки. С типом бусинки определился, даже есть таковая в магазине. Подробнее почитать о них можно тут. А здесь показан результат применения бусинки для корректировки фронтов импульсов (внизу страницы). Логично бы поставить их в линии ЦАП, но сопротивление они все-таки имеют (порядка 100-200 Ом на 20 МГц), что уже внесет существенную погрешность в резисторы ЦАП. Кроме того, уменьшение скорости нарастания фронтов приводит к подобному эффекту, бонус к этому – дополнительное сглаживание ступенек.
3) Была ошибка в наименовании ОУ U4. Конечно не AD8256, а AD8652.
4) Сменил цифровую землю на аналоговую в обвязке цифрового потенциометра. Вспомнил, что когда-то попадалась не то статья, не то пост, в котором говорилось, что выводы микросхем GND и GNDA определяют не подключение к соответствующим землям, а принадлежность внутренних модулей микросхемы. То есть, если микросхема работает в аналоговой части схемы, то обе земли необходимо подключать к GNDA.


Вложения:
DipTrace Schematic - signal_v2.1.pdf [97.7 Кб]
Скачиваний: 213
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 01 ноя 2015, 22:42 
Старожил

Зарегистрирован: 20 окт 2015, 18:14
Сообщения: 297
Развел плату питания под новые регуляторы и трансформатор. Схема очень простая. Из особенностей, появился разъем для вентилятора, который будет питаться со второй обмотки (для отрицательного напряжения). От первой питается вся цифровая часть и выходной каскад (положительное напряжение). Вентилятор присмотрел 24-вольтовый 40х40х20 , 9 В ему должно хватить, чтоб протягивать воздух в корпусе и при этом не напрягать шумом. ШИМ-управление не стал использовать, чтоб не создавать лишние шумы.

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


Вложения:
DipTrace Schematic - power_v2.pdf [60.11 Кб]
Скачиваний: 204
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 01 ноя 2015, 23:01 
Старожил

Зарегистрирован: 19 июн 2012, 14:17
Сообщения: 3440
sva_omsk писал(а):
Развел плату питания под новые регуляторы и трансформатор. Схема очень простая.

Можно один диодный мостик выкинуть.
Show


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 02 ноя 2015, 11:37 
Старожил

Зарегистрирован: 20 окт 2015, 18:14
Сообщения: 297
Да, я знаю. Большинство схем биполярных источников питания на трансформаторе именно так и сделаны. Два моста я поставил только для того, чтобы немного облегчить режим работы линейных регуляторов, тем более имеется запас таких мостиков (да они и стоят меньше 10 р). Может быть, такое решение и излишне, но регуляторы довольно горячие. Когда соберу новую плату питания, гляну на нее под полной нагрузкой через тепловизор.

Вопрос не по теме: а в чем картинка сделана?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 02 ноя 2015, 13:08 
Старожил

Зарегистрирован: 19 июн 2012, 14:17
Сообщения: 3440
sva_omsk писал(а):
Вопрос не по теме: а в чем картинка сделана?

Не знаю, нашел в гугл-картинки, что бы самому не рисовать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 04 ноя 2015, 22:42 
Старожил

Зарегистрирован: 20 окт 2015, 18:14
Сообщения: 297
Всех с праздником!
Подготовил, наконец, платы. Ошибок вроде нет.

Изображение

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

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


Вложения:
dds_v2.rar [92.84 Кб]
Скачиваний: 143
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 06 ноя 2015, 20:53 
Старожил

Зарегистрирован: 20 окт 2015, 18:14
Сообщения: 297
Небольшие доработки:
- катушка реле на сигнальной плате была подключена на аналоговую землю. Перекинул на цифровую.
- на схеме сигнальной платы не было обратного диода между Э и К транзистора у реле. Добавил (на плате он сразу был).
- добавил на плату питания схему контроля сетевого напряжения. Теперь при выключении будет сигнал, который можно завести на внешнее прерывание. Я надеюсь, запаса энергии в кондерах хватит хотя бы на 10-20 мс. Еще не решил, как буду сохранять параметры: либо при пропадании питания во флэш МК (пока кондеры не разрядились), либо при нажатии на кнопки в EEPROM по таймеру. Поэтому на всякий случай добавил на сигнальную плату АТ93С66. На интерфейсной нет свободных выводов.
- поставил защитные резисторы на выводы UART и SWD, выходящие на заднюю панель. С номиналом пока не определился. Думаю, 20-30 Ом, как на дискавери. Над полноценной развязкой не стал заморачиваться. Будет отдельный шлейф с разъемом для USB-UART переходника, исключающий возможность неправильного подключения.
- скорректировал схемы (были ошибки в части подключения периферии к МК и разъемам).


Вложения:
dds_v2.2.rar [97.89 Кб]
Скачиваний: 122
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 06 ноя 2015, 20:55 
Старожил

Зарегистрирован: 20 окт 2015, 18:14
Сообщения: 297
Схемы сигнальной и силовой плат


Вложения:
DipTrace Schematic - signal_v2.2.pdf [133.39 Кб]
Скачиваний: 329
DipTrace Schematic - power_v2.2.pdf [62.58 Кб]
Скачиваний: 204
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 17 ноя 2015, 12:25 
Старожил

Зарегистрирован: 20 окт 2015, 18:14
Сообщения: 297
Заказал платы. Была небольшая ошибка на сигнальной плате, разъем BNC оказался зеркальным, т.е. земляной вывод был не с той стороны от сигнального. Бывают же случайности, держал в руках разъем и вдруг пришла мысль проверить плату. Успел поправить. Законы Мёрфи в действии...

Прикинул номиналы резисторов и конденсаторов для перестраиваемого фильтра. Небольшие номиналы сопротивлений не противоречат даташиту. Есть как минимум 2-кратный запас по выходному току. Надо будет еще учесть емкость и сопротивление ключей мультиплексоров.


Вложения:
batt.png
batt.png [ 75.3 Кб | Просмотров: 6114 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 27 ноя 2015, 10:01 
Старожил

Зарегистрирован: 20 окт 2015, 18:14
Сообщения: 297
Описание графического интерфейса. 1 часть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 27 ноя 2015, 11:45 
Старожил

Зарегистрирован: 30 авг 2010, 00:02
Сообщения: 926
sva_omsk писал(а):

Завидую, кто может красиво оформлять схемы, документацию.

На видео в самом начале задаются параметры для синуса, я правильно понял?
Почему вместе с изменением частоты не меняется период?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 27 ноя 2015, 12:23 
Старожил

Зарегистрирован: 20 окт 2015, 18:14
Сообщения: 297
анкер писал(а):
Завидую, кто может красиво оформлять схемы, документацию.

На самом деле это несложно, зато самому потом приятно посмотреть)

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 27 ноя 2015, 13:13 
Старожил

Зарегистрирован: 30 авг 2010, 00:02
Сообщения: 926
sva_omsk писал(а):
Да, вначале на видео экран синуса. Период не меняется потому что не подключена сигнальная плата. Параметры будут с нее браться при обновлении полей. А софт сигнальной платы у меня еще в зачаточном состоянии.


Это такой подход? Задается частота, а период для этой частоты выводится как результат измерения выхода? Логичнее было бы из пункта установок связать эти два параметра жестко математически - выставляешь 1 мГц и тут же в окошке периода видишь 1 мкс.
Но хозяин - барин, конечно же. ))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создаем полноценный функциональный генератор
СообщениеДобавлено: 27 ноя 2015, 13:44 
Старожил

Зарегистрирован: 20 окт 2015, 18:14
Сообщения: 297
анкер писал(а):
Логичнее было бы из пункта установок связать эти два параметра жестко математически - выставляешь 1 мГц и тут же в окошке периода видишь 1 мкс.
Знаю, что логичней. Сложность в том, что не всегда на одной вкладке связанные поля. Поначалу я и пытался сделать "логично". Но текущий вариант мне показался более простым и наглядным в реализации, я просто обновляю второе поле путем запроса к сигнальной плате. И какое бы поле там ни было, оно обновится актуальной информацией. Когда полностью доделаю интерфейс (есть еще пара нерешенных пунктов), тогда буду думать про оптимизацию, в том числе и про связанные поля.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 101 ]  На страницу Пред.  1, 2, 3, 4, 5  След.

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB