為了使PLC程序可讀性,同時方便工作人員可以在短時間內(nèi)讀取和修改。在PLC工作組中,我們需要統(tǒng)一我們的編程標(biāo)準(zhǔn),以適應(yīng)未來工程人員的調(diào)整。原始程序可以在較短的時間內(nèi)由其他人閱讀。可統(tǒng)一標(biāo)準(zhǔn)如下:
一、PLC程序結(jié)構(gòu)
1、程序結(jié)構(gòu)統(tǒng)一
OB1:主程序;
OB100:初始化程序(無需主程序調(diào)用);
OB35:100ms(可修改)中斷(無需主程序調(diào)用),可以調(diào)用PID模塊;
OB80、OB82、OB85、OB86、OB87、OB121、OB122:故障診斷模塊(無需主程序調(diào)用、無需編程);
FC1:系統(tǒng)模式;
FC2:輸入處理;
FC3:輸出處理;
FC4:運(yùn)行處理;
FC5:停止處理;
FC6:手自動切換;
FC7:
...
FC100:之后用來建立一些可以循環(huán)調(diào)用的子程序;
FC105:系統(tǒng)自帶,模擬量輸入子程序(可以循環(huán)調(diào)用);
FC106:系統(tǒng)自帶,模擬量輸出子程序(可以循環(huán)調(diào)用);
2、數(shù)據(jù)塊
DB1:AI數(shù)據(jù),類型:REAL,與上位機(jī)接口;
DB2:AO數(shù)據(jù),類型:REAL,與上位機(jī)接口;
DB3:DI數(shù)據(jù),類型:BOOL,與上位機(jī)接口;
DB4:DO數(shù)據(jù),類型:BOOL,與上位機(jī)接口;
DB5:設(shè)備運(yùn)行時間及流量累計,類型:REAL,與上位機(jī)接口;
DB6:報警消息,類型:BOOL,與上位機(jī)接口;
DB7:類型:REAL,中間寄存器;
DB8:類型:INT,中間寄存器;
DB9:類型:WORD,中間寄存器;
DB10:類型:BOOL,中間寄存器;
DB11:之后用作與設(shè)備通訊用,例如:MODBUS通訊等;
DB100:之后用作調(diào)用FB塊時的背景數(shù)據(jù)塊;
M區(qū):也作為中間變量。
3、DP從站故障診斷
DP從站必須做故障診斷,故障報警,用FB125即可。
二、控制模式
1、系統(tǒng)設(shè)置遠(yuǎn)程、本地、手動按鈕
1.1、遠(yuǎn)程:只能通過上位機(jī)對系統(tǒng)進(jìn)行自動啟、?刂,單臺設(shè)備就地控制優(yōu)先,在程控時,可以通過上位機(jī)對設(shè)備進(jìn)行軟手操、自動切換,軟手操啟、停;
1.2、本地:只能通過觸摸屏對系統(tǒng)進(jìn)行自動啟、?刂,單臺設(shè)備就地控制優(yōu)先,在程控時,可以通過觸摸屏對設(shè)備進(jìn)行軟手操、自動切換,軟手操啟、停;
1.3、手動:手動控制時,上位機(jī)、觸摸屏失效,只能通過手動控制設(shè)備的啟、停。
2、單臺設(shè)備控制
單臺設(shè)備必須有軟手操、自動切換以及軟手操時可以啟、停功能,由自動切換到軟手操時,設(shè)備不能停機(jī);由軟手操切換到自動時,設(shè)備啟、停取決于自動程序。
3、單臺設(shè)備(泵、風(fēng)機(jī)及其它大型設(shè)備)運(yùn)行滿24小時必須進(jìn)行輪換,且必須有運(yùn)行時間累計,如果由上位機(jī)設(shè)定啟、停順序除外,操作人員自行設(shè)定;
三、plc編程技巧
1、程序塊盡可能細(xì)化到易于讀懂,將同類型的設(shè)備控制放在程序塊中;
2、如果在特殊情況下使用語言編程,請在大多數(shù)情況下使用梯形圖編程以方便他人閱讀;
3、對于經(jīng)常調(diào)用的子程序,可以創(chuàng)建子模塊并經(jīng)常調(diào)用它們,例如:找到幾個數(shù)字的平均值或找到幾個數(shù)字的最大值;
4、程序應(yīng)有注釋,變量和中間變量必須有描述,以方便閱讀或以后看懂;
5、定期程序備份,最好按項目名稱和日期命名;
6、程序加密。