Обсуждаем цифровые устройства...
Ответить

Простой цифровой осциллограф V2

Сб дек 16, 2017 00:35:31

Доброго времени суток, уважаемые Коты!
Рад поделиться с Вами, что руки дошли до моего, старого проекта, и я наконец-то доделал вторую версию цифрового осциллографа, с учетом всех Ваших пожеланий. Если кто-то забыл, что было в первой версии, вот ссылка.
Теперь к делу.
Вот фотки для затравки:
Изображение

Здесь краткое видео-описание.

Технические характеристики:

Количество каналов: 2 (A, B);
Полоса пропускания аналогового тракта: 130MHz.
Режимы работы: канал A, канал B, оба канала;
Входной импеданс: ~1—2МОм, 15пф;
Чувствительность: 1В, 8В, 60В, 400В (ампл.);
Усилитель входного сигнала (КУ): х1 — х10;
Максимальное входное напряжение: 400В (ампл.);
Переключение типа вх. сигнала: AC / DC;
Вертикальное разрешение: 8 бит;
Режимы запуска развертки: автоматический, ручной-однократный, ждущий;
Диапазоны развертки:
один канал: 0.1 мкс/дел, 1мкс, 10мкс, 100мкс, 1мс, 10мс, 100мс;
оба канала: 0.2 мкс/дел, 1мкс, 10мкс, 100мкс, 1мс, 10мс, 100мс;
Множитель периода развертки: х1 — х100:
Объем буфера выборок: 2508 байт;
Размер кадра: 250 выборок;
Источники синхронизации: канал A, канал B, внешний источник, внутренний тестовый генератор;
Технология синхронизации: аппаратная, по двум уровням опорного напряжения;
Виды синхронизации: спадающий/нарастающий фронт;
Регулировка уровней синхронизации:
основной:
-100% — +100% макс. амплитуды от 0;
предварительный: 0% — 20% макс. амплитуды от основного уровня;
Тестовый генератор: меандр: 62,5Гц — 10МГц, 1В;
Графический дисплей: цветной TFT (от телефона FLY IQ230), 262.14 тыс цветов, диагональ-3.2 дюйма, 320x240 точек, параллельный 16 битный интерфейс, контроллер- RM68090 (совместим с ILI9325 ).
Область осциллограммы: 240х250 точек.
Управление: 7 кнопок, 2 энкодера;
Разъемы: 2 ВЧ разъема (A,B), вход внешней синхронизации, выход тестового генератора, внешнее питание;
Источник питания внешний: 7,5…18В, 300 мА;
Источник питания внутренний: солевые/щелочные элементы ААА (6 шт.);

Дополнительно:

-Технология «Anti aliasing» - защита от искажения квантования вызванного стробоскопическим эффектом;
-Включение/выключение одной тактовой кнопкой;
-Звуковое сопровождение нажатий кнопок и достижения границ регулировок;
-Светодиодная индикация режимов делителей, режима AC / DC, режима сканирования, режима работы тестового генератора;
-Индикация уровня напряжения на источнике питания;
-Плавная регулировка уровня подсветки экрана;
-Настройка цвета отображения всех элементов экрана;
-Режим отображения с двумя маркерами. Которые можно двигать поворотом энкодера. Для удобства измерения временных интервалов и уровней сигналов;
-Сохранение всех настроек прибора при выключении.

Схема:


Краткое описание и устройство:

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

В осциллографе используется контроллер Atmega-64A, тактируемый генератором на 30МГц. Тк. тактовая частота почти в два раза превышает максимально заявленную по даташиту, в случае повторения конструкции, особое внимание следует обратить на выбор контроллера и его поставщика. Нет никакой гарантии, что самая дешевая Atmega-64A с АлиЭкспресса заработает а таких условиях. Как показала практика, вероятность приобретения годного контроллера на «Али» и в обычном радио-магазине 50%/50%. Это зависит от производственной партии. Контроллеры из одной партии либо все работают, либо все не работают. Так-же отмечу, что речь идет именно о 64 меге с индексом «А». Пробовал простую Atmega-64 (без«А») - не заработала.

АЦП построены на двух микросхемах AD9280. АЦП работают не постоянно, как в прошлой версии, а включаются только тогда, когда нужно, для энергосбережения.

