我有一个 php 网络应用程序。
我想从模拟传感器收集数据以在网络应用程序上显示值(温度等)
我可以使用 SPI 或 IIC 模数转换器收集数据,但是从 ADC 获取数据并将其传递给 php 的最合理方法(软件)是什么?
我有一个 php 网络应用程序。
我想从模拟传感器收集数据以在网络应用程序上显示值(温度等)
我可以使用 SPI 或 IIC 模数转换器收集数据,但是从 ADC 获取数据并将其传递给 php 的最合理方法(软件)是什么?
HTTP 完全是关于并发访问 - 但 AD 转换器受限于特定设备 - 这意味着您需要某种互斥锁或排队机制(尽管排队对于基于 HTTP 的应用程序来说是个坏主意)来门控访问 - 但更好的解决方案将运行 cron 作业或守护程序来轮询设备并将结果发布到 Web 应用程序可以检索它们的数据库(同时)。
一种方法是编写一些 C/C++ 应用程序来读取您的 ADC 并将值返回给系统。之后,您的 PHP 可以使用函数http://php.net/manual/en/function.exec.php来运行您的应用程序并获取输出。
从 10 年开始做数据监控这不是我会做的方式,但我认为这是用 PHP 实现的简单方法!
您要选择您的模拟传感器和 ADC 吗?否则,有可以为您完成这两项工作的集成解决方案。一个例子是在这个论坛上。
一旦你有了那个构建块——监控环境数据并在串行连接上输出的东西——最合理的方法是编写一个守护进程,每隔几秒轮询一次设备,读取数据并将其记录在你的服务器上,也许使用RRDtool,它具有PHP 绑定。
然后,在您的 PHP 页面中,您可以简单地使用它rrd_lastupdate()
来获取当前数据,或者您可能想要构建一些更高级的东西,也使用存档数据。
否则,如果服务器和传感器不在附近,您可能希望使用像 Arduino 这样的平台来构建您自己的设备,其中包含传感器,可能是 ADC,一个以太网端口和使用 HTTP 的 C/C++ 代码(有相应的库) 并输出当前值。