Я пытаюсь настроить систему для автоматизации определенных задач в моем доме.
Я имею в виду решение, в котором приложение на стороне сервера сможет отправлять / получать команды / данные на Arduino (подключенный с Arduino Ethernet Shield ) через Интернет.
Здесь Arduino может одновременно выступать в качестве сенсорного интерфейса для серверного приложения или интерфейса исполнителя команд для серверного приложения.
например. (пользовательская история):
В верхнем резервуаре для воды в моем доме установлен датчик уровня воды с Arduino (с Arduino Ethernet Shield).
Другой Arduino (подключен к Arduino Ethernet Shield) снабжен реле / защелкой. Затем это реле / фиксатор подключается к водяному насосу.
Теперь веб-приложение на стороне сервера может получать / получать информацию об уровне воды от Arduino в резервуаре для воды.
В зависимости от полученной информации об уровне воды, веб-приложение должно посылать Arduino соответствующие сигналы / команды на водяной насос, чтобы включить или выключить водяной насос.
Теперь, чтобы такая система работала через Интернет, я думаю об использовании одного из типов решений в порядке моего приоритета:
Использование XMPP для связи между серверным приложением и Arduino.
Использование HTTP-опроса.
Использование HTTP зависания GET.
Для решения № 1 мне нужно реализовать клиент XMPP, который будет находиться на Arduino.
Можно ли написать клиент XMPP, достаточно маленький для размещения на Arduino?
Если да, каковы минимально возможные функциональные возможности клиента XMPP, которые мне нужно написать для Arduino, чтобы он мог связываться с такими решениями XMPP-серверов, как GTalk и т. Д.
Для решений № 2 и 3 мне нужно руководство по внедрению.
Кроме того, какое решение будет экономически эффективным и легко расширяемым?