%& О системе - Arduino Mega Server %1 %2 %3

О СИСТЕМЕ

Что такое Arduino Mega Server?

Кратко

Arduino Mega Server это Arduino с «человеческим лицом». Это всё тот же микроконтроллер, который может выполнять любые нужные вам функции, но при этом он обладает встроенным интерфейсом, который не отличается от обычных (и привычных вам) сайтов или компьютерных программ. Для управления функциями вашего устройства вам больше ничего не нужно — весь функционал вы можете менять и настраивать прямо с веб-странички.

У AMS практически нет ограничений на современные веб-технологии и информацию из контроллера вы также можете выводить в очень красивом и привлекательном виде. Здесь всё ограничено только вашей фантазией.

Arduino Mega Server полностью самодостаточен, он может работать автономно и для доступа к нему вам понадобится только стандартный браузер. Проекты, созданные на AMS, могут быть абсолютно любыми: автономные и групповые узлы Умного Дома, управление теплицами и электроприборами, игрушки, обучающие наборы и т. д. и т. п.

И для построения всего этого вам кроме Arduino Mega Server-а и плат Arduino с датчиками больше ничего не понадобится.

Arduino Mega Server

Проект

Arduino Mega Server: 0.12

Arduino Serial Commander: 0.12

О проекте

Домашняя страница: majordomo.smartliving.ru/forum/

Почта: mega_server@mail.ru

2015, Alex HiLab

Лицензия: Свободное ПО без каких-либо ограничений, использование на свой страх и риск (права на сторонние библиотеки принадлежат их владельцам)

Среды разработки

Arduino: 1.6.5 r2

Processing: 1.5.1

Железо

Микроконтроллер: Arduino Mega 2560

Сетевая плата: Ethernet Shield W5100

SD карта: любая microSD карта

Периферия

Электро: самодельный модуль на 13 токовых и 1 канал напряжения

Температура: 1-Wire сеть датчиков DS18B20 в режиме «паразитного» питания

Датчики присутствия: стандартные (Arduino) PIR датчики

Контактные датчики: герконы с «подтяжкой» через резистор

Светодиодная лента: трёхцветная светодиодная лента с самодельным адаптером

Электронный ключ: самодельный аналог электронного реле

Возможности

О системе

  • Полноценный веб-интерфейс
    Полностью поддерживаются: HTML, CSS, JavaScript, Ajax, Processing, THREE.js и т. д.
  • Нет ограничений на размер файлов
    Файлы могут быть любого размера и в любых количествах. Графика, скрипты, логи, фотографии...
  • Хостинг на микроконтроллере
    На вашем микроконтроллере могут храниться и работать сотни сайтов (с известными ограничениями)
  • Ajax в обе стороны
    Мгновенное отображение состояния контроллера на веб-странице и мгновенное реагирование на установку чекбоксов или нажатие кнопок
  • Перепрошивка сервера на лету
    Просто посылаете файл, сервер обновляется и продолжает работу. Не нужно выключать контроллер и вытаскивать карту памяти
  • Адаптивный дизайн
    Странички сами подстраиваются под размер экрана вашего устройства
  • Самодокументирование
    Сайт вашего микроконтроллера может содержать подробнейшую интерактивную документацию по самому себе и своему окружению
  • Интеграция с MajorDoMo
    Если контроллер находит в сети сервер MajorDoMo, то передаёт ему часть «тяжёлых» функций

Подробности

Ограничения

  • Версия 0.x
    Только для энтузиастов-кодеров и без каких-либо гарантий. Для работы с проектом необходимы обширные знания современных технологий и большое желание разобраться во всём самому. Если вы «обычный» пользователь, то, возможно, вам стоит немного подождать пока проект не приобретёт более законченный вид

Актуальные задачи

Если у вас есть желание помочь проекту, то вы можете попробовать решить одну из актуальных задач, представленных ниже. Дополнительную информацию по задачам можно получить на форуме

  • Технология JSON
    Нужно рассмотреть вопрос о замене технологии передачи данных XML на технологию JSON
  • Arduino Serial Commander
    Применён «костыль», устраняющий проблему передачи файлов. Желательно разобраться с этой проблемой
  • Arduino Serial Commander
    Дописать работу с директориями и доработать бинарный режим передачи файлов
  • Библиотека ICMPPing
    Адаптация библиотеки ICMPPing под среду разработки Arduino 1.6.5 r2

Версии

Внесённые изменения, исправления и улучшения

Версия 0.12

  • Полностью «отвязанный» релиз. AMS больше не требуются «костыли», с этого момента одиночный режим становится основным
  • Скорость загрузки страниц увеличилась в 10 (!) раз и сервер перешёл в категорию «настоящих»
  • Переработан алгоритм работы с файлами. Скорость увеличилась примерно в 10 (!) раз
  • Переработан алгоритм выдачи файлов в сеть. Скорость увеличилась примерно в 14 (!) раз
  • Исправлена стандартная библиотека Arduino Ethernet (!)
  • Снижена задержка загрузки страниц примерно в 4 разa
  • Введено некое подобие серверного языка программирования (макросы) для сборки страниц на стороне сервера. Теперь не нужно использовать никакие приёмы для дозагрузки частей страниц, сервер их выдаёт уже в готовом виде. Кроме того, эта технология позволяет манипулировать сборкой страниц в зависимости от различных параметров
  • Исключена технология HTML-Imports. Теперь страницы нормально отображаются во всех «приличных» браузерах
  • Введён переключатель режимов работы «одиночный» / «тандемный». Тандемный режим используется для «тяжёлых» функций и разработки. Переключение происходит одним кликом, прямо с веб-страницы
  • Добавлена возможность анализа и вывода ответов модулей Laurent
  • Переработан код модуля server_ajax
  • Разработка переведена на последнюю версию среды Arduino 1.6.5 r2, что позволило освободить дополнительно 1100 байт (!) оперативной памяти
  • Изменение стиля, дизайна и функциональности одним кликом. Был один сайт — стал другой
  • Брендирование. Стиль вашей компании или интернет-магазина одним кликом. Вы можете продавать не просто Ардуино-железо, но и готовые решения на его основе
  • В комплект поставки добавлено несколько тем оформления. Обратите внимание: вместе с темой меняется не только стилевое оформление, но и функциональность
  • Добавлена возможность сворачивания и разворачивания информационных панелей

Версия 0.11

  • Завершена концептуальная разработка движка
  • Исправлен баг с кодировками. Теперь сервер работает в нормальной кодировке utf-8 и нормально отображается во всех браузерах
  • Arduino Serial Commander переведён в бинарный режим передачи файлов
  • Изменён Serial вывод, что позволило освободить 10% оперативной памяти
  • Добавлены графики реального времени
  • Добавлены оригинальные многофункциональные индикаторы электроустройств
  • Добавлен модуль определения частоты напряжения питающей электросети. Теперь можно контролировать качество сети и заранее реагировать на сбои в электропитании
  • Добавлен модуль вывода формы сетевого напряжения и тока
  • Добавлен модуль сетевого (!) осциллографа. Теперь вы можете наблюдать и анализировать форму напряжения и тока на любом из 14 каналов удалённо и в режиме реального времени
  • Полностью переработан модуль Электро. Улучшена производительность и уменьшена занимаемая память
  • Добавлен модуль полноэкранной инфографики Красивые заставки в стиле минимализма на полный экран и только нужная вам информация
  • Добавлен индикатор свободной памяти в процентах
  • Исправлены мелкие ошибки и улучшена общая производительность

Версия 0.1 alpha

  • Стартовый выпуск
%4