如何使用连接到工厂车间的 AWS IoT 构建 Web 应用程序?

物联网 aws-iot aws-greengrass
2021-06-07 06:14:51

我想使用 aws Iot 构建一个 Web 应用程序。我为不同的公司构建 SCADA 系统。

我有一个 modbus rtu 主站(raspi)连接到工厂车间的许多从站。Modbus 主站正在控制机械臂并监控其温度、位置、电机电流和电机扭矩。我浏览了许多视频和网站来实施 AWS IoT。

如何制作基于用户身份验证的 Web 应用程序,我的客户可以在其中登录 Web 应用程序并访问他们的机器人并控制和监视它们。我已经通过 MQTT 将我的东西与 AWS IoT 连接起来。我从未构建过网络应用程序。

2个回答

我创建了一个类似的应用程序。你的问题涵盖了很多方面。您已经让 AWS 和您的“东西”协同工作。下一项工作(可能是)决定您想通过网站公开什么。

有很多 Web 框架可供您使用,我喜欢 python django。我会在您的 AWS IoT 流与 Django 之间创建一个接口,可能是通过 AWS lambda 函数。或者,您可能会使用 AWS API 网关和 lambda 获得一些吸引力。

祝你好运。Stack Overflow 主站点上有大量 Web 开发帮助。

如果您计划将实时遥测发送到您的 Web 应用程序(比如仪表板),那么在您选择的框架中寻找 Web 套接字实现。例如,如果您打算在 .net 中制作应用程序,则它们具有用于 Web 套接字支持的信号器库。Web 开发的其余部分或多或少与任何其他数据库驱动的 Web 应用程序一致。

典型的流程是这样的,

设备 -> aws iot rest api -> 仪表板/数据库

1) 设备通过 rest api 将数据发送到您的 aws iot 平台。

2)然后数据应该使用网络套接字发送到您的仪表板,如果您愿意,应该将其存储在数据库中。

还有很多其他的点需要考虑,比如你应该根据你的应用程序的规模使用像rabbitmq这样的消息队列还是像redis等内存中的数据存储。

同样,如果您想实时控制您的设备,那么使用 http 可能不是一种选择,因为消息无法从 http 服务器发送到客户端,而是考虑 amqp/mqtt。

由于主题非常广泛,请随时询问您是否需要更多说明。