Опубликовано

Графопостроитель Serial Port Plotter

По материалам книги В. Яценкова «Здоровье, спорт и окружающая среда в проектах Arduino» (глава 5. «Визуализация данных»)

Здоровье

Программа Serial Port Plotter не требует установки. Исполняемый файл для операционных систем Windows и Linux можно скачать по адресу https://github.com/CieNTi/serial_port_plotter/releases. На момент подготовки книги была доступна версия 1.3.0 от 8 сентября 2018 г. Извлеките каталог с файлами из архива и сохраните в любом удобном месте. Автоматическая проверка обновлений в программе пока не предусмотрена, поэтому я рекомендую регулярно проверять наличие новых версий.

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

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

Загрузите в плату Arduino скетч из листинга 5.2 (это слегка доработанный скетч из листинга 5.1).

Листинг 5.2. Пример работы с графопостроителем Serial Port Plotter

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#define DEG_TO_RAD 0.01745329
void setup() {
Serial.begin(115200);
}
 
void loop() {
for (float angle = 0; angle < 360; angle++)
{
<strong>Serial.print("$");</strong>
Serial.print(angle/100);
Serial.print(" ");
Serial.print(sin(DEG_TO_RAD * angle)*10);
Serial.print(" ");
Serial.print(cos(DEG_TO_RAD * angle));
<strong>Serial.print(";");</strong>
delay(10);
}
}

Запустите программу. В меню PORT CONTROLS (слева от панели графопостроителя) выберите номер порта, к которому подключена плата и задайте скорость 115200. Нажмите кнопку с изображением треугольника ► в верхней строке меню, чтобы подключиться к порту и запустить отрисовку графика (рис. 5.2).

5-2

Рис. 5.2. Окно программы Serial Port Plotter (из-за ограничений типографской технологии рисунок дан в негативе)

Если линии графика не умещаются в панели, или, наоборот, график отображается слишком мелко, нажмите кнопку Autoscale Yaxis (автоматический масштаб по оси Y) — график будет автоматически отмасштабирован к размерам окна. Масштаб по оси X можно изменять вращением колесика мыши.

Если параметры сигнала известны заранее, или требуется ручная корректировка масштаба, воспользуйтесь панелью настройки PLOT CONTROLS.

Видимость линий графика можно выключать и включать двойным щелчком на имени канала в левой панели. Если вы забыли, какие каналы выключены, можно вернуть их все на экран нажатием кнопки Reset All Visible.

Под панелью графопостроителя расположено окно текстового терминала, в котором отображается поток входных данных. Терминал можно скрыть кнопкой Hide TextBox.

Легенда графика (подписи к линиям) расположена в правом верхнем углу. Подписи можно редактировать двойным щелчком на имени канала в легенде. Разрешено использовать символы кириллицы.

Все поступающие данные сохраняются в буфере до тех пор, пока хватает памяти компьютера. Благодаря этому? график можно «прокрутить» обратно, просто протаскивая мышью вправо. Это очень удобная опция для детального изучения графика в определенном интервале времени. Данные из буфера можно сохранить в CSV-файл, если нажать значок с изображением листа бумаги в верхнем меню.

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

Добавить комментарий