Миниатюрный осциллограф на микроконтроллере AVR XMEGA с OLED

Модератор: pinochet

Миниатюрный осциллограф на микроконтроллере AVR XMEGA с OLED

Непрочитанное сообщение admin » 20 фев 2016, 12:30

Миниатюрный осциллограф на микроконтроллере AVR XMEGA с OLED дисплеем.

Изображение

Проект Xprotolab, разработанный компанией Gabotronics, являющийся миниатюрным измерительным прибором с богатым набором функций и возможностей, построен на микроконтроллере компании Atmel семейства AVR XMEGA. Для визуализации данных, организации пользовательского интерфейса и меню управления используется графический OLED дисплей с разрешением 128×64 точки с широким углом обзора. Все электронные компоненты и органы управления размещаются на двухсторонней печатной плате, размеры которой не превышают 25.4 мм × 40.64 мм. Кроме того, проект может использоваться в качестве отладочной платы для микроконтроллеров семейства AVR XMEGA.



Отличительные особенности устройства:
основа устройства – микроконтроллер ATXMEGA32A4:
Flash-память программ - 32 КБайт;
SRAM - 4 КБайт;
EEPROM – 1КБайт;
режимы работы:
осциллограф смешанных сигналов;
генератор сигналов произвольной формы;
8-канальный логический анализатор;
анализатор спектра;
возможность одновременной работы генератора и осциллографа;
графический OLED дисплей, размер 0.96'', разрешение 128×64 точки;
PDI интерфейс для программирования и отладки;
управление с помощью 4-кнопочной клавиатуры;
USB коннектор для питания устройства (в дальнейшем программная реализация USB интерфейса).

Спецификация измерительного прибора:
осциллограф:
2 аналоговых канала;
8 цифровых каналов;
аналоговая полоса пропускания - 318 кГц;
максимальная скорость выборки - 2 Msps;
разрешение - 8 бит;
аналоговая синхронизация и внешняя цифровая синхронизация;
вертикальный и горизонтальный курсоры;
входное сопротивление – 1 МОм;
размер буфера для каждого канала – 256;
максимальное входное напряжение - ±10 В;
генератор сигналов произвольной формы:
1 аналоговый канал;
максимальная скорость конвертирования – 1 Msps;
аналоговая полоса пропускания – 66 кГц;
разрешение – 8 бит;
низкое выходное сопротивление;
размер буфера – 256;
максимальное выходное напряжение - ±2 В.

Принципиальная схема прибора

Изображение

Входные аналоговые каналы осциллографа, выходной канал генератора сигналов – выполнены на JFET операционном усилителе TL064 с низким потреблением. На таком же операционном усилителе выполнен источник опорного напряжения для встроенного аналого-цифрового преобразователя микроконтроллера.

Питание прибор получает от USB интерфейса, однако можно применить внешний источник напряжения 5 В, но следует быть внимательным и необходимо исключить возможность одновременного подключения внешнего источника и USB интерфейса. Напряжение питания микроконтроллера составляет 3.3 В, с этой целью установлен регулятор напряжения 3.3 В AP7333. Также, напряжение 3.3 В необходимо для питания контроллера дисплея.

Для питания операционных усилителей требуется двуполярный источник напряжения + 5 В и –5 В. Для получения отрицательного напряжения –5 В установлен интегральный DC/DC преобразователь TPS60403 (charge pump).

Графический OLED дисплей UG-2864HSWEG01 является монохромным и имеет встроенный контроллер SSD1306.

Источником тактовой частоты для микроконтроллера является внешний кварцевый резонатор 16 МГц.

Управление, навигация по меню, настройка параметров осуществляются с помощью клавиатуры K1-K4.

Для программирования (а также для отладки ПО) микроконтроллера используется 2-проводный интерфейс PDI. Данный интерфейс поддерживает высокоскоростное программирование всех пространств энергонезависимой памяти, в т.ч. Flash-память, EEPOM, Fuse-биты, Lock-биты и сигнатурный код пользователя. Программирование осуществляется путем доступа к контроллеру энергонезависимой памяти (NVM-контроллер) и выполнения NVM-контроллером команд.

Внешний вид печатной платы:

Изображение

Изображение

phpBB [video]



Для разработки программы использовалась интегрированная среда разработки AVR Studio 4 с Си компилятором WinAVR. Для программирования микроконтроллера потребуется программатор AVRISP2 или отладчик AVR JTAGICE mkII или AVR ONE.

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

Благодаря использованию прямого доступа к памяти (встроенный DMA контроллер) возможна одновременная работа нескольких приложений. Например, генератор сигнала после включения продолжает работать в фоновом режиме.

Внешний вид прибора и расположение органов управления, коннекторов для подачи внешнего питания, аналоговых и цифровых сигналов.

ИзображениеИзображение

Для управления прибором и настройки параметров используется 4-кнопочная клавиатура K1 – K4.

Устройство имеет несколько режимов, при которых осуществляется переход к заводскими установкам и калибровка. Вход в данные режимы осуществляется удержанием нажатой кнопки при подаче питания:
K1 – вход в режим тестирования. В этом режиме на дисплее отображается: данные с входных каналов, буфер генератора сигнала, нажимаемые кнопки;
K2 – восстановление заводских установок и стирание калибровочных данных;
K3 – вызов функции калибровки смещения;
K4 – вызов функции калибровки генератора сигналов.

Пользовательский интерфейс

Назначение кнопок:
K4 – «Меню», используется для перемещения по пунктам меню настроек прибора;
K1 – K3 – действия кнопок зависят от конкретного пункта меню.

