王 瑞,陳偉雄,王 楠,王 勇,葉 敏,陳志仁
(上海無線電設備研究所,上海 201109)
PCBA及電子元器件,一般都要在生產的后道加入測試環節,對其電氣性能參數進行檢測,以確保所有實際產品的規格參數滿足設計要求。與生產前道已實現高度自動化的貼片焊接、三防涂覆、螺紋緊固、點膠加固等環節不同,產品測試多為手動或半自動的方式,操作人員抓取產品并將其放置在測試治具中,完成產品的定位裝夾,以及測試治具與待測產品測試觸點(或測試接口)的導通,然后觸發自動測試流程。測試完成后,再手動將產品從治具中取出,根據測試結果的合格與否,手動分揀合格品與不良品[1]。該種測試方式雖然實現了產品測試、數據記錄、結果生成的自動化,但產品的上料抓取、治具裝夾、測點導通、下料分揀等流程仍依靠人工,存在人力成本較高、測試效率低下,測試過程一致性與質量可溯性難以保證的問題。

圖1 柔性化自動測試系統硬件架構圖Fig.1 Hardware architecture of flexible automatic test system

圖2 柔性化自動測試系統示意圖Fig.2 Schematic diagram of flexible automatic test system

圖3 柔性化自動測試系統通信拓撲圖Fig.3 Communication topology of flexible automatic test system
本文介紹了一套基于工業機器人的柔性化自動測試系統,實現產品測試過程中上料抓取、編碼識別、治具裝夾、產品測試、結果生成與數據記錄、下料與不良分揀等全流程的自動化,操作人員只需定期將待測產品放入指定料盤或取走測試完成產品,顯著提升測試效率。
該柔性化自動測試系統,以工業機器人為核心,機器人末端集成自適應電動夾持器、力控傳感器、智能相機等執行部件,搭建機器人搬運子系統,實現產品自動裝夾、編碼識別、視覺定位、力監控與位置反饋控制等功能[2,3]。
在工業機器人周圍,分別布置有周轉料盤、中轉平臺和自動化測試治具。周轉料盤按照功能劃分為供料盤、合格品料盤和不良品料盤,與實現產品重定位、編碼識別的中轉平臺構成上下料子系統。自動化測試治具可實現產品的自動裝夾定位與測試探點導通,及接口接插等功能,根據機器人工作范圍、搬運流轉與產品測試的周期時間匹配關系,合理配置測試治具數量,達到最優的測試效率。搭載測試用儀器儀表、自動化測試軟件的測試機柜與自動化測試治具之間,通過線纜連接,構成產品測試子系統。
該柔性化自動測試系統采用分布式控制,系統的主控軟件與機器人控制器、測試治具電機驅動器、測試機柜的自動化測試軟件之間,通過不同的通信協議實現指令控制、數據交互功能。
圖4所示為機器人搬運子系統,包括工業機器人、力控傳感器、腕部智能相機、自適應電動夾持器、定制夾指等組成。

圖4 機器人搬運子系統示意圖Fig.4 Schematic diagram of robot handling subsystem
工業機器人選用UR六軸協作式機器人,具有安裝快速、部署靈活、編程簡單的優點,操作人員可快速完成機器人的位置示教與編程開發,并確保操作的安全性和便利性。

圖5 測試治具示意圖Fig.5 Schematic diagram of test fixture

圖6 主控軟件架構圖Fig.6 Main control software architecture
機器人末端配置有力控傳感器,實現機器人搬運、取放過程中的力監控與力位反饋控制,避免對測試產品、料盤、測試治具等的損壞。
機器人末端配置有腕部智能相機,實現待測產品的視覺定位與編碼識別,料盤、治具處的位置識別與視覺引導等功能。
機器人末端配置有自適應電動夾持器,以及根據產品外形尺寸特征定制的夾指工裝,兼容不同產品的自動化夾持需求。
UR機器人控制器基于相關硬件接口與軟件開發包,實現與上述的力控傳感器、智能相機、自適應電動夾持器等的即插即用控制,方便功能開發。UR機器人控制器與主控軟件之間,通過基于TCP/IP的socket通信,實現控制交互。所有的動作流程以子程序的形式存儲在機器人控制器,主控軟件將包含子程序編號、目標點位置的指令字符串,通過socket通信方式發送至機器人,機器人解析指令字符串,調用子程序,執行相關動作,并將結果信息以socket通信字符串反饋至主控軟件。
供料區、合格品料區、不良品料區布置在機器人周圍,各個料區均布置兩個料盤,可同時進行兩種產品的混線測試,也可將料盤規劃為同一規格,滿足單一產品測試需求。在供料區的一側,設計有中轉平臺,用于完成料盤取料后的產品重定位、編碼識別等操作。
在機器人周圍分別布置兩種產品的各兩個測試治具,分別對應不同的測試項目。每個測試治具共包含4個測試工位,測試探針通過測試線纜與測試機柜的儀器儀表連接,產品裝夾完成后,測試探針接觸產品測試點,輸入測試激勵信號并接收反饋信號,完成產品測試。
測試治具的產品裝夾、探針推進等均由步進電機驅動,工控機通過串口服務器連接各電機驅動器,主控軟件通過Modbus RTU實現對電機的驅動控制。
主控軟件采用3層架構,包括表現層、業務邏輯層和任務驅動層。表現層包括窗體界面,各個窗體界面繼承了基類的界面接口,通過底層任務響應的窗體回調方法,實現界面更新操作。業務邏輯層包括一個動作線程和任務指令出入隊列的方法,通過調用任務響應方法實現業務邏輯。任務驅動層則實現各任務指令的具體動作響應。
從功能模塊上劃分,軟件可分為主程序模塊、機器人模塊、測試治具模塊,各個模塊均繼承了基類,具有與基類相同的層級架構。主程序的業務邏輯層可調用機器人與測試治具模塊的業務邏輯層,實現不同模塊間的互聯互通。