ОУ в аналоговой части заменены на более скоростные, что отразилось на качестве отображения резких фронтов и достоверности измерения на высоких частотах.

Твердотельные реле PVT422 (переключают режим AC/DC), входные делители и переключатель источника синхронизации, на 74HC4052 управляются регистром защелкой 74HC595, посаженным на шину SPI. Кроме того, по SPI управляется цифровой потенциометр MCP42010, отвечающий за коэффициенты усиления ОУ обоих каналов, а так-же ведется опрос блока клавиатуры и энкодеров. Но об этом позже.

Для отлова уровня синхронизации используется внутренний компаратор контроллера, а внутренний АЦП используется для измерения уровня напряжения на батарейке и напряжения питания схемы для расчетов.

Схема по прежнему запитана от импульсного преобразователя MC34063, а вот инвертор, для получения отрицательного напряжения питания аналоговой части, заменен на более мощный ADM8660.

Разъем ISP служит для подключения программатора и заливки прошивки в контроллер. Но особенностью этого контроллера является то, что пины используемые для прошивки, в рабочем режиме являются входом и выходом модуля UART. Благодаря этому на разъеме, в рабочем режиме, присутствуют сигналы RX и TX стандартного последовательного интерфейса. А это означает, что в случае необходимости, к разъему можно подключить дополнительный модуль с COM, USB, Bluetooth или Wi-Fi микросхемой и держать связь с компьютером по одному из этих интерфейсов. Естественно потребуется доделка программы под конкретный функционал.

Блоки управления и вывода информации на экран выполнены на отдельной плате стыкующейся с основной платой вторым этажом.

Дисплей от телефона может подключаться 16 битным или 8 битным параллельными и последовательным интерфейсами. Уровни всех сигналов и напряжение питания на дисплее должны быть не более 3.3 вольта. 8 битный и последовательный интерфейсы очень медленные и для нашей задачи не подходят. Поэтому использовал понижающий регулятор напряжения по питанию и схему из восьми битного буфера 74HC245 и регистра защелки 74HC573 для расширения восьми битной, пяти вольтовой шины видео данных основной платы. Еще один восьми битный буфер служит для согласования уровней дополнительных управляющих сигналов. Т.к. дисплей может работать в режиме автоматической развертки, такой подход оказался очень эффективным. Принцип работы расширителя шины с автоматической разверткой дисплея следующий: Для рисования линии одного цвета на дисплее достаточно выставить 16 бит кода цвета линии на шине данных и затем подать столько импульсов на вход WR дисплея, сколько точек должно быть в рисуемой линии. Перемещение позиции на следующую точку, при дергании за WR, происходит автоматически. Поэтому, контроллер сначала передает старший байт кода цвета через буфер и защелкивает его а регистре защелке, подключенному к старшим битам шины дисплея. Затем передает младший байт который остается на выходе буфера подключенному к младшим битам шины дисплея. Так мы заполняем и удерживаем все 16 бит цвета на шине. Затем контроллер, дергает несколько раз ногой подключенной к входу WR дисплея. Так на экране получается прямая линия требуемого цвета и нужной длинны. А поскольку, вся осциллограмма рисуется последовательно, вертикальными отрезками прямых линий разной длинны и цвета, вывод на экран получается достаточно быстрым.

Дисплей имеет линию RESET, которая используется всего один раз за весь сеанс работы. Буквально один раз дергается при инициализации дисплея. На это мне было жалко тратить целую одну ногу контроллера. Поэтому решил совместить RESET дисплея с регулировкой яркости дисплея на компараторе из ОУ LM358. Этот усилитель самый дешевый из тех, что удалось найти и двухканальный. Поэтому одна половина работает как компаратор, а вторая используется в схеме регулировки подсветки. От контроллера на схему идет ШИМ сигнал. При степени заполнения сигнала меньшей определенного значения срабатывает ресет, а все что больше регулирует яркость дисплея.

