8 November 2019

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

Open sourceData visualizationDeveloping for Arduino
Всем привет.

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


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

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

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

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

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

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

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




Здесь:

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

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

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


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


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



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 мы должны увидеть подключенный МК:



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



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


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

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

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

Спасибо.
Tags:arduinoграфикмониторингвизуализация
Hubs: Open source Data visualization Developing for Arduino
+14
8.6k 70
Comments 3
Popular right now
Data Engineer
November 30, 202080,000 ₽OTUS
BIG DATA с нуля
December 22, 202019,700 ₽Нетология
Data Science
January 25, 202169,000 ₽SKILL BRANCH
Data Engineer 8.0
March 10, 202170,000 ₽New Professions Lab
Top of the last 24 hours