陳 銳
(汕頭超聲印制板公司, 廣東 汕頭 515041)
PCB行業(yè)智能制造是大勢(shì)所趨,PCB企業(yè)都在摸索實(shí)踐中積累經(jīng)驗(yàn)快速前行,基于設(shè)備的智能化應(yīng)用也在工廠內(nèi)遍地開花,生產(chǎn)效率也因此得到大幅提升。但是對(duì)于工廠舊設(shè)備來說,設(shè)備智能化應(yīng)用卻四處受阻,例如對(duì)于垂直電鍍線等自動(dòng)化設(shè)備來說,由于其上位機(jī)監(jiān)控系統(tǒng)是早期設(shè)計(jì)產(chǎn)品,本身功能受限難以擴(kuò)展?jié)M足需求,基于網(wǎng)絡(luò)的智能化應(yīng)用也無法開展,生產(chǎn)效率難以提升,嚴(yán)重阻礙了工廠智能化建設(shè)的推進(jìn)。
早期的設(shè)備上位機(jī)監(jiān)控系統(tǒng)本質(zhì)上是一個(gè)獨(dú)立于現(xiàn)場(chǎng)設(shè)備數(shù)據(jù)采集監(jiān)控系統(tǒng),主要功能是完成現(xiàn)場(chǎng)的人機(jī)交互。但在物聯(lián)網(wǎng)和大數(shù)據(jù)飛速發(fā)展的今天,設(shè)備上位機(jī)系統(tǒng)已被賦予了更多的功能和作用,包括基于物聯(lián)網(wǎng)和大數(shù)據(jù)而產(chǎn)生的各類智能化應(yīng)用。文章通過對(duì)垂直電鍍線PLC控制系統(tǒng)的控制原理和人機(jī)交互操作方法進(jìn)行深入研究,在大數(shù)據(jù)、物聯(lián)網(wǎng)理念框架的指引下,將IT技術(shù)和工控技術(shù)融合應(yīng)用,重新定制開發(fā)上位機(jī)監(jiān)控系統(tǒng)并實(shí)施智能化改造,讓上位機(jī)系統(tǒng)在現(xiàn)場(chǎng)發(fā)揮智能化先鋒節(jié)點(diǎn)的作用,有效地解決了設(shè)備數(shù)據(jù)取不出來、傳不進(jìn)去、遠(yuǎn)程交互受阻、智能化應(yīng)用難以實(shí)施的問題,打開了舊設(shè)備智能化應(yīng)用的新思路。
上位機(jī)是相對(duì)下位機(jī)而言,它們之間是相對(duì)的概念,對(duì)應(yīng)硬件來說,上位機(jī)一般是指計(jì)算機(jī),下位機(jī)一般是指PLC(或單片機(jī)),它們之間是主從關(guān)系,上位是控制端,下位機(jī)是受控端,通訊連接結(jié)構(gòu)見圖1所示。在工控現(xiàn)場(chǎng),上位機(jī)起到人機(jī)界面(HMI)的作用,用戶可以通過上位機(jī)來了解設(shè)備狀態(tài)和操控設(shè)備。簡單來說,上位機(jī)的作用是監(jiān)控現(xiàn)場(chǎng)設(shè)備的運(yùn)行狀態(tài),如溫度、電流、壓力、液位等數(shù)據(jù),對(duì)于電鍍線來說,這些數(shù)據(jù)包括料號(hào)、電流、溫度、上下料記錄等。
圖1 通訊連接結(jié)構(gòu)
在傳統(tǒng)工業(yè)時(shí)代,上位機(jī)的功能就是監(jiān)控現(xiàn)場(chǎng)設(shè)備狀態(tài),實(shí)現(xiàn)現(xiàn)場(chǎng)人機(jī)交互,它的作用局限于現(xiàn)場(chǎng)。但是在智能制造時(shí)代。隨著物聯(lián)網(wǎng)和大數(shù)據(jù)的興起,上位機(jī)除了完成現(xiàn)場(chǎng)監(jiān)控職能外,還需擔(dān)當(dāng)起遠(yuǎn)程交互功能,簡單來說,就是讓現(xiàn)場(chǎng)數(shù)據(jù)能傳出去,遠(yuǎn)程數(shù)據(jù)能取進(jìn)來,利用物聯(lián)網(wǎng)絡(luò)實(shí)現(xiàn)更加自動(dòng)化和智能化的應(yīng)用。
對(duì)舊設(shè)備上位機(jī)的智能化改造就是要擴(kuò)展上位機(jī)的現(xiàn)場(chǎng)監(jiān)控功能,在遠(yuǎn)程網(wǎng)絡(luò)大數(shù)據(jù)和現(xiàn)場(chǎng)PLC之間架起一座橋梁,打通由上至下的數(shù)據(jù)通道,將現(xiàn)場(chǎng)設(shè)備融入智能監(jiān)控網(wǎng)絡(luò)中,為工廠設(shè)備智能化應(yīng)用的開展打下基礎(chǔ)。
系統(tǒng)的整體架構(gòu)如圖2所示。上位機(jī)一端連接PLC,完成現(xiàn)場(chǎng)設(shè)備的監(jiān)控功能;另一端通過物聯(lián)網(wǎng)連接數(shù)據(jù)中心,完成數(shù)據(jù)的遠(yuǎn)程交互。數(shù)據(jù)中心就是網(wǎng)絡(luò)數(shù)據(jù)庫,可以是MES系統(tǒng)或EPR系統(tǒng),也可以是獨(dú)立數(shù)據(jù)庫。上位機(jī)可以將采集PLC端的數(shù)據(jù)并在現(xiàn)場(chǎng)顯示屏上展示出來;可以將采集處理后的數(shù)據(jù)直接存儲(chǔ)到遠(yuǎn)端數(shù)據(jù)中心;可以快速響應(yīng)現(xiàn)場(chǎng)用戶需求,將用戶錄入的數(shù)據(jù)寫入PLC,或者將遠(yuǎn)端數(shù)據(jù)中心服務(wù)器的數(shù)據(jù)取出來并寫入到PLC,成為底層和上層連接的橋梁。
圖2 系統(tǒng)架構(gòu)
考慮到生產(chǎn)現(xiàn)場(chǎng)的環(huán)境惡劣,上位機(jī)硬件方面可以選擇性能可靠的品牌工控機(jī),環(huán)境好的現(xiàn)場(chǎng)也可以選擇品牌PC,主機(jī)穩(wěn)定性很重要。
上位機(jī)和PLC之間的通訊電纜連接需要根據(jù)雙方的接口不同和距離來選擇。如果PLC端有網(wǎng)絡(luò)接口,則可以不受距離限制通過網(wǎng)絡(luò)連接;如果PLC端是串口,近距離的話可以直接使用通訊電纜連接,如果距離遠(yuǎn)的話,可以通過串口轉(zhuǎn)網(wǎng)口模塊中轉(zhuǎn)來實(shí)現(xiàn)遠(yuǎn)距離連接。本次改造設(shè)備端使用的是歐姆龍PLC,網(wǎng)絡(luò)通信模塊為CS1WETN021,通信接口為RJ45網(wǎng)口,因此可通過網(wǎng)絡(luò)實(shí)現(xiàn)連接。
上位機(jī)監(jiān)控軟件本質(zhì)上是對(duì)PLC寄存器的讀寫操作,所以在軟件開發(fā)前一定要準(zhǔn)備一份詳細(xì)的PLC寄存器清單,包括生產(chǎn)料號(hào)、板件資料、吊車運(yùn)轉(zhuǎn)狀態(tài)、設(shè)定/實(shí)際電流、各缸處理時(shí)間等等寄存器的DM地址、數(shù)量和數(shù)據(jù)存儲(chǔ)格式,如圖3(歐姆龍PLC寄存器地址清單載圖)所示。
電鍍線狀態(tài)和參數(shù)的寄存器地址可以從設(shè)備供應(yīng)商處獲取,如果設(shè)備供應(yīng)商無法提供,就只能自行抓取,可采用PLC程序解讀和在現(xiàn)場(chǎng)觀察PLC DM數(shù)據(jù)變化相相結(jié)合的方式,需要花點(diǎn)時(shí)間和耐心。如果技術(shù)條件的允許的話,也可以自行升級(jí)PLC控制系統(tǒng),包括PLC硬件和PLC的程序,這樣可自由定義PLC寄存器地址、數(shù)據(jù)內(nèi)容和數(shù)據(jù)格式,但這種做法工程較大,需要有充足的改造調(diào)試時(shí)間和事前準(zhǔn)備。
2.4.1 PLC數(shù)據(jù)讀寫
讀寫PLC寄存器數(shù)據(jù)是上位機(jī)軟件開發(fā)最關(guān)鍵的一步,PLC數(shù)據(jù)讀寫方法有很多種,可以借助第三方工具軟件,如PC端組態(tài)軟件、KepServer、PLC通訊庫文件等,考慮后續(xù)數(shù)據(jù)處理的方便性和功能擴(kuò)展的靈活性,本次改造是借助歐姆龍PLC通訊庫來實(shí)現(xiàn)PLC數(shù)據(jù)讀寫,使用的是C#高級(jí)語言。
使用PLC通訊動(dòng)態(tài)鏈接庫,可以幫助開發(fā)者使用更少的代碼來實(shí)現(xiàn)PLC數(shù)據(jù)的讀寫需求,把復(fù)雜的底層通訊交給通訊庫,將更多的時(shí)間用在業(yè)務(wù)層面的開發(fā)上。PLC通訊庫可使用官方的、非官方的、開源的或付費(fèi)版的,借助通訊庫,開發(fā)者可以使用API函數(shù)輕松地完成PLC數(shù)據(jù)的讀寫操作。
2.4.2 軟件設(shè)計(jì)
上位機(jī)軟件的設(shè)計(jì)可以分為四大部分,一是遠(yuǎn)程讀取,即常說的下載設(shè)備配方數(shù)據(jù),對(duì)于電鍍線來說,通常是讀取整流機(jī)電流數(shù)據(jù)等。二是遠(yuǎn)程存儲(chǔ),即將設(shè)備狀態(tài)參數(shù)和生產(chǎn)過程數(shù)據(jù)存儲(chǔ)到遠(yuǎn)程數(shù)據(jù)中心供其他系統(tǒng)共享。三是人機(jī)交互,即制作用戶操作界面,實(shí)現(xiàn)人機(jī)對(duì)話。四是現(xiàn)場(chǎng)監(jiān)控,即通過讀寫PLC寄存器參數(shù)實(shí)現(xiàn)操控設(shè)備的目的。
程序編寫時(shí),主程序可用于電鍍界面狀態(tài)的實(shí)時(shí)顯示,通過事件驅(qū)動(dòng)的方式來完成用戶交互和特定操作,使用多線程技術(shù)讀取PLC數(shù)據(jù),即單獨(dú)開一個(gè)線程來不間斷循環(huán)讀取PLC數(shù)據(jù)。
遠(yuǎn)程數(shù)據(jù)庫可使用SQL SERVER關(guān)系數(shù)據(jù)庫,用于存儲(chǔ)上下料記錄、電流記錄、故障記錄等信息。人機(jī)交互方面,可使用掃碼輸入為主、鍵盤輸入為輔的方式,掃二維碼輸入比手工輸入更加快速可靠。如對(duì)于上板資料寫入操作,可通過生產(chǎn)料號(hào)直接從遠(yuǎn)程數(shù)據(jù)庫中獲取板件面積、密度、電鍍時(shí)間、板件尺寸等數(shù)據(jù),然后再要根據(jù)實(shí)際上料情況,通過鍵盤錄入板件數(shù)量、邊條數(shù)量等現(xiàn)場(chǎng)動(dòng)態(tài)數(shù)據(jù),設(shè)定電流值可由軟件自動(dòng)計(jì)算生成,最后再寫入PLC,將上板資料的寫入過程做到最簡化、自動(dòng)化,減少不必要的手工操作環(huán)節(jié),避免手工錄錯(cuò)和計(jì)算失誤,上板資料錄入操作界面見圖4所示。
軟件主監(jiān)控界面的編寫在滿足用戶需求的同時(shí),應(yīng)盡可能做到精簡易懂,一目了然,關(guān)鍵區(qū)域和報(bào)警數(shù)據(jù)可用不同的底色和字體顏色來區(qū)分,可通過頂部菜單或數(shù)據(jù)區(qū)的快捷方式打開新的操作界面,盡可能做到通過一次點(diǎn)擊就可以進(jìn)入所需操作界面,不要設(shè)置太多層級(jí),見圖5所示。
電流歷史曲線查詢顯示可以使用曲線控件(如TeeChart等)來實(shí)現(xiàn),增加按缸號(hào)和時(shí)間查詢歷史電流曲線的功能,可參考圖6所示。
圖3 歐姆龍PLC寄存器地址清單
圖4 上板資料錄入頁圖
圖5 主監(jiān)控界面圖
定制開發(fā)的上位機(jī)軟件的好處就是功能靈活可控,即可在使用過程持收集用戶反饋信息和新需求并及時(shí)進(jìn)行功能優(yōu)化或功能升級(jí),讓軟件發(fā)揮出最大的效用。小步快跑,快速迭代這是推動(dòng)系統(tǒng)實(shí)現(xiàn)自動(dòng)化、智能化功能的關(guān)鍵,否則將會(huì)被軟件功能束縛住前進(jìn)的步伐,再多的網(wǎng)絡(luò)數(shù)據(jù)資源都無法利用,再好的智能化應(yīng)用都難以開展實(shí)施。
對(duì)于自動(dòng)化設(shè)備來說,無論新舊,上位機(jī)軟件功能不應(yīng)該自我設(shè)限。對(duì)于舊設(shè)備,上位機(jī)軟件升級(jí)改造是提升系統(tǒng)效用的最好方法;對(duì)于新進(jìn)設(shè)備,如何確保軟件功能可以和需求同步更新是需要重點(diǎn)關(guān)注的,如軟件本身支持二次開發(fā)、要求設(shè)備供應(yīng)商提供定期升級(jí)服務(wù)等。
對(duì)于工廠早期電鍍線來說,原有上位機(jī)監(jiān)控系統(tǒng)的功能已跟不上智能制造發(fā)展的步伐,生產(chǎn)管理中更多更好的需求在原有的基礎(chǔ)上都難以實(shí)現(xiàn),最徹底的解決辦法就是對(duì)現(xiàn)有的上位機(jī)系統(tǒng)進(jìn)行智能化升級(jí)改造,借助物聯(lián)網(wǎng)絡(luò)和大數(shù)據(jù)重新定制開發(fā)上位機(jī)軟件,為上位機(jī)賦予更多更好的功能,開發(fā)更多的智能化應(yīng)用,做到操作最簡化、效率最大化。經(jīng)實(shí)踐證明,該做法是確實(shí)可行的,不僅可應(yīng)用于電鍍線,還可應(yīng)用到其他自動(dòng)化生產(chǎn)線,可有效推動(dòng)底層設(shè)備的智能化應(yīng)用,將對(duì)工廠智能化建設(shè)的推進(jìn)起到至關(guān)重要的作用。