Помогите понять как отправить значение переменой на WEB SERVER на ARDUINО
- Войдите на сайт для отправки комментариев
Вс, 17/06/2018 - 17:07
Что я имею DHT11 + W5100 + Mega 2560
Все это работает на HTML + JavaScript + Arduino
Структурно, архитектура системы.
1. Код, работающий на стороне контроллера
2. Код, работающий на стороне браузерa.
Режимы работы системы
Контроллер без подключения браузера.
Это основной режим работы контроллера в котором он проводит 99% своего времени. Подключение браузера отсутствует, интерфейс не работает. Контроллер занимается своими прямыми обязанностями, т. е. обслуживает датчики и периферийные устройства. Также, в этом режиме контроллер осуществляет сетевые взаимодействия (принимает и отдаёт команды и информацию по сети).
Контроллер с подключённым браузером.
Пользователь открывает браузер и подключается к серверу AMS. В этот момент начинает работать интерфейс, который он видит на своём экране. Контроллер продолжает делать всё, что он делал без подключения интерфейса, плюс встроенный сервер начинает постоянный обмен данными с браузером. Обмен идёт непрерывно и в обе стороны — браузер посылает запросы, а контроллер отвечает на эти запросы требуемой информацией, которая отображается на экране пользователя.
Этот обмен запросами и ответами продолжается до тех пор, пока пользователь не закроет окно браузера. Как только он это сделает, контроллер переходит в свой обычный режим (без работы интерфейса).
Взаимодействие контроллерного и браузерного кода.
При открытии пользователем браузера и соединении с сайтом AMS, происходит загрузка веб-страницы и соответствующих JavaScript файлов с сервера, которые, в свою очередь, инициируют обмен данными и начинают посылать периодические (раз в 1–2 секунды) запросы контроллеру.
На стороне контроллера эти запросы парсятся (разбираются) и на них формируются соответствующие ответы, которые посылаются обратно браузеру. На стороне браузера, скриптами, из этих ответов извлекаются данные и динамически помещаются на веб-страницу. Это, вкратце, принцип организации интерфейса Arduino Mega Server.
Как конкретно это делается вы можете узнать, проанализировав код или из документации и руководств по Arduino Mega Server.
Файлы
Дистрибутив содержит папку arduino_mega_server в которой находятся файлы с расширением .ino. Главным из них является файл arduino_mega_server.ino, а остальные — это файлы т. н. модулей, которые содержат код системы.
arduino_mega_server.ino
Это главный файл, в котором находятся все основные настройки и определения системы, а также раздел инициализации setup() и бесконечный рабочий цикл loop().
Файлы модулей
Весь код системы Arduino Mega Server разделён на структурно-логические блоки, называемые модулями. Каждый модуль выполняет какую-либо одну, чётко выраженную функцию и находится в отдельном .ino файле.
Doc Файл документации
Generic Общие функции
Strings Функции работы со строками
Timers Работа с таймерами
SD Функции работы с microSD
RTC Функции работы с временем
Upload Загрузка файлов на сервер по Serial
Ethernet Поддержка работы с сетью
Send Посылка GET запросов
Ping Доступность сетевых устройств
Server Модуль сервера
Server Ajax Парсинг запросов и ответы сервера
Server Maker Сборка страниц
Server Commands Парсинг сетевых команд
Temperature Работа с температурными датчиками
Contacts Работа с контактными датчиками
PIR's Работа с PIR датчиками
Electro Работа с Power Monitor
Keys Работа с силовыми ключами
LED's Работа со светодиодными лентами
MajorDoMo Работа с системой MajorDoMo
Laurent Работа с модулями Laurent
nooLite Работа с оборудованием nooLite
А теперь самое главное как отправить значение температуры DHT11 на сервер в index.htm который в SD карте в W5100 которая на Mega 2560
Установка всего этого:
Скопировать библиотеки libraries в свой IDE 1.8.5.
Отрыть arduino_mega_server.ino с версией IDE 1.8.5 и прошить.
Все что в папке SD копировать на SD.