張媛媛,施 琴,時文昊
(江蘇聯(lián)合職業(yè)技術學院鎮(zhèn)江分院,江蘇 鎮(zhèn)江 212016)
隨著工業(yè)自動化的發(fā)展,在醫(yī)藥、電商、物流配送等行業(yè)中,其產線上下料、倉庫出入庫等環(huán)節(jié)需要實現(xiàn)頻繁的物料拾取及搬運。機器人作為工業(yè)生產中重要的工具,能解決搬運中的很多問題。但是,面對尺寸不一的貨物及包裹等物料的拾取,仍以人工操作為主,效率低且不穩(wěn)定,無法滿足企業(yè)柔性自動化需求[1-3]。
拾取裝置[4-5]作為機器人的末端執(zhí)行部件,在物料高效拾取這一塊起著關鍵的作用。一個拾取尺寸可調的末端執(zhí)行機構,通過精準控制可實現(xiàn)高效抓取,特別是在危險、繁重、單調的工況下,具有提高生產效率、降低生產成本等特點。本研究在確保穩(wěn)定可靠的前提下,以提高拾取效率為目標,分析并構建一種能快速運動到目標位置實現(xiàn)精準抓取的數(shù)學模型,為末端拾取裝置高效可靠的運動控制及程序編寫提供借鑒。
拾取裝置的結構如圖1 所示,機械結構主要由底板、兩邊不同旋向的雙向螺桿、帶法蘭的螺母、軸承、支撐座等組成。雙向螺桿通過聯(lián)軸器與減速器軸相連,與螺桿相配合的螺母,通過連接板與手指相連;同時,通過手指——滑塊間的連接板將手指與直線導軌上的滑塊連接。這一連接限制螺母只能沿著螺桿軸線方向移動,當電機轉動時,雙向螺桿轉動,使得螺母帶動兩手指沿著直線導軌向相反的方向移動,實現(xiàn)了手指的張開和閉合。
圖1 可調式平移夾爪硬件結構圖
電氣部分主要由電機、編碼器、限位開關等組成,為了實現(xiàn)拾取裝置中手指移動距離的精準控制,設計了如圖2 所示的電路。本研究中供電方式為12 V鋰電池移動電源,能滿足移動機器人在多個地方進行拾取搬運工作。通過配電板(PDP)對所有電氣元件進行統(tǒng)籌供電。主控器是NI 公司的roboRIO,提供了10 路數(shù)字量輸入輸出口。自帶編碼器的直流電機由電機驅動器控制,電機驅動器、配電板以及主控器roboRIO 之間通過CAN 總線相連。拾取機構中,安裝了2 個限位開關,分別是手指中間位置處(零位)和最大移動距離處(限位位置),編碼器和限位開關的 相關信號均接入roboRIO 的數(shù)字量輸入輸出口。
圖2 控制電路接線圖
拾取裝置中電機轉動帶動手指沿著直線導軌移動,實現(xiàn)手指的張開與閉合。在直線導軌中間及兩側位置都安裝了限位開關,起到運動限位保護作用。當手指觸碰中間位置處限位開關時,觸發(fā)roboRIO 中DIO 口的電平,通過程序將當前位置值(pos1)設為零,因此該位置也稱為拾取裝置運動的參考零位位置,后續(xù)讀出的所有位置都以該位置為參考,實現(xiàn)位置的精準定位。每次上電時,作為參考,手指應該執(zhí)行一次回零動作[6]。
圖3是手指當前位置(pos1)、目標位置(pos2)、運動前位置(pos0)以及零位位置的關系圖,手指運動中的pos1、pos2及pos0均以零位位置為參考點,并根據(jù)編碼器的分辨率、減速器的減速比及螺桿的螺距,通過編寫程序將編碼器的脈沖計數(shù)值轉化成以毫米為單位的直線距離值。本研究中pos1、pos0指的是具體位置,而目標位置pos2指一個區(qū)間,用豎線來表示區(qū)間的范圍,這個區(qū)間稱為許用誤差(err)。在進行不同尺寸物料或者包裹拾取時,需要快速移動到目標位置,手指移動前和移動過程中,需要實時判斷pos1與pos2的關系,從而決定手指的移動方向——張開還是閉合。
圖3 位置關系圖
電機轉速的快慢決定了拾取效率。電機高轉速下,手指無法準確停留在pos2處(假設許用誤差為±0.2 mm),手指在pos2處可能會發(fā)生抖動的現(xiàn)象,使得拾取裝置無法穩(wěn)定可靠地抓取物料。但是,如果電機轉速較低,盡管能可靠拾取物料包裹,但是效率低,不符合實際生產需求。
本研究基于roboRIO 主控器,提出變速控制。其中實現(xiàn)電機轉動的編程方法為set(k0)方法,k0的取值范圍為{k0|-1≤k0≤1 },正負號代表電機轉動方向,|k0|值越大,表示電機轉速越高。運動過程中,手指在從pos0逐漸移動到pos2,要求手指的移動速度越來越慢,即要求k0值從最大值逐漸減小。根據(jù)這一要求,得出的速度—移動位置(k0-pos)關系曲線如圖4 所示。
圖4 k0-pos 變化關系圖
根據(jù)圖4 構建k0的數(shù)學模型,如式(1)所示。當pos1=pos2時,表示當前位置就等于目標位置,此時k0=0,電機停止轉動;當pos0<pos2,表明手指要實現(xiàn)張開運動,要求k0>0,在運動過程中,pos1≤pos2,因此k0>0。式(1)中的正負號表示手指要向外張開還是向內閉合的運動方向。
實際運動中,因為機構本身的摩擦損耗,即表示電機在低輸出功率下,可能全部用于內耗,從而無法實現(xiàn)手指移動。為了確保拾取裝置中手指能沿直線移動,k0的取值還應該滿足,避開運動死區(qū)[7]。圖4 構建的數(shù)學模型不能滿足實際要求,為確保電機在停止運動前k0值要大于0.1,在圖4的基礎上進行修正,得到改進后的k0-pos 關系曲線(圖5),使得k0的取值范圍為,避開運動死區(qū),同時滿足減速要求,并根據(jù)圖5 重新構建了減速數(shù)學模型,見式(2)。
圖5 避開死區(qū)k0-pos 變化關系圖
式(2)是在式(1)的基礎上,加了常數(shù)項0.1,避開運動死區(qū),同時,為了讓|k0|值不超過1,在式(1)的基礎上乘以0.9。這個模型能實現(xiàn)手指穩(wěn)定可靠到達目標位置,但是效率低。
圖6 是采用分段控制的k0-pos 關系曲線。在手指移動過程中,采用全速和變速兩種方式共同控制,即距離目標位置pos2超過10 mm 時,全速運行,即k0=1;距離目標位置pos2小于10 mm 時,減速運行。
圖6 分段控制的k0-pos 變化關系圖
根據(jù)圖6 構建k0的數(shù)學模型。由于整個運動過程中,以距離目標位置10 mm 為分界點,當,即時,k0取值1,全速運行。當,即1 時開始減速,k0取值應該與式(2)相似。根據(jù)這一關系要求得出分段控制的數(shù)學模型,見式(3)所示。
由式(3)可以看出,需要編寫最小值的方法getMin(double a,double b),此外,根據(jù)式(3)數(shù)學模型構建的程序控制流程圖如圖7(a)所示。顯然,要根據(jù)pos1與pos2的關系,分情況確定電機轉動的方向。
圖7 程序控制流程圖
電機正轉,手指張開,電機反轉,手指閉合。當pos2>pos1時,要求電機正轉,此時k0值取正號;當pos2<pos1時,要求電機反轉,此時k0值取負號。為此,構建運動方向(dir)的數(shù)學模型,如式(4)所示。
將式(4)帶入式(3),得到最終含方向判斷的分段控制數(shù)學模型(式5)。根據(jù)式(5)構建了程序控制流程見圖7(b),實現(xiàn)了雙分支到單分支轉變,使得編程更為簡單,同時能更高效準確地拾取物料或者包裹。
本研究將編碼器、電機、螺旋傳動以及roboRIO控制器等結合起來,能夠將電機轉動的角度位移通過機械轉換裝置變換成直線位移,實現(xiàn)不同尺寸物料(或包裹)的高效精準拾取,不僅解放了人力,還大大提高了工作效率,降低了運營成本。本研究為解決手指快速精準到達目標位置實現(xiàn)抓取,充分考慮到機械摩擦等內耗,提出了避開死區(qū)、運用分段變速控制等方法,同時對手指的張開與閉合兩種運動方向進行分析和整合,構建了基于“方向——分段變速控制”一體的數(shù)學模型。本研究提供的數(shù)學模型具有通用性,可在不同的領域直接應用,實現(xiàn)智能控制。