您的位置:控制工程论坛网论坛 » PLC与PAC » wincc读写定时器问题

风铃

风铃   |   当前状态:离线

总积分:211  2024年可用积分:0

注册时间: 2008-01-16

最后登录时间: 2009-01-28

空间 发短消息加为好友

wincc读写定时器问题

风铃  发表于 2008/1/25 13:41:28      782 查看 1 回复  [上一主题]  [下一主题]

手机阅读

前日碰到了在wincc里面如何读取定时器当前时间以及设定定时器的时间问题,想起来以前曾经在西门子论坛里面看到过有人问这个问题,就去官方论坛里面search一把,果然很多帖子啊,整理了一下:

-------------------------------------

终于搞对了,WINCC里建立无符号32位数,改变格式DwordToSimaticBCDTimer,

线形标定过程值0--1000,变量值0-1,地址选择对应的定时器就OK了,要注意的是I/O域的数据格式选择为字符串。 

―――――――――――――――――――――――――――――――――――――――――――――――――――――――――

将当前时间值的BCD码传给数据块

―――――――――――――――――――――――――――――――――――――――――――――――――――――――――

其实平常最多使用的是直接把定时器的bi端接到一个MW,然后从WINCC中读。

用MW20做为定时器的时间设定值 , 前面用一条I_BCD码转换指令传MW20定时时间, 结果 输入0_999 的数时间对应0_9.99S没有问题, 但用0.1S做时间单元,设定4096以上的数时 有时定时器不能正常启动. 总的说来 还是对这块的帮组没有看明白,那位给指点下,我想连续的可以设定时间值在10S-50S 该怎么设定 

s5#time数据格式是低12位为BCD码时间数;高2位是时基:

00-10ms

01- 100ms

10- 1s

11- 10s

所以大于4096就不正常了 

--------------------------------------

找了台300plc,测试了下,第一个方法就可以(即:WINCC里建立无符号32位数,改变格式DwordToSimaticBCDTimer),我用的是sodts定时器指令,其bcd输出可以显示当前计时时间,设定端也可以从wincc直接改写,很简单啊。

不过要是没有前面的同学指点,恐怕我还要翻资料穷找8找了。。。。。。。。。

1楼 0 0 回复
总共 , 当前 /