我的机器上运行着一个node-opcua服务器。我想从PLC读取数据。据我所知,OPC Server是用来对PLC进行读写的。
我已经按照说明从http://node-opcua.github.io/创建了服务器和客户端
那么,我的问题是如何从PLC读取信号?我是IoT和OPC的新手。请给我引路。
发布于 2018-05-14 21:16:15
不幸的是,您遗漏了拼图中的一大块。
是的,OPC服务器最常见的用途之一是允许OPC客户端与PLC通信。
但是,OPC并没有什么神奇之处可以做到这一点。这是因为特定的OPC服务器知道如何通过用于该PLC的本地协议与其声称支持的每种不同类型的PLC进行通信。这是一项繁重的工作,几乎每个PLC型号和品牌都是不同的,这就是为什么供应商可以要求他们的服务器的价格,而你找不到很多开源的替代品。
只是给自己编写一个随机的OPC服务器,然后运行它对你没有任何帮助。OPC服务器需要为连接的客户端提供某种有用的数据,并且知道如何获取这些数据。如果您正在对服务器进行编程,那么您需要知道如何获取它。
如果你想从PLC获取数据并使用OPC,你应该做的是购买或以其他方式获得一个OPC服务器,它知道如何与你感兴趣的PLC对话,然后为自己编写一个OPC客户端来与该服务器交互并获得所需的数据。
这是OPC在一开始解决的大问题:让供应商担心与PLC对话所需的无数复杂的、遗留的,有时甚至是未记录的协议。然后,需要这些数据的客户只需担心一个开放标准(OPC)。
发布于 2018-05-27 18:34:06
1)什么类型的PLC?
2)需要在节点实现通信协议。但是,更好的做法是考虑其他工具的实现。
3)利润
IMHO node-opcua更适合在node.js应用程序上发布内部参数。
发布于 2019-11-14 19:33:40
OPCUA服务器不用于从PLC读取数据。OPCUA服务器确实发布了OPCUA客户端可以访问的数据。
如果要使用OPCUA从PLC读取数据,您至少需要:
注:"OPC“和"OPCUA”有很大的区别。我说的是OPCUA,因为你提到了node-opcua库。
注2: Kevin Herron并不是完全错误的,但对我来说听起来有点误导。他提到的专用通信驱动程序不是OPC服务器的一部分。一些产品可能被标记为"OPC服务器,它与品牌x,y的PLC通信。“但这些产品不仅仅是一台OPC服务器。在这种情况下,OPC不用于连接到PLC。
https://stackoverflow.com/questions/50326808
复制相似问题