引言
在當前的工業(yè)生產過程控制中,普遍采用了PLC控制系統(tǒng),通過軟件程序來實現(xiàn)控制設備之間的聯(lián)鎖控制也就是自動控制,由控制設備驅動的工廠機械設備來完成滿足工藝要求的生產過程。這里,設備的運行分為單體手動操作和自動控制運行兩種方式。在單體手動操作中,一般是在設備就地(機旁)操作。PLC的程序控制主要是進行自動控制,但其中也包括單體手動操作,其完成的功能和就地(機旁)操作是一樣的,不同之處在于,它是通過程序的方式來實現(xiàn),并且一般是在上位機的監(jiān)控畫面中通過點擊鼠標的方式進行,也就是在機房或控制室中進行而不是就地(機旁)。手動操作(包括程序中的手動單體操作)和自動控制程序的主要區(qū)別在于,自動控制程序是在正式投產后,各個設備沒有故障可正常工作時運行。而手動操作是在調試期間用于俗稱的“打點”時用,或正常運行時,有設備出現(xiàn)故障時用。例如,某供水水箱的液位控制,水位高時,啟動出水泵供水,水位低時,停止泵供水,假如水箱的液位傳感器出現(xiàn)故障,自動控制就無法進行,那么為了繼續(xù)維持生產,就需要操作人員現(xiàn)場手動操作,根據水箱的液位指示器來手動啟動和停止出水泵的運行及相應閥門的開關。需要指出的是,本文所指的設備是PLC輸出控制的開關量設備,模擬量設備不在本文的討論之列。
設備手動和自動切換的方式
在本文中,設備是指工廠機械設備及其控制設備??刂圃O備是指電機,閥門等等,而設備的手動和自動運行,主要體現(xiàn)在控制設備的手動和自動運行。例如,對于電機的控制一般是通過MCC(電機控制中心)電氣控制系統(tǒng)來進行的,電機的遠程和就地信號,即自動和手動的切換信號,以及啟動、停止、故障等信號均由MCC提供并接到PLC硬件系統(tǒng)。在MCC柜上的遠程就地轉換開關打到就地時,進行就地手動操作;打到遠程時,進行PLC的程序自動控制,或在上位機畫面上進行點擊鼠標式的手動操作。我們可以這樣來理解PLC控制系統(tǒng)、就地電氣控制系統(tǒng)、控制設備和工廠機械設備之間的關系,即自動控制(包括PLC程序中的手動操作)是由PLC控制系統(tǒng)通過電氣控制系統(tǒng),由電氣控制系統(tǒng)來控制像電機一樣的控制設備,最后由控制設備來驅動工廠機械設備的運行。而電氣控制系統(tǒng)像MCC柜本身,就可以直接進行手動就地操作。
對于電機的控制來說,正常運行時,首先是PLC程序的自動控制,此時的遠程就地轉換開關處于遠程的位置,然后如果出現(xiàn)PLC無法處理的問題或故障,則需要在上位機的畫面上,人工進行單體設備的操作,以維持生產或進行安全聯(lián)鎖操作。最后如果依然不能解決問題,則需要在就地(機旁)進行操作,一般是進行電機停止的操作。
對于閥門來說,一般也有相應的電氣控制系統(tǒng),就像MCC一樣,其一般是就地的現(xiàn)場電磁閥控制柜(箱),一般都有遠程就地的轉換開關,用于手動和自動運行的切換。和電機控制一樣,正常運行時,首先是PLC的自動控制,此時的遠程就地的轉換開關處于遠程的位置,然后如果出現(xiàn)PLC無法處理的問題或故障,則需要在上位機的畫面上,人工進行單體設備的操作,以維持生產或進行安全聯(lián)鎖操作。最后如果依然不能解決問題,遠程就地轉換開關打到就地位置,進行現(xiàn)場的就地控制。如果還不能解決問題,則只能使用手動閥門進行安全操作。
顯然,就地手動和遠程自動運行,是通過就地控制柜(箱)上的轉換開關來實現(xiàn)的。PLC程序中的手動和自動的切換功能,也可以這樣做,在程序中實現(xiàn)類似于轉換開關這樣的操作是沒有問題的。
設備手動和自動切換的程序實現(xiàn)方法1
當遠程就地信號為1時,即表示現(xiàn)場的控制柜(箱)上的轉換開關打到了遠程位置,可進行PLC的自動控制;當其為0時,則表示是現(xiàn)場手動操作。為了實現(xiàn)程序內部的手動自動切換,就像遠程就地信號一樣,設置一個中間變量,這個中間變量作為程序手動單體設備操作的標志,是由上位機監(jiān)控程序來賦值的,其值為1時,進行程序的單體設備手動操作;為0時PLC程序進行自動控制。由此可見,每一個自動控制中的設備都是在這兩個條件下運行的。
我們用梯形圖來實現(xiàn)一個電機和一個閥門的手自動切換功能,設置如下輸入、輸出IO標簽和中間變量:
輸出:電機啟動START
電機停止STOP
閥門打開OPEN
閥門關閉CLOSE
輸入:電機MCC柜遠程就地信號RL_M
閥門控制柜遠程就地信號RL_V 變量:電機啟動條件A
電機停止條件B
閥門打開條件C
閥門關閉條件D
電機的上位機手動操作中間變量UP_MAN_M
電機的上位機手動操作啟動UP_START_M
電機的上位機手動操作停止UP_STOP_M
閥門的上位機手動操作中間變量UP_MAN_V
閥門的上位機手動操作打開UP_OPEN_V
閥門的上位機手動操作關閉UP_CLOSE_V
使用美國A-B公司用于Logix 5000系列PLC的RSLogix 5000編程軟件的梯形圖,程序如圖1:
[align=center]

