左懷山
(廣東省技師學院,廣東惠州516100)
所謂“碼垛”就是按照集成單元化的思想,將一件件的物料按照一定的模式堆碼成垛,以便使單元化的產品實現物料的存儲、搬運、裝卸運輸等物流活動。近年來,由于企業產品由賣方市場進入了買方市場,企業生產正在向著多品種、少批量的方向發展,企業不再能夠承擔一線一產品的代價,往往需要一線多產品的生產線,這就要求作為后處理設備的碼垛機必須具備處理多種產品的能力。另外,隨著大型物資批發配送中心的出現,需要為成千上萬個用戶按訂單配送產品,這就要求碼垛機具有混合碼垛的能力。所有這些都為機器人碼垛機的發展提供了機會,繼20世紀70年代末日本將機器人技術用于碼垛工藝以來,當前機器人碼垛機的研究與開發獲得了迅速的發展,柔性化水平、處理速度及抓取重量不斷提高,價格不斷下降。
在線式碼垛機根據進料位置的高低,一般可分為高位式和低位式兩種,其中高位碼垛機運用比較廣泛。對于高位碼垛機來說,物料通過爬坡輸送機提高其輸入高度,編層后的物料放在滑板門上,通過層降或連續降的方式將層料疊放在托盤上或其他層料上。最顯著的優點是速度,產能一般可以達到1 500包/h以上。但高位碼垛占地面積較大,對廠房面積、高度等尺寸有要求,需要長寬高至少18 m×6 m×3.5 m的空間。而且高位碼垛是根據具體產品尺寸、具體垛型來設計的,也不方便更改產品尺寸,僅允許很小的變化量(一般都在設計前期就要考慮到使用幾種產品尺寸,幾種垛型,垛型的長寬高是多少)。因此,現在大部分原使用碼垛機的企業現在都面臨需要增加系統柔性工作能力的問題,以滿足日益增加的不同的用戶需求。
近年來,機器人碼垛技術發展甚為迅猛,這種發展趨勢是和當今制造領域出現的多品種、少批量的發展趨勢相適應的,機器人碼垛機以其柔性工作能力和小占地面積,能夠同時處理多種物料和碼垛,愈來愈受到廣大用戶的青睞。工業機器人機身小而動作范圍大,可以進行一個或幾個托盤的同時碼垛,能夠靈活機動地對應進行多種產品生產線的工作,這種一機多線、一機多產品的特點正好符合當下企業的需求。
工作邏輯流程圖如圖1所示。

圖1 工作邏輯流程圖
選用安川電機的MH系列——MH180工業機器人,負載180 kg,動態范圍2 702 mm,搭配控制柜DX200。仿真圖如圖2所示。

圖2 工業機器人仿真圖
機器人內部繼電器編號規則如圖3所示,繼電器編號用五位數字表示,每個數值包含三個信息。其中組編號1為通用輸入,編號2為通用輸出;4和5分別代表專用輸入和輸出,專用信號采用系統默認配置。通用輸入分配表如表1所示,通用輸出分配表如表2所示。

圖3 機器人內部繼電器編號

表1 通用輸入分配表

表2 通用輸出分配表
3.4.1 主程序變量表
實現碼垛功能需要調用系統內的用戶變量,以便在主程序和子程序之間進行數據交換和通信。以下列出了碼垛功能中主要變量表,如表3所示。

表3 主程序變量表
以左側碼垛為例,首先需要手動示教工件兩種擺放姿勢的位置數據,并分別登錄到用戶位置型變量P010和P011,如圖4所示。

圖4 兩種擺放姿勢的位置變量
根據當前抓取的工件數累計不同,對應執行相應的計算代碼,計算出當前工件的放置位置,并賦值給P016和P017,以便放置子程序PICKL調用。
3.4.2 左側位置計算子程序詳解
讓工業機器人實現碼垛功能,主要是讓機器人能夠根據當前搬運工件的序號,自己計算出正確的擺放位置,按一定的堆疊排列方式碼放工件。以15件產品堆疊三層的碼垛為例,三層的放置位置平面圖及序號分配如圖5所示。
如圖5所示,在計算位置子程序COUNTL先對應不同的工件順序應用JUMP指令和IF指令跳轉到不同的程序段,分別計算出對應當前工況的放置位置,再把計算結果賦值給放置子程序要調用的位置變量,舉例的左側碼垛放置調用的是P016和P017。

圖5 三層堆疊平面圖及序號分配
當拾取工件序號為1時,對應轉跳到*01程序段:
*01
SET P016 P012
SET P017 P014
CALL JOB:PLACEL
RET
因為第一個工件放置位置正好與手動示教位置重合,則直接進行賦值,然后調用放置子程序進行放置,再返回主程序(這里是拾取子程序,拾取子程序接下來的指令是返回主程序)。
當拾取工件序號為2時,對應轉跳*02程序段:
*02
ADD P012 P001
ADD P014 P001
SET P016 P012
SET P017 P014
CALL JOB:PLACEL
RET
如圖5所示,*02工件相對*01工件正好是在X軸上正偏移一個工件長度的距離,這里直接用X軸上工件長度偏移P001進行相加,然后再賦值給P016和P017,調用子程序即可。其他對應序號的工件依次偏移疊加,根據不同的拾取序列分別放置不同的位置,完成碼垛的堆疊。
由于程序都是模塊化編寫,廠家可以根據不同的要求進行便利的修改。
(1)修改運行速度:當搬運的產品或工具因為重量增加或成品保護等需要降低運行速度時,可以分別在PICKL和PLACEL中的MOVE指令中修改速度標簽。
(2)修改產品尺寸:當生產線產品更換時,可直接在MAIN主程序中直接修改D001、D002、D003三個數據,分別對應產品的長、寬、高,再手動示教抓取位置P006、P007和放置位置P010和P011即可。
(3)修改碼垛堆疊方式:在機器人程序里,只要不超出機器人的最大動作范圍,可任意修改堆疊的層數和堆疊的樣式。如本文的程序要減少為只堆疊兩層的話,可修改主程序中的以下兩個命令行,
CALL JOB:FULLL IF I000>=15
JUMP*02 IF I000>=15
修改IF指令標簽后的數據,把15改為10即可減少堆疊層數。需要增加層數的情況除了修改該數據外,還需在COUNTL中補充上增加的工件的計算程序段。還可預先編寫好多種計算位置子程序,對應不同的產品,以便直接調用。在場地允許的情況下,還可改造成三進三出式碼垛流水線。
此次工業機器人的應用筆者運用了工作中積累的編程設計實踐經驗,參考了一些相關的書籍,認真分析了工業機器人碼垛的工作過程及工作要點,經生產實踐證明,達到了預期的效果。在國家大力推廣和普及工業機器人的今天,人工智能技術的研究與生產應用已成為發展的核心追求,許多企業都陸陸續續把工業機器人應用到自己的生產線中,代替人力勞動,淘汰原有的設備。我們應把握機會,接受挑戰,掌握新技術,推進新形勢下我國工業機器人的快速發展。
[1]YASKAWA安川電機.DX200使用說明書:R-CTO-A220-C[Z].
[2]葉暉.工業機器人典型應用案例精析[M].北京:機械工業出版社,2013.
[3]蔣慶斌,陳小艷.工業機器人現場編程[M].北京:機械工業出版社,2014.