I use the Matrikon OPC Server.
Reading a values of all types from OPC server happens correctly, but I have problems when writing a values to OPC server.
1. When trying to write a value with NUMBER type (in ThingWorx) in the OPC tag, I receive following error message:
Error Setting Property, server response: error writing property URI: /Things/Test/Properties/long [code = 400, <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">General exception while processing Edge Thing Process request: Input string was not in a correct format.</string>]
This occurs for the following types of OPC tags:
2. When trying to write a value with DATETIME type (in ThingWorx) in the OPC tag with DATE type, occurs write zero value and I do not get the error message.
3. OPC tags with CHAR and BYTE types imports to ThingWorx as STRING and when trying to write a value with these types, I receive following error message:
Error Setting Property, server response: error writing property URI: /Things/Test/Properties/char [code = 400, <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">General exception while processing Edge Thing Process request: ***ERROR writing Edge Thing Property /edge thing = Test, property = char, error = 0x80020005</string>]
4. OPC tags with STRING and BOOLEAN types read/write correctly.
What could be the problem?
Would it be possible for you to upload the logs from the Edge to your company File Repository? You can access it from the
My Forumtab on your home page. Also, are you using an existing OPC system that has modeling in place, or are you simply experimenting with ThingWorx and trying different data types?
I uploaded two logs and configuration file from the directory where .NET Process Manager is installed.
The problem has been found when communicating with PowerFactory through Matrikon OPC Server on our test bench. Now I installed the MatrikonOPC Server for Simulation to determine what types of data we will be able to exchange.
I spoke with one of our developers who confirmed we definitely support Double, String, Boolean. In other cases, it depends on the type of OPC server you are using. If you have a particular type of tag (REAL, ULONG, etc.) you wish to use, we may be able to apply a fix to support it. However, we do not support tags of type array or object.
I also tested Kepware OPC Server with the same result.
We need the support data exchange (read/write) of the following types SHORT, LONG, USHORT, ULONG, REAL4, REAL8 and DATETIME (STRING and BOOLEAN is supported).
It is my understanding that Ryan contacted you about ThingWorx supporting the types you mentioned. I've logged this to our issue tracker for our developers to consider in future releases.