當前位置:網站首頁 > 新聞中心 > 行業動態

直流電機控制算法看這就懂了

作者:杏仁饼  来源:www.kuersi.cn  更新时间:2019-12-27 15:55:43  点击次数:

直流電機控制算法的作用是接受指令速度值,通過運算向電機提供適當的驅動電壓,盡快地和盡快平穩地使電機轉速達到指令速度值,並維持這個速度值。換言之,一旦電機轉速達到了指令速度值,即使在各種不利因素(如斜坡、碰撞之類等使電機轉速發生變化的因素)的幹擾下也應該保持速度值不變。爲了提高機器人小車控制系統的控制精度,選用合適的控制算法顯得十分必要。控制算法是任何閉環系統控制方案的核心,然而並非越複雜、精度越高的算法越好,因爲比賽要求非常高的實時性,機器人必須在非常短的時間內作出靈敏的反應,所以現代的一些先進控制算法,比如模糊控制、神經元網絡控制等就不能應用到小車控制系統裏。本系統選用了最常規、最經典的PID控制算法,通過實際應用取得了很好的效果。下圖是PID控制原理結構圖。


PID控制系统原理结构框图


1 比例项


控制回路中的第一个偏差转换环节就是比例项。这一环节简单地将偏差信号乘以常数K 得到新的CV值(值域为-100~100)。基本的比例控制算法如下:


loop:


PV=ReadMotorSpeed


Error=SP-PV


CV=Error*Kprop


Setpwm(cv)


Goto loop


其中SP爲設定值,PV爲反饋值,Error爲誤差。


上一段程序中的SetPWM函數並非將CV值作爲絕對的PWM占空比來對待。否則,不斷降低的偏差值會使輸出值接近零,而且由于電機工作時需要持續的PWM信號,控制系統將會使電機穩定在低速運轉狀態上,從而導致控制系統策略失敗。


相反,CV值一般被取作当前PWM占空比的改变量,并被附加到当前的PWM占空比上。这也要求SetPWM函数必须将相加后得到的PWM占空比限制在0%~100%。正的CV值将使电机两端电压增加。负的CV值将使电机两端电压降低。如果CV值等于0,则无需改变但前占空比。较低的K 值会使电机的速度响应缓慢,但是却很平稳。较高的K 值会使速度响应更快,但是却可能导致超调,即达到稳定输出前在期望值附近振荡。过高的K 值会导致系统的不稳定,即输出不断震荡且不会趋于期望值。


2 积分项


積分正好與微分相對。假如有一個描述變化率(微分)的表達式,那麽對該表達式的積分就將得到隨時間變化的原物理量。如加速度的積分是速度,速度的積分是位移。


在PID控制回路中,偏差的积分代表从控制开始时算起所有偏差积累的总和。该总和被常数K 所乘后再添加到回路输出中。在回路中,如果没有积分环节,尽管控制系统也会趋于稳定,但是由于某种原因输出值可能最终也无法达到SP值。


一個簡單但完全的PID控制器地僞代碼實現如下:


loop:


PV=ReadMotorSpeed


LastError=Error


Isum=Isum+Error


Error=SP-PV


Rate=Error-LastError


CV=Error*Kprop+Krate*Rate+Kint*Isum


SetPWM(CV)


Goto loop


由于積分項會越來越大,這就會使控制回路在SP值的改變時響應變慢,某些應用場合在CV值達到取值邊界(如爲:-100~100)時會停止累加Isum。在SP值改變時,也可以除去Isum項。


3 微分项


任何變量的微分項被用來描述該變量是如何相對于另一個變量(多位時間)變化的。換句話說,任何變量的微分項就是它隨時間的變化率。如位移隨時間的變化率是速度。速度相對于時間的微分是加速度。


在PID控制器中,值得關心的是偏差信號相對于時間的微分,或稱變化率。絕大多數控制器將微分項定義爲:


Rate=(E-E )/T


