Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

西门子读取变量可以连续读取多个变量吗? #13

Open
StarBrighter opened this issue Jul 19, 2021 · 8 comments
Open

西门子读取变量可以连续读取多个变量吗? #13

StarBrighter opened this issue Jul 19, 2021 · 8 comments

Comments

@StarBrighter
Copy link

连续读取

@zhaopeiym
Copy link
Owner

image

@StarBrighter
Copy link
Author

我想的是从一个地址开始,按照顺序连续读取n个相同类型的变量;您上面那个批量读取,如果我想读取n个相同连续变量的话,我还需要把这些地址添加到批量表里才能读到

@zhaopeiym
Copy link
Owner

zhaopeiym commented Jul 19, 2021

SiemensClient client = new SiemensClient(SiemensVersion.S7_200Smart, "127.0.0.1",102);
client.ReadInt32("V400",5);
你试试,可能会有问题。

不建议用这种方式。一般的需求界面对数据的监控,应该不是连续的吧。

@StarBrighter
Copy link
Author

好的, 感谢 ! 我用过那个S7NetPlus这个库 连续读取的速度是比较快的

@zhaopeiym
Copy link
Owner

zhaopeiym commented Jul 19, 2021

请问,你们是什么需求会要求读取连续的地址呢?
读取不连续地址的需求应该更常见才对啊。

@StarBrighter
Copy link
Author

我前段时间做了个上位机程序,大概用到了上千个PLC变量,我进行了读取测试,如果每个变量都单独读取,我把上千个变量读完可能得花2秒钟甚至更多,但如果我将用到的bool类型、int类型等都整理出来,进行连续的读取,读完以后再根据对应索引进行分配,速度提高了非常多,也就200ms左右,你上面提到的批量读取我也进行了测试,速度没有连续读取的快,但也提高了非常多。当然这有个前提,就是PLC下位机程序必须保证变量地址连续。

@zhaopeiym
Copy link
Owner

你能做下测试吗,用批量读取和连续读取。同样的变量数量,性能差距有多少,是否在接受范围之内。

@StarBrighter
Copy link
Author

我过几天测试,这两天PLC没在

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants