发布于 2009-07-20 10:10:21
0楼
大家讨论了很多,看的都累了。看完有几个想法:
1:50ms的扫描周期又怎么了,只要PLC能够正常运行,满足系统要求;
2:300个模拟量不多,用FC105肯定是不行的,自己写程序吧。只提供个思路,有的大侠已经说了,类似。300个模拟量分开来采,按8的整数倍分,每个周期采一批采过来不要用浮点数,用16进制,哪里需要哪里转化成浮点数;
3:OB1是周而复始的循环,OB35是定时自动中断。把程序放到OB35只能保证每100ms被执行一次,并不能缩短总的执行周期,因为中断完毕后还是要返回OB1的。
4:就你的项目来看,不仅仅是模拟量采集的问题,应该其他程序也有很多无效代码。
5:LAD STL对扫描周期是有影响,但可以忽略不计。
6:扫描周期不仅仅是硬件的问题,升级CPU可以解决,但是有些项目是不允许的。
7:西门子的硬件貌似也有问题,曾经做过一个项目,需要PLC内保存较多的数据,同一个模拟量,刚开始PLC运行没问题,每个空间都能填进去新的数据,运行上48小时后,有些空间数据不能被刷新。咨询过西门子公司人员,无解。