我對ADRC的一些整理(很多來自其他部落格)

2021-10-09 19:12:20 字數 1401 閱讀 1583

adrc控制中包含三個主要的部分:

跟蹤微分器,非線性狀態反饋(非線性組合),擴張觀測器。

他這裡讓我很好理解了跟蹤微分器

話說pid不是有微分先行的pid麼,起到的作用是不是和這裡的跟蹤微分器類似?這是我在看乙個碩士**時發現的,當然之前智慧型車的書上也講了微分先行pid

非線性pid(準確說是非線性pd,所以可以看到輸入是兩根線而不是三根線)  也就是說傳統pid是線性的?但是不是那些系統是非線性的,比如無人機,平衡車,只是小幅度裡近似為線性的。

下面這個來自於:

他這裡確實讓我對adrc的理解更進了乙個層面。現在對adrc有了比較清晰的認識,並不神秘並不高深,其實還好。還是很好理解的。

下面這個來自這篇

擴張狀態觀測器(eso)

(1)功能

估計系統內外擾動的實時作用值,並在反饋中給予補償,用補償的方法消除擾動的影響,從而具有抗干擾的作用。

所以它的輸入是從被控物件的前後兩個輸入,這樣也好理解。

擴張觀測器裡面就要列狀態方程了,就訊號與系統裡面學到的東西,你很熟悉了吧,應該是這塊需要建模。所以可以說adrc把傳統pid和現代的控制理論結合起來,而且把線性pid公升級為非線性pid。

既然本質是乙個pd控制器,那麼需不需要進行pd的調參呢?

通過將干擾擴張成為系統的狀態變數,進行干擾補償,進而降低干擾的影響

那個擴張的一維好像是又求了一次導,本身已經輸出z ,z的導數,似乎第三個是z的導數的導數。

無名的adrc程式裡面也是這樣的,z3確實就是加速度了。這麼來看,eso似乎也不複雜啊。

無名的adrc**裡對adrc過程的注釋說明

所以你再看到下面這種就明白什麼意思了,就是在說跟蹤微分器

我對CPPUNIT的一些理解

一 測試用例 1 cppunit通常用於介面測試,如果進行路徑測試,需要考慮一些特殊問題,因為可能需要訪問被測類的保護或者私有成員。在這種情況下,可以考慮使用輔助類,輔助類從被測類派生,並將測試類宣告為友元。2 測試類從testfixture派生,該類宣告了setup teardown 函式,分別進...

我對指標的一些總結

首先我很推薦看華清裡面講的c指標還有c語言中文網裡面對c指標的講解。指標變數加一是向位址大的方向移動乙個目標資料 陣列名相對於陣列元素都是進了指標一級 指標陣列很適合操作二維陣列 指標陣列的陣列名其實就是個二級指標 下面摘自c語言中文網,理解 int 在不同的場景下有不同的作用 可以用在指標變數的定...

我個人整理的一些關於檔案的一些基本操作

typedef typedef struct file fopen file fp fp fopen 檔名,使用檔案方式 fclose fclose 檔案指標 fputc fputc ch,fp 將字元 ch的值 輸出到fp所指向的檔案中去 fgetc ch fgetc fp 從指定的檔案fp讀入乙...