4.12 WEB интерфейс - pr200sd/presp32 GitHub Wiki

Общая информация

Все модификации плат, построенных на платформе presp32, имеют встроенный web интерфейс. Через web интерфейс пользователь может конфигурировать работу разных сервисов, доступных в конкретном программном обеспечении загруженном в контроллер. Особенность встроенного интерфейса в том, что его нельзя изменить без компиляции ПО. Для сценариев, когда необходимо оперативно добавить одну или несколько web страниц без изменения внутреннего программного обеспечения, добавлена возможность загружать в устройство "пользовательский web интерфейс"

Особенности использования

  • http страницы можно тестировать на плате без подключения программатора, достаточно загрузить на плату .bin файл по воздуху через механизм ОТА.
  • Максимальном количество файлов в пользовательском проекте равно 255
  • Для создания файла web интерфейса используется специальная программа-генератор
  • В отличии от прошивки, загрузка файлов web интерфейса не перезагружает встроенное ПО, после загрузки файла, http страницы сразу становятся доступными к отображению и взаимодействию с внутренними регистрами и переменными программы используемой в каждой конкретной прошивке.
  • После каждого обновления прошивки необходимо повторно загрузить скомпилированный файл web страниц
  • Файл FW(встроенное ПО) и файл пользовательского web интерфейса загружаются через одну вкладку ОТА, программа автоматически распознает тип файла и размещает его в нужную область памяти. После нажатия кнопки Update/WEB/Settings открывается диалоговое окно с информацией о типе выбранного файла и дальнейших действиях по его загрузке.

updatefw

updateweb

Доступ к WEB страницам

Если в прошивке поддержан режим WEB, и загружен скомпилированный файл web страниц, для перехода к необходимо ввести адрес в браузере:

http://IP/index.htm где: IP- полученный IP адрес index.htm-корневой файл пользовательского web. При вводе в браузере только IP адреса происходит переход на встроенный web интерфейс: http://IP/index.html

Разделение перехода на встроенную страницу и пользовательскую происходит через расширение: html-встроенный htm-пользовательский(загружаемый динамически).

В прошивках с января 2024 если поддержан внешний web server и загружен файл проекта, в меню появляется вкладка с быстрым переходом в корень web сервера. exesite

Структура файлов

Проект загружаемого WEB интерфейса содержит вложенные папки с разными файлами для запуска страниц:

  • -html, htm страницы
  • -js javascript файлы
  • -css стили
  • -jpg, jpeg, ico картинки и лого используемые на страницах
  • -xml вспомогательные файлы для обмена информацией между регистрами Modbus встроенного ПО и WEB.

Для защиты создаваемых web страниц паролем, необходимо поместить их в папку /protect В этом случае адрес для доступа к защищённой странице будет иметь формат:

http://IP/protect/xxxx.html(htm) где:

  • -xxxx.html и
  • -xxxx.htm соответствующие файлы в папке.

При открытии страниц из папки protect, происходит вызов формы ввода имени пользователя и пароля: Имя пользователя всегда "admin" Пароль - значение заданное для подключения в режиме точки доступа (1111111111-по умолчанию).

updateweb

Проект WEB содержит большое кол-во тестовых страниц с разными виджетами и библиотеками, в которых показаны примеры взаимодействия со встроенным FW через регистры Modbus и внутренние переменные.

При открытии корневого файла index.htm анализируется тип устройства с которого открывается файл. Этот механизм можно применить для перенаправления на мобильную версию сайта или десктопную. indexp.htm-десктопная версия desktop indexm.htm-мобильная версия mobile Эти корневые страницы содержат в себе вкладки или ссылки для быстрого перехода на другие демонстрационные страницы проекта.

Демонстрационный архив с файлами WEB сервера находится в папке WEBFiles.zip

Для компиляции проекта WEB сервера, быстрой загрузки файлов и прошивки встроенного FW используется программа-генератор Окно настроек программы WEB генератора flasher1

Подменю для загрузки FW через COM порт. flasher2

Таблица WEB переменных

Название Формат данных Описание Тип доступа
sys_heap uint32 объем свободной heap памяти R
sys_mactime uint64 время в us с момента старта/перезагрузки R
sys_time uint64 время в s с момента старта/перезагрузки R
sys_config uint32 конфигурация сервисов в FW R
sys_cid uint32 id идентификатор R
sys_sysver string "Ok", "Demo" R
cfg_tz int time zone R
sntp_time uint64 время ntp сервера в UNIX time R
lcd_cfg[0..9] uint32 конфигурация архивирования R
lcd_trn[0..9] uint32 конфигурация запросов Modbus Master R
mdb_trns uint16 кол-во конфигураций запросов Modbus Master R
mdb_trna uint16 кол-во регистров Modbus R
mdba string чтение/запись строки
mdbuw R/W
mdbsw R/W
mdbhw R/W
mdbxw R/W
mdbud R/W
mdbsd R/W
mdbhd R/W
mdbxd R/W
mdbfd R