不少貼子里說fc調(diào)用時(shí)要小心特別是塊內(nèi)有計(jì)時(shí)器和計(jì)數(shù)器時(shí),不知道要注意些什么?
答:在fc里使用像t0、t1這樣的定時(shí)器,如果多次調(diào)用就有問題了,一個(gè)定時(shí)器不能同時(shí)用于兩臺設(shè)備!
解決的方法是在fc中創(chuàng)建一個(gè)參數(shù)類型為timer(定時(shí)器)的輸入?yún)?shù),在調(diào)用時(shí)為該參數(shù)指定不同的實(shí)參,例如設(shè)備a的實(shí)參為t0、設(shè)備b的實(shí)參為t1等等。
西門子結(jié)構(gòu)化編程的精髓和相對其他plc(包括s7-200)的優(yōu)勢就在于fb、fc的可移植性和可重用性。其基本規(guī)則是在fb、fc內(nèi)部不使用任何全局變量,全部使用局部變量。這樣的fb、fc的內(nèi)部程序不作任何修改,就可以在同一項(xiàng)目中多次調(diào)用,或者將它們移植到其他項(xiàng)目中去。fc、fb眾多的參數(shù)類型能實(shí)現(xiàn)這一要求。編程人員在工作中積累了大量的這樣的fc、fb后,就可以像搭積木一樣迅速地創(chuàng)建出滿足不同客戶要求的類似系統(tǒng)的程序。
作為編程人員應(yīng)該養(yǎng)成不在fb、fc內(nèi)部使用全局變量的習(xí)慣!