Пункты меню управления прибором и настраиваемые параметры

Изображение

1. Меню по умолчанию:
K1 – Старт/стоп получения данных;
K2 – уменьшить частоту дискретизации;
K3 – увеличить частоту дискретизации;

12. Меню настройки дисплея
K1 – непрерывное обновление дисплея;
K2 – переключение линии/точки;
K3 – показать настройки осциллографа;

2. Меню настроек каналов
K1 – настройка 1 аналогового канала;
K2 – настройка 2 аналогового канала;
K3 – меню настроек цифровых (логических) каналов;

13. Меню настройки отображения
K1 – выбор типа сетки;
K2 – повернуть дисплей;
K3 – инвертировать дисплей;

3. Меню настройки внешней синхронизации
K1 – тип внешней синхронизации;
K2 – источник синхронизации;
K3 – без синхронизации;

14. Меню настройки генератора сигналов
K1 – синусоида;
K2 – прямоугольные импульсы;
K3 – треугольные импульсы;

4. Меню выбора режима работы
K1 – режим вольтметра;
K2 – режим XY;
K3 – режим осциллографа;

15. Дополнительное меню настройки аналоговых каналов
K1 – позиция канала;
K2 – инвертировать канал;
K3 – усредненные значения;

5. Меню настроек быстрого преобразования Фурье (FFT)
K1 – режим FFT;
K2 – выбор окна FFT;
K3 – логарифмический режим;
16. Дополнительное меню настройки цифровых каналов
K1 – изменить позицию канала;
K2 – инвертировать канал;
K3 – включить логический «0»;

6. Меню дополнительных настроек
K1 – меню установки и настройки курсоров;
K2 – меню настроек дисплея;
K3 – меню настроек генератора сигналов;

17. Меню выбора режима логического декодирования
K1 – параллельное декодирование;
K2 – последовательное декодирование;
K3 – декодирование по протоколу;

7. Меню настройки каналов
K1 – включение/выключение переключения каналов;
K2 – уменьшить усиление;
K3 – увеличить усиление;

18. Меню настройки уровня синхронизации
K1 – уровень синхронизации;
K2 – уменьшить уровень;
K3 – увеличить уровень;

8. Меню настройки цифровых каналов
K1 – включение/выключение переключения каналов;
K2 – выбор канала;
K3 – логическое декодирование;

19. Меню установки и настройки курсоров
K1 – вертикальный курсор;
K2 – горизонтальные курсоры 1 канала;
K3 – горизонтальные курсоры 2 канала;

9. Меню выбора типа внешней синхронизации
K1 – обычная синхронизация;
K2 – однократная синхронизация;
K3 – автоматический режим;

20. Настройка горизонтальных курсоров
K1 – выбрать курсор для перемещения;
K2 – переместить курсор влево;
K3 – переместить курсор вправо;

10. Меню выбора источника синхронизации
K1 – источник синхронизации канал 1;
K2 – источник синхронизации канал 2;
K3 – источник синхронизации цифровой вход;

21. Настройка вертикальных курсоров
K1 – выбрать курсор для перемещения;
K2 – переместить курсор вверх;
K3 – переместить курсор вниз;

11. Меню настройки окна FFT
K1 – оконная функция Hamming;
K2 – оконная функция Hann;
K3 – оконная функция косинуса;


22. Дополнительная настройка генератора сигналов
K1 – подстройка амплитуды;
K2 – подстройка частоты;
K3 – подстройка смещения;

23. Переход в режим заводских установок и калибровки (удержание соответствующих кнопок при включении питания)
K1 – вход в тестовый режим;
K2 – заводские установки;
K3 – вход в режим калибровки смещения;
K4 – вход в режим калибровки генератора сигналов.


Загрузки

Принципиальная схема (pdf) – скачать http://www.rlocman.ru/i/File/2011/01/06/1.pdf
Список компонентов (xls) – скачать http://www.gabotronics.com/download/xprotolab/xprotolab-bom.xls
Расположение элементов на печатной плате (pdf) - скачать http://www.rlocman.ru/i/File/2011/01/06/2.pdf

Исходный код программы микроконтроллера (демо-версия) – скачать http://www.rlocman.ru/i/File/2011/01/13/1.zip
Файл hex для прошивки микроконтроллера (полнофункциональная версия) – скачать http://www.rlocman.ru/i/File/2011/01/13/2.zip
Аватар пользователя
admin
Администратор
 
Сообщений: 701
Зарегистрирован: 20 фев 2016, 09:07

Миниатюрный осциллограф на микроконтроллере AVR XMEGA с OLED

Непрочитанное сообщение Willienams » 29 мар 2016, 23:24

Добрый день Нужен осциллограф и электронщик, для проверки балансировочного станка. Может кто поможет?
Аватар пользователя
Willienams
Новичок
 
Сообщений: 21
Зарегистрирован: 06 мар 2016, 12:54
Откуда: Россия

Re: Миниатюрный осциллограф на микроконтроллере AVR XMEGA с

Непрочитанное сообщение admin » 01 апр 2016, 19:35

Willienams писал(а):Добрый день Нужен осциллограф и электронщик, для проверки балансировочного станка. Может кто поможет?


Вы бы уточнили ваш регион и город.
Аватар пользователя
admin
Администратор
 
Сообщений: 701
Зарегистрирован: 20 фев 2016, 09:07


Вернуться в Электроника и электрика

Кто сейчас на форуме

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

cron