西门子PLC中OB35定时的问题

西门子plc 发布于 1年前 分类:S7-300/400

我用s7-300 OB35 做了一个500毫秒的定时 每500毫秒清空FM350里的当前值 偶尔有当前值没有被清零的时候 几分钟就出现一次 请问各位大哥是什么原因 怎么解决 非常急 谢谢各位!!!!!

2个回复

  • plc学习
    plc学习

    你用的是FM350-1么,如果是,你是在OB35里调用FC2 然后置位L_Direct参数的吧,如果这样做很可能不成功,因为写装载值的功能可能需要1到2个程序扫描周期,因OB35执行完成后FM350-1没有收到该指令,所以会不成功。建议你在OB35中只置起一个标志位,如M0.0,然后在OB1中调用FC2,并用M0.0去置位L_Direct位,执行完成后会自动复位。不过这样会有一些误差,用软件清零,这种误差是避免不了的。如果下避免可以用FM350-1外部的DI点,使用Set_Di的功能,具体怎么做可以看FM350-1的手册第145页以后的部分。

  • plc电工爱好者
    plc电工爱好者

    你的OB35是多少时间中断的,500ms吗?
    个人认为可能和ob1的循环时间有关系。要不你可以加个判断,比如的的清零命令直到fm350实际已经清空了才复位掉。