一般來講,機床的控制環節由兩部分組成:一是由CNC控制的刀具運動軌跡,即位移控制;二是由可編程邏輯控制器(PLC)順序控制的機床各輔助功能。這些功能主要包括MST代碼的順序動作的執行、機床外圍設備的控制、以及機床報警信息的處理等等,其中機床外圍設備的控制信息主要是指數控系統PLC設備的輸入信息和輸出信息,即I/O信息。IO設備作為機床重要的數據接口,主要負責數據的輸入和輸出,是實現機床PLC信號采集和控制指令重要的窗口。
海德漢數控系統在狀態信息監控表中有專門的輸入和輸出信號狀態表,為制造商和最終用戶提供了獲取實際IO點信息的渠道。每個具體的IO狀態信息的獲取,常規的操作步驟是:首先通過翻閱對應機床的電氣原理圖,查找到準確的I點或O點;再通過輸入特定密碼進入到IO表格中去搜索具體的地址;最后獲取到目標點的狀態信息。整個操作較為繁瑣,需要熟識機床電氣原理圖,并且要求操作人員對海德漢數控系統有較高的認知技能水平。為了降低查詢操作難度,提升機床設備的友好性及服務效率,通過海德漢數控系統高度兼容的Python編程語言開發了可視化的IO狀態監控界面。
海德漢數控系統IO模塊和狀態信息查詢
海德漢數控系統的PL模塊,由PLB620x或PLB610x 基本模塊和I/O模塊組成, I/O模塊又分為數字量I/O模塊和模擬量I/O模塊,常用的I/O模塊如圖1所示。
圖1 海德漢數控系統IO模塊硬件
海德漢數控系統界面中,用戶需要輸入特定密碼后獲得PLC查看權限,然后在TABLE界面中看到Input界面及Output界面,如圖2、圖3所示。
圖2 海德漢數控系統Input界面
圖3 海德漢數控系統Output界面
從機床標準界面中查詢到具體某個信號的狀態比較復雜,雖然可以通過光標移動或者GOTO按鍵跳轉到具體搜尋的點位上,但也只能看到該點位的英文備注,不僅不直觀,還需要操作人員具備較高的英語技能及查閱電氣圖紙的能力,給實際操作、設備調試和設備檢修造成很多不便,耽誤了時間。
界面設計
數據可視化這個理念,主要旨在借助于圖形化手段,清晰有效地傳達與溝通信息。通過將抽象的數字信號,轉化為形象的圖像信號,能更加直觀地反映圖像背后所傳達的信息。隨著中國制造2025的推進,工業制造領域對于無紙化裝配、數據可視化的要求也越來越高。
為此,我們采取使用海德漢二次開發的方案,設計一個簡單易懂的可視化IO狀態界面。海德漢數控系統支持Python語言開發的界面,二次開發的界面可以嵌入到機床本身的系統中,通過側邊欄的按鈕激活界面。
界面設計方案
·將0/1 數字狀態變成紅燈/綠燈信號燈狀態,更形象;
·將英文全部改成中文顯示,更易理解;
·可以看到對應IO點位的名稱,減少尋找難度;
·物理地址跟畫面對應,更方便排查硬件故障。
在設計界面過程中,遵循CRAP四項基本設計原理,包括對比 (Contrast)、重復 (Repetition)、對齊 (Alignment)、親密 (Proximity),在保證信息交互的高效性的同時,盡可能保留美感。該設計原則目前廣泛應用于平面排版、網頁設計等,能高效地將信息排列成合理、更易理解的順序,也符合人的正常的閱讀順序和設計心理學。
代碼編寫
由于各個機型的IO點排布各不相同,為了確保主程序的完整性,單獨將各個機型的點位排布保存在獨立的機型配置文件中,通過python導入庫的方式加載到程序中。
圖4 IO信號狀態各個數據描述
在界面的設計上,根據輸入INPUT及輸出OUTPUT分成3列,再根據柜內SLOT的位置分為不同行的組別。每個組別又根據實際的IO點腳號排布進行分行排列。
為保持信息的高效傳遞,省去相同的提示內容,統一放置到頁面的最底部,僅供提示作用。另一方面,將信號狀態的幾種表現狀態羅列出來,作為提示,當IO點信號出錯時可以快速幫助排查問題所在,可以實際反映硬件當前的電氣連接狀態及PLC程序中的變量定義狀態。
圖5 IO監控界面
結束語
數控機床實時的IO狀態是反映機床各功能部件是否正常的重要信息通道,通過界面直觀地觀測到IO信號,能快速查看機床的當前狀態、排查機床存在的問題。通過Python開發代碼,設計可視化界面,能有效提高機床的人機交互界面友好性。
從用戶需求出發,以用戶為中心,挖掘用戶的本質需求,更多地站在用戶角度去思考設計,這樣我們的設計才能走得更遠。相比之下,新設計的IO界面的優勢一目了然,幫助用戶在操作過程中可以省去查找電氣原理找相應點位的問題,查看信號狀態變得更加簡單高效;更重要的是,在遇到緊急情況時可以為客戶實現快速搶修,為客戶提供了極大便利。