遞推最小二乘辨識平面雙機械臂Matlab代碼

本代碼是我的畢設裏面的一部分,首先是將SCARA機器人簡化成爲簡單的平面雙機械臂模型,對其進行動力學建模,由於SCARA機器人的特性,動力學方程中的重力項可以忽略,最後將動力學方程化簡成爲AX=B的形式,用遞推最小二乘的方法,對其中的慣性參數進行辨識,將模型的慣性參數分爲六個未知量,在已知位置,速度,加速度和力矩的情況下,進行遞推就可以最終得到辨識的六個參數。

有關遞推最小二乘的原理,可以參考劉金琨老師的《系統辨識理論及MATLAB仿真》一書的第三章內容,書中詳盡的描述了最小二乘,加權最小二乘,遞推最小二乘等一系列基礎辨識方法的知識,並附有詳盡的代碼和註釋,很有參考價值。

遞推最小二乘的核心公式如下:


關鍵就是通過之前時刻的估計值,以及下一時刻的估計值,更新增益矩陣K和P陣,一步一步實現遞推。在調試的過程中,值得注意的一點是P和theta初值的選取,一共有兩種方法,如下所示:


在我的調試中發現,書中提供的代碼採用的是第二種方式,即任意假設的方式,儘管隨着遞推的進行,該初值對

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章