我正在尝试设置一个系统来自动完成我家中的某些任务。
我正在考虑一种解决方案,其中服务器端应用程序将能够通过Web向Arduino(附带Arduino Ethernet Shield)发送/接收命令/数据。
这里的Arduino既可以作为服务器应用程序的传感器接口,也可以作为服务器应用程序的命令执行器接口。
E.g。 (用户故事):
我家的高架水箱有一个水位传感器,上面装有Arduino(附Arduino以太网护罩)。
另一个Arduino(附带Arduino以太网屏蔽)附有继电器/闩锁。然后将该继电器/闩锁连接到水泵上。
现在,网络上的服务器端应用程序可以从水箱上的Arduino获取/接收水位信息。
根据收到的水位信息,网络应用程序应向水泵上的Arduino发送合适的信号/命令,以切换“开启”或关闭水泵。
现在要让这样的系统在网络上工作,我正在考虑按照我的优先顺序使用其中一种解决方案:
答案 0 :(得分:3)
你可以看看MQTT,它有一个arduino库,它是一个简单的发布者 - 订阅者消息代理。
答案 1 :(得分:1)
我认为我不会为了你想做的事而寻找任何一个。
只需在给定的时间间隔内将传感器数据输出Arduino,让另一方做智能操作。
此外,对于这些类型的项目,我一直在寻求避免以太网屏蔽并使用XBee或RFM12B。这些将指导您朝这个方向发展,但更重要的是,让更多的设备更容易进行遥测和控制。
如果在Arduino上运行了类似XMPP的内容,那么它将是一个真正被剥离的状态协议,通过更智能的服务器端进程代理。也就是说,它的工作量相似。尽管有可能,但是1 KB内存中的XMPP与应用程序代码一起听起来真的很痛苦。
答案 2 :(得分:1)
我们正在开发一个开源中继基础设施,以便通过Web访问Arduinos(以及任何其他支持TCP / IP套接字的设备)。然后,您的应用程序可以通过简单的REST API调用Arduinos。有关详情和实时演示,请参阅http://www.yaler.org/。
此致 tamberg
答案 3 :(得分:1)
正在开发一个项目,具有策略和数据记录器功能。 (xmpp上的sensors / any_data_source) http://middlewaresensing.wordpress.com/
答案 4 :(得分:1)
为什么不使用好的旧RS485到达传感器执行器? 只需发明一些简单的协议(地址,命令,数据)。如果你需要更复杂的东西,可以使用另一个人作为RS485 /以太网桥。
答案 5 :(得分:1)
开源项目
管理传感器和网络|记录传感器数据|图表|政策|历史/日期/传感器规则|短信/电子邮件/网址/ twitter / xmpp通知|事件记录|谷歌地图|还有更多
wiki at dev.hci.uma.pt/mediawiki/index.php
在middlewaresensing.wordpress.com上发表博客
您可以使用HTTP Post将发送数据发送到服务器,然后通过XMPP发布传感器数据。 HTTP Post(用于资源受限设备,例如arduino) 和sox_tools一个xmpp客户端,用于在此系统上通过xmpp发布
答案 6 :(得分:1)
有一个新的库,用于在Arduino(带以太网)上发出类似REST的HTTP请求和接收JSON响应,称为RESTduino。它可能是您的Arduino项目的有用的嵌入式HTTP接口。
http://jasongullickson.posterous.com/restduino-arduino-hacking-for-the-rest-of-us
答案 7 :(得分:0)
在查看所有可用选项后,我对任何选项都不满意。
目前,我正在努力为上面定义的问题提供自己的解决方案。
解决方案符合上面回复“Dustin”的评论。
一旦我在这里找到我的解决方案的第一个版本,就会发布项目URL。