周俊宇,夏琳燕,周全,黃俊
(1.湖南工業(yè)職業(yè)技術(shù)學(xué)院機(jī)械工程學(xué)院,湖南 長(zhǎng)沙 410208;2.長(zhǎng)沙學(xué)院機(jī)電工程學(xué)院,湖南 長(zhǎng)沙 410022)
視覺(jué)系統(tǒng)是與工業(yè)應(yīng)用結(jié)合最緊密的人工智能技術(shù)。學(xué)者對(duì)視覺(jué)系統(tǒng)的研究由20世紀(jì)60年代初期開(kāi)始,從最初的二維圖像模式識(shí)別發(fā)展到后來(lái)的三維工業(yè)視覺(jué)系統(tǒng),再到現(xiàn)在全球性的視覺(jué)系統(tǒng)研究。視覺(jué)系統(tǒng)的功效、性能以及覆蓋領(lǐng)域隨著智能制造行業(yè)的興盛而逐步發(fā)展,為更多設(shè)施設(shè)備提供了可以探測(cè)物理世界的“眼睛”。同時(shí),系統(tǒng)的可靠性也越來(lái)越得到保障,為無(wú)人化車(chē)間和智能化工廠的實(shí)現(xiàn)提供有力的技術(shù)支撐。因此,視覺(jué)系統(tǒng)被廣泛應(yīng)用于智能制造、智慧農(nóng)業(yè)、智慧交通和智慧安防等諸多領(lǐng)域[1-4]。
目前各高校的綜合實(shí)訓(xùn)平臺(tái)主要有以下類(lèi)型:(1)基于PLC的工業(yè)機(jī)器人實(shí)訓(xùn)平臺(tái)[5-6],可利用該平臺(tái)PLC控制機(jī)器人模擬產(chǎn)線的一些簡(jiǎn)單功能,來(lái)開(kāi)展實(shí)訓(xùn)教學(xué);(2)基于智能制造虛擬仿真實(shí)驗(yàn)的實(shí)訓(xùn)平臺(tái)[7],是通過(guò)計(jì)算機(jī)和強(qiáng)大的功能軟件系統(tǒng)搭建的實(shí)訓(xùn)平臺(tái),可以有效解決智能制造工程實(shí)踐教學(xué)環(huán)節(jié)中出現(xiàn)的問(wèn)題;(3)基于NX11.0 MCD自動(dòng)線的仿真實(shí)訓(xùn)平臺(tái)[8],通過(guò)計(jì)算機(jī)和強(qiáng)大的功能軟件來(lái)實(shí)現(xiàn)智能化產(chǎn)線的調(diào)試和生產(chǎn)的演示;(4)基于組合機(jī)器人及視覺(jué)檢測(cè)搬運(yùn)控制系統(tǒng)的實(shí)訓(xùn)平臺(tái)[9],通過(guò)機(jī)械手和視覺(jué)系統(tǒng)的組合來(lái)模擬產(chǎn)線上視覺(jué)系統(tǒng)的簡(jiǎn)單功能,以開(kāi)展實(shí)訓(xùn)教學(xué)和視覺(jué)系統(tǒng)搭建。文章設(shè)計(jì)了一種全新的基于運(yùn)動(dòng)控制卡和工業(yè)視覺(jué)的綜合實(shí)訓(xùn)平臺(tái),可提供更高精度的軌跡規(guī)劃、更優(yōu)的控制方案,以實(shí)現(xiàn)更多生產(chǎn)線的自動(dòng)化功能,也可以讓更多的學(xué)生走進(jìn)工業(yè)視覺(jué)的實(shí)訓(xùn)課堂,培養(yǎng)大學(xué)生在工業(yè)視覺(jué)方面的專(zhuān)業(yè)知識(shí)和實(shí)踐動(dòng)手能力,為今后步入社會(huì)、走向工作崗位夯實(shí)基礎(chǔ)。
基于運(yùn)動(dòng)控制卡和工業(yè)視覺(jué)的綜合實(shí)訓(xùn)平臺(tái)整體架構(gòu)如圖1所示,總體分為設(shè)備層、控制層和應(yīng)用層。設(shè)備層由物料臺(tái)、機(jī)械模組、工業(yè)相機(jī)及其組件、傳感器、伺服系統(tǒng)等組成;控制層由運(yùn)動(dòng)控制卡和工控機(jī)組成,同時(shí)由視覺(jué)系統(tǒng)進(jìn)行圖像處理和Visual Studio 2015編程軟件實(shí)現(xiàn)邏輯控制;應(yīng)用層是工業(yè)視覺(jué)控制系統(tǒng)的應(yīng)用體現(xiàn),能夠?qū)崿F(xiàn)識(shí)別、測(cè)量、分揀、搬運(yùn)和碼垛等生產(chǎn)線上的自動(dòng)化功能。
圖1 綜合實(shí)訓(xùn)平臺(tái)架構(gòu)
使用該平臺(tái)時(shí),首先是設(shè)備層反饋各種信號(hào)到控制層,然后經(jīng)控制層的控制系統(tǒng)處理后對(duì)設(shè)備層發(fā)送各種指令,并操縱相應(yīng)的設(shè)備執(zhí)行相應(yīng)的動(dòng)作,以完成應(yīng)用層的自動(dòng)化功能。
文章根據(jù)上面所描述的平臺(tái)架構(gòu),采用模塊化設(shè)計(jì)的方法來(lái)設(shè)計(jì)該綜合實(shí)訓(xùn)平臺(tái),可以分為如下六個(gè)功能模塊。
(1)工控機(jī)模塊:采用研華品牌。作為視覺(jué)系統(tǒng)軟件、人機(jī)交互界面和運(yùn)動(dòng)控制卡編程軟件的載體,擁有強(qiáng)大的計(jì)算和處理能力,可以用來(lái)培訓(xùn)操作人員的計(jì)算機(jī)操作和軟件處理能力。
(2)傳感器檢測(cè)模塊:采用歐姆龍的凹槽型光電開(kāi)關(guān)和接近開(kāi)關(guān)。安裝于物料臺(tái)的工件檢測(cè)位置,可以用來(lái)檢測(cè)工件或者機(jī)械模組是否到達(dá)相應(yīng)位置,并反饋給控制系統(tǒng)。此模塊可以用來(lái)培訓(xùn)操作人員的傳感檢測(cè)技術(shù)的應(yīng)用能力。
(3)人機(jī)交互界面模塊:人機(jī)交互界面的整體頁(yè)面設(shè)計(jì)采用Visual Studio 2015軟件中的Windows窗體控件,增強(qiáng)了系統(tǒng)整體的靈活性,可進(jìn)行位置、速度等參數(shù)設(shè)定,使操作更加簡(jiǎn)捷便利。此模塊可以用來(lái)培訓(xùn)操作人員的人機(jī)交互界面的整體設(shè)計(jì)和編程能力。
(4)工業(yè)視覺(jué)系統(tǒng)模塊:采用OPT品牌。包括相機(jī)、鏡頭、光源、光源控制器和Cognex視覺(jué)軟件等。其中,光源和光源控制器可以通過(guò)照明光亮度的調(diào)節(jié),提高采集到的圖片的質(zhì)量;相機(jī)和鏡頭可以通過(guò)調(diào)節(jié)光圈和焦距等來(lái)采集高質(zhì)量圖像,以便后續(xù)的圖像分析處理;Cognex視覺(jué)軟件主要是用來(lái)進(jìn)行圖像采集和處理,得到想要的工件位置和特征,以便控制系統(tǒng)執(zhí)行相應(yīng)命令,達(dá)到自動(dòng)化功能。此模塊可以用來(lái)培訓(xùn)操作人員的工業(yè)視覺(jué)專(zhuān)業(yè)知識(shí)學(xué)習(xí)能力、器件選型能力和視覺(jué)動(dòng)手調(diào)試能力。
(5)運(yùn)動(dòng)控制系統(tǒng)模塊:硬件采用凌華的運(yùn)動(dòng)控制卡和松下伺服系統(tǒng),軟件采用Visual Studio 2015。其中,運(yùn)動(dòng)控制卡在Visual Studio 2015上采用C#語(yǔ)言進(jìn)行編程,以實(shí)現(xiàn)高級(jí)邏輯控制和網(wǎng)絡(luò)通信等功能;松下伺服系統(tǒng)主要用來(lái)進(jìn)行精確位置移動(dòng)。此模塊可以用來(lái)培訓(xùn)操作人員的運(yùn)動(dòng)控制系統(tǒng)的編程能力和動(dòng)手調(diào)試能力。
(6)搬運(yùn)碼垛模塊:采用機(jī)械模組和物料臺(tái)。實(shí)質(zhì)上類(lèi)似于一個(gè)4自由度的機(jī)器人,軸X、軸Y、軸Z和軸R都配備有伺服電機(jī)和伺服驅(qū)動(dòng)器,由運(yùn)動(dòng)控制卡編程控制機(jī)械模組進(jìn)行軸X、軸Y、軸Z和軸R這4個(gè)方向的自由移動(dòng),通過(guò)抽真空抓取工件以實(shí)現(xiàn)搬運(yùn)、碼垛等自動(dòng)化功能。此模塊可以用來(lái)培訓(xùn)操作人員的安裝調(diào)試能力。
圖2 功能結(jié)構(gòu)
基于運(yùn)動(dòng)控制卡和工業(yè)視覺(jué)的綜合實(shí)訓(xùn)平臺(tái)具體工作流程如圖3所示。首先使用工業(yè)相機(jī)拍照進(jìn)行圖像采集,并使用Cognex視覺(jué)軟件將采集到的圖像進(jìn)行一系列圖像處理,得到每個(gè)工件的具體位置和特征;然后經(jīng)過(guò)手眼標(biāo)定,得到工件的像素點(diǎn)坐標(biāo)和實(shí)際位置的坐標(biāo);最后根據(jù)得到的工件位置、特征以及項(xiàng)目需要達(dá)成的目標(biāo)功能,進(jìn)行編程來(lái)產(chǎn)生控制指令,并且使用運(yùn)動(dòng)控制卡操控的伺服系統(tǒng)來(lái)驅(qū)動(dòng)機(jī)械模組,實(shí)現(xiàn)應(yīng)用層的多種自動(dòng)化功能。
圖3 工作流程
工業(yè)視覺(jué)系統(tǒng)單元由工控機(jī)、相機(jī)、鏡頭、光源、光源控制器和Cognex視覺(jué)軟件等構(gòu)成。
首先,工業(yè)視覺(jué)系統(tǒng)收到控制系統(tǒng)給出的拍照信號(hào)后,會(huì)打開(kāi)光源,并根據(jù)光源控制器設(shè)計(jì)的參數(shù)進(jìn)行亮度調(diào)節(jié),提高圖片的對(duì)比度和亮度,從而提高圖片質(zhì)量。
然后,通過(guò)Cognex視覺(jué)軟件對(duì)拍照得到的圖片進(jìn)行手眼標(biāo)定、色彩轉(zhuǎn)換、圖像二值化、斑點(diǎn)分析、橢圓擬合等一系列的圖像處理,有效判別工件,避免無(wú)效處理。
最后,把處理后的圖像與開(kāi)始設(shè)計(jì)時(shí)的圖像進(jìn)行位置和特征匹配。如匹配失敗,表示沒(méi)有檢測(cè)到物體或者檢測(cè)到異常物體,機(jī)械模組回到原點(diǎn)。如匹配成功,則工業(yè)視覺(jué)系統(tǒng)會(huì)進(jìn)一步對(duì)拍照?qǐng)D像的標(biāo)簽、劃痕、特征判斷、條形碼或者二維碼等進(jìn)行識(shí)別和測(cè)量;如識(shí)別成功,則運(yùn)動(dòng)控制系統(tǒng)將執(zhí)行下一步動(dòng)作;如識(shí)別失敗,則表示特征識(shí)別錯(cuò)誤,機(jī)械模組回到原點(diǎn)。工業(yè)視覺(jué)系統(tǒng)的部分腳本代碼如圖4所示。
圖4 工業(yè)視覺(jué)系統(tǒng)的部分腳本代碼
運(yùn)動(dòng)控制系統(tǒng)單元由運(yùn)動(dòng)控制卡、人機(jī)交互界面、伺服系統(tǒng)、機(jī)械模組、傳感器檢測(cè)系統(tǒng)等構(gòu)成。
首先,按下啟動(dòng)按鈕,運(yùn)動(dòng)控制卡控制伺服電機(jī)驅(qū)動(dòng)機(jī)械模組運(yùn)動(dòng)到拍照位,運(yùn)動(dòng)控制卡輸出一個(gè)拍照的觸發(fā)信號(hào)給工業(yè)視覺(jué)系統(tǒng)。此信號(hào)可以是硬件觸發(fā),也可以是軟件觸發(fā)。
然后,根據(jù)工業(yè)視覺(jué)系統(tǒng)在經(jīng)過(guò)圖像處理后發(fā)送的數(shù)據(jù)信息,運(yùn)動(dòng)控制卡控制伺服系統(tǒng)驅(qū)動(dòng)機(jī)械模組的軸X、軸Y、軸Z、軸R運(yùn)動(dòng)到取料位或者放料位,通過(guò)抽真空抓取工件,然后根據(jù)編程得到的預(yù)設(shè)動(dòng)作軌跡將工件搬運(yùn)到OK或者NG區(qū)域,并進(jìn)行碼垛,碼垛完畢后循環(huán)進(jìn)行下一個(gè)工件的檢測(cè)、識(shí)別、搬運(yùn)和碼垛。
伺服系統(tǒng)主要靠脈沖來(lái)定位,伺服電機(jī)在接收到控制系統(tǒng)發(fā)送的一個(gè)脈沖信號(hào)后,就會(huì)產(chǎn)生一個(gè)對(duì)應(yīng)的旋轉(zhuǎn)角度,從而實(shí)現(xiàn)位移。而伺服電機(jī)本身攜帶有編碼器,根據(jù)其產(chǎn)生的位移可以形成對(duì)應(yīng)的脈沖信號(hào)反饋給控制系統(tǒng),這樣就和控制系統(tǒng)發(fā)出的脈沖形成一個(gè)閉環(huán),可以很精確地控制伺服電機(jī)的轉(zhuǎn)動(dòng),實(shí)現(xiàn)精確定位,且精度可以達(dá)到0.001mm。這里的伺服參數(shù)設(shè)置中,軸X、軸Y、軸Z每移動(dòng)1mm都設(shè)置為1 000個(gè)脈沖,軸R每旋轉(zhuǎn)1度設(shè)置為3 600個(gè)脈沖。其中部分參數(shù)設(shè)置情況如圖5所示。
圖5 伺服軸部分參數(shù)設(shè)置
依據(jù)控制系統(tǒng)的項(xiàng)目方案要求,對(duì)運(yùn)動(dòng)控制系統(tǒng)進(jìn)行預(yù)設(shè)動(dòng)作軌跡編程。其中部分控制系統(tǒng)的代碼如圖6所示。
圖6 控制系統(tǒng)的部分代碼
在機(jī)械模組的運(yùn)動(dòng)過(guò)程中,軸X、軸Y、軸Z、軸R可以同時(shí)運(yùn)行,因此軸X和軸Z、軸Y和軸Z之間存在干涉問(wèn)題。如在水平X或者豎直Y方向運(yùn)行時(shí),若軸Z沒(méi)有上升到一定高度,會(huì)碰撞到工件擺放的凹槽壁上。故機(jī)械模組需設(shè)置一個(gè)安全區(qū)域,在自動(dòng)運(yùn)行的取料過(guò)程中,先保證軸Z抬升到一定高度,再允許軸X和軸Y運(yùn)行;在自動(dòng)運(yùn)行的放料過(guò)程中,先保證軸Z的高度在安全區(qū)域,再允許軸X和軸Y運(yùn)行。這樣即可解決此干涉問(wèn)題。
在機(jī)械模組的運(yùn)動(dòng)過(guò)程中,軸R可以進(jìn)行360°旋轉(zhuǎn),在回原點(diǎn)的過(guò)程中,如果軸R一直沿順時(shí)針?lè)较蛐D(zhuǎn),將會(huì)導(dǎo)致其連接線路擰成一團(tuán)。故給軸R設(shè)置一個(gè)零點(diǎn),即在原點(diǎn)位置安裝一個(gè)接近開(kāi)關(guān)。當(dāng)軸R沿逆時(shí)針?lè)较蛐D(zhuǎn)時(shí),其伺服電機(jī)中的編碼器為減計(jì)數(shù);沿順時(shí)針?lè)较蛐D(zhuǎn)時(shí),其伺服電機(jī)中的編碼器為增計(jì)數(shù)。這樣即可解決軸R的連接線路擰成一團(tuán)的問(wèn)題。
文章設(shè)計(jì)的基于運(yùn)動(dòng)控制卡和工業(yè)視覺(jué)的綜合實(shí)訓(xùn)平臺(tái)涉及了運(yùn)動(dòng)控制卡的高級(jí)邏輯控制,工業(yè)相機(jī)的識(shí)別、定位、測(cè)量和檢測(cè),以及伺服系統(tǒng)的精確驅(qū)動(dòng)等技術(shù),可提供更高精度的軌跡規(guī)劃、更優(yōu)的控制方案,實(shí)現(xiàn)更多生產(chǎn)線的自動(dòng)化功能,因此既能夠很好地滿足教學(xué)要求,也能為企業(yè)提供一系列的技術(shù)和條件支持。
長(zhǎng)沙大學(xué)學(xué)報(bào)2021年5期