圖8 物料流轉調度圖Fig.8 Material flow scheduling diagram
圖7所示為主控軟件的主界面,包括:

圖7 主控軟件界面Fig.7 Main control software interface
1)測試模式選擇:根據生產排程,選擇產品混合測試、單一產品測試等。
2)測試流程控制區:包括設備初始化、測試開始、暫停、繼續、停止等按鈕。
3)料盤狀態顯示區:以表格形式對應料盤上的陣列槽位,以不同顏色填充的形式區分槽位的產品有無及異常狀態。
4)治具狀態顯示區:以表格形式對應測試工位,以顏色填充和文字說明顯示產品有無和測試狀態,如無產品、待測試、測試中、合格品、不良品、工位未啟用等。
如上所述,該柔性化自動測試系統可兼容兩種不同產品的各兩個測試項的單獨/混合測試的不同生產排程。為滿足測試任務與搬運中轉流程的規劃調度,首先,對機器人、測試治具的動作流程進行劃分,細分為多個子程序。如針對某一測試產品,機器人子程序均可細分為:料盤處取料/放料、測試治具取料/放料、中轉平臺重定位/拍照識別、機器人回等待位等。同理,測試治具細分為治具裝夾/松開等。
主控軟件的主程序業務邏輯層,實時判斷測試進展情況與料盤、治具處的物料有無狀態,并基于指定的物料流轉方向調用相應子程序,實現生產排程的自主規劃調度。
主控軟件基于業務邏輯層的調度策略,通過socket通信方式,向機器人控制器下發子程序編號和目標點的坐標信息,機器人執行響應的動作。為實現機器人路徑優化,基于機器人基坐標系的象限區域,設置多個中間過渡點,機器人子程序執行時,首先判斷當前點與目標點的象限區域,經由過渡點運行至目標象限區域內,再執行相應的動作[4]。
系統主控軟件與測試機柜的測試軟件間采用UDP通信協議,實現互聯互通。通信指令如下:
1)測試流程觸發
測試治具采用多產品“同進同出”的方式,當測試治具上的4個工位均完成上料(缺料或工位未啟用情況下,可能少于4個),主控軟件向指定的網絡端口發送測試觸發指令,格式如下:
StartTest,Tester1,Code1=B0001,Code2=B0002,Code3=None,Code4=None
其中,粗體部分(Tester1)為工裝編號;斜體部分(B0001/None)為工位產品編碼;None表示該工位無產品上料(缺料或工位未啟用)。
測試軟件接收到觸發指令后,啟動測試流程。測試完成后,將測試結果數據與產品編碼綁定、存儲或上傳,確保質量可溯。
2)測試狀態反饋
測試流程觸發后,測試軟件會定時向主控軟件發送工裝的測試狀態,直至接收到下一次測試觸發指令,測試狀態的通信指令格式如下:

圖10 柔性化自動測試設備實物圖Fig.10 Physical diagram of flexible automatic test equipment

表1 試運行結果統計表Table 1 Statistics of test run results
Tester1=Testing,Status1=Busy,Status2=Busy,Status3=Empty,Status4=Empty。
粗體部分(Testing)為治具狀態,取值可為Testing(測試中)、Complete(測試完成)。斜體部分(Busy/Empty)為工位狀態,取值可為Empty(無產品)、Error(工位故障)、Testing(測試中)、Pass(測試合格)、Fail(測試不良)。
主控軟件接收到治具測試完成的狀態反饋后,執行相應的搬運中轉動作,根據測試結果的Pass/Fail,將其放置到不同的料盤,并屏蔽故障工位。
該柔性化自動測試系統在運行過程中,會自動對運行過程中的故障異常進行監控,如門開報警、缺料滿料報警、動作執行異常、通信異常、碰撞異常等。異常發生時,系統自動調用異常響應動作流程,如機器人回等待位、動作中斷/急停等,并以提示框的形式顯示報警代碼、名稱、參數、原因,及相應的解決對策。操作人員按照報警對策的提示信息,輔助完成設備的故障恢復。圖9所示為供料盤中,有產品均完成測試時的缺料報警的提示框。

圖9 缺料報警提示框Fig.9 Alarm prompt box for shortage of materials
在完成該柔性化自動測試系統的研發設計、安裝調試后,安排批量產品進行生產試運行,對系統的功能性能進行測試。待測產品為某型PCBA板,待測產品數量200個。共兩項測試:①衰減性能測試,時長約8 min/pcs;②電阻測試,時長約2 min/pcs(受測試儀表影響,治具中的各測試工位為串行測試)。
據調研,人工完成200個產品的測試大約需花費35 h。自動化測試總時長為28.5 h,生產效率由5.7 pcs/h提升至7 pcs/h,提升22.8%。生產過程中,除缺料滿料報警外,未發生設備故障停機情況,操作人員只需定期將待測產品放入指定料盤或取走測試完成產品,實現測試流程的無人值守。
該柔性化自動測試系統,以六軸協作式機器人為核心,搭配相應的末端執行器、上下料周轉料盤、自動化測試治具與測試機柜,可實現多種產品的多個測試項目的單獨/混測測試等不同生產排程,滿足高效率、高可靠、高柔性的測試需求。生產驗證過程中,系統運行穩定、無故障停機,除更換周轉料盤外,測試過程中基本實現無人化,顯著降低人工成本,減少測試過程中的人為操作因素,提升測試效率與過程一致性,具有較高的實用價值與示范意義。