圖1[/align]
其中(L)為置位指令,(U)為復位指令。這里之所以用置位、復位指令,主要是考慮到啟動(打開)條件和停止(關閉)條件可能是脈沖型的(例如上升沿脈沖),需要保持(注:如果MCC中的控制回路使用了“啟動-保持-停止”方式,那么采用脈沖輸出比較合適,就像自復位式按鈕一樣。這里為了簡化梯形圖程序,沒有這樣做。有興趣的讀者不妨一試)。電機啟動或停止條件是自動控制時的聯(lián)鎖條件,上位機進行手動操作時,自動控制程序不能執(zhí)行。同樣就地操作時,PLC的程序控制也不能執(zhí)行,程序可以根據需要將此時的電機啟動和停止控制信號復位。閥門的控制也是一樣。這樣各個設備均可根據情況進行自動運行或手動操作。
設備手動和自動切換的程序實現(xiàn)方法2
上面的方法對手自動切換時的各種情況都進行了考慮,程序進行設計時需要時時刻刻注意手自動切換問題,程序量相對于沒有手自動切換時也有所增加。如果把程序中的手動程序同自動程序分開,程序就會顯得更加清晰明了,同時設計自動程序時也不必時時刻刻注意手自動切換問題。這樣是否可行呢?我們不妨將上面的梯形圖程序改造成如圖2所示。
[align=center]

圖2[/align]
顯然,這是可行的,由于手動程序最后執(zhí)行,電機或閥門的啟動、停止或打開、關閉,由手動程序決定。也就是說,當自動控制程序運行時,如果有上位機手動操作,則上位機手動操作優(yōu)先。例如當自動程序要求電機停止時,如果上位機手動操作讓其啟動,則電機啟動。其中的原因是,程序對相同變量或IO標簽的賦值操作,最后執(zhí)行的程序有效。例如下面的例子:
IF A THEN
Y := 0;
END_IF;
IF B THEN
Y := 1;
END_IF;
在A,B都為1時,Y = 1。因為最后執(zhí)行的語句有效,不管是PLC梯形圖程序還是其他計算機程序都是這樣。
對于遠程就地的現(xiàn)場手動操作來說,當轉換開關打到就地時,PLC梯形圖程序繼續(xù)根據聯(lián)鎖條件執(zhí)行,但輸出將不起作用,設備的狀態(tài)由現(xiàn)場操作決定。轉換開關再次打到遠程時,PLC程序的輸出才能真正控制設備的運行。
設備組手動和自動切換的程序實現(xiàn)方法
在上面我們主要介紹了單體設備的手動自動的切換問題,那么在工業(yè)生產過程的控制中,不少設備是一同完成某種功能的,這些設備一起組成一個設備組,可以把它們當作一個單體設備來考慮。這樣就可以利用上面的方法來實現(xiàn)設備組的手動自動切換問題。
雖然設備組可看作是單體設備,但其中內部畢竟還包含著真正的單體設備,也存在內部單體設備的手動自動切換問題,那么如何來解決設備組和其內部的真正單體設備手動自動切換問題呢?這里,我們采用和方法2類似的方法,將設備組的單體操作程序放在自動程序和真正單體設備的操作程序之間,這樣就可以即進行設備組的單體操作,也可以進行真正單體設備的操作,也就是說,真正單體設備的操作優(yōu)先級最高,其次是設備組單體設備,最后才是自動控制程序。當然如果不嫌麻煩,也可以用方法1的方式來實現(xiàn)。
需要指出的是,對于設備組的功能,多次使用時,用子程序的方式來實現(xiàn)是最理想的。
最后,我們可以此類推,把整個工廠控制設備當作一個設備組來考慮,也可以為其提供手動自動切換的功能。
目前,在國內的生產企業(yè)的PLC自動化系統(tǒng)的新建或改造項目中,用戶對設備的手動操作和自動控制功能都十分重視,尤其是對手動操作功能格外的重視,對此的一般解釋為“國內設備質量不過關”,設備經常出現(xiàn)問題,需要在自動控制的過程中進行手動操作,或者也有說要在手動操作時,進行自動控制操作的。但是對于一個完善的控制程序來講,實現(xiàn)設備手動操作和自動控制功能及其兩者的切換,不僅是可實現(xiàn)的也是應該實現(xiàn)的。如果說有不足的話,那就是,加入手動操作功能后,控制程序占用的內存增加了,掃描周期增長了,需要考慮的問題也增多了。但這也未必真的就是一個問題,畢竟現(xiàn)在的PLC 的執(zhí)行速度是很快的而且內存也大大增加了。