WEB-SERVER НА ARDUINO С АВТОРИЗАЦИЕЙ И ГРАФИЧЕСКИМ ПРЕДСТАВ-ЛЕНИЕМ ИНФОРМАЦИИ С ДАТЧИКОВ

Автор(и)

  • А.А. Мясищев (A.A. Myasischev)
  • Л.А. Комарова (L.О. Komarova)
  • Р.В. Грицкий (R.V. Gritsky)
  • К.В. Кулик (K.V. Kulik)

DOI:

https://doi.org/10.17721/2519-481X/2019/64-10

Ключові слова:

микроконтроллер, ENC28J60, W5100, W5500, Arduino Mega, Arduino UNO, ATmega2560, библиотека Dygraphs, AVR Studio, base64-encoded, basic authentication

Анотація

В работе на базе Arduino Mega и контроллера W5100 построен web-сервер для графического отображения данных удаленного клиента, полученных с датчиков температуры, давления, влажности. Программа сервера написана в среде разработки Arduino IDE. Откорректирована библиотека Ethernet для W5100, которая для Arduino IDE ver. 1.0.3, 1.0.5-r2 приводила к зависанию сервера. Показана возможность использования библиотеки Dygraphs для графической визуализации данных, полученных с помощью датчиков. Написаны скрипты для прорисовки графиков для спроектированного web-сервера. Проанализирована скорость передачи данных с web-сервера Arduino для различных сетевых контроллеров ENC28J60, W5100, W5500 для среды программирования Arduino IDE и библиотек UIPEthernet, Ethernet, Ethernet2. Показано, что с наименьшей скоростью данные передаются web-сервером с контроллером ENC28J60 - 3.3КБайт/с, с наибольшим контроллером W5500 - 23.4Кбайт/с. Отмечено, что эти сервера не поддерживают многопоточную работу. Поэтому они не могут быть использованы для создания миниатюрных универсальных web-серверов для обработки нескольких запросов одновременно. Рассмотренный в работе сервер может обслуживать только один запрос от одного удаленного клиента. Проанализированы скоростные параметры передачи данных для сервера на микроконтроллере ATmega328p(Arduino UNO) с контроллером сети ENC28J60. Программа сервера реализована на языке Си в среде программирования AVR Studio. Отмечена высокая скорость передачи данных - 140КБайт/с и возможность многопоточной работы. Установлено, что при одновременной передачи трех файлов разным клиентам суммарная скорость передачи достигает 120-130КБайт/с, а для каждого клиента 40-50КБайт/с. Показано, что использование такого сервера для решения задачи графического представления данных с датчиков затруднено вследствие сложности переноса программного обеспечения на другие микроконтроллеры и ограниченностью библиотеки для работы с картой microSD. Эксплуатация разработанного здесь сервера в течении трех лет показала высокую надежность его работы.

В работе рассмотрено создание web-сервера на Arduino, который имеет модернизированную HTTP basic authentication. Модернизация состоит в том, что для авторизации используется пароль из списка паролей, который выбирается пользователем на основании ключа, пересылаемого сервером. При каждом новом входе на сервер предыдущий пароль становиться недействительным. Представлен практический пример web-сервера на Arduino Mega, контроллерами Ethernet: enc28j60 и w5500.

##submission.downloads##

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

2019-12-05

Як цитувати

Мясищев (A.A. Myasischev) А., Комарова (L.О. Komarova) Л., Грицкий (R.V. Gritsky) Р., & Кулик (K.V. Kulik) К. (2019). WEB-SERVER НА ARDUINO С АВТОРИЗАЦИЕЙ И ГРАФИЧЕСКИМ ПРЕДСТАВ-ЛЕНИЕМ ИНФОРМАЦИИ С ДАТЧИКОВ. Збірник наукових праць Військового інституту Київського національного університету імені Тараса Шевченка, (64), 99–112. https://doi.org/10.17721/2519-481X/2019/64-10

Номер

Розділ

ІНФОРМАЦІЙНІ ТЕХНОЛОГІЇ