張秀麗,韓春燕
(北京交通大學(xué) 機(jī)械與電子控制工程學(xué)院,北京 100044)
人工智能的發(fā)展及生產(chǎn)制造業(yè)向靈活性和柔性制造模式的轉(zhuǎn)變,輕質(zhì)、方便移動(dòng) 、高靈活性的協(xié)作機(jī)器人逐漸代替了傳統(tǒng)的工業(yè)機(jī)器人[1].相比于其他機(jī)器人,協(xié)作機(jī)器人已在工業(yè)制造領(lǐng)域中初露鋒芒,但該類機(jī)器人仍處于起步階段,面臨著諸如未知復(fù)雜的環(huán)境,復(fù)雜多變的任務(wù)、行為安全和交互等諸多方面的挑戰(zhàn)和技術(shù)瓶頸[2].而其中交互安全性尤為重要,是協(xié)作機(jī)器人需要考慮的首要因素,已成為協(xié)作機(jī)器人領(lǐng)域的研究熱點(diǎn)[3].
在人機(jī)交互過程中,機(jī)器人和操作員通常處在同一工作空間[4],兩者不可避免會(huì)發(fā)生接觸,造成不必要的傷害,解決這個(gè)問題的首要做法是發(fā)生碰撞后,機(jī)器人可以檢測(cè)到碰撞,并采取相應(yīng)的安全控制.目前大多研究采用無傳感器方法或安裝傳感器的方法來檢測(cè)碰撞[5].文獻(xiàn)[6]主要是通過采集各關(guān)節(jié)驅(qū)動(dòng)器的電流,以此計(jì)算出各關(guān)節(jié)力矩,并用動(dòng)力學(xué)模型計(jì)算出各關(guān)節(jié)實(shí)際運(yùn)動(dòng)的關(guān)節(jié)力矩,將兩力矩進(jìn)行比較,從而可以確定是否發(fā)生碰撞.由于機(jī)器人系統(tǒng)通常不能得到精確的動(dòng)力學(xué)模型,所以該方法并不能精確的檢測(cè)碰撞.文獻(xiàn)[7]提出了一種通過直接檢測(cè)驅(qū)動(dòng)器電流是否發(fā)生突變來判斷是否發(fā)生碰撞的方法,該方法將檢測(cè)到的電流值與相鄰時(shí)刻關(guān)節(jié)驅(qū)動(dòng)器的電流值相比較,若大于設(shè)定的電流閾值,則說明發(fā)生了碰撞,但當(dāng)機(jī)器人加速或是向反方向運(yùn)動(dòng)時(shí),該方法容易發(fā)生誤檢測(cè).文獻(xiàn)[8-9]通過檢測(cè)系統(tǒng)能量的方法來判斷機(jī)器人是否發(fā)生碰撞,該方法的缺點(diǎn)是當(dāng)機(jī)器人處于靜止?fàn)顟B(tài)時(shí),若發(fā)生碰撞,則該檢測(cè)方法無法檢測(cè)出機(jī)器人的碰撞.對(duì)于添加外部傳感器的方法主要有安裝力傳感器,視覺傳感器,以及觸覺傳感器等.德國庫卡公司七自由度協(xié)作機(jī)器人LBR IIWA[10],各關(guān)節(jié)配備力矩傳感器,可檢測(cè)碰撞并進(jìn)行避讓.文獻(xiàn)[11]中通過在機(jī)器人上安裝視覺傳感器的方法來檢測(cè)機(jī)器人的碰撞.近些年來,觸覺傳感器的應(yīng)用成為了人機(jī)交互中的熱點(diǎn).德國機(jī)器人研究所研制了一款23×10個(gè)電極矩陣組成的柔性傳感器[12],應(yīng)用在機(jī)械臂上,用于獲取碰撞信息.美國明尼蘇達(dá)大學(xué)設(shè)計(jì)了一種可拉伸的柔性智能皮膚傳感器[13],作為觸覺系統(tǒng)應(yīng)用在機(jī)器人上進(jìn)行外界信息檢測(cè).
在機(jī)器人安全碰撞檢測(cè)中,最為成熟的是采用力覺傳感器檢測(cè)碰撞力的方法,但該方法依賴于精確的動(dòng)力學(xué)模型,且不能準(zhǔn)確獲得力矩發(fā)生的具體位置,因而無法確保機(jī)器人的安全控制.觸覺傳感器技術(shù)是當(dāng)今的熱點(diǎn)研究話題,由于大多數(shù)觸覺傳感器結(jié)構(gòu)及電路布線復(fù)雜,安全可靠性較低,因而在協(xié)作機(jī)器人安全控制方面的應(yīng)用并不廣泛.
本文作者設(shè)計(jì)了一款觸覺傳感裝置,分析了觸覺裝置各觸覺單元的運(yùn)動(dòng)學(xué)及碰撞力方向,并將其應(yīng)用在機(jī)械臂上,搭建實(shí)驗(yàn)平臺(tái),通過實(shí)驗(yàn)驗(yàn)證設(shè)計(jì)的觸覺傳感裝置的有效性和理論分析的正確性,對(duì)提高協(xié)作機(jī)器人的交互安全性,擴(kuò)展協(xié)作機(jī)器人應(yīng)用范圍具有一定的推動(dòng)作用.
設(shè)計(jì)的可穿戴式觸覺傳感裝置分層結(jié)構(gòu)見圖 1,該傳感器裝置由上覆蓋層、16個(gè)觸覺傳感單元、襯墊層、下覆蓋層4部分組成.上、下覆層材質(zhì)為黑色織物,用于保護(hù)觸覺單元和傳感單元的連接線; 16個(gè)觸覺傳感單元選用薄膜壓力傳感器FSR,F(xiàn)SR由兩層涂有導(dǎo)電金屬的聚酯薄膜組成,其厚度為0.208 mm,感應(yīng)區(qū)域直徑為14.7 mm.根據(jù)觸覺單元間隙最小原則,觸覺裝置采用見圖2的陣列方式;襯墊層所用材料為厚度1.4 mm的帆布織物,用于放置FSR傳感器陣列,為防止FSR受力時(shí)滑動(dòng),造成測(cè)量誤差,在襯墊層上留有7.6 mm寬度開口,用于固定FSR傳感器尾部,并將FSR傳感器粘連在襯墊層上,見圖3.同時(shí)在一側(cè)引出FSR傳感器的信號(hào)采集線,最后將4層材質(zhì)縫合起來.
圖1 觸覺傳感裝置分層結(jié)構(gòu)Fig.1 Layered structure of tactile sensing device
圖2 觸覺傳感單元陣列Fig.2 Tactile sensor array
圖3 傳感器陣列布局Fig.3 Layout of sensor array
可穿戴式的觸覺傳感裝置實(shí)物如圖4所示,其尺寸為290 mm×100 mm,可將其穿戴在假肢或機(jī)械臂的任意位置進(jìn)行接觸力檢測(cè).
圖4 可穿戴式觸覺傳感裝置Fig.4 Wearable tactile sensing device
觸覺傳感器的信息采集系統(tǒng)由FSR觸覺傳感裝置、信號(hào)處理模塊、數(shù)據(jù)采集儀和計(jì)算機(jī)終端軟件等部分組成.
FSR的輸出信號(hào)為電阻信號(hào),經(jīng)信號(hào)調(diào)理電路,完成電阻向電壓信號(hào)轉(zhuǎn)化、模數(shù)轉(zhuǎn)化、放大和濾波,并通過串口將信號(hào)傳輸?shù)接?jì)算機(jī)進(jìn)行處理及保存,從而得到力信息.觸覺信息采集系統(tǒng)結(jié)構(gòu)見圖5.
圖5 信息采集系統(tǒng)結(jié)構(gòu)Fig.5 Structure of information collection system
傳感器的信息采集系統(tǒng)軟硬件采用安微電子科技有限公司開發(fā)的壓力傳感器系統(tǒng),主要由網(wǎng)絡(luò)采集儀、USB接線、排線,壓力采集輸出軟件4部分組成.
由于信息采集系統(tǒng)存在系統(tǒng)誤差及各種外界干擾因素,其輸出的力信號(hào)與實(shí)際輸入值之間存在誤差,為消除偏差,進(jìn)行了觸覺單元的標(biāo)定與校準(zhǔn),通過Matlab及統(tǒng)計(jì)學(xué)最小二乘法思想得到觸覺單元數(shù)學(xué)模型,保證了觸覺傳感裝置輸出信息的準(zhǔn)確性.
采用砝碼對(duì)觸覺傳感裝置中的每個(gè)觸覺單元進(jìn)行靜態(tài)標(biāo)定,得到相應(yīng)的1次、3次、5次擬合曲線,如圖6所示,考慮到系統(tǒng)運(yùn)算速度,結(jié)合最小二乘法的思想對(duì)擬合曲線進(jìn)行擬合優(yōu)度判斷,最終選擇1次擬合曲線作為觸覺單元的數(shù)學(xué)模型,各觸覺單元的數(shù)學(xué)模型表達(dá)式為
y=ax+b
(1)
式中:a、b為表達(dá)式系數(shù).
圖6 觸覺單元擬合曲線Fig.6 Fitting curves of tactile unit
觸覺傳感裝置安裝在實(shí)驗(yàn)室三自由度機(jī)械臂上,建立如圖 7所示的觸覺單元及機(jī)械臂連桿坐標(biāo)系,選機(jī)械臂第1關(guān)節(jié)坐標(biāo)系(X0,Y0,Z0)為機(jī)械臂基準(zhǔn)坐標(biāo)系,根據(jù)D-H法得到各坐標(biāo)系下的D-H參數(shù),如表 1所示.
圖7 機(jī)械臂坐標(biāo)系Fig.7 Coordinate system of mechanical arm
變換矩陣連桿長度ak/mm連桿扭角αk/(°)關(guān)節(jié)偏置dk/mm關(guān)節(jié)角度θk/(°)0A10π/2L0θ11A2L1-π/20θ22AiL20D3θ3
表1中L0為機(jī)械臂肩長,值為27 mm,L1為機(jī)械臂大臂長度,值為314 mm ,L2為觸覺傳感裝置距機(jī)械臂肘關(guān)節(jié)的長度,D3為觸覺裝置半徑,取D3=40 mm,L2=175 mm.θ1,θ2,θ3分別為機(jī)械臂關(guān)節(jié)1、2、3的關(guān)節(jié)夾角,2Ai中下標(biāo)i為常量,表示機(jī)械臂末端坐標(biāo)系.由D-H法得到各相鄰坐標(biāo)系的變換矩陣分別為
(4)
將變換矩陣(2)(3)(4)順序相乘,得到觸覺單元在機(jī)械臂基準(zhǔn)坐標(biāo)系中總變換矩陣
(5)
式中ck=cosθk,sk=sinθk,k=1,2,3.
觸覺單元在機(jī)械臂的期望位姿矩陣為
(6)
式中:0Ri=[nx,ox,ax;ny,oy,ay;nz,oz,az]為觸覺單元在的姿態(tài)矩陣;Pi=[px;py;pz]為觸覺單元在機(jī)械臂的位置矩陣.
令機(jī)械臂基準(zhǔn)坐標(biāo)系中總變換矩陣與機(jī)械臂期望位姿矩陣相等
Td=0Ti
(7)
根據(jù)式(7)得
(8)
變換矩陣的逆矩陣依次乘以機(jī)械臂總變換矩陣,求解得到觸覺單元的運(yùn)動(dòng)學(xué)逆解
(9)
觸覺單元之間進(jìn)行相應(yīng)的坐標(biāo)變換,即可求解得到所有觸覺單元在機(jī)械臂基坐標(biāo)系下的運(yùn)動(dòng)學(xué)正解及逆解.
機(jī)械臂在基坐標(biāo)系中的具體方向未知,為便于實(shí)現(xiàn)對(duì)機(jī)械臂的運(yùn)動(dòng)控制,取各觸覺單元法線方向?yàn)槠湓谟|覺傳感裝置中的正壓力方向,通過坐標(biāo)變換,求解得到各觸覺單元在機(jī)械臂基坐標(biāo)系中的正壓力方向信息.
觸覺傳感裝置中16個(gè)觸覺單元都有其各自的參考坐標(biāo)系,選觸覺單元9為其余各觸覺單元的基準(zhǔn)坐標(biāo)系,各觸覺單元j的坐標(biāo)系為(xj,yj,zj) ,其中j=1,2,…,16,坐標(biāo)系如圖8所示.基準(zhǔn)坐標(biāo)系進(jìn)行相應(yīng)的旋轉(zhuǎn)和平移變換即可與各觸覺單元參考坐標(biāo)系重合,坐標(biāo)系變換參數(shù)值如表2所示.其中γ為基準(zhǔn)坐標(biāo)系繞自身x軸旋轉(zhuǎn)的角度,dx,dy,dz分別為基準(zhǔn)坐標(biāo)系沿x,y,z軸向各觸覺單元參考坐標(biāo)系移動(dòng)的距離.
基準(zhǔn)坐標(biāo)系到參考坐標(biāo)系的變換矩陣為
Mj=Rot(x,y)·
Trans(dx,0,0)·Trans(0,dy,0)
(10)
根據(jù)基準(zhǔn)觸覺單元相對(duì)于基準(zhǔn)坐標(biāo)系的變換矩陣,求解得到各受力觸覺單元在基坐標(biāo)系下的總變換矩陣為
(11)
式中:0RF表示力作用下觸覺單元坐標(biāo)系到基準(zhǔn)坐標(biāo)系的旋轉(zhuǎn)矩陣;PF表示力作用點(diǎn)到機(jī)械臂基坐標(biāo)系的位置矩陣,具體可表示為
圖8 觸覺單元坐標(biāo)系Fig.8 Coordinate system of tactile units
表2 變換參數(shù)值
(12)
(13)
式中:cy=cosγ;sy=sinγ.
觸覺單元j的接觸力在自身參考坐標(biāo)系的方向?yàn)?/p>
(14)
則觸覺單元在機(jī)械臂基坐標(biāo)系下的接觸力為
0F=0RF·Fj=
(15)
觸覺裝置檢測(cè)到碰撞,碰撞力位置方向取各受力觸覺單元在機(jī)械臂坐標(biāo)系各軸位姿分量的均值,以觸覺單元位姿和正壓力方向分析為基礎(chǔ),求解碰撞力在機(jī)械臂基準(zhǔn)坐標(biāo)系中的位置和方向信息.
碰撞力在基準(zhǔn)坐標(biāo)系的位置信息為
(16)
碰撞力在基準(zhǔn)坐標(biāo)系的力方向?yàn)?/p>
(17)
式中:h表示受力觸覺單元個(gè)數(shù),h=1,2,…,16.
為驗(yàn)證觸覺傳感裝置的有效性及觸覺單元接觸力方向識(shí)別方法的正確性,搭建實(shí)驗(yàn)平臺(tái),設(shè)計(jì)碰撞檢測(cè)實(shí)驗(yàn).實(shí)驗(yàn)平臺(tái)主要由機(jī)械臂樣機(jī)、控制系統(tǒng)硬件、控制系統(tǒng)軟件3部分組成.
控制系統(tǒng)采用主從式結(jié)構(gòu):即上下位機(jī)結(jié)構(gòu).上位機(jī)需要良好的操作性及穩(wěn)定性,因而選用研華工控機(jī)作為上位機(jī),下位機(jī)是整個(gè)控制系統(tǒng)的核心部分,主要完成機(jī)械臂舵機(jī)的運(yùn)動(dòng)控制,編碼器信息采集、觸覺信息的接收與處理、數(shù)據(jù)的實(shí)時(shí)顯示及控制算法的實(shí)現(xiàn),要求其具有較多的硬件接口及良好的實(shí)時(shí)性.采用意法半導(dǎo)體公司的STM32 VET6作為核心控制部件.機(jī)械臂與控制系統(tǒng)硬件如圖9所示.
圖9 控制系統(tǒng)硬件Fig.9 Hardware of control system
圖10 上位機(jī)通信界面Fig.10 Communication interface of upper computer
控制系統(tǒng)的軟件主要由用于將觸覺傳感器采集的碰撞力反饋給STM32的上位機(jī)軟件和用于實(shí)現(xiàn)機(jī)械臂的運(yùn)動(dòng)控制和碰撞力檢測(cè)算法的下位機(jī)運(yùn)動(dòng)控制程序兩部分組成.如圖10為上位機(jī)通信軟件界面,使用C語言編寫,用于完成碰撞力的信息處理及發(fā)送.碰撞力信息的數(shù)據(jù)處理過程為:壓力采集系統(tǒng)采集觸覺單元力信息,實(shí)時(shí)存放于TXT文本文件中,其文件的第2列至第17列對(duì)應(yīng)為觸覺單元1至16的力值,上位機(jī)通信軟件讀取實(shí)時(shí)TXT,將受力觸覺單元列提取存放于16個(gè)數(shù)組中并進(jìn)行受力觸覺單元列求和計(jì)算,即可得碰撞力大小,并在數(shù)據(jù)顯示界面實(shí)時(shí)顯示.
STM32的通訊信號(hào)為TTL電平,舵機(jī)的通信形式為RS485,兩者之間選用TTL轉(zhuǎn)RS485模塊進(jìn)行通信;編碼器的引線與STM32的I/O端口相連,實(shí)現(xiàn)關(guān)節(jié)信息采集;觸覺采集系統(tǒng)與工控機(jī)采用USB通信,通過上位機(jī)軟件將采集的接觸力發(fā)送給下位機(jī)STM32.STM32接收工控機(jī)發(fā)送的指令,控制機(jī)械臂運(yùn)動(dòng),并進(jìn)行機(jī)械臂關(guān)節(jié)角度的實(shí)時(shí)采集與顯示,同時(shí),觸覺傳感器實(shí)時(shí)檢測(cè)碰撞力,若發(fā)生碰撞,觸覺傳感裝置將檢測(cè)到的力信息經(jīng)數(shù)據(jù)處理后通過串口發(fā)給STM32,并控制機(jī)械臂進(jìn)行碰撞避讓運(yùn)動(dòng).
為驗(yàn)證觸覺傳感裝置中觸覺單元接觸力方向識(shí)別方法的正確性,分別對(duì)16個(gè)觸覺單元施加力,觸覺傳感裝置檢測(cè)到碰撞后,則控制機(jī)械臂沿著觸覺單元受力方向做直線避讓運(yùn)動(dòng).沿接觸力方向的直線方程為
(18)
直線方程中,調(diào)整時(shí)間參數(shù)t即可得到不同的位移點(diǎn),為保證機(jī)械臂沿著碰撞力減小的方向,必須保證t>0.將式(18)代入觸覺單元逆運(yùn)動(dòng)學(xué)式(9)中可求解得到對(duì)應(yīng)的關(guān)節(jié)角,即可控制機(jī)械臂沿接觸力方向做反向避讓運(yùn)動(dòng).
將所規(guī)劃的避讓路徑寫入控制程序中,并給定機(jī)械臂的初始位置為 (300,250,27),分別對(duì)各觸覺單元施加壓力,觸覺傳感裝置檢測(cè)到碰撞力后發(fā)送給STM32,下位機(jī)接收碰撞力并控制機(jī)械臂沿觸覺單元受力方向運(yùn)動(dòng),根據(jù)各關(guān)節(jié)舵機(jī)反饋的位置信息,繪制各觸覺單元沿碰撞力方向運(yùn)動(dòng)的曲線,見圖11.計(jì)算各觸覺單元的實(shí)際運(yùn)動(dòng)方向曲線得到反正切,即計(jì)算各觸覺單元運(yùn)動(dòng)曲線縱坐標(biāo)與橫坐標(biāo)比之的反正切即可得到觸覺單元實(shí)際運(yùn)動(dòng)方向與機(jī)械臂X軸夾角.
圖11 觸覺單元受力方向Fig.11 Force direction of tactile elements
機(jī)械臂安裝的假肢周長約為220 mm,因而可在機(jī)械臂周向表面布置12個(gè)觸覺單元,則觸覺傳感裝置相鄰觸覺單元之間的夾角為30°.
如表3為各觸覺單元與機(jī)械臂基坐標(biāo)系X軸的理論與實(shí)際夾角,觸覺單元最大夾角誤差為0.07、0.08及0.16,其余觸覺單元夾角誤差均小于0.03.
表3 觸覺單元角度值
引起誤差的主要原因有:1)由于機(jī)械臂彈性關(guān)節(jié)的存在,舵機(jī)啟動(dòng)引起機(jī)械臂的振動(dòng),使得運(yùn)動(dòng)方向有偏差;2) 觸覺傳感裝置安裝的機(jī)械臂曲面為橢圓,為計(jì)算方便,近似為圓,故表3中各單元與X軸的夾角為近似值.在計(jì)算過程中依照橢圓分析,即可減小誤差.雖然有一定誤差,但觸覺單元力的分析方法正確,其影響可忽略,可將其應(yīng)用在機(jī)械臂中進(jìn)行碰撞檢測(cè),發(fā)生碰撞后,控制機(jī)械臂沿碰撞力避讓,提高機(jī)械臂的安全性.
1)設(shè)計(jì)了一個(gè)可穿戴式的觸覺傳感裝置,搭建了觸覺傳感裝置的信息采集系統(tǒng),并對(duì)觸覺傳感裝置進(jìn)行了靜態(tài)標(biāo)定,得到各觸覺單元的數(shù)學(xué)模型.
2)對(duì)觸覺傳感裝置進(jìn)行了運(yùn)動(dòng)學(xué)及觸覺單元方向識(shí)別分析.
3)將可穿戴式觸覺傳感裝置應(yīng)用于三自由度柔順機(jī)械臂上進(jìn)行機(jī)械臂碰撞檢測(cè)實(shí)驗(yàn),對(duì)機(jī)械臂的避讓運(yùn)動(dòng)曲線做分析,從而驗(yàn)證了觸覺傳感裝置的有效性及觸覺單元接觸力理論分析的合理性,可將其設(shè)備應(yīng)用于人機(jī)交互中進(jìn)行碰撞檢測(cè),提高人機(jī)交互安全性.