After many tries with Takebishi Melsec OPC server (for Mitsubishi PLC), I didn't succeed in retreiving data via the gateway service and opc.exe (server, gateway and opc are on the same computer).
I'm currently trying with MXOPC (still for Mitsubishi PLC) v6, the gateway process works fine, properties works (I see the data) but data reading don't works :
C:\OpenOPC\bin>opc -v -m open -h 10.10.60.25 -H 10.10.60.25 -s Mitsubishi.MXOPC.6 Dev01.Tag001 Dev01.Tag002 Dev01.Tag003 -p
properties: Le serveur a généré une exception.
C:\OpenOPC\bin>opc -m open -h 10.10.60.25 -H 10.10.60.25 -s Mitsubishi.MXOPC.6 Dev01.Tag001 Dev01.Tag002 Dev01.Tag003 -p
Dev01.Tag001 0 Item ID (virtual property) Dev01.Tag001
Dev01.Tag001 1 Item Canonical Data Type VT_UI2
Dev01.Tag001 2 Item Value 89
Dev01.Tag001 3 Item Quality Good
Dev01.Tag001 4 Item Timestamp 10/30/11 22:15:05
Dev01.Tag001 5 Item Access Rights Read/Write
Dev01.Tag001 6 Server Scan Rate 50.0000
Dev01.Tag001 7 Item EU Type 0
Dev01.Tag001 8 Item EU Info None
Dev01.Tag001 101 Item Description
Dev01.Tag001 6000 Bit access, Word 0, Bit 0 True
Dev01.Tag001 6001 Bit access, Word 0, Bit 1 False
Dev01.Tag001 6002 Bit access, Word 0, Bit 2 False
Dev01.Tag001 6003 Bit access, Word 0, Bit 3 True
Dev01.Tag001 6004 Bit access, Word 0, Bit 4 True
Dev01.Tag001 6005 Bit access, Word 0, Bit 5 False
Dev01.Tag001 6006 Bit access, Word 0, Bit 6 True
Dev01.Tag001 6007 Bit access, Word 0, Bit 7 False
Dev01.Tag001 6008 Bit access, Word 0, Bit 8 False
Dev01.Tag001 6009 Bit access, Word 0, Bit 9 False
Dev01.Tag001 6010 Bit access, Word 0, Bit 10 False
Dev01.Tag001 6011 Bit access, Word 0, Bit 11 False
Dev01.Tag001 6012 Bit access, Word 0, Bit 12 False
Dev01.Tag001 6013 Bit access, Word 0, Bit 13 False
Dev01.Tag001 6014 Bit access, Word 0, Bit 14 False
Dev01.Tag001 6015 Bit access, Word 0, Bit 15 False
Dev01.Tag002 0 Item ID (virtual property) Dev01.Tag002
Dev01.Tag002 1 Item Canonical Data Type VT_BOOL
Dev01.Tag002 2 Item Value True
Dev01.Tag002 3 Item Quality Good
Dev01.Tag002 4 Item Timestamp 10/30/11 22:15:05
Dev01.Tag002 5 Item Access Rights Read/Write
Dev01.Tag002 6 Server Scan Rate 50.0000
Dev01.Tag002 7 Item EU Type 0
Dev01.Tag002 8 Item EU Info None
Dev01.Tag002 101 Item Description
Dev01.Tag003 0 Item ID (virtual property) Dev01.Tag003
Dev01.Tag003 1 Item Canonical Data Type VT_BOOL
Dev01.Tag003 2 Item Value True
Dev01.Tag003 3 Item Quality Good
Dev01.Tag003 4 Item Timestamp 10/30/11 22:15:05
Dev01.Tag003 5 Item Access Rights Read/Write
Dev01.Tag003 6 Server Scan Rate 50.0000
Dev01.Tag003 7 Item EU Type 0
Dev01.Tag003 8 Item EU Info None
Dev01.Tag003 101 Item Description
C:\OpenOPC\bin>opc -m open -h 10.10.60.25 -H 10.10.60.25 -s Mitsubishi.MXOPC.6 Dev01.Tag001 Dev01.Tag002 Dev01.Tag003 -r
Dev01.Tag001 None Bad 01/01/'' 00:00:00
Dev01.Tag002 None Bad 01/01/'' 00:00:00
Dev01.Tag003 None Bad 01/01/'' 00:00:00
Read 3 of 3 items (0.19 seconds)
It works well with others OPC Client, I think it's a bug, but I'm not used to python…
Any idea ?
There are, potentially ,a few things going on here.
First off, you're using the opc.exe binary, which is more (in my opinion) for testing than actually running a routine. The library was intended to be accessed directly via custom built python programs that can adequately address all situations, handle errors, and so on and so forth.
Second, I have not heard of either of the OPC Servers you listed before. There is a short list of the most popular / widely used OPC Server dll's that are supported by Open OPC. Neither of the two you mentioned are on that list, so you may want to look into installing the GreyBox OPC Wrapper, and addressing via that dll.
--- If that fails, you can always just get KepWare OPC Server for Mitsubishi - which ABSOLUTELY DOES work with Open OPC. Kepware has been the "gold standard" for many years now (even though I'm personally not a fan of their topic-syntax).
Lastly, the read timeout is not set manually - which will likely default to something horrendously slow, nor is the read recycle (async refresh) set, which will bog the hell out of your connection. These items (I believe) can only be set when you directly address the library via python.
Concerning opc.exe, maybe you're right. My aim is to provide data to rrdtool for archieving, and before I would have been sure I can read the opc server. I'iil take a look at python.
Both OPC server I speak about are the ones furnished by Mitsubishi to deal with there PLC. Takebishi one was distributed in 2002 and MXOPC is up to date.
When I ask information about the server, that's what I get :
C:\OpenOPC\bin>opc -m open -h 10.10.60.25 -H 10.10.60.25 -s Mitsubishi.MXOPC.6 -i
Gateway Host dauphin:7766
Gateway Version 1.1.6
Client Name OpenOPC
OPC Host 10.10.60.25
OPC Server Mitsubishi.MXOPC.6
Version 6.0 (Build 0)
Start Time 10/31/11 12:23:03
Current Time 10/31/11 12:23:03
Vendor MITSUBISHI MXOPCServer
I assume the openopc is already using GreyBox, isn't it ? (I ran the open opc complete windows installer).
Buying another OPC server is out of concern today.
I see what you mean with timeouts… (I have to do something else, while waiting for the error essage !)
The message you're seeing indicates that OpenOPC is "trying" to use the GreyBox dll - but it does not necessarily mean that the dll is actually installed.
You can check if it's actually installed by doing a Windows search (make sure you click 'look in system folders' and 'look in hidden folders') for the following file name…
If that file is -NOT- present, then you will have to install the GreyBox package (which is freeware), available from here…
Once it's installed, you'll likely have to reboot in order for it to 'register' itself with Windows as the Automation Class of use.
Once you get that working, if you want a easy way to use Open OPC for logging all of your data into nice little MySQL databases, you can download mod_openopc, which is an implementation of Open OPC, from here…
Get the latest one, version 3-1-4 c
Windows (and Linux) friendly - requires Python 2.5 or better, Pyro, and some other stuff. Reading the MANUAL is absolutely required - front to back.
For the Graybox OPC dll, it seems to be gbda_aut.dll and not Interop.OPCAutomation.dll. It's actually installed on my computer.
Nevertheless, I tried once more Takebishi Melsec OPC server and understood why it does'nt work. The service wasn't properly installed, I try it on another computer and it works.
To get the service, the scada software and openopc server working with the same user, I used psexec, because I was'nt able to start the services on an user account without password (I need there's no password for the operators).
For the time, I will run with Takebishi and I will look at the MXOPC error later.
Log in to post a comment.
Sign up for the SourceForge newsletter:
You seem to have CSS turned off.
Please don't fill out this field.