2016年12月8日

用試算表學習PID控制,以血糖控制為例

很久以前看機器人控制的書,就看到「 PID控制」,不過天性使然,看到一堆公式,又是微分積分的頭就很大,直接忽略不看。

後來看坊間出的生物練習題的時候,看到一個題目,引起我對PID的興趣。是個問胰島素控制血糖的圖片,他問「請問在哪個階段,胰島素開始發揮作用?」


答案給的是丙,我就覺得很莫名啊,難道有可能到血糖值最高才發揮作用嗎?我覺得是血糖值開始升高的時候,就應該發揮作用才是。

你想想嘛,當你開車下坡的時候,速度開始增加,請問你什麼時候才會開始踩煞車?是速度最快的時候才開始踩嗎?不是吧,總是在速度開始加快的時候,便要開始輕踩煞車了,等到速度增加很多的時候,煞車就要踩重一點才是啊。

因為這樣的問題,我想到去找胰島素控制的論文來看,就是研究糖尿病的病人需要胰島素幫浦,隨時監控血糖量,並適時適量注射胰島素。找了之後,發現很多論文都談到PID控制,所以那時候我就好奇PID怎麼控制啊?

不過好奇歸好奇,還是沒弄懂。一直到最近學著組裝四軸飛行器,又遇到PID控制了,找了一些資料,乾脆自己試著用試算表來練習玩玩PID控制。
試算表連結網址在此:





我也錄製一段影片說明怎麼利用PID來模擬控制血糖在穩定數值範圍內,而不會因為運動或是進食,而使得血糖量大幅度變化。血糖換成車速,如何用自動控制系統控制車速,讓上下坡都能有穩定的車速,也是類似的概念。