小明接到這樣一個任務:有一個水缸點漏水(而且漏水的速度還不一定固定不變),要求水面高度維持在某個位置,一旦發(fā)現(xiàn)水面高度低于要求位置,就要往水缸里加水。
小明接到任務后就一直守在水缸旁邊,時間長就覺得無聊,就跑到房里看小說了,每30分鐘來檢查一次水面高度。水漏得太快,每次小明來檢查時,水都快漏完了,離要求的高度相差很遠,小明改為每3分鐘來檢查一次,結果每次來水都沒怎么漏,不需要加水,來得太頻繁做的是無用功。幾次試驗后,確定每10分鐘來檢查一次。這個檢查時間就稱為采樣周期
開始小明用瓢加水,水龍頭離水缸有十幾米的距離,經常要跑好幾趟才加夠水,于是小明又改為用桶加,一加就是一桶,跑的次數少了,加水的速度也快了,但好幾次將缸給加溢出了,不小心弄濕了幾次鞋,小明又動腦筋,我不用瓢也不用桶,老子用盆,幾次下來,發(fā)現(xiàn)剛剛好,不用跑太多次,也不會讓水溢出。這個加水工具的大小就稱為比例系數
小明又發(fā)現(xiàn)水雖然不會加過量溢出了,有時會高過要求位置比較多,還是有打濕鞋的危險。他又想了個辦法,在水缸上裝一個漏斗,每次加水不直接倒進水缸,而是倒進漏斗讓它慢慢加。這樣溢出的問題解決了,但加水的速度又慢了,有時還趕不上漏水的速度。于是他試著變換不同大小口徑的漏斗來控制加水的速度,最后終于找到了滿意的漏斗。漏斗的時間就稱為積分時間
小明終于喘了一口,但任務的要求突然嚴了,水位控制的及時性要求大大提高,一旦水位過低,必須立即將水加到要求位置,而且不能高出太多,否則不給工錢。小明又為難了!于是他又開努腦筋,終于讓它想到一個辦法,常放一盆備用水在旁邊,一發(fā)現(xiàn)水位低了,不經過漏斗就是一盆水下去,這樣及時性是保證了,但水位有時會高多了。他又在要求水面位置上面一點將水鑿一孔,再接一根管子到下面的備用桶里這樣多出的水會從上面的孔里漏出來。這個水漏出的快慢就稱為微分時間
看到幾個問采樣周期的帖子,臨時想了這么個故事。微分的比喻一點牽強,不過能幫助理解就行了,呵呵,入門級的,如能幫助新手理解下PID,于愿足矣。故事中小明的試驗是一步步獨立做,但實際加水工具、漏斗口徑、溢水孔的大小同時都會影響加水的速度,水位超調量的大小,做了后面的實驗后,往往還要修改改前面實驗的結果。