劉進鵬,陸生鮮,張 明,李崇山
(1.慶陽新莊煤業(yè)有限公司新莊煤礦,甘肅 慶陽 745000;2.桂林理工大學 南寧分校,廣西 南寧 530001)
近年來,國家不斷推動職業(yè)教育的高質(zhì)量、高水平建設,由于職業(yè)高等教育的在校生數(shù)量持續(xù)上升,國內(nèi)不少院校存在教學設備不能適應要求的問題。尤其是在實驗設備方面:(1)科學技術發(fā)展迅速導致各種技術更新迭代較快,學校無法及時將最新的實驗設備用于實際教學中[1]。以西門子PLC為例,目前,大部分高校都是以SIMATIC S7-200為基礎進行教學任務,但隨著TIA Portal的高度集成化,并受到各大中小企業(yè)工程師的青睞,SIMATIC S7-1200/1500以及TIA Portal平臺兼容的其他自動化產(chǎn)品在企業(yè)項目中運用會更加廣泛。(2)由于使用人數(shù)較多導致實驗設備使用頻率高,造成設備損耗,從而增加了成本[2]。在學生進行電氣接線和程序調(diào)試的時候,會出現(xiàn)接線錯誤或者程序邏輯不合理的情況,從而引起的實驗設備故障或者造成安全事故。其三,實驗設備數(shù)量有限,在實際教學環(huán)節(jié)中存在局限性。因為每個專業(yè)的人數(shù)較多,在需要使用實驗設備時,除了錯峰使用外就是劃分小組。這種辦法有助于加強同學之間的團結(jié)協(xié)作能力,但是無法鍛煉學生單獨解決問題的能力。其四,由于試驗室的硬件設備條件限制,學生們在實際調(diào)試操作過程中,往往只能使用已有的PLC或?qū)嶒炘O備中的開關按鈕,手動模擬傳感器元件所給出的各類輸入信息和狀態(tài)變化,或使用指示燈、繼電器等機械模擬控制對象的部分動作狀況,無法真實有效的檢驗所設計的控制系統(tǒng)能否滿足實際設計需要。
針對以上問題提出利用PLC虛擬仿真軟件Factory I0來搭建工業(yè)現(xiàn)場場景,應用此方法不僅可以彌補PLC課程教學設備的不足,還能更直觀地顯示PLC以及其他傳感器的動作狀態(tài)[3]。更主要的是可以用有限的實驗設備實現(xiàn)PLC實驗教學,能夠有效地解決由于實驗設備不足和無法支持最新技術造成的問題,從而達到豐富教學內(nèi)容、增強實驗教學效果的目的,為學生學習PLC技術提供了便利。
Factory IO是一個包含了工業(yè)系統(tǒng)搭建、PLC編程、PLC控制系統(tǒng)調(diào)試等功能的綜合性軟件。它相當于一個實時自動化沙盒,它具有逼真的仿真環(huán)境,用戶可以根據(jù)自身的需求簡單快捷地搭建模擬工業(yè)系統(tǒng)。
Factory IO可通過IO驅(qū)動程序與外部軟件或硬件實現(xiàn)通信。Factory IO構建的任何系統(tǒng)都可由外接技術、軟件和硬件實時控制。它包含20多個即用型場景及豐富的工業(yè)零件庫(包括傳感器、輸送機、電梯、工作站等)[4]。
以基于PLC的立體倉庫堆垛機控制與監(jiān)控系統(tǒng)設計為例,將PLC控制、HMI技術與Factory IO相結(jié)合,進一步展示PLC在工業(yè)場景下的運行狀態(tài)。立體倉庫堆垛機控制與監(jiān)控系統(tǒng)實現(xiàn)的主要功能如下:
(1)將巷道口中的貨物送到指庫位(入庫);
(2)將某個指定庫位的貨物取出(出庫);
(3)將某個庫位的貨物送到另一個指定的庫位(移庫);
(4)監(jiān)控系統(tǒng)設計部分需包含庫位狀態(tài)顯示、故障報警等信息展示;
(5)控制系統(tǒng)應當有手動和自動兩種作業(yè)方式。
立體倉庫堆垛機控制與監(jiān)控系統(tǒng)實現(xiàn)的主要工作原理為:當作業(yè)人員使用觸摸屏向控制單元發(fā)出作業(yè)指令時,控制單元會結(jié)合實際情況做出是否執(zhí)行該指令的判斷,例如,當作業(yè)人員下達移庫模指令,但是操作庫位處于無貨狀態(tài)或者目標庫位處于有貨狀態(tài),又或者操作庫位和目標庫位都處于有貨狀態(tài),此時,該指令將不會被執(zhí)行。只有在操作庫位處于有貨狀態(tài)且目標貨位處于無貨狀態(tài),該指令才會被控制單元執(zhí)行,控制單元會控制驅(qū)動單元驅(qū)動電機制動單元,帶動機械單元實現(xiàn)入庫、出庫或者移庫作業(yè)。
系統(tǒng)在上電過后自動進入初始化狀態(tài),此時會進入堆垛機運行方式選擇,當執(zhí)行完成選擇的任務時,此時,會將堆垛機狀態(tài)信息反饋至上位機并回到原點。立體倉庫堆垛機控制系統(tǒng)總流程圖如圖1所示。
圖1 立體倉庫堆垛機控制系統(tǒng)總流程圖
立體倉庫堆垛機的總體場景搭建要盡可能地貼合實際,充分利用Factory IO中已經(jīng)預設的場景,可以減少搭建立體倉庫堆垛機模型的困難。在Factory IO的“元件盒”中選擇搭建該場景需要用到的元件模型,將這些元件模型的擺放位置、尺寸大小及角度等合理規(guī)劃即可。為了便于區(qū)分各個傳感器和執(zhí)行器,需要按照要求對其重命名。
本研究搭建的立體倉庫場景主要包括庫位主體(54個庫位)、堆垛機、上料皮帶、下料皮帶、發(fā)料器、消料器和操作站。立體倉庫堆垛機場景圖如圖2所示。
圖2 立體倉庫堆垛機場景圖
2.2.1 Factory IO仿真軟件系統(tǒng)配置
為了保證PLC程序的順利執(zhí)行,在進行通信之前必須進行I/O的連接,將已經(jīng)編輯好的信號接口連接到CPU對應的輸入/輸出點,只要從Factory IO的配置設置中用鼠標將其拖拽至相對應的I/O即可[3]。
在PLC程序編程結(jié)束、HMI開發(fā)完成及立體倉庫模擬場景搭建好以后,接下來就是要實現(xiàn)Factory IO與PLC的通信功能,實際上就是與S7-1200仿真器S7-PLCSIM的通信。在此有兩個細節(jié)是特別要注意的,不然就會導致通信不成功。第一就是Factory IO和TIA Portal V17的打開方式必須是“以管理員的身份打開”,第二就是在程序中要含有Factory IO官方提供的“西門子博途工程模版”,兩者缺一不可。
在TIA Portal V17中需要進行的操作主要是配置以太網(wǎng),允許來自遠程對象的PUT_GET通信訪問,接著將程序編譯、下載,最后就是啟動S7-PLCSIM。具體設置方法如下:
(1)在場景所在的頁面狀態(tài)下,按下“F4”鍵進入“驅(qū)動”配置界面,在“驅(qū)動”樹形圖中選擇“Siemens S7-PLCSIM”,PLC類型選擇S7-1200,連接方式選擇自動連接,其他項選擇默認即可;
(2)返回到“驅(qū)動”界面,當“Siemens S7-PLCSIM”右邊出現(xiàn)綠色的“■”時(S7-PLCSIM已啟動)就說明已經(jīng)通信成功。
2.2.2 立體倉庫堆垛機控制與監(jiān)控系統(tǒng)PLC控制程序設計
采用的PLC型號是SIMATIC S7-1200 1214C DC/DC/DC,PLC程序采用結(jié)構化編程,首先建立組織塊OB1用來存放“西門子博途工程模版”。DB數(shù)據(jù)塊用來存放程序數(shù)據(jù)和一些中間變量,其中DB-1和DB-2局部有效,DB-3中的數(shù)據(jù)全局有效。而FB(函數(shù))塊是控制系統(tǒng)的功能,最后在OB123中調(diào)用。
為了能順利地完成控制程序的撰寫,首要的就是要清楚每一個環(huán)節(jié)的運動特點,把連續(xù)的運動進行拆分并且邏輯化。以一個手動存貨的過程為例,可以把它的過程進行簡單的邏輯劃分,首先選擇控制模式為自動存貨,PLC在接收到該指令后開始動作,動作結(jié)束后回原點待機。該控制系統(tǒng)的PLC程序包括復位控制、急停暫??刂?、原點標記、判斷運行方式、移栽臺控制、設備運行三色燈指示等。部分控制程序如下圖。
圖3程序是FACTORY IO提供的標準軟件庫,本質(zhì)上是一個通信樣板,功能就是實現(xiàn)FACTORY IO和TIA Portal的輔助通信,單獨放在OB1中即可。
圖3 西門子博圖工程模板程序
圖4的程序是復位操作,實現(xiàn)的功能就是將所有的控制步清零。
圖4 復位控制程序
圖5的程序是急停和暫??刂?,在需要的時候停掉上料傳送帶和上料電機。
圖5 急停和暫??刂瞥绦?/p>
圖6的程序?qū)崿F(xiàn)的是啟動功能,當系統(tǒng)上電以后,若不選擇工作模式,直接按下啟動按鈕則進入自動存貨狀態(tài)。
圖6 啟動控制程序
圖7的程序?qū)崿F(xiàn)的功能就是對當前運行模式的判斷,將運行模式進行定義,0為存料模式,1為取料模式,2為移庫模式。通過不同的模式跳轉(zhuǎn)不同的流程控制步,例如當模式選擇為取料模式時,上料傳送帶無需運行,伸縮貨叉也無需伸出到位取傳送帶的貨物,載貨臺直接運行到指定的取料位置即可。
圖7 判斷本次運行模式程序
圖8的程序的功能是實現(xiàn)對上料機構的控制,當堆垛機在原點等待的時候,發(fā)料器開始發(fā)料,傳送帶將貨物運送到巷道口,同時,停止發(fā)料器停止工作。
圖8 上料傳送帶控制程序
因為在貨物的存取過程中,對伸縮貨叉的控制比較頻繁,圖9的程序采用調(diào)用公共字的方法:0基本位置,1工作位置,2取料位置。
圖9 伸縮貨叉控制程序
圖10的程序?qū)崿F(xiàn)的功能是對三色燈的控制,運行時綠色燈亮,當按下急?;蛘邥和5臅r候紅色燈亮,處于等待過程中的時候黃色燈亮。
圖10 設備運行三色燈控制程序
本案例的PLC控制程序的主要控制方法就是流程步嵌套分支控制實現(xiàn)主邏輯控制,將伸縮貨叉在不同的模式下的動作情況進行分解控制。在對庫內(nèi)貨物狀況展示控制采用IF語句的嵌套判斷,當有貨物時為“1”,當沒有貨物或者貨物被移走為“0”狀態(tài),以此來控制與庫位相對應的指示燈亮滅。
2.2.3 HMI設計
采用WinCC Comfort實現(xiàn)人機界面的開發(fā),觸摸屏型號選擇精致系列面板中的9英寸顯示屏,型號為TP 900 Comfort。以此達到對立體倉庫堆垛機的控制與監(jiān)控。
在TIA Portal V17中完成設備組態(tài)和通信后,需繼續(xù)進行以下的編輯:
(1)新建畫面
在HMI編輯狀態(tài)下,利用“新建畫面”功能,新建4個新畫面,將第一張畫面命名為“倉位監(jiān)控”并將其定義為起始頁面,其他畫面依次命名為“輸入監(jiān)控”、“輸出監(jiān)控”和“報警查詢”。
(2)畫面中控件組態(tài)
在畫面頂部添加文本框并輸入“立體倉庫堆垛機控制與監(jiān)控系統(tǒng)”,在畫面左邊添加4個按鈕,將按鈕名稱改為步驟1中的名稱,然后對各個按鈕進行“事件”設置,從而實現(xiàn)畫面切換功能。同時,設置區(qū)域指針,以便將PLC中讀出的系統(tǒng)時間同步于HMI。
在“倉位監(jiān)控”頁面中添加54個“文本域”代表54個倉位和一個I/O域。對每一個“文本域”進行建立變量連接,同時,將第一個“文本域”文本內(nèi)容改寫為“1#倉”,其余的“文本域”按照從右向左,從上往下的原則按順序進行編號。此處的I/O域需要實現(xiàn)的功能是操作模式的切換,將其設置為下拉菜單模式即可。倉位監(jiān)控界面如圖11所示。
圖11 倉位監(jiān)控界面
在“輸入監(jiān)控”頁面中添加按鈕,并將文本內(nèi)容改為控制系統(tǒng)的各個輸入信號名稱,并建立內(nèi)部變量連接,以達到能夠監(jiān)控控制系統(tǒng)各個輸入信號的狀態(tài)。
在“輸出監(jiān)控”頁面中添加按鈕,并將文本內(nèi)容改為控制系統(tǒng)的各個輸出信號名稱,并建立內(nèi)部變量連接,以達到能夠監(jiān)控控制系統(tǒng)各個輸出信號的狀態(tài)。
在“報警查詢”頁面中添加報警控件,將控件大小調(diào)整至合適頁面大小,并對“報警文本”“報警類別”和“報警觸發(fā)變量”等進行設置和連接。
(3)仿真運行
將編輯完成的畫面進行編譯下載,若出現(xiàn)編譯失敗,根據(jù)編譯結(jié)果的提示進行修改并對相關的連接變量和組態(tài)屬性檢查,直至編譯成功。
2.3.1 存貨入庫測試
在HMI界面中輸入指定的貨位時,發(fā)料器開始發(fā)料,上料皮帶將貨物運送至堆垛機的取貨位置,此時,堆垛機會將貨物取下并存到指定貨位,動作結(jié)束后,回到原點停止運行。存貨任務執(zhí)行界面如圖12所示。
圖12 存貨任務執(zhí)行界面
2.3.2 取貨出庫測試
當在HMI界面中輸入要取出貨物的貨位,堆垛機會運動到該貨位將貨物取出并送到出貨臺,動作結(jié)束后,回到原點停止運行。取貨任務執(zhí)行界面如圖13所示。
圖13 取貨任務執(zhí)行界面
2.3.3 移庫測試
移庫操作即將一個貨位的貨物取出并存放到另一個貨位,在HMI界面選擇進行移庫操作,并在彈出的窗口中選擇需要取出貨物的貨位,確認之后再輸入要將當前物品存放的貨位即可。此時,堆垛機會進行動作來完成移庫任務,結(jié)束后,堆垛機回原點并停止運行。移庫任務執(zhí)行界面如圖14所示。
圖14 移庫任務執(zhí)行界面
利用FACTORY IO搭建立體倉庫堆垛機場景,并采用WinCC Comfort軟件開發(fā)HMI,通過FACTORY IO和TIA Portal V17聯(lián)合仿真測試,立體倉庫堆垛機控制與監(jiān)控系統(tǒng)可以實現(xiàn)存貨、取貨和移庫等基本功能的虛擬仿真。但是仍存在不足之處,因為測試部分使用的是軟件模擬,和用實物測試相比較還是有差距的。所以對于在教學環(huán)節(jié)中的一些大型復雜設備可以采用虛擬仿真的方法,而一些簡單、小型設備仍以真實被控對象為主。