С опросом кнопок и энкодеров получилась вообще отдельная песня. Я много экспериментировал по этому поводу в своих прежних поделках. Как-бы подключить побольше кнопок и потратить на это поменьше ног контроллера. И вот, наконец придумал собственную схему опроса кнопок по SPI на дешевых десятичных счетчиках. В схеме использованы два счетчика HEF4017B (по 12 рублей в Чип-Дипе) , один буферный элемент с тремя состояниями за 4 руб., пара диодов Шоттки, транзистор, шепоть рассыпухи из резисторов, конденсаторов и диодав, ну и сами кнопки с энкодерами. В итоге получилось подключить 8 кнопок (включая кнопки в энкодерах) и 4 ноги энкодеров, итого 12 линий по пяти проводам(кнопка включения/выключения не участвует). Три из эти проводов-интерфейс SPI который используется в множестве подключенных блоков, и поэтому считай — халява. Итого 12 сигналов по ДВУМ! проводам за 50 рублей, без программных наворотов и дорогих потрохов контроллера. Неплохо, правда?
И это еще не все. Один из этих двух проводов — сигнал прерывания, по нему контроллер узнает, что что-то там нажали или повернули, и сам, как таковой в опросе не участвует. Плюс схемы еще в том, что можно подключить неограниченное кол-во сигналов без задействования дополнительных ног контроллера. Добавляются только счетчики и рассыпуха. Как все это безобразие работает, здесь я описывать не буду. Это тема отдельной статьи. И так, уже много букв настрочил.

В общем пора заканчивать этот текст.

Добавлю, что корпус и ручки энкодеров напечатал на 3D принтере. Лицевая панель напечатана на бумаге и заламинирована, прилеплена на скотч.
Как обычно, скажу, что конструкция не идеальна, некоторые схемные решения — спорны, профессионалы, пусть покритикуют.

ps:
добавил печатные платы, схему и прошивку.
Вложения
TFTOscilloscope.rar
Схема в sPlan
Платы в Sprint-Layout
Прошивка (hex)
(381.12 KiB) Скачиваний: 912
Последний раз редактировалось Mishultz Сб дек 16, 2017 09:01:10, всего редактировалось 2 раз(а).

Re: Простой цифровой осциллограф V2

Сб дек 16, 2017 02:59:23

Видео не доступно

Re: Простой цифровой осциллограф V2

Сб дек 16, 2017 07:57:09

Видео не доступно

Вроде поправил. Попробуйте еще.

Re: Простой цифровой осциллограф V2

Сб дек 16, 2017 14:45:13

Сколько времени заняло изготовление и в какую сумму обошелся осциллограф?

Re: Простой цифровой осциллограф V2

Сб дек 16, 2017 17:58:36

А я и спрашивать не буду, просто похвалю = МОЛОДЕЦ! Побольше бы таких ...с руками и головой!

Re: Простой цифровой осциллограф V2

Сб дек 16, 2017 18:20:17

похвалю = МОЛОДЕЦ! Побольше бы таких ...с руками и головой!

присоединяюсь! :)))
огромный обьем работы проведен и результат
рабочий девайс :)))

Re: Простой цифровой осциллограф V2

Сб дек 16, 2017 19:26:52

Автору большой "+" как и ранее говорил (в теме по первому варианту этого прибора) это Хамелион 2, надеюсь прибор будет также популярен. Хотелось бы повторить и самым главным из этого вопрос плат и комплектации.

Re: Простой цифровой осциллограф V2

Сб дек 16, 2017 20:29:08

Сколько времени заняло изготовление и в какую сумму обошелся осциллограф?


Очень сложно все оценить. У меня получилась общая стоимость компонентов около 2000руб. Но это очень условная цифра, т.к. часть деталей бралась поштучно в наших магазинах, а часть в Китае мелкими партиями по 5~10 штук. Время еще сложнее посчитать. БОльшая часть работы была сделана в первой версии. Ей я занимался почти весь прошлый год (2016) часов по 5 в неделю. До текущей версии доводил уже в этом году с большими перерывами. В общей сумме месяца 3 в таком же режиме.

Re: Простой цифровой осциллограф V2

Сб дек 16, 2017 21:43:26

