當前位置:
首頁 >
“自抗扰控制器”初探之InstaSPIN-MOTION
發布時間:2024/1/1
44
豆豆
生活随笔
收集整理的這篇文章主要介紹了
“自抗扰控制器”初探之InstaSPIN-MOTION
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
對于馬達控制,標準的PI速度控制器具有許多內在缺陷:
1)需要調節多個參數,這些參數又相互依賴,從而可能存在多組參數解,參數需要通過大量試驗才能確定,參數整定較為困難;
2)一組PI參數對應的轉速和負載運行范圍非常小,需要針對不同的轉速和負載點,設置不同的PI參數。
TI的InstaSPIN-MOTION內部集成了SpinTAC控制器,可以解決上述問題。SpinTAC使用了自抗擾控制器(ADRC,Active Disturbance Rejection Control),自抗擾控制器能夠對系統擾動進行實時估算并補償,其所要整定的參數只有一個即帶寬,一旦整定,控制器可以工作在較寬的轉速和負載范圍內。
觀察TI提供的Demo程序,可以發現,ADC中斷中,在FOC運行之前運行了SpinTAC控制。
進入ST_runVelCtl()函數,可以發現其輸出就是轉矩參考值,即Iq參考值,作為q軸電流PI調節器的輸入。
void ST_runVelCtl(ST_Handle handle, CTRL_Handle ctrlHandle) {_iq speedFeedback, iqReference;ST_Obj *stObj = (ST_Obj *)handle;CTRL_Obj *ctrlObj = (CTRL_Obj *)ctrlHandle;// Get the mechanical speed in puspeedFeedback = EST_getFm_pu(ctrlObj->estHandle);// Run the SpinTAC Controller// Note that the library internal ramp generator is used to set the speed referenceSTVELCTL_setVelocityReference(stObj->velCtlHandle, TRAJ_getIntValue(ctrlObj->trajHandle_spd));STVELCTL_setAccelerationReference(stObj->velCtlHandle, _IQ(0.0)); STVELCTL_setVelocityFeedback(stObj->velCtlHandle, speedFeedback);STVELCTL_run(stObj->velCtlHandle);// select SpinTAC Velocity ControlleriqReference = STVELCTL_getTorqueReference(stObj->velCtlHandle);// Set the Iq reference that came out of SpinTAC Velocity ControlCTRL_setIq_ref_pu(ctrlHandle, iqReference); }參考文獻:《InstaSPIN Projects and Labs User’s Guide》,TI文檔。
總結
以上是生活随笔為你收集整理的“自抗扰控制器”初探之InstaSPIN-MOTION的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 现代制造技术产品设计与柔性制造系统的预测
- 下一篇: 基于Simulink与SimMencha