QQ登录

只需一步,快速开始

威纶通触摸屏长时间延时功能如何实现?可以编写宏指令学习不

[ 复制链接 ]
准备用触摸屏和西门子S7 200的PLC做一个项目。需要有个延时时间,比较长,最长设定可为99小时59分59秒。
想问下高人,这个长时间延时,是在触摸屏里面用宏程序处理成秒发送给PLC计时好,还是在触摸屏中计时好?

回答:
威纶通触摸屏或是西门子PLC,硬件自身都可以实现长时间定时器功能。
可以根据自己需要与熟悉程度,选择使用。
在威纶通触摸屏里,有现成的排程元件可以使用。
可以设置在一周内指定时间段循环执行任务,时间内复位信号,时间到置位信号。
2019-11-25_102403.jpg

如果觉得功能不太合适,也可以通过宏指令自己实现。
这里我编写一个实例来实现功能。
界面如下:
2019-11-25_110616.jpg
设置计时时间,点击按钮后,开始计时,时间每隔一秒递减。
计时到位,停止计时,点亮指示灯。
按钮控制的是LB0,这样我们在宏编辑界面就可以设置LB0来开关宏的执行。
宏代码如下:
macro_command main()
short h,m,s
GetData(h, "Local HMI", LW, 0, 1)
GetData(m, "Local HMI", LW, 1, 1)
GetData(s, "Local HMI", LW, 2, 1)
if(h==0 and m==0 and s==0)then
return
end if
//
int nSeconds=0
nSeconds = h*3600+m*60+s
nSeconds=nSeconds-1
s = nSeconds%60
m = nSeconds/60%60
h = nSeconds/3600
SetData(h, "Local HMI", LW, 0, 1)
SetData(m, "Local HMI", LW, 1, 1)
SetData(s, "Local HMI", LW, 2, 1)
//
bool b=true
if(h==0 and m==0 and s==0)then
b=true
else
b=false
end if
SetData(b, "Local HMI", LB, 1, 1)
end macro_command

我们设置的宏的执行条件,这里要注意。
2019-11-25_111003.jpg
具体效果可能下载实例查看:
请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:威纶通触摸屏长时间延时功能如何实现?可以编写宏指令学习不.rar 
文件大小:335.15 KB  售价:3金币
下载权限: 不限 以上或 VIP会员   [购买捐助会员]   [充值积分]   有问题联系我


  

如果您认可,可联系功能定制!

  

如果您着急,充值会员可直接联系发您资料!

  

QQ联系我

微信扫扫联系我

  


回复

使用道具 举报

快速回复 返回列表 客服中心 搜索