Посмотрел видео по указанной ссылке и приложенные эл. схемы. Два вопроса по конструкции...
1) Вопрос по питанию от шести батареек типа ААА общим напряжением 9В - у вас сделан преобразователь напряжения на MC34063 (+5В) и ADM8660(-5В), а не проще ли было сделать питание от литиевой батареи с зарядкой на модуле например TP4056 или других подобных + преобразователь напряжения на + и -5 в? По габаритам(по толщине) прибор бы стал более тонким.
2)Кнопки управления прибором очень близко расположены друг около друга (неудобно нажимать), для этого надо перенести светодиоды индикации "скан" и "тест" вверх, а расстояние между этими кнопками управления увеличить.

Re: Простой цифровой осциллограф V2

Сб дек 16, 2017 22:47:36

1)
2)


1) Честно говоря, с питанием особо не заморачивался, не до того было. И модули эти для аккумуляторов на 3.7 вольта. Надо переделывать преобразователь на повышающий режим. И что за преобразователь на + и -5в? Я просто таких пока не встречал, приведите марку, интересно посмотреть.

2) Кнопки действительно близко друг к другу получились. Поэтому и не стал в этот раз делать для них "шляпки", а сделал, чтобы они немного выступали над корпусом и нажимались через бумажную наклейку. так удобнее. Вообще так получилось, что сначала была сделана основная плата и при таком раскладе мешает разъем "signals". Было в лом вообще все переделывать:)

Вообще - "первый блин всегда немного комом". Если этот проект будет дальше развиваться, эти моменты учтутся. Таких моментов, на самом деле еще много. Многое можно было бы усовершенствовать и сделать по другому. Но замечается это только на каком-то готовом результате.

Re: Простой цифровой осциллограф V2

Вс дек 17, 2017 03:28:52

Нормально, цена получилась даже меньше, чем я ожидал.
Так что желающих повторить теперь будет сдерживать отсутствие готовых плат. А если еще и комплектация будет, да все это в доработанной версии... :solder:

Кстати, присоединюсь к поздравляющим: действительно, немного в нынешнее время найдется настойчивых в достижении неблизкой и непростой цели!
Молодец!

Re: Простой цифровой осциллограф V2

Вс дек 17, 2017 08:49:33

Очень достойная работа.
Единственное, что смущает, питание. В этом полностью поддерживаю BigallS, нужно переходить на литиевые аккумуляторы. К примеру мне нравятся элементы типа 18650, с достаточно большой ёмкостью и небольшими размерами в сравнении с жменькой пальчиковых батарей. В своих конструкциях контроль разряда и заряда частично возлагаю на МК, по принципу мобилок, так гораздо приятнее пользоваться устройством.
В остальном всё замечательно, желаю дальнейшего развития проекта и надеюсь увидеть в продаже набор для самостоятельной сборки.
Последний раз редактировалось VadimCrimea Вс дек 17, 2017 10:48:01, всего редактировалось 1 раз.

Re: Простой цифровой осциллограф V2

Вс дек 17, 2017 09:41:05

1) Честно говоря, с питанием особо не заморачивался, не до того было. И модули эти для аккумуляторов на 3.7 вольта. Надо переделывать преобразователь на повышающий режим. И что за преобразователь на + и -5в? Я просто таких пока не встречал, приведите марку, интересно посмотреть.

Я не имел ввиду конкретный DC\DC повышающий преобразователь с выходами +-5В.
Имеется ввиду применение литиевой батареи 3,7 В с зарядкой её от модуля TP4056 с применением повышающего преобразователя +5 В (на той же МС34063 или на другой МС с более высоким КПД например LTC3458). Но здесь вопрос доставаемости более эффективных преобразователей и соответственно их стоимости (большинство торговцев у нас продают их по конским ценам...)

Добавлено after 41 minute 45 seconds:
Ещё вопрос к автору по применению контроллера Atmega-64A тактируемого генератором на 30МГц... проверялось ли работа при стандартном 16 МГц кварце, а так же с установкой других в диапазоне от 16 до 30 Мгц?

Re: Простой цифровой осциллограф V2

Вс дек 17, 2017 10:25:21

Я сделал уже множество преобразователей на 4054 и 1450 , работают четко . Втыкаю везде теперь. Есть ещё недорогая микра FM6316, но она рассчитана для повербанков. Тоже проверена - работает.
Изображение
Изображение
Вложения
STC4054_NCP1450_9.07.17.rar
(11.87 KiB) Скачиваний: 284
Зарядка FM6316FE 22.10.17.rar
(386.35 KiB) Скачиваний: 248

