【问题标题】:Writing a Data to Matrikon OPC UA Server将数据写入 Matrikon OPC UA 服务器
【发布时间】:2018-12-01 16:36:49
【问题描述】:

我已将 matrikon flex ua sdk 服务器用于 opc ua 服务器,并通过 python 连接此服务器。我可以连接服务器并获取节点的值。但是当我想将值写入服务器中的变量时,它给了我

'DataValue 对象没有属性 set_value'

错误信息。

client_examples.py 脚本中,有一些示例可以像我一样将值写入服务器。请帮忙?

这是错误:

【问题讨论】:

    标签: opc opc-ua


    【解决方案1】:

    你需要做 node.set_value 而不是 myStoredVariable.set_value。

    【讨论】:

    • 当我尝试:myStoredVariable_node.set_value(ua.Variant([23], ua.VariantType.UInt32))myStoredVariable_node.set_value(2) 时,它给了我“BadTypeMismatch:为属性提供的值与属性值的类型不同。(BadTypeMismatch)” ,为什么?
    • 在 OPC UA 中,写入时类型必须精确匹配。我不知道你的变量的类型是什么。你需要匹配它们。例如,您可能需要 ua.VariantType.Int32 或 ua.VariantType.UInt16 或其他 - 取决于服务器配置。无论如何,这是一个不同的问题,应该在不同的 SO 问题下。最初你有一个编译错误;现在你实际上已经在写入服务器,只是服务器拒绝它并出错。
    • myStoredVariable_node.set_value(ua.Variant(23, ua.VariantType.UInt32)) 工作正常。谢谢。
    【解决方案2】:

    在服务器端你不能修改整个变量。有些变量只能是可读的。您可能尝试修改可读变量。

    尝试读取变量。你能正确阅读,也可以使用UAExpert软件。它是 OPC-UA 客户端。您可以访问整个变量,并且可以看到变量可读可写。

    【讨论】:

    • 嗨,我想在客户端读写。使用 python api ,我可以读取值,但不能写入。当我查看服务器端时,这个变量可读可写。
    猜你喜欢
    • 2019-06-21
    • 1970-01-01
    • 2017-03-06
    • 2021-04-01
    • 2017-06-14
    • 2016-11-26
    • 1970-01-01
    • 2021-07-26
    • 2020-03-08
    相关资源
    最近更新 更多