来自 HTML/Javascript 网页的 Modbus TCP 通信

Modbus TCP communication from HTML/Javascript Webpage

我有一台使用 Modbus TCP 的设备。我想从中读取数据并将其显示在网页上(没有中间服务器)。

我找到了一个项目,其功能几乎与 Chrome 扩展完全相同:

https://github.com/Cloud-Automation/chrome-modbus

它在 javascript 代码中使用了这个:chrome.sockets.tcp

我希望我可以使用 WebSockets 在我的网页上做同样的事情。

似乎 websockets 可以在我的网页上工作(作为客户端),从设备(作为服务器)发送和接收信息。 websockets好像没有受到cors的影响。

有人指点我可以从哪里开始吗? (或者 javascript 图书馆会很棒)

这可能吗?

没有中间服务器是不可能的,除非你的 plc 支持不同于 modbus 的其他协议(例如 post/get)。

如果您的 plc 是 "completely closed" 而您只打开了这个 port/protocol,那么您需要一个中间服务器来将 modbus tcp 转换为 html。使用 node-red 以及仪表板和 modbus 流程,您可以实现它。

如果你用其他方法解决了,我想知道你是怎么做到的。

我确实在没有中间服务器的情况下解决了这个问题。我使用 Chrome 套接字 link 完成了它,我还使用智能手机的 cordova 应用程序使其工作。 Firefox 也有一个套接字 api,但没有尝试为该浏览器找出它。

我使用 vb 中的 PLC Connect 解决了这个问题,我使用 vb 在数据库中传递数据并通过 javascript 获取数据。