Re: Простой цифровой осциллограф V2

Вс дек 17, 2017 14:39:50

проверялось ли работа при стандартном 16 МГц кварце?
Когда не заработал на 30MHz пришедший из Китая контроллер, включил в прошивке делитель частоты пополам. Т.е. стало 15MHz, заработало. Да и кудабы он делся? И все показатели частоты/времени уплыли тоже в 2 раза. До 16MHz включительно, все контроллеры будут работать, только 10MSPS не получим, максимум 5MSPS. Нужно ли это?

Можно делиться информацией о работающих контроллерах. Номерами партий или хотя-бы номером, что на верхней стороне микросхемы написан (насколько я понимаю, это год и неделя выпуска).
например, то что знаю:
1352 и 1637 - работают
1701 не работает

Re: Простой цифровой осциллограф V2

Вс дек 17, 2017 20:09:53

Когда не заработал на 30MHz пришедший из Китая контроллер, включил в прошивке делитель частоты пополам. Т.е. стало 15MHz, заработало. Да и кудабы он делся? И все показатели частоты/времени уплыли тоже в 2 раза. До 16MHz включительно, все контроллеры будут работать, только 10MSPS не получим, максимум 5MSPS. Нужно ли это? ...

Конечно нужно т.е. фактически при стандартной частоте в 16 МГц получаем 5MSPS на канал(будем довольствоваться и этим), если удастся поднять частоту до того предела при котором МК ещё работает стабильно (ну или до полных 30 Мгц) то просто меняем в прошивке делитель и получаем скажем так "бонус". Не всегда и у всех есть возможность покупать несколько МК и отбирать их по частоте, тем более можно купить и десяток а ни один из них не заработает на 30 Мгц.

Re: Простой цифровой осциллограф V2

Вс дек 17, 2017 21:14:42

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

Re: Простой цифровой осциллограф V2

Вс дек 17, 2017 22:00:56

... Тут еще есть одна засада, думаю, не все смогут достать такой дисплей. В общем надо подумать, что еще можно сделать, чтобы подготовить проект к тиражу.

Да на счёт дисплея согласен, но здесь можно попытаться сделать прошивки под разные дисплеи (если конечно возможно будет найти подходящие), возникает вопрос, а сколько сейчас во флеш занимает прошивка?
По дисплеям... очень часто использую дисплеи от сотовых купленные в магазинах Профи и GreenSpark (не сочтите за рекламу) да качество конечно хуже оригиналов, но вполне приемлемо.
Наиболее удобные в использовании от телефонов Nokia, Samsung. Например от Samsung S5230(265 руб + шлейф 70 руб), Nokia N95(8Гб) 170 руб. + коннектор ...

Re: Простой цифровой осциллограф V2

Пн дек 18, 2017 09:06:31

можно попытаться сделать прошивки под разные дисплеи (если конечно возможно будет найти подходящие), возникает вопрос, а сколько сейчас во флеш занимает прошивка?
Сам брал этот дисплей в Профи, но там их похоже мало осталось и не во всех городах. Тут дело даже не в прошивке. Контроллер дисплея ILI9325 самый распространенный и многие другие контроллеры совместимы с ним по системе команд и последовательности инициализации. Подходящих по протоколу дисплеев полно, вот, например да и в перечисленных магазинах можно найти. Другое дело, у них у всех разная распиновка на шлейфах. Придется под каждую модель дисплея делать свою плату. Флеша занято 85%, и можно еще освободить (не все еще оптимизировано и почищено). Еще несколько дисплейных контроллеров добавить не проблема. Там не так уж много надо, алгоритм работы у всех одинаковый, разными могут быть коды команд и последовательность инициализации. Можно даже попробовать сделать автоматическое распознавание контроллера дисплея.

Re: Простой цифровой осциллограф V2

Пн дек 18, 2017 21:35:39

[ Придется под каждую модель дисплея делать свою плату...


Можно не совсем плату, а переходник (для каждого используемого вида). Т.е. шлейф например 37 pin припаивается к небольшой плате на которой стоит разъём (допустим 44 pin).
Ответить