I have yet to hear a good answer to this question so I’ll ask it again and give more examples. I’m an RsSQL convert. There were so many things wrong with that program, when I found FSQL I made the switch very quickly. But RsSQL had something that I really liked, and FSQL does not appear to have the same functionality.
In FSQL, if you put 50 tags in a group, FSQL asks the PLC for the values for those tags at the rate of the groups refresh rate. The way RsSQL does it is, if you set a transaction to be triggered off a tag, it only monitors that one tag for changes. If it changes, then it requests the PLC for the values for all the other tags. This is much nicer on the PLC. Right now I’m bogging down a SLC 5/05 with FactorySQL and I’m not really even looking at that many tags. There may be a more scientific approach to this test, but if I have RsLogix online, the picture of ladder code spins around veeeeerrrrryyyy slowly. If I stop all the group looking at this PLC, it starts spinning around like a jack rabbit. Yeah, I could do a little more looking with some diagnostic programs, but to me it seems pretty definitive that FSQL is killing this PLC. If we need to make any programming changes to this PLC, we have to open FSQL and stop all groups associated with it. This is less than convenient.
I’m using RsLinx as my OPC server. Should I be using a different one? Would that really make a difference? RsSQL never slowed down the communications like this. Are there any plans to include this kind of functionality in future versions?
I guess my big question is, how does FSQL communicate with the PLC? The answer I always get is it requests information from the OPC server. Ok, so how does the OPC server communicate with the PLC?