我正在使用 node-opcua 编写一个布尔值来设置重置标签。这是我的代码:
var nodesToWrite = new Array();
nodesToWrite.push({
nodeId: 'ns=2;s=Paint.PLC.Reset_Auto_Blocked_Time',
attributeId: opcua.AttributeIds.Value,
indexRange: null,
value: {
value: {
dataType: opcua.DataType.Boolean,
value: true
}
}
});
self.uaSession.write(nodesToWrite, function (err, statusCode, diagnosticInfo) {
if (!err) {
console.log(" write ok");
console.log(statusCode);
console.log(diagnosticInfo);
} else {
console.log(" write err = ", err);
}
})
它实际上并没有调用“err”,因为控制台记录了这一点:
[{ [Number: 2155085824
value: 2155085824,
description: 'The value supplied for the attribute is not of the same type as the attribute\'s value.',
name: 'BadTypeMidmatch' }]
[]
但是,这显然是一个错误,并且写入永远不会完成。该标签在 KEPServer 中设置为布尔值并且工作正常。我不知道为什么它说它是不匹配的。有什么帮助吗?