jjaas / frl

Automatically exported from code.google.com/p/frl
0 stars 1 forks source link

Compatibility with Win7 ? / Problems with OPC Client #13

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Hey, i`m testing fatrat library on a Win7 (VS2012 Express) environment. 

There are no problems to get some values with a OPC Client on the machine 
holding the "fatrat"-powered application. 

I`ve some troubles to get values from a "remote" OPC Client (other machine). 
The "access denied" failure comes up. After changing the DCOM settings the 
problems are still there.

Did you test the remote OPC-Client constellation ? (Application on server, OPC 
Client on other machine)
Are there a chance to get this running  (server and client on Win7) ?

Thanks.

Chris

Original issue reported on code.google.com by christia...@gmail.com on 7 Jan 2014 at 5:40

GoogleCodeExporter commented 9 years ago
Sorry, i forgot it:

using frl_8.12_r167.exe on Win7 SP1 (x86) and Boost 1.55 / compiled with VS2012 
Express

Original comment by christia...@gmail.com on 7 Jan 2014 at 5:45

GoogleCodeExporter commented 9 years ago
Hi, i have a question, because i see that you know how to do this about which 
function i must use to read/write data from client to server?

Original comment by dethero...@gmail.com on 17 Oct 2014 at 8:23

GoogleCodeExporter commented 9 years ago
@detheroc54 For this purpose your client must implement IOPCSyncIO or 
IOPCAsyncIO2 interfaces

Original comment by serg.bab...@gmail.com on 17 Oct 2014 at 8:50

GoogleCodeExporter commented 9 years ago
im using OPC server from this library so i have branches and leafs. With Your 
client example i connect to server and i want to read with IOPCSyncIO, but i 
dont know how to implement. I try but only error appears on my screen. Could 
you please show me a little example??

Original comment by dethero...@gmail.com on 17 Oct 2014 at 1:31

GoogleCodeExporter commented 9 years ago
My client example? Hmm... but I did not implement client code in this library. 
It is OPC server and nothing more. Try to use any free OPC clients 
(http://www.opcconnect.com/freecli.php), for example - Matrikon OPC Explorer 
(very good tool, in my experience). Or try to connect via SCADA with supporting 
of OPC DA. Unfortunately I'll hardly be able to help you, because I wrote this 
code more than 5 years ago and since then I wasn't developed OPC servers.

Original comment by serg.bab...@gmail.com on 17 Oct 2014 at 8:39

GoogleCodeExporter commented 9 years ago

i have a few question, because i dont understand something. Maybe You can help 
me:

   On server site i think that I only need to do is give parameter about server like clsid, description, version and create branches and leafs, am I wrong? I dont know either if branch means group and leaf item?

    If i want to get from PLC data for example 10 000 Real and 10 000 Bool values, that means i must create 10 000 leafs for real and 10 000 leafs for bool?

Original comment by dethero...@gmail.com on 21 Oct 2014 at 3:12

GoogleCodeExporter commented 9 years ago
1. In general, all right. Minimal code looks like
https://github.com/gmist/frl/blob/master/test/opc_server/main.cpp

2. Yes, it is. Something like

frl:String bool_name = FRL_STR("bool_");
frl:String real_name = FRL_STR("real_");

// create leafs
for( frl::UInt i = 0; i < 10000; i++)
{
  frl:String i_ = lexicalCast<int, frl::String>(i);
  frl:String b_name = bool_name + i_;
  opcAddressSpace::getInstance(). addLeaf(b_name);
  b_tag = opc::opcAddressSpace::getInstance().getLeaf(b_name);
  b_tag->setCanonicalDataType(VT_BOOL);
  b_tag->write(true);

  frl:String r_name = real_name + i_;
  opcAddressSpace::getInstance(). addLeaf(r_name);
  r_tag = opc::opcAddressSpace::getInstance().getLeaf(r_name);
  r_tag->setCanonicalDataType(VT_R4);
  r_tag->write(0.1);
}

Original comment by serg.bab...@gmail.com on 21 Oct 2014 at 9:52