式中,E为当前偏差,E 为前次偏差值,T为两次测量的时间间隔。负的变化率表明偏差信号的改善。当微分项被具体应用于控制器中时,将一个常数乘以该微分项,并将它加到比例项上,就可以得到最终的CV值计算公式:


CV=( K E)+( K Rate)


当偏差信号接近零时,CV值将为负,所以当偏差信号开始改善时,微分项的作用将逐渐减弱校正输出量。在某些场合下,微分项还有利于超调量的消除,并可以允许使用较大的K 值,从而可以改善响应的快速性。微分环节还预示了偏差信号的变化趋势。当控制对象对控制器的输出响应迟缓时,微分环节的作用尤为明显。


含有微分項的控制算法的僞代碼實現如下:


loop:


PV=ReadMotorSpeed


LastError=Error


Error=SP-PV


Rate=Error-LastError


CV=Error*Kprop+Krate*Rate


SetPWM(CV)


Goto loop


4 PID的整定方法


在整定PID控制器參數時,可以根據控制器的參數與系統動態性能和穩態性能之間的定性關系,用實驗的方法來調節控制器的參數。有經驗的調試人員一般可以較快地得到較爲滿意的調試結果。在調試中最重要的問題是在系統性能不能令人滿意時,知道應該調節哪一個參數,該參數應該增大還是減小。


爲了減少需要整定的參數,首先可以采用PI控制器。爲了保證系統的安全,在調試開始時應設置比較保守的參數,例如比例系數不要太大,積分時間不要太小,以避免出現系統不穩定或超調量過大的異常情況。給出一個階躍給定信號,根據被控量的輸出波形可以獲得系統性能的信息,例如超調量和調節時間。應根據PID參數與系統性能的關系,反複調節PID的參數。


如果階躍響應的超調量太大,經過多次振蕩才能穩定或者根本不穩定,應減小比例系數、增大積分時間。如果階躍響應沒有超調量,但是被控量上升過于緩慢,過渡過程時間太長,應按相反的方向調整參數。


如果消除誤差的速度較慢,可以適當減小積分時間,增強積分作用。


反複調節比例系數和積分時間,如果超調量仍然較大,可以加入微分控制,微分時間從0逐漸增大,反複調節控制器的比例、積分和微分部分的參數。


總之,PID參數的調試是一個綜合的、各參數互相影響的過程,實際調試過程中的多次嘗試是非常重要的,也是必須的。


本文鏈接:/news/news2019122782.html
相關TAG:
上一篇:直流電機的電樞分類介紹
下一篇:直流無刷電機有哪些种类?

相關文章

無刷電機是什麽意思-2020-05-29
直流無刷電機如何控制-2020-05-16
直流無刷電機驱动原理-2020-04-10
無刷電機和有刷電機的區別和性能比較-2020-02-29
無刷電機發明人-2020-08-27
国内直流無刷電機的前景-2020-03-12
直流無刷電機与永磁同步电机区别详解-2020-03-09
直流無刷電機扫盲篇!-2020-02-25
無刷直流電機系統基礎知識-2020-02-22
關于無刷電機,你必須知道的44個常識-2020-02-19
爲什麽選擇無刷電機而不是有刷電機-2020-01-01
直流電機的幾種調速方法及他們的優缺點對比介紹-2019-12-31
簡單說一下直流電機與交流電機的區別-2019-12-30
直流無刷電機如何稳定电压-2019-12-29
直流電機控制算法看這就懂了-2019-12-27
聯系我們

手機:13758738785

固話:0577-67966882

郵箱:178007292@qq.com

地址:溫州市永嘉縣東瓯街道和三村(永嘉縣申鴻閥業科技有限公司內)

? 2019 版权所有 温州市利来资源站影音先锋【AG集团网址: kflaoge88.com 】机电有限公司 浙ICP備19036361號
(function(){ var canonicalURL, curProtocol; //Get the tag var x=document.getElementsByTagName("link"); //Find the last canonical URL if(x.length > 0){ for (i=0;i