Загрузка файлов на сервер

Система Arduino Mega Server спроектирована таким образом, что вы имеете возможность записывать файлы с контентом (веб-странички) и файлы с программным кодом (скрипты) прямо на работающий сервер, без остановки оного. Это очень удобно потому, что вам не нужно останавливать работу Arduino Mega Server для того, чтобы что-либо изменить в системе.

Возможность загрузки файлов на сервер «на лету» используется для разработки и для изменения контента (содержимого веб-страниц).

Arduino Serial Commander

Arduino Serial Commander

Загрузка файлов на работающий сервер осуществляется при помощи утилиты Arduino Serial Commander. Это скетч на Processing, поставляемый в составе дистрибутива AMS. Связь скетча с контроллером осуществляется по USB кабелю, соединяющему компьютер и Arduino.

После загрузки скетча вам нужно произвести в нём небольшую настройку, а именно, в коде нужно указать номер виртуального COM порта к которому подключён контроллер (это нужно сделать один раз).

Скетч Arduino Serial Commander

Работа с Arduino Serial Commander крайне проста. После запуска скетча вы просто выбираете нужный файл и нажимаете кнопку «Upload!» и через несколько секунд файл оказывается на microSD карте сервера и на все последующие обращения к этому файлу, сервер будет выдавать уже изменённый файл.

Примечание. Утилита Arduino Serial Commander находится в процессе разработки и имеет ряд ограничений на свою функциональность:

  • Загружаются только текстовые файлы (веб-страницы и скрипты), графические файлы пока не поддерживаются
  • При передаче файлов иногда происходят сбои (чем больше файл, тем больше вероятность сбоя)
  • Файлы больше 50 КБ могут передаваться с большими проблемами или не передаваться вообще

Тандемный режим

Система Arduino Mega Server может работать в двух режимах: одиночном (нормальном) и тандемном (в связке с сервером MajorDoMo). Тандемный режим используется, в основном, для разработки.

Что важно понимать. В одиночном режиме все файлы выдаются сервером со встроенной microSD карты памяти, а в тандемном — часть файлов выдаётся как обычно, с карты памяти, а часть — со стороннего сервера MajorDoMo. Это сделано для упрощения разработки, когда нужные файлы можно поместить на MajorDoMo и спокойно работать с ними (без необходимости постоянно загружать их на AMS после каждой правки).

Только в этом случае нужно не забывать в конце разработки перейти в одиночный режим и синхронизировать содержимое сервера MajorDoMo и microSD карты памяти. Это нужно сделать один раз в конце разработки и это можно сделать просто вынув карту памяти и записав на неё файлы обычным способом.


Обратите внимание. Система Arduino Mega Server непрерывно развивается и в код проекта постоянно вносятся изменения и улучшения, поэтому, описание и документация может не соответствовать вашей конкретной версии системы. Последняя правка этой страницы относится к 0.14 версии системы.