岸邊橋式集裝箱起重機(jī)plc程序的設(shè)計(jì)與實(shí)現(xiàn)
3. plc程序的統(tǒng)一性問題
3.1. plc程序統(tǒng)一性問題的發(fā)現(xiàn)
在岸橋的plc程序編寫完成后,我們隨即在岸橋上進(jìn)行了調(diào)試,由此發(fā)現(xiàn)了程序的統(tǒng)一性問題,該問題是這樣的:我們所進(jìn)行的這個(gè)項(xiàng)目有12臺(tái)岸橋,在岸橋上,有些數(shù)據(jù)的定義需根據(jù)現(xiàn)場(chǎng)的實(shí)際情況來(lái)定義,舉一簡(jiǎn)單的例子:
比如小車機(jī)構(gòu)位置編碼器的零位數(shù)據(jù)offset,對(duì)于調(diào)試的第一臺(tái)岸橋,我們可以很容易加以這樣定義:將小車機(jī)構(gòu)行駛到 后面的終點(diǎn)位置,讀出小車在該位置時(shí)位置編碼器的讀數(shù),以此作為小車機(jī)構(gòu)位置編碼器的零位數(shù)據(jù)offset。但我們?cè)谡{(diào)試第二臺(tái)岸橋時(shí)發(fā)現(xiàn),由于機(jī)械安裝的誤差,第二臺(tái)小車機(jī)構(gòu)行駛到 后面的終點(diǎn)位置時(shí),讀出的小車位置編碼器讀數(shù)與第一臺(tái)岸橋的數(shù)值不相同。也就是說(shuō),我們必須將第二臺(tái)岸橋的小車機(jī)構(gòu)位置編碼器的零位數(shù)據(jù)offset設(shè)置成不一樣的數(shù)據(jù)。
與此有相同問題的數(shù)據(jù)還有諸如重量傳感器的比例系數(shù),小車自動(dòng)停車時(shí)停車位置點(diǎn),俯仰機(jī)構(gòu)的上升終點(diǎn)位置等等。這些問題都產(chǎn)生了一個(gè)后果,調(diào)試結(jié)束后每臺(tái)岸橋都有對(duì)應(yīng)的plc程序,彼此之間不統(tǒng)一。
3.2. 解決plc程序統(tǒng)一性問題的分析
分析這個(gè)問題,我們?cè)O(shè)想了以下解決問題的方法:
n 我們可以增加設(shè)計(jì)這樣一段解決問題的“岸橋編號(hào)識(shí)別”程序:首先讓各臺(tái)岸橋編號(hào):比如岸橋1,岸橋2。。。。。。岸橋12,plc程序運(yùn)行“岸橋編號(hào)識(shí)別”程序來(lái)判定該岸橋的編號(hào),如果是岸橋1,“岸橋編號(hào)識(shí)別”程序就執(zhí)行將岸橋1的數(shù)據(jù)裝載到一“共用數(shù)據(jù)塊”。
“岸橋編號(hào)識(shí)別”執(zhí)行完畢后,我們所需要的數(shù)據(jù)都在這“共用數(shù)據(jù)塊”中,之后plc在程序運(yùn)行時(shí),如需要用到那些各臺(tái)岸橋有差異的數(shù)據(jù),就可以從該“共用數(shù)據(jù)塊”中讀取所需要的數(shù)據(jù)。整個(gè)過程如圖3-1所示:
圖3-1:“岸橋編號(hào)識(shí)別”程序
3.3. plc程序統(tǒng)一性問題的處理
有了以上的思路,接下來(lái)我們就著手開始解決這個(gè)plc程序統(tǒng)一性問題:
l 第一步:對(duì)岸橋進(jìn)行編號(hào):
將岸橋定義為岸橋1# 至岸橋12# ,但是如果要讓plc能夠識(shí)別這些編號(hào),那么我們必須設(shè)置輸入信號(hào)送給plc,我們利用了一個(gè)備用的輸入字節(jié)ib256來(lái)定義岸橋的編號(hào),在plc系統(tǒng)的硬件輸入上,我們按此定義對(duì)各臺(tái)岸橋接入高電平,每臺(tái)岸橋不同,如下圖3-2所示:
l 在程序中為每臺(tái)岸橋設(shè)置一個(gè)db數(shù)據(jù)塊(database),分別為db201~db212,分別對(duì)應(yīng)岸橋1~12的數(shù)據(jù),如下圖3-3所示:
圖3-3:岸橋1~12數(shù)據(jù)塊
l 編寫“岸橋編號(hào)識(shí)別”程序:創(chuàng)建一功能fc74用于處理不同岸橋編號(hào)識(shí)別,然后將對(duì)應(yīng)岸橋的數(shù)據(jù)塊db20x數(shù)據(jù)傳輸給一共用數(shù)據(jù)塊db74。如下圖3-4所示:當(dāng)岸橋編號(hào)craneid是2的時(shí)候,將岸橋2的數(shù)據(jù)塊db202的44個(gè)字節(jié)傳輸?shù)焦灿脭?shù)據(jù)塊db74中。
圖3-4:“岸橋編號(hào)識(shí)別”程序
l plc讀取共用數(shù)據(jù)塊中的數(shù)據(jù):plc可以任意讀取共用數(shù)據(jù)塊中的數(shù)據(jù),該數(shù)據(jù)就是對(duì)應(yīng)相應(yīng)岸橋的數(shù)據(jù),如下圖3-5所示程序:
圖3-5:讀取“共用數(shù)據(jù)塊db74”數(shù)據(jù)程序
由此,我們通過程序的修改完全解決了plc程序統(tǒng)一性的問題,使該plc程序更加完善,可靠。