Author Topic: OpcDaCom driver problems  (Read 2934 times)

kViertel

  • Newbie
  • *
  • Posts: 1
    • View Profile
OpcDaCom driver problems
« on: January 24, 2017, 05:11:06 AM »
Hi everyone

I'm currently working on an inherited proyect using an Eaton XC-152 PLC and a Eaton XP-533 series screen with Windows 7 Embedded. I already established communication between both using the CoDeSys OPC Server and I can read and write the different Tags in the PLC.
I configured the OpcDaCom driver using the localhost IP (opcda://localhost) and the Codesys OPC Server name (CoDeSys.OPC.02) and dragged a DigitalPanelMeter to watch a variable, just to test the communication and everything, but as soon as I launched the application I got the following error on the PanelMeter:

Quote
Unable to cast COM object of type 'System.__ComObject' to interfacae type 'OpcRcw.Comn.IOPCServerList2'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{9DD0B56C-AD9E-43EE-8305-487F3188BF7A}' failed due to the following error: No such interface supported (Exception from HRESULT: 0x80004002 (E_NOINTERFACE)).

I also tried everything in my laptop, where I do the programming, also with the OPC communication established and got the same error. On the Output screen in Visual Studio I got the following:

Quote
The thread 0x2164 has exited with code 0 (0x0).
'AdvancedHMI.vshost.exe' (CLR v4.0.30319: AdvancedHMI.vshost.exe): Loaded 'C:\Users\User\Desktop\AdvancedHMI\AdvancedHMI\bin\Debug\AdvancedHMI.exe'. Symbols loaded.
'AdvancedHMI.vshost.exe' (CLR v4.0.30319: AdvancedHMI.vshost.exe): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Runtime.Remoting\v4.0_4.0.0.0__b77a5c561934e089\System.Runtime.Remoting.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'AdvancedHMI.vshost.exe' (CLR v4.0.30319: AdvancedHMI.vshost.exe): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Configuration\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'AdvancedHMI.vshost.exe' (CLR v4.0.30319: AdvancedHMI.vshost.exe): Loaded 'C:\Users\User\Desktop\AdvancedHMI\AdvancedHMI\bin\Debug\MfgControl.AdvancedHMI.Drivers.dll'. Module was built without symbols.
'AdvancedHMI.vshost.exe' (CLR v4.0.30319: AdvancedHMI.vshost.exe): Loaded 'C:\Users\User\Desktop\AdvancedHMI\AdvancedHMI\bin\Debug\AdvancedHMIControls.dll'. Symbols loaded.
'AdvancedHMI.vshost.exe' (CLR v4.0.30319: AdvancedHMI.vshost.exe): Loaded 'C:\Users\User\Desktop\AdvancedHMI\AdvancedHMI\bin\Debug\MfgControl.AdvancedHMI.Controls.dll'. Module was built without symbols.
'AdvancedHMI.vshost.exe' (CLR v4.0.30319: AdvancedHMI.vshost.exe): Loaded 'C:\Users\User\Desktop\AdvancedHMI\AdvancedHMI\bin\Debug\AdvancedHMIDrivers.dll'. Symbols loaded.
'AdvancedHMI.vshost.exe' (CLR v4.0.30319: AdvancedHMI.vshost.exe): Loaded 'C:\Users\User\Desktop\AdvancedHMI\AdvancedHMI\bin\Debug\OpcNetApi.Com.dll'. Module was built without symbols.
'AdvancedHMI.vshost.exe' (CLR v4.0.30319: AdvancedHMI.vshost.exe): Loaded 'C:\Users\User\Desktop\AdvancedHMI\AdvancedHMI\bin\Debug\OpcNetApi.dll'. Module was built without symbols.
'AdvancedHMI.vshost.exe' (CLR v4.0.30319: AdvancedHMI.vshost.exe): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Accessibility\v4.0_4.0.0.0__b03f5f7f11d50a3a\Accessibility.dll'. Cannot find or open the PDB file.
'AdvancedHMI.vshost.exe' (CLR v4.0.30319: AdvancedHMI.vshost.exe): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.resources\v4.0_4.0.0.0_de_b77a5c561934e089\System.resources.dll'. Module was built without symbols.
'AdvancedHMI.vshost.exe' (CLR v4.0.30319: AdvancedHMI.vshost.exe): Loaded 'C:\Users\User\Desktop\AdvancedHMI\AdvancedHMI\bin\Debug\OpcComRcw.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
Exception thrown: 'System.InvalidCastException' in OpcNetApi.dll
Exception thrown: 'Opc.NotConnectedException' in OpcNetApi.dll
Exception thrown: 'System.NullReferenceException' in AdvancedHMIDrivers.dll
Exception thrown: 'Opc.NotConnectedException' in OpcNetApi.dll
Exception thrown: 'System.NullReferenceException' in AdvancedHMIDrivers.dll
Exception thrown: 'Opc.NotConnectedException' in OpcNetApi.dll
Exception thrown: 'System.NullReferenceException' in AdvancedHMIDrivers.dll
The thread 0x1c70 has exited with code 0 (0x0).
The program '[7228] AdvancedHMI.vshost.exe' has exited with code -1 (0xffffffff).

The application is set up to compile with a x86 target CPU as I found on the Forum but it still gives the same error. It also drew my attention all these 'Skipped loading symbols' and 'Cannot find or open PDB file' messages.

I also set on the dcomcnfg the permissions to OPCEnum and Codesys OPC Server to everyone, read and write, but it didn't change anything.

That's all I've done and now I'm out of ideas, if anyone could point anything that I'm doing wrong/missing or something that I should try, I would be very grateful.

Thanks in advance


Godra

  • Hero Member
  • *****
  • Posts: 1447
    • View Profile
Re: OpcDaCom driver problems
« Reply #1 on: January 24, 2017, 09:55:14 AM »
You should read as much as you can about OPC issues and troubleshooting steps in this forum.

Here is an example topic: https://www.advancedhmi.com/forum/index.php?PHPSESSID=5e2d1bc03394eb24842096e598e45502&topic=1415.0

Reply #18 has a link to check DCOM permissions
Reply #19 talks about OPCEnum not running
MatrikonOPC Explorer and Simulator can be used for troubleshooting...
« Last Edit: May 20, 2019, 01:29:33 AM by Godra »