Оглавление:

Ардуино-осциллограф: почему это работает: 4 шага
Ардуино-осциллограф: почему это работает: 4 шага

Видео: Ардуино-осциллограф: почему это работает: 4 шага

Видео: Ардуино-осциллограф: почему это работает: 4 шага
Видео: Осциллограф на ардуино / Самодельный осциллограф / Осциллограф своими руками 2024, Ноябрь
Anonim
Image
Image

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

Я начал с исследования осциллографов Arduino, которые были хорошими и очень хорошими, но мне бы понравился более простой код, который легко изменить и понять. Пока я искал, я наткнулся на базу текущего кода на форумах arduino от 'vaupell'. Я начал изменять его, комментировать и очищать материал, чтобы сделать его более читабельным. Оригинальный код принадлежит Нориаки Мицунага.

Итак, давайте посмотрим, как настроить оборудование и программное обеспечение и как его использовать.

Я еще не начал писать объяснение кода в вики GitHub. Если у вас есть свободное время, осмотритесь.

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

Шаг 1. Изучение вашего оборудования

Знание своего оборудования
Знание своего оборудования

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

Поэтому в этом проекте я буду использовать Arduino Mega (2560).

Следующий компонент - дисплей. В этой настройке используется 2,5-дюймовый сенсорный экран Arduino TFT (идентификатор драйвера - 0x9341). Это дает возможность отображать на экране несколько каналов, которые можно отличить друг от друга.

Вот и все, что нужно сделать. Однако, возможности этого прицела очень ограничены, поэтому не доводите его до крайности. Некоторые конкретные вещи, о которых следует позаботиться:

АЦП Arduino не может очень хорошо справляться с напряжениями выше 5 вольт, а также с напряжениями ниже 0 вольт. Почему, потому что так задумано.

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

частота дискретизации очень низкая (для одного канала она может увеличиваться до 10kSps, но с двумя каналами она падает до 5kSps / канал). Это можно смягчить, установив опорную частоту АЦП (установив прескаляр) на более низкое значение. Однако здесь есть свои проблемы с плохим разрешением.

Также не забудьте компьютер для загрузки кода в Arduino.

Шаг 2: настройка

Настраивать
Настраивать
Настраивать
Настраивать

Настройка очень проста;

Прикрепите экран дисплея к Arduino Mega так, чтобы контакты питания на обеих платах совпадали.

подключите плату к компьютеру с помощью кабеля USB.

Откройте IDE arduino и добавьте библиотеку TFT-дисплея SPFD5408 (0x9341), если она еще не присутствует.

Теперь загрузите файл кода из github в Arduino.

GitHub - Осциллограф Arduino

Вот и все!. Вы можете повозиться с кодом, установив каналы 8 (ch0) и 15 (ch1) в положение ON или OFF в разделе настройки канала кода. Вы можете изменить переменную ставки на значение из массива ставок, чтобы установить время / разделение области. Вы можете установить тип триггера на автоматический или одиночный в разделе триггера кода.

На следующем шаге показан 3-осевой акселерометр ADXL335, который запитывается и считывается осциллографом Arduino, как показано в первом видео.

Шаг 3: Пример - ADXL335 Считывание показаний акселерометра

Пример - ADXL335 Считывание показаний акселерометра
Пример - ADXL335 Считывание показаний акселерометра
Пример - ADXL335 Считывание показаний акселерометра
Пример - ADXL335 Считывание показаний акселерометра
Пример - ADXL335 Считывание показаний акселерометра
Пример - ADXL335 Считывание показаний акселерометра

Подайте питание на модуль акселерометра от 5 В постоянного тока и заземления платы Arduino справа вверху и внизу. Теперь подключите вывод x-out модуля adxl335 к выводу A8 платы Arduino, как показано на рисунках. если ось x акселерометра направлена вниз, строка данных на экране осциллографа будет смещена от нуля, так как модуль adxl будет считывать ускорение из-за силы тяжести. попробуйте встряхнуть его в направлении x, как отмечено на доске adxl, на экране появятся шипы.

Чтобы узнать больше об области действия и ее функционировании, см. GitHub Wiki.

Шаг 4: внести свой вклад?

Если вы хотите внести свой вклад в вики-документацию, добро пожаловать. Осциллограф - фантастическое оборудование, и я считаю его хорошим инструментом STEM !.

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

Рекомендуемые: