st-one-io / node-red-contrib-opc-da

A Node-RED node to interact with OPC-DA servers.
Apache License 2.0
11 stars 8 forks source link

I can't include more than 170 tags #7

Open VictorStela opened 4 years ago

VictorStela commented 4 years ago

Hello,

I need help, i can't include more than 170 tags and when I separate into two groups the timing between the two groups fails.

Thanks.

steuck13 commented 4 years ago

Greetings, Thank you for your report. The 170 tags limit is a known 'issue' that we are still discussing. It was implemented this way to put an upper limit.

Now, what do you mean when you say "timing between the two groups fails"?

Ty for your report.

VictorStela commented 4 years ago

I need to collect data from 200 tags every 100 ms. The limit is 170 tags, so I thought of splitting into two groups of 100 tags.

When I create two groups with the 100 ms update rate, I see that one of the nodes is not online and I get this error:

Error: 1 at OPCSyncIO.read (C:\Users\br94604.node-red\node_modules\node-opc-da\src\opcSyncIO.js:98:19) at process._tickCallback (internal/process/next_tick.js:68:7)d Capturar

steuck13 commented 4 years ago

Right.

I believe this is probably related to the amount of data vs. the update rate. It`s a known issue but since for most of our needs we never had a 100 ms update rate we didn not find the problem yet.

Would you mind telling me what kind of problem are you trying to solve that has this 100 ms update rate requirement?

Ty

VictorStela commented 4 years ago

I need collect an array of 10 samples every second to feed my prediction model, so I need 100 ms update rate.

Do you have any idea how I can do it?

Thanks.

steuck13 commented 4 years ago

Until I find a way to fix this I believe your best option would be to create separate servers for each group, this way I believe there would be no problem since no resource would be shared between groups.I suggest you give it a try. If that doesn't work, you could also create multiple groups with a smaller amount of tags, each one with a unique server.

We need to change the way we handle our connections when sending an receiving packets and this will take a long time to implement. I put this issue on my schedule and as soon as I fix it I'll update the node and the lib.

VictorStela commented 4 years ago

Good idea, looks like it worked well.

I created three separate servers with 100 ms each and had no more troubles for now.

Any news I tell you.

Thanks @steuck13.

VictorStela commented 4 years ago

Now I have three servers and three separate groups, but when one group breaks (OPC server stops communicating with the field device), the other two break too.

steuck13 commented 4 years ago

How many tags on each group?I believe the same problem is still there, just taking longer to show up. Is it the same error message?

I'm really sorry for this problem our code is creating for you --'. We really didn't anticipate having an application with update rates that much smaller than 1000 ms .

VictorStela commented 4 years ago

It's about 80 tags on each group. It's other error message, but now all devices are online and I can't print the error. Whens this happen I send for you.

Don't worry. Thanks to your efforts, we now have more than one library available for industrial devices on Node-RED.

For now, I will work in this way, if you fix any problem, just let me know to apply either.