Issue
When using OPC Server Assistant to expose custom tags for OPC; OpcTestClient shows and error 'ReadingIDUnknown'
Product Line
Power Monitoring Expert 7.2.x
Power Monitoring Expert 8.x
Power Monitoring Expert 9.0
Power Monitoring Expert 2020
Power Monitoring Expert 2021
Power Monitoring Expert 2022
Power Monitoring Expert 2023
Environment
Using OPC Server Assistant with Power Monitoring Expert Software
Cause
This will happen if you rename a device after you have exposed the custom tag. This happens because the OPC Server Assistant uses the System Name when writing information to IONServicesConfiguration.xml, but the OPC Server looks for the Display Name when exposing the data. Once a device has been renamed, the System Name and the Display Name are no longer the same, thus the problem.
Resolution
To workaround this, it is necessary to manually edit the IONServicesConfiguration.xml file. You will need to remove the entry for your custom tag so that is is the section under the correct device name, i.e. the Display Name. Be sure to make a copy of this file before doing the manual edit in case an error is made.
As an example, here is a snippet of an example of IONServicesConfiguration.xml. In this case, a device was renamed from test.floor7650 to test.floor7650_MSB. Notice how the custom entry, that is bolded, added by the OPC Server Assistant used the original device name, i.e. the System Name:
<?xml version="1.0"?>
<i:IONServicesConfiguration xmlns="http://rddl.xmlinside.net/PowerMeasurement/configuration/IONServices/MeasurementTemplates/1/" xmlns:i="http://rddl.xmlinside.net/PowerMeasurement/configuration/IONServices/1/">
<i:ION>
<i:Src label="test.floor7650_MSB" name="test.floor7650_MSB">
<i:MTR ref="Full"/>
</i:Src>
<i:Src label="test.floor7650" name="test.floor7650">
<M label="IN47 Result" name="IN47 Result"/>
</i:Src>
</i:ION>
To correct this, the snippet above would be changed to the custom tag entry (i.e. the Display Name):
<?xml version="1.0"?>
<i:IONServicesConfiguration xmlns="http://rddl.xmlinside.net/PowerMeasurement/configuration/IONServices/MeasurementTemplates/1/" xmlns:i="http://rddl.xmlinside.net/PowerMeasurement/configuration/IONServices/1/">
<i:ION>
<i:Src label="test.floor7650_MSB" name="test.floor7650_MSB">
<i:MTR ref="Full"/>
<M label="IN47 Result" name="IN47 Result"/>
</i:Src>
</i:ION>
NOTE: To run the OPC Test client you can refer to the following article: https://www.se.com/us/en/faqs/FA247061/