|

圖2-7:岸橋主要機構對應功能FC
這些功能FC的作用如下:
l FB22 起升/大車1#變頻器PROFIBUS總線數據傳輸
l FB23 起升/大車2#變頻器PROFIBUS總線數據傳輸
l FB24 小車/俯仰變頻器PROFIBUS總線數據傳輸
l FC31 起升運行控製
l FC41 大車運行控製
l FC51 小車運行控製
l FC61 俯仰運行控製
在岸橋上還有一些輔助機構需由PLC程序來控製。這些功能FC如下圖2-8所示:

圖2-8:輔助機構控製
這些功能FC的作用如下:
l FC12 投光燈,空調的啟動,停止控製。
l FC13 風速處理:當風速達到警報值時發出信號。
l FC16 指示燈顯示:控製各個操作站的指示燈。
l FC34 起升編碼器位置處理:判斷起升上下的停止,減速位置等。
l FC36 負載重量處理:判斷負載是否超過額定。
l FC54 小車編碼器位置處理:判斷小車前後的停止,減速位置等。
l FC63 俯仰編碼器位置處理:判斷俯仰上下的停止,減速位置等。
l FC71 吊具控製:吊具在起吊集裝箱時的控製,如吊具鎖頭的開閉功能
結合岸橋主要機構,輔助機構控製的功能FC,以及PROFIBUS總線通訊數據傳輸的功能塊FB等,完成了岸橋PLC程序的設計。
3 PLC程序統一性問題
3.1.1 PLC程序統一性問題的發現
在岸橋的PLC程序編寫完成後,我們隨即在岸橋上進行了調試,由此發現了程序的統一性問題,該問題是這樣的:我們所進行的這個項目有12台岸橋,在岸橋上,有些數據的定義需根據現場的實際情況來定義,舉一簡單的例子:
比如小車機構位置編碼器的零位數據OFFSET,對於調試的第一台岸橋,我們可以很容易加以這樣定義:將小車機構行駛到最後麵的終點位置,讀出小車在該位置時位置編碼器的讀數,以此作為小車機構位置編碼器的零位數據OFFSET。但(dan)我(wo)們(men)在(zai)調(tiao)試(shi)第(di)二(er)台(tai)岸(an)橋(qiao)時(shi)發(fa)現(xian),由(you)於(yu)機(ji)械(xie)安(an)裝(zhuang)的(de)誤(wu)差(cha),第(di)二(er)台(tai)小(xiao)車(che)機(ji)構(gou)行(xing)駛(shi)到(dao)最(zui)後(hou)麵(mian)的(de)終(zhong)點(dian)位(wei)置(zhi)時(shi),讀(du)出(chu)的(de)小(xiao)車(che)位(wei)置(zhi)編(bian)碼(ma)器(qi)讀(du)數(shu)與(yu)第(di)一(yi)台(tai)岸(an)橋(qiao)的(de)數(shu)值(zhi)不(bu)相(xiang)同(tong)。也(ye)就(jiu)是(shi)說(shuo),我(wo)們(men)必(bi)須(xu)將(jiang)第(di)二(er)台(tai)岸(an)橋(qiao)的(de)小(xiao)車(che)機(ji)構(gou)位(wei)置(zhi)編(bian)碼(ma)器(qi)的(de)零(ling)位(wei)數(shu)據(ju)OFFSET設置成不一樣的數據。
yuciyouxiangtongwentideshujuhaiyouzhuruzhongliangchuanganqidebilixishu,xiaochezidongtingcheshitingcheweizhidian,fuyangjigoudeshangshengzhongdianweizhidengdeng。zhexiewentidouchanshengleyigehouguo,tiaoshijieshuhoumeitaianqiaodouyouduiyingdePLC程序,彼此之間不統一。
分析這個問題,我們設想了以下解決問題的方法:
n 我們可以增加設計這樣一段解決問題的“岸橋編號識別”程序:首先, 讓各台岸橋編號:比如岸橋1,岸橋2。。。。。。岸橋12,PLC程序運行“岸橋編號識別”程序來判定該岸橋的編號,如果是岸橋1,“岸橋編號識別”程序就執行將岸橋1的數據裝載到一“共用數據塊”。
“岸橋編號識別”執行完畢後,我們所需要的數據都在這“共用數據塊”中,之後PLC在程序運行時,如需要用到那些各台岸橋有差異的數據,就可以從該“共用數據塊”中讀取所需要的數據。整個過程如圖3-1所示:

圖3-1:“岸橋編號識別”程序
有了以上的思路,接下來我們就著手開始解決這個PLC程序統一性問題:
l 第一步:對岸橋進行編號:
將岸橋定義為岸橋1# 至岸橋12# ,但是如果要讓PLC能夠識別這些編號,那麼我們必須設置輸入信號送給PLC,我們利用了一個備用的輸入字節IB256來定義岸橋的編號,在PLC係統的硬件輸入上,我們按此定義對各台岸橋接入高電平,每台岸橋不同,如下圖3-2所示:

|
位(BIT)
岸橋編號 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
岸橋1# |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
|
岸橋2# |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
|
岸橋3# |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
|
岸橋4# |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
|
岸橋5# |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
|
岸橋6# |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
|
岸橋7# |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
|
岸橋8# |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
|
岸橋9# |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
|
岸橋10# |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
|
岸橋11# |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
|
岸橋12# |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
圖3-2:對岸橋進行編號
l 在程序中為每台岸橋設置一個DB數據塊(DATABASE),分別為DB201~DB212,分別對應岸橋1~12的數據,如下圖3-3所示:

圖3-3:岸橋1~12數據塊
l 編寫“岸橋編號識別”程序:創建一功能FC74用於處理不同岸橋編號識別,然後將對應岸橋的數據塊DB20X數據傳輸給一共用數據塊DB74。如下圖3-4所示:當岸橋編號CRANEID是2的時候,將岸橋2的數據塊DB202的44個字節傳輸到共用數據塊DB74中。

圖3-4:“岸橋編號識別”程序
l PLC讀取共用數據塊中的數據:PLC可以任意讀取共用數據塊中的數據,該數據就是對應相應岸橋的數據,如下圖3-5所示程序:

圖3-5:讀取“共用數據塊DB74”數據程序
由此,我們通過程序的修改完全解決了PLC程序統一性的問題,使該PLC程序更加完善,可靠。
4.應用與結果分析
我們將該PLC程序應用於外高橋四期集裝箱碼頭前六台岸橋設備(整個項目共十二台)六(liu)台(tai)岸(an)橋(qiao)開(kai)始(shi)投(tou)入(ru)使(shi)用(yong)並(bing)成(cheng)功(gong)地(di)使(shi)用(yong)至(zhi)今(jin),根(gen)據(ju)碼(ma)頭(tou)工(gong)程(cheng)部(bu)工(gong)程(cheng)師(shi)的(de)反(fan)映(ying),該(gai)程(cheng)序(xu)運(yun)行(xing)得(de)非(fei)常(chang)可(ke)靠(kao),從(cong)未(wei)出(chu)現(xian)過(guo)由(you)於(yu)程(cheng)序(xu)原(yuan)因(yin)造(zao)成(cheng)的(de)故(gu)障(zhang),而(er)且(qie)整(zheng)個(ge)程(cheng)序(xu)運(yun)行(xing)速(su)度(du)快(kuai),思(si)路(lu)清(qing)晰(xi),易(yi)於(yu)理(li)解(jie),變(bian)量(liang)名(ming)通(tong)俗(su)易(yi)記(ji),對(dui)岸(an)橋(qiao)的(de)監(jian)控(kong),故(gu)障(zhang)查(zha)詢(xun)方(fang)便(bian)。同(tong)時(shi),由(you)碼(ma)頭(tou)合(he)資(zi)方(fang)馬(ma)士(shi)基(ji)船(chuan)務(wu)公(gong)司(si)聘(pin)請(qing)的(de)外(wai)方(fang)谘(zi)詢(xun)公(gong)司(si)對(dui)該(gai)程(cheng)序(xu)也(ye)進(jin)行(xing)了(le)鑒(jian)定(ding)並(bing)予(yu)以(yi)肯(ken)定(ding)。
在本程序的開發設計和實現中,我們也參考比較了GE,ABB等一些著名電控供應商的岸橋PLC程序:相比而言,我們的PLC程序有如下優點:
l 合理地采用主程序調用子程序的結構,這樣的好處是:
n 整個程序思路清晰:各個主要機構的控製,各個輔助機構的控製,都有相應的子程序,即功能FC來實現。最終這些功能FC在主程序OB1中調用。
n 對岸橋的監控方便,快捷:用戶如果想查找到監控的某一裝置,比如需查看指示燈,那隻要找到“指示燈”這一功能FC,將其打開,不用花很多時間就能找到,大大縮短了查找時間。
l zhenggechengxudebianliangmingcaiyongsuoxie,tongsuyidong,jiashangbianliangfudaidezhushi,fangbianlematougongchengrenyuanduichengxudezhangwo,erqiegongchengrenyuanhenrongyijizhuyixiechangyongdebianliangming,ruqishengshangshengyunxudebianliangmingshiHUPPRM是HOIST UP PERMIT的縮寫,在熟悉了變量名後,可利用PLC軟件SIMATIC MANAGER自帶的查找功能(GO TO LOCATION),很快找到該變量對應的程序行,進一步縮短查找時間。
l 程序的編寫采用PLC特有的“梯形圖”語言,十分直觀。“梯形圖”語言是一種類型繼電器圖紙表示方法的語言,對電氣工程技術人員來說具有親切感,看程序就象查看原理圖一樣,更容易理解。
l 整個程序簡潔,實用,使用嵌套少。在程序編寫思想上較多地考慮利於用戶監控, 查找與理解,而不是單純從我們怎樣編寫方便的角度出發。
|