-
可編程控制器主要靠運(yùn)行程序工作,要使可編程控制器充分發(fā)揮作用,除了選用正確的可編程控制器型號(hào),合適的檢測和執(zhí)行裝置,合理規(guī)劃系統(tǒng)結(jié)構(gòu)之外,編制出一個(gè)高質(zhì)量的可編程控制器工作程序也是很重要的。
一、編程要求
1、所編的程序要合乎所使用的PLC的有關(guān)的規(guī)定主要是對指令要準(zhǔn)確地理解,正確地使用。各種PLC指令多有類似之處,但還有些差異。對于有PLC使用經(jīng)驗(yàn)的人,當(dāng)選用另一種不太熟悉的型號(hào)進(jìn)行編程設(shè)計(jì)時(shí),一定要對新型號(hào)PLC的指令重新理解一遍,否則容易出錯(cuò)。
2、要使所編的程序盡可能簡潔簡短的程序可以節(jié)省內(nèi)存,簡化調(diào)試,而且還可節(jié)省執(zhí)行指令的時(shí)間,提高對輸入的響應(yīng)速度。要使所編的程序簡短,就要注意編程方法,用好指令,用巧指令,還要能優(yōu)化結(jié)構(gòu)。要實(shí)現(xiàn)某種功能,一般而言,在達(dá)到的目的相同時(shí),用功能強(qiáng)的指令比用功能單一的指令,程序步數(shù)可能會(huì)少些。
3、要使所編的程序盡可能清晰這樣既便于程序的調(diào)試、修改或補(bǔ)充,也便于別人了解和讀懂程序。要想使程序清晰,就要注意程序的層次,講究模塊化、標(biāo)準(zhǔn)化。特別是在編制復(fù)雜的程序時(shí),更要注意程序的層次,可積累自己的與吸收別人的經(jīng)驗(yàn),整理出一些標(biāo)準(zhǔn)的具有典型功能的程序,并盡可能使程序單元化,像計(jì)算機(jī)中的常用的一些子程序一樣,移來移去都能用,這樣,設(shè)計(jì)起來簡單,別人也易了解。
4、要使所編的程序合乎PLC的性能指標(biāo)及工作要求所編程序的指令條數(shù)要少于所選用的PLC內(nèi)存的容量,即程序在PLC中能放得下,所用的輸入、輸出點(diǎn)數(shù)要在所選用PLC的I/O點(diǎn)數(shù)范圍之內(nèi),PLC的掃描時(shí)間要少于所選用PLC的程序運(yùn)行監(jiān)測時(shí)間。PLC的掃描時(shí)間不僅包括運(yùn)行用戶程序所需的時(shí)間,而且還包括運(yùn)行系統(tǒng)程序,(如I/O處理、自監(jiān)測)所需的時(shí)間。
5、所編程序能夠循環(huán)運(yùn)行 PLC的工作特點(diǎn)是循環(huán)反復(fù)、不間斷地運(yùn)行同一程序。運(yùn)行從初始化后的狀態(tài)開始,待控制對象完成了工作循環(huán),則又返回初始化狀態(tài)。只有這樣才能使控制對象在新的工作周期中也得到相同的控制。
二、編程方法常用的PLC編程方法有經(jīng)驗(yàn)法、解析法、圖解法。
1、經(jīng)驗(yàn)法即是運(yùn)用自己的或別人的經(jīng)驗(yàn)進(jìn)行設(shè)計(jì),設(shè)計(jì)前選擇與設(shè)計(jì)要求相類似的成功的例子,并進(jìn)行修改,增刪部分功能或運(yùn)用其中部分程序,直至適合自己的情況。在工作過程中,可收集與積累這樣成功的例子,從而可不斷豐富自己的經(jīng)驗(yàn)。
2、解析法可利用組合邏輯或時(shí)序邏輯的理論,并運(yùn)用相應(yīng)的解析方法,對其進(jìn)行邏輯關(guān)系的求解,然后再根據(jù)求解的結(jié)果,畫成梯形圖或直接寫出程序。解析法比較嚴(yán)密,可以運(yùn)用一定的標(biāo)準(zhǔn),使程序優(yōu)化,可避免編程的盲目性,是較有效的方法。
3、圖解法圖解法是靠畫圖進(jìn)行設(shè)計(jì)。常用的方法有梯形圖法、波形圖法及流程法。梯形圖法是基本方法,無論是經(jīng)驗(yàn)法還是解析法,若將PLC程序轉(zhuǎn)化成梯形圖后,就要用到梯形圖法。波形圖法適合于時(shí)間控制電路,將對應(yīng)信號(hào)的波形畫出后,再依時(shí)間邏輯關(guān)系去組合,就可很容易把電路設(shè)計(jì)出。流程法是用框圖表示PLC程序執(zhí)行過程及輸入條件與輸出關(guān)系,在使用步進(jìn)指令的情況下,用它設(shè)計(jì)是很方便的。