周宇
摘 要 采用基于Modbus和Profibus的混合總線技術,實現了工業相機——PLC——工業機器人之間的低成本的數據傳送?;谙鄼C識別的工件坐標數據,工業機器人可以準確地跟蹤和抓取工件。
關鍵詞 總線通訊 機器視覺 工業機器人
工業機器人作為一種多軸、多功能通用型工業設備,近年來在各種工業領域都得到了快速的推廣和應用,我國已經連續三年成為全球最大的工業機器人采購國。將各種末端執行器:手爪、吸盤、焊槍、噴槍與工業機器人集成,可以準確而高效地完成搬運、碼垛、裝配、焊接、噴涂、拋光、打磨等工業現場任務。在工業機器人的各種應用場合中,待處理毛坯件的準確定位,都將直接影響機器人自動化工作站的加工精度。目前常用的定位方法是采用高精度的液壓/氣動夾具系統,這種方法的缺陷在于整個夾具系統的制造周期長、成本高、柔性化不足。與此同時,在食品、小型機械零部件、電子元器件等輕工業產品的生產過程中,生產對象的力學強度較低而生產節奏快,傳統的夾具系統并不適用。為了解決這一問題,各大產商近年來開發了各種機器視覺軟/硬件解決方案,如ABB公司的Integrated Vision、FANUC公司的iR-Vision等。將視覺系統與機器人工作站系統集成后,機器人可以根據相機拍攝到的工件種類、坐標、角度等數據準確的捕獲工件,免去了機械定位夾具系統,提升了整個生產線的柔性化程度。然而這些機器人產商集成的視覺系統,往往價格比較昂貴,機器人用戶迫于成本的壓力,限制了這一類視覺解決方案的大范圍推廣和應用。
現場總線作為一種工業現場使用的數據總線,能夠實現各種儀器儀表、控制器、執行器之間的數據信息傳遞。以Profibus、Profinet、cc-Link、Modbus為代表的各種總線協議在工業現場設備中都有大量的使用,[1-3]目前的現場總線多用于傳遞DI/DO類信號或者變頻器的控制字等信息。本文利用Modbus-TCP和Profibus-DP兩種協議實現了第三方視覺系統與ABB機器人之間關于工件坐標類數據的交互,大大降低了機器人視覺系統的集成成本。
1 硬件構成
本方案的硬件系統由三大部分構成:(1)視覺相機系統、(2)主控PLC系統、(3)機器人系統。
視覺相機系統采用無錫信捷電氣的SV4智能相機和專屬的相機控制器SIC-242,該相機配置了RS485串口和100M以太網接口,能夠支持CAN、Modbus-RTU、Modbus-TCP等多種通訊協議。
主控PLC系統采用西門子最新的小型機S7-1200 CPU1215C,該機的CPU模塊集成有兩個Profinet接口,可以通過Modbus-TCP協議實現相機數據的傳輸。由于該CPU上沒有Profibus-DP接口,為了實現PLC與機器人端的數據通訊,為該PLC配置一個Profibus-DP主站模塊CM 1243-5。
工業機器人采用ABB 1410型6軸機器人,ABB原廠配置的Profibus-DP從站模塊型號為DSQC 667,描述性文件編號為hms_1811.gsd。
2 通訊與控制程序
2.1 通訊方案與網絡連接
該系統中通信的任務主要有兩個方面:(1)工業相機與PLC之間數據的傳輸;(2)PLC與機器人之間數據的傳輸。
工業相機與PLC之間交互的數據包括相機拍照的觸發信號和拍照完成信號以及拍照所識別到的工件坐標類數據。使用以太網線將相機和PLC分別連接到交換機,采用Modbus-TCP協議實現兩者之間的通訊,其中相機為Modbus Server端,PLC為Modbus Client端。數據的讀和寫都由PLC控制。
PLC與1410機器人之間交互的數據包括機器人的啟/停類信號以及工件坐標數據。使用D型9針插頭將屏蔽電纜線分別連接到CM 1243-5和DSQC 667的對應接口,采用Profibus-DP協議實現兩者之間的通訊,其中PLC為Profibus-DP主站,機器人為從站,數據的讀和寫都由PLC控制。整個系統的網絡連接拓撲圖如圖1所示。
2.2 組態過程
相機的組態采用X-SIGHT STUDIO軟件完成,在軟件中將相機的地址配置為192.168.8.1,同時根據實際需要為拍照類數據和坐標類數據配置對應的Modbus偏移地址,配置完成后將相機轉換為運行模式。相機配置的數據如圖2所示。
PLC和機器人的通訊組態在西門子TIA PORTAL軟件中完成。在PORTAL軟件中首先安裝機器人Profibus-DP的描述性文件hms_1811.gsd,然后在網絡視圖中依次組態CPU 1215C和通信模塊CM 1243-5,將CM 1243-5接口屬性組態為“PROFIBUS”的主站,站地址為2。機器人從站模塊DSQC667在PORTAL中的路徑為:“硬件目錄”-“其他現場設備”-“PROFIBUS-DP”-“常規”-“HMS industrial Networks”-“Anybus-CC”,將從站地址配置為3。組態從站模塊的同時,需要設置主站對應的通訊寄存區,本次通訊為1200PLC配置了5個字的輸出和1個字的輸入地址,其中前四個字的輸出用于將工件的四種坐標數據:X軸坐標、Y軸坐標、Z軸坐標、角度坐標傳送給機器人,最后一個字為機器人控制字,用于控制機器人啟動/停止,以上數據對應的PLC輸出映像寄存區地址為:QW68-QW76。輸入寄存區IW68用于實時讀取機器人的運行狀態字。機器人從站的組態參數如圖3所示。
2.3 機器人端信號配置與處理
由于坐標類數據的特殊性,可能出現正負數和浮點數的情況。機器人端的信號配置無法使用常見的DI/DO類數據與PLC的發送數據對接,需要使用機器人的模擬量輸入信號(AI)或者組輸入信號(GI)來對接,但是GI無法表示浮點數,所以本次通訊采用AI信號來對接工件的坐標數據,信號的配置過程分為兩步:(1)從站端參數設定;(2)數據類信號的設定。
由于DSQC 667板沒有DIP地址開關,站地址和通訊容量都是在機器人示教器上通過系統參數來設定的。設置路徑為:控制面板-配置-I/O System-Industrial Network(PROFIBUS Internal Anybus Devices),其中通訊容量的輸入/輸出范圍上限為64字節。
機器人端的4個AI信號需要分別與PLC內部4種工件坐標數據對接,其設置路徑為:控制面板-配置-I/O System-Signal。以新建一個X軸坐標數據Xdata為例,需要設置的參數見表1。
2.4 程序處理
PLC作為整個系統的主控制器,其觸發相機拍照之后,相機可能識別到工件也可能未識別到工件,如果未識別到工件,則PLC將從相機端讀取到全部為0的數據(代表沒有任何工件在相機檢測范圍之內)。因此PLC與相機通訊完畢后,必須對其讀取到的數據進行提取和處理,如果能提取到非0的有效數據,則表示相機檢測到了工件,PLC程序流程如圖4所示。
機器人作為執行機構,定義對應的全局變量X、Y、Z來對接模擬量中暫存的坐標數據,并且在收到PLC發送的啟動字(啟動字=1)后,開始抓取工件,抓取完成后,將狀態字置為0(停止狀態),PLC讀取到機器人的狀態字為0,將自動開啟下一次觸發拍照的流程。機器人程序段示例如圖5所示。
3結語
本文中所描述的配置和通信方案,能夠實現機器人對于非機械定位工件的正確捕獲,該系統具有以下特點:
(1)在現有設備的基礎上,混合采用Modbus和Profibus兩種總線協議,以較低的成本實現了坐標類數據在相機-PLC-機器人之間的實時傳送。
(2)可以配置相機程序和PLC程序和算法,實現一條產線對于多種貨物的分揀和生產,整個系統具有較高的柔性。
(3)由于Profibus通訊協議為定周期通訊,如果工件運動速度過高,需要為機器人端配置Multi Tasking功能,將工件數據的傳送與賦值類程序放置于后臺實時運行。
參考文獻
[1] 楊喬富,高龍琴.柔性制造單元中MOTOMAN機器人與PROFIBUS之間的通信[J].機械工程師,2007(2):42-43.
[2] 楊恒亮,朱浩翔,魯迪.一種基于3D視覺補償的機器人整車涂膠應用[J].裝備機械,2010(1):19-21.
[3] 西門子公司.SIMATIC NET CM1243-5操作說明[J].裝備機械,2010(1):19-21.