通常一套好的PLC程序需要具備以下幾個特征:簡單性、可讀性、正確性、可靠性、易改性、擴(kuò)展性、完整的報警系統(tǒng)和方便程序模擬。對于不同的行業(yè)和工藝,盡管這些特征表現(xiàn)形式多樣,但其核心思想是一樣的。今天我們就展開講講PLC編程規(guī)范!
01簡單性
使PLC程序盡可能簡單。簡單的含義就是盡可能的使用標(biāo)準(zhǔn)化的程序框架,盡可能使用簡單的指令。
要想程序簡單,從大的方面講,要優(yōu)化程序結(jié)構(gòu),用流程控制指令簡化程序,從小的方面講還要用功能強(qiáng)的指令取代功能單一的指令,以及注意指令的安排順序等。
02可讀性
要求所設(shè)計的程序可讀性要好。這不僅便于程序設(shè)計者加深對程序的理解,便于調(diào)試,而且,還要便于別人讀懂你的程序,便于使用者維護(hù)。必要時,也可使程序推廣。
要使程序可讀性好,所設(shè)計的程序就要盡可能清晰。要注意層次,實現(xiàn)模塊化,以至于用面向?qū)ο蟮姆椒ㄟM(jìn)行設(shè)計。要多用一些標(biāo)準(zhǔn)的設(shè)計。
如遇特殊情況下采用語言編程,多數(shù)情況下請使用梯形圖編程,方便閱讀。
再就是I/O分配要有規(guī)律性,便于記憶與理解。必要時,還要做一些注釋工作。內(nèi)部器件的使用也要講規(guī)律性,不要隨便地拿來就用。
可讀性在程序設(shè)計開始時就要注意。這不易完全做到。因為在程序調(diào)試的過程中,指令的增減,內(nèi)部器件的使用變化,可能使原較清晰的程序,變的有些亂。所以在設(shè)計時就對調(diào)試增減留有一定的余地,然后調(diào)試完畢后再做一下整理,這樣所設(shè)計的程序具有更高的質(zhì)量。
程序的注釋,起碼應(yīng)該有以下幾個方面:
A、系統(tǒng)注釋:整套程序的版權(quán)公司和此套程序用途
B、程序塊注釋:此程序塊的主要用途和作者
C、段注釋:此段代碼的用途
D、變量注釋:重要性無需多言,包含I/O注釋、中間變量注釋
而至于保密性的考慮,我覺得應(yīng)該在程序的加密算法或者塊的加密上考慮,而不應(yīng)該用減少注釋這種小聰明來實現(xiàn)。
03正確性
PLC的程序一定要正確,并要經(jīng)過實際工作驗證,證明其能夠正確工作。這是對PLC程序的最根本的要求,若這一點做不到,其它的再好也沒有用。
要使程序正確,一定要準(zhǔn)確的使用指令,正確的使用內(nèi)部器件。準(zhǔn)確的使用指令與準(zhǔn)確理解指令相聯(lián)系,為此對指令含義和使用條件一定要弄清楚。必要時,可編些小程序?qū)σ恍┎磺宄闹噶钭餍y試。
同一指令,由于PLC的出廠批次不同或是PLC的系列型號的不同,一些指令細(xì)節(jié)有可能不一樣,應(yīng)仔細(xì)查閱編程手冊。
內(nèi)部器件正確使用也是重要的。如有的PLC有掉電保護(hù),有的PLC沒有。一定要做到該掉電保護(hù)的一定要用掉電保護(hù)的器件,反之則不能用。
總之,要準(zhǔn)確的使用指令,正確使用內(nèi)部器件,使所編的程序能正確要作,這是對PLC程序最根本的要求。
舉個簡單的例子,西門子的上升沿和下降沿需要使用帶存儲功能的變量作為中間變量,比如M點或者DB點,如果使用FC的temp變量就會出問題的。
04可靠性
程序不僅要正確,還要可靠??煽糠从持鳳LC程序的穩(wěn)定性,這也是對PLC程序的基本要求。
有的PLC程序,在正常的工作條件下或合法操作時能正確工作,而出現(xiàn)非正常工作條件(如臨時停電,又很快再通電)或進(jìn)行非法操作(如一些按鈕不按順序按,或同時按若干按鈕)后,程序就不能正常工作了。這種程序,就不大可靠,或說不穩(wěn)定,就是不好的程序。
好的PLC程序?qū)Ψ钦9ぷ鳁l件出現(xiàn),能予以識別,并能使其與正常條件銜接,可使程序適應(yīng)于多種情況。好的PLC程序?qū)Ψ欠ú僮髂苡枰跃芙^,且不留下“痕跡”。只接受合法操作。
聯(lián)鎖是拒絕非法操作常用的手段,繼電電路常用這個方法,PLC也可繼承這個方法。
05易改性
要使程序易改,也就是要便于修改。
PLC的特點之一就是方便,可靈活地適用于各種情況。其辦法就是靠修改或重新設(shè)計程序。
重新設(shè)計程序用于改變PLC工藝的用途要求的情況,不僅程序重編,而且I/O也要重新分配。多數(shù)情況下不需要重編程序,作一些修改就可以了。這就要求程序具有易性,便于修改。
易改也就是彈性,要求只要作很少的改動,即可達(dá)到改變參數(shù)或理改動作的目的。
06擴(kuò)展性
許多程序可能在進(jìn)現(xiàn)場之前都已經(jīng)編好,但是到了現(xiàn)場,可能還需要添加另外的程序,為了避免打亂整套系統(tǒng)的結(jié)構(gòu),需要在每個功能區(qū)預(yù)留一定的空間作為備用。
硬件上留出足夠的余量,軟件在編寫的時候把手動,自動,半自動考慮好,位置留出來。
07完備報警系統(tǒng)
PLC系統(tǒng)往往用于工業(yè)環(huán)境中,每一次的事故都會造成或大或小的損失,為了做到事故預(yù)處理或者在事故中將損失降到最小,必須重視PLC的報警和保護(hù),在此將其摘出來作為系統(tǒng)的一個重要組成部分。
08程序模擬
為了保證現(xiàn)場的調(diào)試進(jìn)度或者給客戶展示,往往在進(jìn)現(xiàn)場之前,要對自己的程序進(jìn)行全自動的模擬。為此需要在程序中加入模擬程序部分,模擬程序部分在正?,F(xiàn)場運行之后斷開。為了使程序具備模擬功能,需要做以下工作:
(1)將實際的PLC的I/O點轉(zhuǎn)換為PLC的中間變量或者數(shù)據(jù)塊變量;
(2)根據(jù)工藝要求編寫各個設(shè)備的模擬程序。
在設(shè)計PLC程序的過程中,能夠滿足以上幾個方面的要求的就能稱的上是一個好程序了。
在了解了PLC編程規(guī)范之后,該如何運用到實操中呢?下面就引用幾個大型企業(yè)的編程規(guī)范,供大家學(xué)習(xí)參考!
審核編輯:湯梓紅
評論
查看更多