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

О СИСТЕМЕ

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

Кратко

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

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

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

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

Arduino Mega Server

Система

Arduino Mega Server for Due: 0.15

Arduino Serial Commander: 0.15

AMS nRF24 controller/sensor: 0.15

О проекте

Домашняя страница: hi-lab.ru/arduino-mega-server

Почта: info@hi-lab.ru

2016, Hi-Lab.ru

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

Оборудование

Микроконтроллер: Arduino Due

Сетевая плата: Ethernet Shield или Ethernet Shield 2

SD карта: microSD карта памяти

Часы (RTC): модуль DS3231 или DS1307

Беспроводная сеть: модуль nRF24L01

Управление nooLite: модули MT1132, MR1132

AMS nRF24 controller: Arduino Pro Mini + nRF24L01

Датчики

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

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

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

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

nooLite: беспроводные датчики nooLite

nRF24: беспроводные датчики на nRF24L01

Актуаторы

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

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

Управление оборудованием nooLite: силовые блоки nooLite

nRF24: любые устройства с беспроводным управлением на nRF24L01

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

Arduino: 1.6.5 r2

Processing: 1.5.1

Документация

Документация проекта: hi-lab.ru/arduino-mega-server/documentation

Возможности

О системе

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

Подробности

Ограничения

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

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

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

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

Версии

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

Версия 0.15

  • Добавлена поддержка беспроводного контроллера nooLite SD111-180 для управления светодиодными лентами
  • Добавлена поддержка модуля приёмника nooLite MR1132 и беспроводных датчиков температуры, влажности и движения nooLite PT112, PT111, PM111
  • Добавлена возможность авторизации и защиты входа в AMS парой логин/пароль
  • Добавлены функции работы с EEPROM и сохранение параметров в энергонезависимой памяти
  • Добавлена поддержка беспроводной технологии на основе модулей nRF24L01 (до 254 датчиков или контроллеров, асинхронная передача, подтверждение доставки и т. д.)
  • Добавлен код универсального контроллера/сенсора «AMS nRF24 controller» на основе Arduino Pro Mini и модуля nRF24L01
  • Исправлены замеченные ошибки и недоработки
  • Внесены изменения в интерфейс Arduino Mega Server
  • Добавлен модуль Hardware для работы с «железом» системы
  • Добавлена функция определения свободной памяти на Due

Версия 0.14

  • Добавлен сайт nooLite
  • Добавлено ядро управления приборами nooLite
  • Интегрирован управляющий модуль nooLite MT1132
  • Добавлен интерфейс «привязки», «отвязки» и управления приборами nooLite
  • Добавлен виджет управления димерами nooLite
  • Добавлен прибор «Паяльная станция»
  • Переработан код и устранены мелкие недочёты
  • Переработан вывод в Serial
  • Mодуль «PIR» адаптирован для работы с Due
  • Доработан модуль «Contacts»
  • Добавлен модуль «CD Info»
  • Добавлен модуль «CD Files» и возможность вывода на страницу списка файлов на SD карте
  • Добавлена возможность использования псевдонимов для главных страниц сайтов
  • Переработан футер сайтов
  • Исправлена ошибка в модуле «Server Commands»
  • Переработан модуль «MajorDoMo»
  • Добавлена возможность отключения модуля «MajorDoMo» и его сетевой активности
  • Добавлен модуль «Send HTTP Requests»
  • Добавлена технология вставки данных в генерируемые страницы
  • Введён макрос «% !» для вставки текущего IP адреса в генерируемые страницы
  • Адаптирован модуль «Температура» для работы с Due
  • Адаптирован модуль «Электро» для работы с Due
  • Доработан модуль «RTC»
  • Добавлена возможность автоматического выбора сетевого источника синхронизации времени MajorDoMo/Интернет
  • Добавлена возможность отключения синхронизации времени через сеть
  • Добавлена возможность менять IP адрес AMS в скетче. Теперь можно поменять IP адрес по умолчанию (192.168.1.36) и всё будет корректно работать в новой подсети
  • Добавлена индикация источника синхронизации времени (RTC, NET, NONE)
  • Изменено название папки системы на сервере MajorDoMo с «one» на «due»
  • Страница «Порты и подключения» адаптирована для Due

Версия 0.13 for Due

  • Разветвление разработки на 8-и битные системы (Mega) и 32-х битные (Due)
  • Данный релиз это тестовая переходная версия (многие системы ещё не работают и идёт адаптация)
  • Отключён модуль «Температура» из-за несовместимости с Due
  • Отключена функция Serialprint() из-за несовместимости с Due
  • Изменена структура директорий проекта. Теперь библиотеки помещаются в отдельные папки проектов
  • Изменена цветовая схема по умолчанию для ветки Due

Версия 0.13

  • Добавлена тёмная тема «Хакер дизайн»
  • Добавлены кнопки-плитки для управления освещением
  • Переработан модуль «Температура»
  • Введены элементы «живых» систем. У модуля «Температура» и у каждого температурного сенсора появилось «здоровье». Оно меняется в пределах от 100% до 0% и позволяет одним взглядом оценить состояние модуля и сенсоров
  • Переработан механизм инициализации модуля «Температура». Теперь при каждой загрузке показываются ID обнаруженных сенсоров
  • Включён модуль «Температура» и показания текущей температуры выведены в dash-панель
  • Теперь во всех темах показывается реальная температура
  • Добавлена поддержка модулей RTC
  • Добавлена возможность синхронизации времени через Arduino Serial Commander
  • Добавлен рекламный движок
  • Добавлены сайты-темы партнёров проекта
  • Добавлены страницы «Подсистемы» и «Сенсоры» с подробной информацией об элементах системы

Версия 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

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