I encountered a rather scary problem yesterday with a FactorySQL configuration that I’m moving from RSLinx OPC Server to KEPWare OPC Server.
When my project was running on RSLinx, someone had set up a bi-directional group in FactorySQL, and had defined all the integer items as “Integer (4)” even though I was collecting data from an AB SLC500, which only supports “Short (2)” integers. The project ran for about 3 months this way, without any issues. Apparently RSLinx automatically assumed I wanted short integers, and converted on-the-fly.
When I migrated my FactorySQL project onto a new machine, and began using KEPWare OPC Server, I made a startling discovery. For each integer, when FactorySQL wrote data down to the PLC, it actually wrote 4 bytes worth of information, instead of two. So when I specified N7:0 as my item I wanted to write, it wrote to both N7:0 and N7:1 !! I found the problem, and changed all my integers to “Short (2)” and the problem was resolved, but it took some time to figure out just what was going on.
You may want to put this in some help file or warning or something. Maybe it’s a KEPServer issue, I don’t know. What I do know, is it caused me a few hours worth of grief trying to figure out how my data was getting mangled.
-Dave McGlynn