【发布时间】:2009-12-03 12:40:33
【问题描述】:
我正在尝试设置一个系统来自动执行我家中的某些任务。
我正在考虑一种解决方案,其中服务器端应用程序将能够通过网络向Arduino(附加Arduino Ethernet Shield)发送/接收命令/数据。
在这里,Arduino 既可以充当服务器应用程序的传感器接口,也可以充当服务器应用程序的命令执行器接口。
例如(用户故事):
我家的顶置水箱有一个与 Arduino 相连的水位传感器(与 Arduino Ethernet Shield 相连)。
另一个 Arduino(与 Arduino Ethernet Shield 相连)与继电器/锁存器相连。然后将此继电器/锁存器连接到水泵。
现在网络上的服务器端应用程序能够从水箱上的 Arduino 获取/接收水位信息。
根据收到的水位信息,Web 应用程序应在水泵上向 Arduino 发送合适的信号/命令,以打开或关闭水泵。
现在,为了让这样的系统能够在网络上运行,我正在考虑按照我的优先级顺序使用其中一种解决方案:
使用XMPP 在服务器应用程序和Arduino 之间进行通信。
使用 HTTP 轮询。
使用 HTTP 挂起 GET。
对于 1 号解决方案,我需要实现一个驻留在 Arduino 上的 XMPP 客户端。
是否可以编写一个小到足以驻留在 Arduino 上的 XMPP 客户端?
如果是,我需要为 Arduino 编写的最低限度的 XMPP 客户端功能是什么,以便它能够联系 XMPP 服务器解决方案,如 GTalk 等?
对于解决方案 2 和 3,我需要实施指导。
还有哪种解决方案具有成本效益且易于扩展?
【问题讨论】:
标签: http automation xmpp arduino google-talk