柳絮飛花
無(wú)產(chǎn)工程師
級(jí)別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 500 個(gè)
工控威望: 1212 點(diǎn)
下載積分: 7865 分
在線(xiàn)時(shí)間: 102(小時(shí))
注冊(cè)時(shí)間: 2017-06-27
最后登錄: 2024-12-17
查看柳絮飛花的 主題 / 回貼
樓主  發(fā)表于: 2020-08-17 17:23
為了使PLC程序可讀性,同時(shí)方便工作人員可以在短時(shí)間內(nèi)讀取和修改。在PLC工作組中,我們需要統(tǒng)一我們的編程標(biāo)準(zhǔn),以適應(yīng)未來(lái)工程人員的調(diào)整。原始程序可以在較短的時(shí)間內(nèi)由其他人閱讀?山y(tǒng)一標(biāo)準(zhǔn)如下:

一、PLC程序結(jié)構(gòu)

1、程序結(jié)構(gòu)統(tǒng)一

OB1:主程序;

OB100:初始化程序(無(wú)需主程序調(diào)用);

OB35:100ms(可修改)中斷(無(wú)需主程序調(diào)用),可以調(diào)用PID模塊;

OB80、OB82、OB85、OB86、OB87、OB121、OB122:故障診斷模塊(無(wú)需主程序調(diào)用、無(wú)需編程);

FC1:系統(tǒng)模式;

FC2:輸入處理;

FC3:輸出處理;

FC4:運(yùn)行處理;

FC5:停止處理;

FC6:手自動(dòng)切換;

FC7:

...

FC100:之后用來(lái)建立一些可以循環(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ù),類(lèi)型:REAL,與上位機(jī)接口;

DB2:AO數(shù)據(jù),類(lèi)型:REAL,與上位機(jī)接口;

DB3:DI數(shù)據(jù),類(lèi)型:BOOL,與上位機(jī)接口;

DB4:DO數(shù)據(jù),類(lèi)型:BOOL,與上位機(jī)接口;

DB5:設(shè)備運(yùn)行時(shí)間及流量累計(jì),類(lèi)型:REAL,與上位機(jī)接口;

DB6:報(bào)警消息,類(lèi)型:BOOL,與上位機(jī)接口;

DB7:類(lèi)型:REAL,中間寄存器;

DB8:類(lèi)型:INT,中間寄存器;

DB9:類(lèi)型:WORD,中間寄存器;

DB10:類(lèi)型:BOOL,中間寄存器;

DB11:之后用作與設(shè)備通訊用,例如:MODBUS通訊等;

DB100:之后用作調(diào)用FB塊時(shí)的背景數(shù)據(jù)塊;

M區(qū):也作為中間變量。

3、DP從站故障診斷

DP從站必須做故障診斷,故障報(bào)警,用FB125即可。

二、控制模式

1、系統(tǒng)設(shè)置遠(yuǎn)程、本地、手動(dòng)按鈕

1.1、遠(yuǎn)程:只能通過(guò)上位機(jī)對(duì)系統(tǒng)進(jìn)行自動(dòng)啟、?刂,單臺(tái)設(shè)備就地控制優(yōu)先,在程控時(shí),可以通過(guò)上位機(jī)對(duì)設(shè)備進(jìn)行軟手操、自動(dòng)切換,軟手操啟、停;

1.2、本地:只能通過(guò)觸摸屏對(duì)系統(tǒng)進(jìn)行自動(dòng)啟、?刂,單臺(tái)設(shè)備就地控制優(yōu)先,在程控時(shí),可以通過(guò)觸摸屏對(duì)設(shè)備進(jìn)行軟手操、自動(dòng)切換,軟手操啟、停;

1.3、手動(dòng):手動(dòng)控制時(shí),上位機(jī)、觸摸屏失效,只能通過(guò)手動(dòng)控制設(shè)備的啟、停。

2、單臺(tái)設(shè)備控制

單臺(tái)設(shè)備必須有軟手操、自動(dòng)切換以及軟手操時(shí)可以啟、停功能,由自動(dòng)切換到軟手操時(shí),設(shè)備不能停機(jī);由軟手操切換到自動(dòng)時(shí),設(shè)備啟、停取決于自動(dòng)程序。

3、單臺(tái)設(shè)備(泵、風(fēng)機(jī)及其它大型設(shè)備)運(yùn)行滿(mǎn)24小時(shí)必須進(jìn)行輪換,且必須有運(yùn)行時(shí)間累計(jì),如果由上位機(jī)設(shè)定啟、停順序除外,操作人員自行設(shè)定;

三、plc編程技巧

1、程序塊盡可能細(xì)化到易于讀懂,將同類(lèi)型的設(shè)備控制放在程序塊中;

2、如果在特殊情況下使用語(yǔ)言編程,請(qǐng)?jiān)诖蠖鄶?shù)情況下使用梯形圖編程以方便他人閱讀;

3、對(duì)于經(jīng)常調(diào)用的子程序,可以創(chuàng)建子模塊并經(jīng)常調(diào)用它們,例如:找到幾個(gè)數(shù)字的平均值或找到幾個(gè)數(shù)字的最大值;

4、程序應(yīng)有注釋?zhuān)兞亢椭虚g變量必須有描述,以方便閱讀或以后看懂;

5、定期程序備份,最好按項(xiàng)目名稱(chēng)和日期命名;

6、程序加密。
本帖最近評(píng)分記錄:
  • 下載積分:+2(陽(yáng)軍財(cái)) 感謝分享!
  • 工控普通人,學(xué)習(xí)在路上
    yyande
    級(jí)別: 探索解密
    精華主題: 0
    發(fā)帖數(shù)量: 60 個(gè)
    工控威望: 132 點(diǎn)
    下載積分: 2687 分
    在線(xiàn)時(shí)間: 26(小時(shí))
    注冊(cè)時(shí)間: 2020-05-23
    最后登錄: 2024-12-09
    查看yyande的 主題 / 回貼
    1樓  發(fā)表于: 2020-08-17 20:51
    盡可能的采用高級(jí)語(yǔ)言編寫(xiě),刷下一大批維護(hù)人員,然后你的工資就上升了!