График в браузере для Arduino и STM32

в 16:00, , рубрики: arduino, open source, визуализация, визуализация данных, график, Разработка под Arduino

Всем привет.

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


Вкратце расскажу что из себя представляет проект. Это система ПО под названием «SVisual».
Состоит из трех частей:

  • сервер «SVMonitor», он же онлайн-монитор;
  • клиент — библиотека либо скетч для передачи данных от МК;
  • и просмотрщик архива записей.

Система подробно описана в прошлой статье.

Сразу посмотрим ролик, что получилось:

Ориентировался на просмотр с телефона, поскольку на ПК удобнее будет пользоваться десктопным приложением.

Страничка написана на современном стеке (React + Redux, оформление Boostrap).
На старых планшетах и телефонах не пойдет.

Функциональная схема ПО.

График в браузере для Arduino и STM32 - 1

Здесь:

  • МК передает данные по COM-порту или Ethernet на сервер SVMonitor, он же является и http-сервером.
  • пользователь в браузере открывает страничку.

Страничка передается по http, позже сделаю https. Пока для защиты можете воспользоваться сторонним ПО, чем то типа stunnel, например.

Подробно не стал показывать внутреннюю кухню сервера, так как все описано в прошлой статье, и в мануале к ПО.

Пример использования для Arduino.

1. Запустим SVMonitor, и в настройках для Web сервера укажем IP адрес и порт.

График в браузере для Arduino и STM32 - 2

2. Заливаем такой скетч в МК:

#include <SVClient.h>

void setup() {

  bool ok = svisual::connectOfCOM("client");
}

int cnt = 0;
void loop() {

  svisual::addIntValue("dfv", cnt);

  ++cnt;
  if (cnt > 10) cnt = 0;

  bool odd_cnt = cnt % 2;

  svisual::addBoolValue("bFW", odd_cnt );

  svisual::addBoolValue("bBW", !odd_cnt );

  delay(200);
}

3. Далее, нужно перезагрузить SVMonitor и заново подключить МК.

4. Теперь в SVMonitor мы должны увидеть подключенный МК:

График в браузере для Arduino и STM32 - 3

5. Открываем браузер, в адресной строке вводим адрес указанный в настройках SVMonitor и видим следующую страничку:

График в браузере для Arduino и STM32 - 4

В этом ролике показаны все возможности работы с графиком в браузере

Для STM32 клиент здесь.

Вот и все в принципе.

ПО распространяется свободно, лицензия MIT.

Спасибо.

Автор: Tyiler

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js