山東利澤盟展自控設(shè)備有限公司
地址:濟南市高新區(qū)康虹路766號
山東利澤盟展自控設(shè)備有限公司網(wǎng)站: http://www.2tingyuan.cn/
阿里巴巴店鋪:https://jnlzmz.1688.com/
淘寶店鋪: https://shop107576925.taobao.com
山東利澤盟展自控設(shè)備有限公司易賣工控:https://www.ymgk.com/flagship/index/14778.html
電話:13325117271 15554106147 ( 微信同號 )
Q Q:18268484 718947776
(一)先來徹底搞懂PID到底是什么?
啥是PID?
PID,就是“比例(proportional)、積分(integral)、微分(derivative)”,是一種很常見的控制算法。算法是不可以吃的。
PID已經(jīng)有107年的歷史了。
它并不是什么很神圣的東西,大家一定都見過PID的實際應(yīng)用。
比如四軸飛行器,再比如平衡小車......還有汽車的定速巡航、3D打印機上的溫度控制器....
就是類似于這種:需要將某一個物理量“保持穩(wěn)定”的場合(比如維持平衡,穩(wěn)定溫度、轉(zhuǎn)速等),PID都會派上大用場。
那么問題來了:
比如,我想控制一個“熱得快”,讓一鍋水的溫度保持在50℃
這么簡單的任務(wù),為啥要用到微積分的理論呢。
你一定在想:
這不是so easy嘛~ 小于50度就讓它加熱,大于50度就斷電,不就行了?幾行代碼用Arduino分分鐘寫出來。
沒錯~在要求不高的情況下,確實可以這么干~ But!如果換一種說法,你就知道問題出在哪里了:
如果我的控制對象是一輛汽車呢?
要是希望汽車的車速保持在50km/h不動,你還敢這樣干么。
設(shè)想一下,假如汽車的定速巡航電腦在某一時間測到車速是45km/h。它立刻命令發(fā)動機:加速!
結(jié)果,發(fā)動機那邊突然來了個100%全油門,嗡的一下,汽車急加速到了60km/h。
這時電腦又發(fā)出命令:剎車!
結(jié)果,吱...............哇............(乘客吐)
所以,在大多數(shù)場合中,用“開關(guān)量”來控制一個物理量,就顯得比較簡單粗暴了。有時候,是無法保持穩(wěn)定的。因為單片機、傳感器不是無限快的,采集、控制需要時間。
而且,控制對象具有慣性。比如你將一個加熱器拔掉,它的“余熱”(即熱慣性)可能還會使水溫繼續(xù)升高一小會。
這時,就需要一種『算法』:
它可以將需要控制的物理量帶到目標附近
它可以“預(yù)見”這個量的變化趨勢
它也可以消除因為散熱、阻力等因素造成的靜態(tài)誤差
....
于是,當時的數(shù)學(xué)家們發(fā)明了這一歷久不衰的算法——這就是PID。
你應(yīng)該已經(jīng)知道了,P,I,D是三種不同的調(diào)節(jié)作用,既可以單獨使用(P,I,D),也可以兩個兩個用(PI,PD),也可以三個一起用(PID)。
這三種作用有什么區(qū)別呢?客官別急,聽我慢慢道來
我們先只說PID控制器的三個最基本的參數(shù):kP,kI,kD。
kP
P就是比例的意思。它的作用最明顯,原理也最簡單。我們先說這個:
需要控制的量,比如水溫,有它現(xiàn)在的『當前值』,也有我們期望的『目標值』。
當兩者差距不大時,就讓加熱器“輕輕地”加熱一下。
要是因為某些原因,溫度降低了很多,就讓加熱器“稍稍用力”加熱一下。
要是當前溫度比目標溫度低得多,就讓加熱器“開足馬力”加熱,盡快讓水溫到達目標附近。
詳解串口通信232/485/422,一文搞定!
下一篇:為何SIS系統(tǒng)和DCS系統(tǒng)聯(lián)合應(yīng)用又要相對獨...
地址:濟南市高新區(qū)康虹路766號 電話:13325117271 15554106147
版權(quán)所有:山東利澤盟展自控設(shè)備有限公司 技術(shù)支持:開創(chuàng)云 ICP備案編號:魯ICP備16017367號-1