編制PLC程序注意的問題說明:網(wǎng)友通過郵件發(fā)送來的文章
可編程序控制器(PC)的應(yīng)用中,我們常會(huì)碰到對(duì)繼電器控制系統(tǒng)的改造問題,這時(shí)我們往往要參考原有的繼電器控制電路來編制PC的應(yīng)用程序。因此,在編程時(shí),我們應(yīng)注意PC控制系統(tǒng)與繼電器控制系統(tǒng)工作方式上的一些不同。
下面我們看一個(gè)例子:一個(gè)繼電器控制回路如圖1 所示。
因繼電器控制系統(tǒng)是以“并行”方式工作的,而且其觸點(diǎn)的通斷需要一定的動(dòng)作時(shí)間。所以當(dāng)該電路起動(dòng)后,時(shí)間繼電器KT延時(shí)時(shí)間到時(shí),KT是否能繼續(xù)保持通電狀態(tài),需要同時(shí)考慮“并行”的兩個(gè)動(dòng)作過程:KT的常閉延時(shí)觸點(diǎn)斷開,KA1失電,KA1常開觸點(diǎn)斷開;KT的常開延時(shí)觸點(diǎn)閉合,KA2得電,KA2常開觸點(diǎn)閉合。這兩個(gè)過程作用的結(jié)果,來決定KT的狀態(tài)。同時(shí),觸點(diǎn)動(dòng)作時(shí)間的存在,使得電路出現(xiàn)時(shí)序競(jìng)爭(zhēng)。因此該電路不能可*工作。如果加入虛框中的回路,并如圖1把KA2的常開觸點(diǎn)換成KA3的常開觸點(diǎn)(見圖1中括號(hào))。結(jié)果是KT動(dòng)作后,KT自身失電,就不會(huì)繼續(xù)保持通電狀態(tài)。
同樣是這個(gè)電路,我們用PC來實(shí)現(xiàn),梯形圖如圖2 所示。
PC是以“串行”方式工作的,也就是以掃描的方式,循環(huán)地、連續(xù)地、順序地,逐條執(zhí)行程度的方式工作。同時(shí),PC中,軟觸點(diǎn)的動(dòng)作可認(rèn)為是瞬時(shí)完成的,且其能把本次動(dòng)作的結(jié)果記憶保持到下一次掃描運(yùn)算時(shí)為止。即具有記憶保持功能。按這樣一個(gè)順序“串行”的工作方式,梯形圖動(dòng)作順序如下:當(dāng)在某一掃描周期中TIM00延時(shí)到后,則:
1. TIM00常閉觸點(diǎn)斷開(OFF),0000 OFF;
2. TIM00常開觸點(diǎn)閉合(ON),0001 ON;
3. 0000常開觸點(diǎn)OFF,0001常開觸點(diǎn)ON,TIM00繼續(xù)保持通電狀態(tài)。而且不論我們?cè)?001與TIM00之間再加多少級(jí)前面繼電器電路所加的虛框中的回路,并把0001常開觸點(diǎn)換成所加回路最后一級(jí)繼電器的常開觸點(diǎn),TIM00仍能繼續(xù)保持通電狀態(tài)。
同樣的電路,由于繼電器控制系統(tǒng)和PC控制系統(tǒng)工作方式上的差異,兩者會(huì)有不同的動(dòng)作結(jié)果。注意到這一點(diǎn),我們?cè)诰幊虝r(shí),就會(huì)避免一些不應(yīng)有的錯(cuò)誤。
CPU故障的排除
當(dāng)PC控制出現(xiàn)下列優(yōu)先級(jí)錯(cuò)誤時(shí)會(huì)引起CPU停機(jī):CPU WAIT’ G (CPU等待)、MEMORY ERR(存儲(chǔ)器錯(cuò)誤)、NO END INST(無結(jié)束語句)、I/O BUS ERR(I/O總線錯(cuò)誤)、I/O SET ERR(I/O設(shè)置錯(cuò)誤)、I/O UNIT ERR(I/O單元錯(cuò)誤)、SYS FAIL FALS(系統(tǒng)出錯(cuò))等。
用編程器讀出出錯(cuò)信息如下:COU WAIT’ G、MEMORY ERR。拆下該CPU,經(jīng)查看內(nèi)部線路,發(fā)現(xiàn)CPU內(nèi)部電源部分一集成件SI-9510A已炸開,顯然,CPU不能運(yùn)行?赡茉蚴钱(dāng)時(shí)電源電壓高于OMRON產(chǎn)品給定電壓最高值(240Va.c)7V左右或該集成件本身質(zhì)量欠佳造成的。更換同型號(hào)CPU,ERROR紅燈仍亮,系統(tǒng)不能啟動(dòng),用編程器讀出的出錯(cuò)信息依然如故。
為了防止意外和查看問題方便,我們將備用的存貯器換上,因其RAM中無用戶程序。此時(shí),能引發(fā)CPU等待的錯(cuò)誤主要有兩個(gè)方面:特殊I/O單元等待及擴(kuò)展I/O單元等待。首先,我們查看了擴(kuò)展單元的各部分,其電源供給正常,發(fā)現(xiàn)連接電纜插頭松動(dòng),插好,試機(jī),PC CPU依然停機(jī),但無存貯器錯(cuò)誤顯示。由于系統(tǒng)未進(jìn)行I/O地址登記,為查找原因方便,將擴(kuò)展機(jī)架“離線”操作,直接檢查主板特殊單元。存貯器中RAM為空白,只要拆下壞的模板后,CPU就應(yīng)運(yùn)行,其RUN指示燈亮(編程器置RUN或MONIT狀態(tài))。當(dāng)拆下主板上OD215模板后,RUN亮,將備用的OD215進(jìn)行狀態(tài)設(shè)置,替換后也亮。此時(shí),再將原來的存貯器換上,結(jié)果編程器上蜂鳴器馬上聲響,又出現(xiàn)MEMORY ERR出錯(cuò)信息,可見存貯器也被燒壞。只能用備用的存貯器,重新輸入原始用戶程序,分段檢查、試車,最后全部重新試車,系統(tǒng)正常,交付使用。
直此,筆者認(rèn)為引起這次停機(jī)故障的可能原因是特殊I/O單元OD215損壞,又由于偶然因素如電壓偏高,使CPU燒壞及存貯器損壞。