恭喜,你发布的帖子
发布于 2016-10-31 10:19:00
22楼
600个变量全放到一个页面上显示,这个刷新都够卡的了。另外你数据排序了,那么操作员要不要知道哪个数据来自于哪个plc呢?如果只是显示排序后的数据,wincc定义600个内部变量如tag1~tag600,600个外部变量plc_tag1~plc_tag600
wincc全局脚本,周期5秒或者10秒,根据你的需要:
Dim group1,group2,mytag(600),mymax,i,j,tagname
Set group1 = HMIRuntime.Tags.CreateTagSet
Set group2 = HMIRuntime.Tags.CreateTagSet
group1.add"plc_tag1"
group1.add"plc_tag2"
.........
group1.add"plc_tag600"
group1.read
group2.add"tag1"
group2.add"tag2"
..............
group2.add"tag600"
mytag(0)=group1("pcl_tag1").value
mytag(1)=group1("pcl_tag2").value
............
mytag(599)=group1("pcl_tag600").value
for i=0 to 599'降序排列
for j=i to 599
if mytag(i)<mytag(j) then
mymax=mytag(j)
mytag(j)=mytag(i)
mytag(i)=mymax
end if
next
next
for i=0 to 599'赋值
tagname=tag&(i+1)
group2(tagmane).value=mytag(i)
next
group2.write
以上脚本纯手打,难免有误,自己调试。
wincc画面上做600个io域分别链接incc内部变量tag1~tag600.就这600个变量放到一个画面上都要累死wincc了。
请填写推广理由:
分享
只看
楼主