看到桂博 @桂凱 的回答點了進來。順便看了下題主的描述,看著題主懟天懟地各種不服氣的語氣仿佛看到了多年前的自己,從另一個角度補充一下桂博的回答吧。
根據書上的控制律(10-15)得到的系統閉環特性公式為(10-17):
\ddot{E}+K_V\dot{E}+K_pE=0\\
題主是希望把慣量矩陣乘以實際加速度放到 \beta 項裏面作為補償項(根據你說的「這些是非線性力,一塊把慣性力抵消了不就更方便了」),那麽你的思路就是模型部份如下:
\alpha=M(\theta) \\ \beta=M(\theta) \ddot{\theta}+V(\theta,\dot{\theta})+G(\theta)+F(\theta,\dot{\theta})
控制律部份如下:
{\tau}^{'}=K_v\dot{E}+K_pE\\
代進去補償的話,會得到誤差方程式:
K_V\dot{E}+K_pE=0\\
我們來看下你的思路和書上的思路有什麽差異,很明顯,你的思路得到的閉環誤差方程式缺少對加速度誤差的抑制能力,表現到實際效能上,就是系統響應能力會差一些;甚至這種用實際加速度計算慣量項力來補償的思路有點打哪指哪的感覺,畢竟實際加速度並不是期望的加速度。一般關節空間軌跡指令是 (\ddot{\theta}_d, \dot{\theta}_d,\theta_d)
,而你只用了後面兩項作為輸入指令。
另外書上的思路得到的閉環方程式是一個二階微分方程式,可以設計自己想要的期望響應,而你提出的思路推出來只是一個彈簧阻尼系統,少了質素項,假如說需要設計期望響應的時候你打算怎麽設計呢?總的來說,你提出的控制思路相對於書上的思想並沒有任何改善,反而惡化。
你的第二個問題我就不回答了,第一是因為書有點老舊,當年的簡單演算法現在工業廠商應該用的不多了。第二是你看懂上面解答再去仔細看看第二個問題,會覺得很簡單。
這本書(【機器人學導論】)的確老了一些,但是算是一本經典,有必要沈下心來去試著理解當年作者的思想,動手推推公式。