登录
首页 PLC论坛 PLC论坛
回帖 发帖
正文

主题:S7-300如何在运行中改变定时器的时间设定?[求助]

点击:9668 回复:6

本人想在运行中改变S5定时器的时间设定,不知能否实现,怎样实现?
恳请赐教,不胜感激!
Email:zhangyonglin@sohu.com
05-12-20 17:36
定时器在运行时是不允许更改定时时间的,否则会造成定时器不工作
当定时器不运行的时候只需要更改将TV端设置成DB地址或者其他的变量地址,改变该地址内的值就可以了
05-12-20 19:25
别的PLC可以但西门子300不可以.我也想知道知道
05-12-21 00:19
可以的 没问题
05-12-21 08:24
谢谢cvlsan的答复。
现在问题已经解决了!
方法如下:
1:在DB块里设置DINT数据,TIME数据和S5TIME数据;
2:使用MOV转换DINT数据转为TIME数据;
3:使用FC40系统Function将TIME数据转换为S5TIME数据;
使用结果:可以即时改变S5TIME计时器设置值,但是在S5T计时器重新启动以前不会生效。不过可以将新设定值和S5T计时器的BCD值做减法运算,作为设定值给入S5T计时器,并重新启动S5T,这样就可获得S5T计时器的计时移植和接续计时。
不足之处,欢迎各位朋友进行讨论。
05-12-22 14:38
可以,按S5定时器的格式写数据就可以了,语名表编程里有相应的格式写法。
05-12-26 10:03
1.建立DB6数据块,其中TIME变量TIME1 _TIME为WINCC设定值,S5TIME变量TIME1 _S5T为定时器使用值;
2.WINCC中建一个32位有符号浮点数,改变格式:LongToSignedDWord,连接DB6,双字,地址DBD16(DB6中TIME1 _TIME的地址)
3.调用Libraries-IEC Function Blocks-FC40(TIM_S5TI),将时间值TIME(毫秒单位,即1000=1S)数据格式变量TIME1 _TIME转换成S5TIME数据格式的变量TIME1 _S5T;
4.程序中使用TIME1 _S5T变量作为定时器的时间设定值。
07-05-15 15:06

工控新闻

更多新闻资讯