1.一種基于PMPSD的工業機器人絕對精度校準方法,具體包括以下幾個步驟:
第一步:建立機器人誤差運動學模型;
第二步:建立空間多點虛擬約束,使用PSD裝置進行數據采樣;
第三步:利用空間矢量關系修正機器人末端激光器的位姿,并利用修正后的位姿對機器人關節轉角進行修正,以取代從機器人示教器或從控制器得到的關節轉角;
第四步:構建模型約束目標函數;
第五步:利用最小化方法對約束目標函數進行優化,得到工業機器人的參數誤差;
第六步:將參數誤差對幾何參數名義值進行修正,實現機器人的絕對精度校準。
2.根據權利要求1所述一種基于PMPSD的工業機器人絕對精度校準方法,其特征是:所述第三步中利用空間矢量關系修正機器人末端激光器的位姿,并利用修正后的位姿對機器人關節轉角進行修正,以取代從機器人示教器或從控制器得到的關節轉角。包括以下步驟:
步驟(1),利用示教器控制方式,將激光束投射到PSD中心,記錄此時的關節轉角θ1,然后改變機器人位姿,重新將激光束投射到PSD中心,記錄此時的關節轉角θ2,這時便可得到兩組激光束方程,可求得PSD中心點相對于機器人基坐標系的坐標為Pf(pfx,pfy,pfz)。由于PSD為位置傳感器,因此,當激光束再投射到PSD表面時,此時的斑點位置為Ps(psx,psy,psz)。
步驟(2),設三維空間中任意一條激光束的直線方程表示為L=(px,py,pz,α,β,γ,其中Pt(px,py,pz)為激光器相對于機器人基坐標系的坐標,為在基坐標系下的激光束方向矢量。由于激光器以不同的位姿將激光束投射到PSD的表面,因此可以得到多組機器人關節轉角,也就可以獲得多組激光束在機器人基坐標系下的直線方程。PSD表面中心點坐標為Pc(pcx,pcy,pcz),激光束投射在PSD上的斑點位置為Ps(psx,psy,psz),可得投射斑點到PSD中心點的方向矢量為
步驟(3),已知激光束方向矢量及投射斑點至PSD中心點的方向矢量
如附圖2所示,因此可以得到虛擬激光束方向矢量
為
步驟(4),利用已知激光器坐標Pt(px,py,pz)及得到的虛擬激光束方向矢量再運用機器人運動學逆解求得多組關節轉角值,并選取其中完全平方差之和最小的一組關節轉角θ′,將關節轉角θ′取代之前從機器人示教器或控制器取得的關節轉角值θ。
3.根據權利要求1所述一種基于PMPSD的工業機器人絕對精度校準方法,其特征是:所述第五步利用最小化方法對約束目標函數進行優化,得到工業機器人的參數誤差。使用最小化方法LM(Levenberg-Marquardt)算法不斷進行迭代使得δ*最小化,此時工業機器人的參數誤差Δs將會被辨識出來,
Δs=[Δα1 Δd1 Δα1 Δθ1 … Δαn Δdn Δαn Δθn]T,Δs為m×1的矩陣,m為待辨識的參數個數,n為機器人關節數。步驟如下。
步驟(1),初始化參數誤差Δs,LM算法的初始化相關參數,迭代次數k;
Δs0=0,μ=0.1,v=2,k=1 (2)
步驟(2),計算第k次迭代時的雅可比矩陣J(Δsk);
雅克比矩陣J(Δsk)由Ω對Δs分量求解偏微分得到,其中Ω=[Ω1,Ω2,…Ωk×m],
步驟(3),利用LM算法求解參數誤差矩陣hlm;
hlm=-(J(Δsk)TJ(Δsk)+μ×Im×m)-1J(Δsk)TΩ (3)
其中hlm表示為第k次迭代時參數誤差的改變值,為m×1矩陣,Δsk為第k次迭代時的參數誤差,為m×1矩陣,μ為阻尼因子,m為待辨識的參數個數。
步驟(4),計算第k次迭代時實際下降量ADk與預估下降量PDk的比值ρ;
ADk=F(Δsk)-F(Δsk+hlm) (4)
步驟(5),更新迭代參數;
若ρ>0:
Δsk=Δsk+hlm (7)
v=2 (9)
否則:
μ=μ×v (10)
v=2×v (11)
重復步驟(2)至(5)。當||J(Δsk)TΩ||<ε時,循環結束,得到最終的機器人參數誤差Δs=Δsk,否則k=k+1。
4.根據權利要求1所述一種基于IEKF的機器人絕對精度校準方法,其特征是:所述第六步中將辨識出的參數誤差對幾何參數名義值進行修正,實現機器人的絕對精度校準,包括以下步驟:
辨識出的參數誤差為Δs,sg=sn+Δs,sn為機器人幾何參數名義值,sg為機器人幾何參數真實值。