恭喜,你发布的帖子
发布于 2018-05-11 15:04:02
68楼
PCS7不使用M和T的主要原因是APL库包含的电机阀门PID模拟量监视等这些FB都需要重复调用几百次,如果用Timer很快计时器资源就会枯竭,而且还要组态Timer的编号,效率太低了。你也可以用你的高级方法来使一个计时器完成所有的计时功能,但是绝对是得不偿失的,程序的风险难以把控。PCS7实现计时的方法实际依靠的是中断,程序几乎都运行在OB30~38之间,这些OB都是固定时长执行一次。
L Timing1
L 0.1
+R
T Timing1
简简单单的几行就开始计时了,每周期加0.1。
M区又叫位存储区,而实际上它提供的作用全局DB可以做到,背景DB也可以做到。渐渐它的地位就被削弱了。M编程实际上是绝对值编程。如果重复调用还需要手动去改地址的话就效率太低了。但是我不介意在程序中使用M做时钟脉冲和常1常0信号。
毕竟它们不需要再重复调用的时候去修改。
另外PCS7不使用M,而且坚决不会上传M到WinCC,wincc多数据区去寻址浪费资源,影响通讯速度。说句实话,我看到有人WinCC,只认定一个事实:菜鸟才上传I区,Q区,M区 。
用M,T区去编程,我不会说他是菜鸟,但我可能明确的说,他的程序用在重复度很高的过程控制里能够累死他!
上面有人回复我,PCS7是面向对象编程,我认为它比面向对象更高级一点,是小范围特定环境面向组件的。可以去西门子全球技术资源看看人家对APL的描述吧。它说的比我有文化点。
我看到有人WinCC,只认定一个事实:菜鸟才上传I区,Q区,M区 。------是的!
请填写推广理由:
分享
只看
楼主