Оглавление:

Последовательный плоттер Adruino: 5 шагов (с изображениями)
Последовательный плоттер Adruino: 5 шагов (с изображениями)

Видео: Последовательный плоттер Adruino: 5 шагов (с изображениями)

Видео: Последовательный плоттер Adruino: 5 шагов (с изображениями)
Видео: Вертикальный плоттер на Ардуино! 2024, Ноябрь
Anonim
Последовательный плоттер Adruino
Последовательный плоттер Adruino
Последовательный плоттер Adruino
Последовательный плоттер Adruino
Изображение
Изображение

Функция Arduino Serial Plotter была добавлена в Arduino IDE, что позволяет вам графически отображать последовательные данные с вашего Arduino на ваш компьютер в реальном времени. Если вы устали видеть, как входные данные аналогового датчика Arduino перетекают на ваш экран, как матрица, это выглядит более красивым способом визуализировать происходящее. Последовательный плоттер - это автономный инструмент, позволяющий визуализировать данные и устранять неполадки в коде в автономном режиме без использования сторонних сервисов, таких как Processing или Plotly. Поскольку на веб-сайте Arduino нет официальной документации по использованию и функциональности последовательного плоттера, я решил задокументировать его использование и функции.

Функции

  • Построение кратного графа
  • Не в сети
  • График с автоматическим изменением размера
  • Поддерживает графики отрицательных значений
  • Автопрокрутка по оси X
  • Разные цвета для каждой переменной

Приложения

  • Автономная визуализация данных
  • Устранение неполадок кода
  • Анализ формы волны

Требуемые детали

Arduino - AliExpress или стартовый комплект Arduino - AliExpress

Шаг 1. Построение графика

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

Теперь, когда вы установили последнюю версию Arduino IDE (1.6.7 или выше), пришло время понять, как на самом деле работает Serial Plotter. Последовательный плоттер Arduino принимает входящие значения последовательных данных через USB-соединение и может отображать данные в виде графика по оси X / Y, помимо просмотра чисел, выводимых на последовательный монитор. Вертикальная ось Y автоматически настраивается по мере увеличения или уменьшения значения выходного сигнала, а ось X представляет собой фиксированную ось из 500 точек с каждым тиком оси, равным выполненной команде Serial.println (). Другими словами, график обновляется по оси X каждый раз, когда Serial.println () обновляется новым значением.

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

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

Множественные сюжеты

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

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

Для одновременного построения нескольких переменных или форм сигналов между двумя операторами печати печатается «пробел».

Serial.print (температура);

Serial.print (""); Serial.println (влажность);

ИЛИ

Serial.print (температура);

Serial.print ("\ t"); Serial.println (влажность);

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

Шаг 2. Визуализация данных в автономном режиме

Image
Image

Я использовал последовательный монитор Arduino в своей системе автоматического полива растений для визуализации и построения графика данных датчика влажности.

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

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

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

  1. Подключите пару датчиков к вашему Arduino
  2. Распечатайте значения датчиков и загрузите код.
  3. Откройте серийный плоттер.
Изображение
Изображение

Я использовал последовательный плоттер в своей метеостанции для твитов, чтобы визуализировать показания различных датчиков на метеостанции. Приведенные выше кривые показывают график показаний температуры (26 ° C) и влажности (относительная влажность 65%) датчика SL-HS-220.

Шаг 3. Устранение неполадок

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

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

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

Хорошим примером может служить устранение неполадок робота для предотвращения препятствий. В этом примере синяя форма волны представляет ультразвуковой датчик, а желтая и красная формы волны представляют левый и правый двигатели. По мере того, как расстояние между препятствием и роботом уменьшается, синяя форма волны уменьшается. При пороговом значении (минимальном расстоянии), равном 10, робот поворачивает вправо, поэтому два двигателя имеют разные значения: вправо = 50, влево = 100. Вы можете видеть, как красный сигнал уменьшается, а желтый сигнал остается постоянной скоростью, что соответствует правому повороту.

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

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

Шаг 4: Создание и анализ функций

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

Обладая базовым пониманием программирования и парой строк кода, Arduino может действовать как генератор функций. Arduino может генерировать сигналы квадратной, треугольной, синусоидальной и пилообразной формы. В предыдущих версиях Arduino IDE можно было только наблюдать значения типа сигнала, создаваемого в последовательном мониторе, без какой-либо визуализации. Анализ результатов исключительно на основе числовых значений может занять много времени; и здесь вам пригодится серийный плоттер; в визуализации производимых сигналов.

Изображение
Изображение
Изображение
Изображение
Изображение
Изображение
Функция Generator.ino
Функция Generator.ino

Функция Generator.ino

Шаг 5: Будущие улучшения и дополнения

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

IDE Arduino уже давно нуждается в добавлении последовательного плоттера. Он увеличил функциональность Arduino IDE, но по-прежнему не имеет некоторых функций:

  • Переключатель автопрокрутки
  • Одновременное использование последовательного плоттера и последовательного монитора.
  • Масштаб по оси X / Требуется шкала времени.

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

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